Skip to main content

Successfully reaching your goal with reverse engineering

Modernization is the key to success in order to be able to guarantee modern, high-speed digital services and interfaces in the future. For a leading legal expenses insurer, itestra replaced a historically grown and reliable software landscape that had been running on the basis of RPG (iSeries) for over 20 years.

As part of the 3-year modernization project, innovative methods were used to create a differentiating and future-proof solution that creates efficiency and flexibility in order to continue to operate successfully on the market.

Insurance in the digital transformation

Technological innovations and changing customer expectations pose major challenges for insurance companies. Good service, fast response times and reliable processing are just as important as attractive products. Modern IT landscapes make an important contribution to the future viability of insurance companies, optimize their processes and can significantly increase the efficiency of the entire company.

Modern processes, modern insurance

Detached platform
Target platform
RPG (iSeries)
100% Java
Over 20 years of history
3-year project duration, launch in 2014
800,000 LoC
500,000 new LoC
Decreasing speed
Stable, significantly higher processing speed
Dedicated hardware
license-free state-of-the-art solution
Textual screen masks
New, intuitive user guidance
Lack of young talent, impending loss of expertise, outdated documentation
Long-term development security through modern standards

Customized software creates differentiation

Transformed into the future

The legacy application landscape had formed the technical basis for the business success for more than 20 years and represented a high value for the insurance company. With 800,000 lines of code in RPG, it covered all products and processes and reliably processed 1.4 million current contracts.

However, this solution no longer met the company’s strategic objectives: a lack of young talent for the old technology, limited ability to innovate, the threat of a loss of know-how and outdated documentation. In order to be able to provide modern, digital services and interfaces at high speed again, modernization was absolutely essential.

The project duration: estimated and adhered to

As part of a 3-year modernization project, a solution was created that corresponds to the company vision: modern, future-proof technology (web, Java, services) that enables innovative products, processes and online services.

With reverse engineering, a step-by-step approach and a vertical team organization, we were able to implement a modern software landscape for our customer very efficiently and securely, which opens up new opportunities for the future and will be used successfully for a long time.

ProjektleiterinItestra

The innovation in this project started with the method

Efficient and safe procedure through a mix of methods:

Reverse engineering

Reverse engineering greatly reduced the workload for the specialist department: 85% of the requirements were extracted from the existing solution and reconstructed by the development team.

More at itestra.com/software-renovation/

Legacy system as test oracle

The legacy system was used as a test oracle for automated and manual tests of the new solution. These comparative tests have made it possible to significantly reduce the usually very high testing costs.

Mixed operation old/new with gradual use case-based replacement

In order to minimize the risks of a “big bang” incl. To avoid duplicate maintenance of the old and new systems and feature freeze and to generate early benefits, an incremental approach with mixed operation of new and old components based on functional domains – contract, service, partner, collection/disbursement, commission, etc. – was also chosen.

In each increment, the use cases of a domain were completely analyzed, enriched with desired changes, the technical design was redesigned, reimplemented, tested, the functionality of the entire domain was put into production and switched off in the old system. With each increment, a complete documentation with use cases, business rules, design, object model, etc. was created.

The first increment went live after three months, with further increments following approximately every six months. This made it possible to create smooth transitions and early feedback throughout the course of the project.

Vertical team organization

The project team was organized vertically in line with this work structure. Developer and sub-teams are responsible for a subject area (domain) from analysis of use cases to delivery and support: DevOps extended by requirements analysis via reverse engineering.

This organization very effectively avoids loss of information as a result of handovers and guarantees maximum productivity with a minimum error rate. This meant that the project could and had to be kept very lean with an average of 10 engineers (plus PM, testing and some specialist departments).

More at itestra.com/join/

Stability in productive operation

From RPG to 100% Java and not a single line of code remained. A total of 800,000 lines of code were renewed and an individual, modern and license-free state-of-the-art solution was created. Processing times in the specialist processes have been accelerated thanks to optimized user guidance: Thanks to a dialog that summarizes the most important information from contract and claims processing, it is no longer necessary to switch between different screens.

In addition, the dark processing rate in critical processes was increased and additional requirements such as SEPA, new products and various legal requirements were implemented at the same time. The old solution, including the hardware, could be completely switched off or removed. All data and requirements are available in the new solution without restriction, processed and enriched with new options. The project was carried out with a fixed price, on time and on budget.

Facts and figures

100%
Java, portal and web services
500.000
lines of new, lean program code
Legacy landscape:
removed
Data:
completely migrated
System availability in production:
98,5%
Ongoing license costs:
zero
Future prospects:
very good

