InfoQ Homepage Legacy Code Content on InfoQ
-
Moldable Development: Guiding Technical Decisions without Reading Code
Developers spend most of their time reading code. Moldable Development challenges reading as a means to gather information from the system, by creating custom tools that show the problem in a way that makes it comfortable to understand. The solution typically follows quickly afterward. Glamorous Toolkit is a moldable development environment designed to decrease the cost of custom tools.
-
Chipping Away at the Monolith: Applying MVPs and MVAs to Legacy Applications
Legacy applications actually benefit the most from concepts like a Minimum Viable Product (MVP) and its related Minimum Viable Architecture (MVA). Once you realize that every release is an experiment in value in which the release either improves the value that customers experience or doesn’t, you realize that every release, even one of a legacy application, can be thought of in terms of an MVP.
-
Talking Like a Suit - Communicating the Importance of Engineering Work in Business Terms
This article explores how to construct engineering work as a story, including clearly presenting a problem, offering a solution, and showing the business a path to success that solves their problem and avoids failure. By presenting your case in this way, you significantly increase your chances of getting these engineering problems addressed, while also becoming a better partner for the business.
-
Five Things to Remember When Upgrading Your Legacy Solution
Legacy software is still employed, even though it frequently fails to meet critical demands and core business operations. By choosing the right modernization strategy and software development teams, you can easily cut down on high legacy software maintenance costs and increase productivity.
-
‘Debt’ as a Guide on the Agile Journey: Technical Debt
In this article in a series on how ‘debt’ can be used to guide an agile journey, we will provide two examples of smells that are related to technical debt, explain the symptoms, the impact on the business and in our organization, outline the experiments (countermeasures) that we have introduced in an effort to try to remove the smell, and provide some specific advice for you to be inspired.
-
Strategies to Modernize, Maintain, and Future-Proof Systems
The book Kill it with Fire by Marianne Bellotti provides strategies that organizations can use to modernize, maintain, and future-proof their systems. She suggests choosing strategies based on the organizational context, and defining what value you’re hoping to see from modernization.
-
How to Slow Down to Go Faster Than Ever in Software Development
Going fast without control could be the biggest enemy of software development. By slowing down on people, we improve professionalism and craftsmanship. By slowing down on process, we improve adaptation and efficiency. And by slowing down on product, we improve automation and quality. When we focus on these areas, we start to cultivate a development culture enabling software development fast.
-
DevOps Enterprise Adoption at CSG International with Erica Morrison
Erica Morrison, from CSG International, talks about their DevOps journey, key initiatives and lessons learned.
-
Service-Oriented Architecture and Legacy Systems
In this article, authors provide an overview of current SOA technologies and how to evolve in legacy environments. They also discuss the topics of SOAP vs. REST web services, Enterprise Application Integration and incremental transition to SOA in legacy environments.
-
Pragmatic Techniques for Maintaining a Legacy Application
Maintaining a legacy application can make you feel like mice in a maze. In this article Ping Chen shares her experiences on how to pragmatically maintain a large legacy application. "Pragmatic” is the operative word; since a legacy application can have lots of technical debt, one has to be strategic in choosing the right battles.
-
Refactoring Legacy Applications: A Case Study
To refactor legacy code, the ideal is to have a suite of unit tests to prevent regressions. However it's not always that easy. This article describes a methodology to safely refactor legacy code.
-
Tips to Developers Starting on Large Applications
You've just started working on a large Java application. How would you go about understanding the code base? In a typical enterprise Java team, most of the senior developers who can help you are likely to be quite busy. Documentation will be sparse. You will need to quickly deliver and prove yourself to the team. How would you resolve such a situation? This article offers some suggestions.