Ophthalmologist measuring visual acuity.
ZEISS Vision Care

ZEISS VisuScreen

Structured software evolution of legacy software

The aim of the project was to advance legacy software as part of structured software evolution while increasing system maintainability and expandability. This should be taken as the basis for expanding the functionality of important core components.

Visualization of software evolution process
Image: Approach to structured software evolution acc. to the horseshoe model (Source: Tom Mens & Serge Demeyer, Software Evolution. Berlin Heidelberg: Springer Science & Business Media, 2008)

Procedure

It all started with an architecture assessment performed as part of a structural analysis lasting several days. This was used to identify critical system components that proved profitable when restructured and optimized with due consideration for the objective. In the interests of preserving software reliability, automated tests were used to increase the code coverage prior to the actual restructuring. Next, individual system components were revised as part of two subprojects. During the first subproject, it was necessary to combine the functions of different product versions in order to develop a configurable product platform. This meant a number of core components had to be redesigned. During the second subproject, one module was migrated to a new technological basis to make future module expansions both possible and more efficient.


Special challenges

The project's technical challenges lay in improving the software's quality features, without compromising its functionality. In particular, the software's character had to be retained so that the users didn't need to adapt their working processes and habits in line with the changed system. Although a migration like this always comes with certain risks, the allocated budget and the allotted time frame should not be exceeded. As regards project management, the aim was to combine the benefits of agile development with a traditional and highly regulated market environment. This included a dynamic adaptation of the scope and the option of short feedback cycles.

The organizational challenge lay in the team's distribution. The team comprised developers from ZEISS Digital Innovation and Carl Zeiss Vision, who worked in different physical locations. This challenge was overcome through the intensive use of tools for distributed work, such as screen sharing. A daily update meeting was also used to define any further communication needs.


Technical environment

.NET, ASP.MVC, C#, F#, JavaScript, IIS, Knockout.JS

Share article

Take advantage of our expertise.

Visit our blog to read specialist articles on current topics.

Start working with us today.

Are you looking for an experienced partner to get your projects off the ground?
We will be happy to help.