Facebook Pixel

Legacy Application Modernization for the California Department of Water Resources

Looking up toward the sky and surrounded by four skyscraper buildings

The California Department of Water Resources (DWR) initiated a critical project to modernize its legacy Agency Bonds Consolidated Reporting System (ABCRS), which plays a crucial role in tracking bond sale spending. The system, originally built using outdated technologies such as Microsoft Silverlight and Internet Explorer 11, had become obsolete and unsupported, presenting significant risks to its usability and long-term functionality. To address this, Capitol Tech Solutions (CTS) was contracted to update the ABCRS by migrating it from Silverlight to a modern web framework, Blazor, while maintaining all current functionalities. Additionally, the project involved moving the application from an on-premises server to a cloud-based infrastructure using Azure App Service, allowing for serverless operation and improved scalability.

Project Goals

The key goals of this modernization effort were to ensure the ABCRS remained functional, stable, and secure by transitioning it to modern technologies. The migration to Blazor provided a future-proof framework that would not only maintain the system’s core capabilities but also allow for easier updates and expansions. A significant achievement for CTS was the development of an internal tool, or “machine,” designed to assist in code transpilation. This tool streamlined the process of converting legacy Silverlight code to Blazor, reducing the complexity of the migration and improving overall efficiency.

The CTS Process

CTS followed a structured and systematic 6-step process to ensure the successful migration of the ABCRS.

  1. Initial Code Conversion: The initial code was run through an auto-transpiler developed by CTS to convert the Silverlight code to Blazor.
  2. User Interface Clean-up: Post-transpilation, the team performed clean-up tasks to ensure the user interface met design standards and provided a seamless user experience.
  3. Code Behind Completion: The logic and functionality behind the UI elements were completed, ensuring that the application behaved as expected.
  4. Internal Functional Testing: Rigorous internal testing was conducted to verify that all functionalities worked correctly.
  5. Internal User Acceptance Testing: The application underwent internal UAT to validate the system from a user perspective before external testing.
  6. External User Acceptance Testing: Finally, the application was subjected to external UAT, involving end-users to ensure it met their needs and expectations.

A Focus on Quality Assurance

Quality Assurance (QA) was a major aspect of the services provided to CDPH. QA ensured the product met all specified requirements and functioned seamlessly, adhering to the Secure Software Development Lifecycle (SSDLC). Our QA efforts included creating test plans, scripts, and reports, and performing functional, integration, user acceptance, and regression testing. This approach identified bugs and errors while driving process improvements, enhancing development efficiency, and product quality.

We then trained the CDPH development team on effective processes and quality assurance (QA). We focused on educating the client how to develop, qualify, and manage subsequent releases of their product, supporting their development team’s training needs.

Challenges Overcome

Despite the successes, the project faced several hurdles. The specialized nature of the domain meant there was limited documentation available, and the product owner had multiple responsibilities, leading to insufficiently detailed stories. This necessitated heavy daily collaboration with domain experts to accurately realize the requested features. Testing was also challenging due to weak acceptance criteria, which required additional resources to clarify requirements and create effective test scripts.

The project was also highly dependent on internal tools and infrastructure provided by CDPH. This included everything from software installed on our Virtual Desktop Infrastructure (VDI) to servers and Microsoft Entra ID app registrations. Our team had to remain flexible in order to work around these dependencies and finalize features as soon as the necessary resources became available.

Get in touch with us today to discover how Capitol Tech Solutions can be your partner in driving digital transformation and achieving unparalleled success.

Project Challenges and Lessons

Despite overall success, the project was not without its challenges. Managing the migration status of over 50 views, accurately defining business rules, incorporating new functionalities like improved mapping features, and coordinating external user acceptance testing (UAT) posed significant hurdles. CTS’s six-step process played a crucial role in addressing these challenges and provided the structured approach necessary to ensure the project’s successful completion.

The project provided valuable lessons for CTS moving forward. One of the key takeaways was the importance of understanding when automation tools are useful and when they are not. While the auto-transpiler was helpful in accelerating the migration process, it was not universally applicable, and CTS had to recognize the limitations of automation in certain areas.

In addition, the experience gained from working with the Blazor framework was invaluable. Blazor, as a modern web framework, provided a robust platform for future development efforts, and CTS’s success with this technology will likely inform our approach to similar projects in the future.

Conclusion

In conclusion, the modernization of the ABCRS for the California Department of Water Resources was a complex but successful project. By migrating the system from Silverlight to Blazor and moving it to a cloud-based infrastructure, CTS ensured that the application was brought up to modern standards, with improved stability, scalability, and security. The project provided important insights and lessons that will enhance CTS’s approach to future modernization efforts, particularly in understanding the limits of automation and the importance of clear timelines for external testing. The lessons learned and innovations developed during this project will undoubtedly enhance CTS’s capabilities in future modernization efforts.

Web Design Related Articles

Do you want to improve the speed of your website and increase your user traffic?

Contact Capitol Tech Solutions to find out how we can start improving your business’s User Experience Today!

(916) 443-5395

    Pin It on Pinterest