How the Federal Government Can Accelerate Legacy System Modernization
Legacy code modernization is a persistent and pressing need in the federal government, especially with the advancements in technology and the need for secure and efficient IT systems.
As technology ages, other factors creep in that threaten business continuity, such as source code loss, employee loss, and knowledge loss – and, of course, security vulnerabilities. Aging technology also requires significant upkeep. In 2016, the Government Accountability Office (GAO) reported that over 75% of the 2015 IT budget was allocated for operations and maintenance.
Legacy code modernization: Legislation catches up
To address these risks, the 2017 Modernizing Government Technology (MGT) Act authorized the availability of funding mechanisms to improve, replace, or retire existing IT systems to enhance cybersecurity and to improve efficiency and effectiveness.
In 2019, the GAO identified 65 critical legacy systems in urgent need of modernizing, highlighting the need for code modernization in the federal government.
This was followed by a flurry of additional legislation and funding.
In May 2022, the Technology Modernization Fund (TMF) received over 130 proposals requesting more than $2.5B under the American Rescue Plan. Then, In June 2022, the Legacy IT Reduction Act was introduced in committee, requiring agencies to develop an inventory of legacy IT systems and write modernization plans to update or dispose of them.
Legacy code modernization: Five approaches
There are several approaches to code modernization, each with its benefits and challenges. Below are five approaches most prevalent in the industry today:
This approach allows for the rapid migration of as-is code to containers. However, containerization does not support end-to-end modernization, nor does it enable clarification of the legacy code that could fix it. It may address infrastructure and network vulnerabilities, but it does not address technical debt. Depending on the technical stack of the legacy code, this may or may not be a viable solution.
- Code Conversion/Translation
Code conversion/translation supports rapid migration of the as-is code to a newer language, but is more syntax driven and the unknowns in the existing code base are carried forward. It may support end-to-end conversion of relatively non-complex systems but rarely supports complex systems with data and interface factors. Code conversion/translation also doesn’t tackle existing technical debt, and the converted code is not easily readable or maintainable.
- Continuous Rewrite
Continuous rewrite addresses the shortcomings of legacy code, but the time and cost depend on funding and priorities. It could enable clarification of the existing code, but the extended timeline of having a hybrid of legacy and modernized systems in production may affect maintainability. There is also a risk that the underlying technology will change during development, increasing maintenance risk and cost.
- Big Bang Rewrite
This approach to federal code modernization can help ease maintenance, enhance the solution, and improve cybersecurity, but the time and cost to achieve this outcome are significantly higher. Additionally, it is likely to add new technical debt.
- AI code modernization
With the recent rapid growth of AI capabilities, today’s technology enables the rapid migration of as-is systems without enhancement. By refactoring code into a target cloud-ready technology stack, the end-to-end modernization time is reduced substantially. Most importantly, the new code retains all the business rules, uses best practices for quality and security, and generates documentation within the code for ease of maintainability.
Why AI is a Differentiator
When assessing these approaches, we used the following key assessment factors.
- Migrate AI-understood functionality to modern architecture
- Produce system documentation
- Optimize ability to maintain and enhance
- Identify and eliminate cybersecurity risks
- Eliminate prior and prevent new technical debt
- Rapid delivery through AI-driven approach
- Long-term cost-efficient and minimized risk
Leveraging AI is the most effective approach because it checks each of these boxes.
The Macro Difference
AI tooling, automation, and Agile differentiates the Macro Solutions methodology of code modernization. This approach ensures rapid delivery, secure maintainable code, reduced risk, and a lower cost of ownership. It can also be applied to any software stack – no matter how old, complex, or laden with technical debt.
When helping our clients modernize legacy code, we recommend partnering with and leveraging the appropriate AI technology for the specific use case. Our methodology consists of the following phases and steps, starting with a proof of concept (PoC) and scaling to full implementation, providing a validated investment before the full system is deployed.
- Phase 1:
- Analyze: Analyzing existing code and establishing a high-level roadmap
- Prove: Rebuilding code to the target platform and validating functionality
- Phase 2:
- Scale: The methodology then scales to include end-to-end and performance testing for the full implementation
- Deploy: Preparing for deployment
- Phase 3:
- Operate: Operating, maintaining, and continuing to enhance the system securely and efficiently.
Additionally, the Agile, customer-centric approach engages stakeholders to confirm the intent and approve the solution, building confidence and trust.
Our AI modernization approach will enable the federal government to keep pace with the ever-changing technology landscape and deliver modern, secure, and efficient systems to meet the needs of the American people.
Contact us today (or reach out to me via LinkedIn) to learn more about how Macro Solutions can help your federal agency modernize legacy systems and transform liability into a scalable, secure, efficient asset.