What does software Re-Engineering involve?

What does Software Re-Engineering involve?
Thomas Klauser
How can we support you with your IT project?

Thomas Klauser
CSO, Partner

+41.. Show number

There are four major areas of application of a re-engineering. These include, for example, the translation of the source code, obsolete programming languages are replaced by modern alternatives or updated to a current version. However, the structure of the system is not touched and remains in place.

The four major areas of application of Re-Engineering:

  • Translation of the source code: Obsolete programming languages are replaced by modern alternatives or updated to a current version. However, the structure of the system is not touched and remains in place. One reason for updating to modern languages is the costly maintenance of compilers for old languages. If languages are no longer supported, the technologies must be maintained independently, which is a costly undertaking.
  • Architecture rework: Poorly designed architectures are very susceptible to errors that happen when the code is reworked. It is possible that the quality of the application will decline with each revision, as errors are inherited and, at worst, exacerbated. Unclear architectures often make maintenance difficult, which can end in poor support. In this situation, re-engineering is a sensible step to make the application competitive again
  • Improving the structure: It is not uncommon for user software to hastily add a new function without adapting the underlying logic. Such “add-ons” can create fatal gaps in the application, so that in the worst case memory leaks or data loss can occur. At this point, re-engineering the affected structures is the only way to save the software
  • Data re-engineering: A software re-engineering normally has no influence on the processed data, which is why they can remain untouched. However, re-engineering of the data structure is still possible. Re-engineering data models can be useful in order not to compromise the performance of the overall system. This is because data requirements can change over time and must be adapted accordingly.

The three approaches to data Re-Engineering:

  • Clean-Up: All data is thoroughly checked for accuracy. Redundancy is eliminated and all data sets are brought into a homogeneous format to increase quality and.
  • Extention: The units of the data model are either adjusted or new units are added to accommodate more information. The data is also cleaned and adapted to the new format, as in the Clean Up.
  • Migration: All existing records are migrated to an existing database or newly set up database. Reasons for this can be factors such as performance or compatibility of the database management system. Depending on the project, migration is also related to a re-engineering of the entire application, which is why the data must be migrated to the new environment. Migrations ultimately aim to improve the communication between the system and the database, which provides a better user experience for the end user.

 

Re-engineering focuses on optimizing the structure of the system and increasing the usability of the application for the end-user. The improvement of the architecture and basic structures results, among other things, in a reduction of the maintenance effort and thus the costs. When re-engineering the data sets, the value of the existing information should be increased in order to provide the application with the right data on the one hand and to be able to map the desired data models on the other. Depending on the application and the objective, the effort required for re-engineering varies. It should always be weighed up which steps are necessary to make a system fit again.

How can we support you with your IT project?
Thomas Klauser

Thomas Klauser
CSO, Partner

+41.. Show number

This might interest you

Interview with TESTEX: Successful partnership

In this interview, Carole Laimbacher gives us an insight into the succes...

Alexandra Mittmann

Alexandra Mittmann
Team Lead CSM

Artificial intelligence - hype or chance?

Everyone is talking about generative AI. Text and image generators are b...

Lirika Gojani

Lirika Gojani
Content Marketing Specialist

Software development Zürich

Our location in the greater Zurich area enables us to support customers ...

Patrick Büchler

Patrick Büchler
CEO, Partner

Your business software: top or flop?

Have you ever critically scrutinised your software quality? This article...

Robert Schmuck

Robert Schmuck
Head of Development

With KUBE-X: Efficiently developed payable module

An outstanding example of efficient customised solutions is the internal...

Anastasia Schmuck

Anastasia Schmuck
Project Manager

What exactly does an AI developer do?

Artificial intelligence is a forward-looking technology that is shaping ...

Cédric Portmann

Cédric Portmann
Technical Program Manager

10 exciting software myths uncovered!

There are many myths and misconceptions surrounding customised software ...

Lirika Gojani

Lirika Gojani
Content Marketing Specialist

Innovative solutions, great successes

Lars Habermacher, athletics trainer and project manager at OYM AG, gives...

Lirika Gojani

Lirika Gojani
Content Marketing Specialist

Outdated software? And now?

Is your business software getting on in years and causing more problems ...

Patrick Büchler

Patrick Büchler
CEO, Partner

How much does the cloud cost?

Our expertise and experience help you understand the impact and opportun...

Roland Amacher

Roland Amacher
Senior Technical Consultant

How secure is my company?

Why is information security so essential in today's world? And what step...

Lirika Gojani

Lirika Gojani
Content Marketing Specialist

Native vs. Webapp

Native apps are developed for a specific operating system, such as Andro...

Simon Preuss

Simon Preuss
Project Manager

«Help, my software is stuck!»

Software maintenance is the foundation for reliable, secure and long-ter...

Alexandra Mittmann

Alexandra Mittmann
Team Lead CSM

Infrastructure as Code

Infrastructure as Code is a concept that has become increasingly importa...

Cédric Portmann

Cédric Portmann
Technical Program Manager

Contact

Do you have any questions? Would you like to find out more about our services?
We look forward to your enquiry.

Contact us