Web technologies drive most modernization projects, and ResQSoft is on the forefront of technology and methodologies utilized to migrate large business applications to modern architectures. ResQSoft’s legacy modernization methodology is a process of redevelopment based on leveraging existing code, combined with reuse of code stored in a central repository within ResQSoft™ Engineer. In general, applications requiring modernization are typically well evolved, meaning that they meet all client requirements except those brought on by a code’s innate architectural limitations within modern business and system environments. ResQSoft values that mature code and leverages it in a rapid redevelopment process, using as much as possible to create equivalent Java code and reduce defects inherent in hand coding efforts. Once the code is on the new platform, additional enhancements or changes can be made to address new or changed requirements.

Legacy Modernization

For legacy modernization, ResQSoft has specialized tools that extract metadata from the legacy source code or running application. Once the metadata and specification are established, modernization follows the same path as new development because we redevelop the application in a true object-oriented form, rather than translating the old code and carrying forward the old architecture with its inherent scalability and maintainability concerns.

New Development

ResQSoft’s rapid development methodology, Quickstep, allows us to address requirements and meet today’s tight time constraints with equal effectiveness and intensity. Quickstep was born out of the need to mitigate the effect of changing requirements over the lifecycle of large scale software development projects. Industry data shows that, at a minimum, requirements evolve 1% for every month of a project, which, over lengthy endeavors of 2-3 years or more, can greatly impact the final product. Combined with ResQSoft™ Engineer, Quickstep is able to shorten the duration of projects, while easily accommodating changing requirements. Software is delivered much faster and in more functional form than is typical of early software deliveries developed with traditional methodologies. In the end, the client receives early access to software that is comprehensive and effective. For specific projects with specific needs, we have also used Rational Unified Process (RUP) and Extreme Programming (XP).

Nuts and Bolts

Engineer is often used in prototyping mode to define screens, reports and data, with which the client can interact as they refine their requirements. The client is very involved in this process, constantly reviewing progress, which is visually evident as the application evolves.

The metadata collected from these interactions is then used as the basis for automatically creating the initial source code for the application. The code is then augmented with custom routines for business logic and transactional management, and other custom code as required. Finally, we do automated and manual testing, and deliver increments of working code for deployment in the customer environment.