About itestra

We develop and innovate business software solutions

We are guided by two core values in everything we do:

We want to achieve the best possible added value for our customers through our solutions. This is based on quality, i.e. the second point: our employees can and should develop professionally and personally, become better and better and achieve great things. For ourselves, for our performance and for the added value of our customers.

Contact us

Do you have questions about reverse engineering?

Please feel free to write or call us.

info@itestra.de
+49 89 381570-110

Software renovation/software refurbishment

Understanding software, preserving assets

Old but valuable

Successful IT and software systems have been in place for decades in almost all industries and control business processes and devices. They have been developed over many years, are indispensable for business, manage customer and business data and contain precise detailed knowledge about the business. Existing software therefore has enormous value and is part of the company’s assets.

But efficiency and performance are declining

However, technological change and changing requirements mean that software solutions are ageing. Quality deficiencies increase over time and result in decreasing performance, increasing time-to-system and rising costs. However, due to the enormous scope of the systems, replacing them with new procurement or new implementation is often expensive, risky or even unrealistic.

Software renovation is a new option for action

Software renovation means understanding existing software, using existing assets and restoring future viability with innovative methods and tools.

Creating future viability efficiently

System sizes:

0.5 million - 50 million LoC

Software value:

5 million € - 1 billion €

Software age:

3 - 52 years, average: 25 years
%-75% Duplication, 30% dead code, workarounds, undocumented

Technologies:

Assembler, COBOL, NATURAL, PL/I, MATLAB, VaGen, PowerBuilder, C++, Java, IMS/CICS, AngularJS, Struts, z/OS, iSeries, Windows, UNIX/Linux and 100s of others
  • Full-scale redesign
  • Reverse engineering, knowledge extraction
  • Algorithmic performance optimization
  • Re-documentation
  • Platform migration, technology/framework change
  • Code-CleanUp, Stabilization
  • Architecture change, refactoring

Methods and tools for software renovation

How is software renovated?

Innovation instead of rough mechanics

Software renovation is not a mechanical activity or tool, but an innovative discipline that includes and uses specialized knowledge, methods, special activities and, in some areas, tools.

The Health Check provides clarity

Software renovation begins with a structured inventory, the health check, of the existing solution with regard to the degree of coverage of business requirements, technical quality (implementation, documentation, data storage), costs (development, operation, infrastructure) and development and operating processes.

Actual – target = roadmap

The inventory is compared with alternative solution designs, industry benchmarks and the company’s strategic objectives. A transformation roadmap is derived from the actual and target figures, taking into account the economic framework conditions, which is then implemented in projects in the short term or over several years – depending on requirements.

Added value through software renovation

We restore for the future

Software renovation expert

Based on our own scientific work, we have been evaluating, optimizing and renovating extensive software systems for well-known companies in various industries for more than 15 years.

Our services for software renovation

Our portfolio includes the complete re-design of software landscapes, e.g. from RPG, NATURAL, COBOL, C/++ into modern, object- and service-oriented as well as web-based systems in Java, C# and others, as well as platform migration, re-documentation of legacy software, restoration of maintainability through code cleanup or performance optimization of central algorithms to reduce runtimes and CPU costs by more than 50%.

We renovate the value of software

We take responsibility, guarantee contractual success and use innovative methods such as manual reverse engineering, automated comparison testing, migration tracking (to track redesign progress), write-through architecture to avoid parallel development and special analysis tools.

Advantages of reverse engineering

Reverse engineering vs. new development

Reverse engineering describes the process of analyzing and understanding an existing software solution in order to improve it or develop a new solution.

Compared to a completely new development, reverse engineering offers these advantages:

  • Time and cost savings
    By studying the existing design, existing functionality can be used and does not have to be redeveloped, which saves time and costs.
  • Improving designs
    Understanding the original functionality promotes targeted re-engineering, e.g. in order to be able to adapt to new requirements.
  • Avoidance of duplication
    Reverse engineering can ensure that existing solutions are not developed again.
  • Protection of intellectual property
    Reverse engineering can help to protect intellectual property by ensuring that existing designs are not used.
  • Expanding knowledge
    Reverse engineering allows developers to improve their technical understanding and learn about new technologies and methods.
Please feel free to write or call us.

Do you have questions about reverse engineering?

  • Mit * gekennzeichnete Felder sind Pflichtfelder

  • This field is for validation purposes and should be left unchanged.

info@itestra.de
+49 89 381570-110

Shaping the future together.

Leave a Reply