Interview about software archeology with expert Philipp Ambros
Have you heard of software archeology? In the age of digital transformation, we are constantly overwhelmed by new technical terms and catchwords. For laypeople, these terms are often like technical jargon. So we want to bring light into the darkness today. In this newsletter you will learn what software archeology is all about and that it has little to do with ancient and historical things.
Our manager Philipp Ambros gives us an insight into the world of software archeology today. Philipp, according to Wikipedia, software archeology is an examination of poorly documented or undocumented older software implementation as part of software maintenance. Does this statement apply and how do you define SWA?
This statement is correct. In fact, a software archeology is carried out if, for example, there is no or only limited knowledge about a system. Often this happens before the replacement of historically strong and / or undocumented systems.
What are the reasons why there is no knowledge of the system?
Many IT departments have systems in use that have long exceeded their planned lifespan and are being further developed and maintained by individual programmers. All the knowledge about the IT systems that has been built up over the years is contained in this one person. In reality it looks like this knowledge is no longer available due to a change of staff, retirement or, as has already happened with one of our customers, due to a death. Thus, all of the know-how about the system is suddenly missing.
That sounds very dramatic in this particular case – not only for the person concerned, but also for the company. What are the options for a solution so that the whole company does not stand still?
Yes, this is a challenging situation for the company concerned. For example, you could now commission a team of developers who would then work intensively over a longer period of time to understand and document the system. However, this is correspondingly expensive and time-consuming, which is why I recommend carrying out a “software archeology” in such cases in order to achieve the same result more cheaply and quickly.
Are there any other cases where SWA is used?
Yes, for example companies in which the developer is very busy and has no time for the relevant documentation. Assigning another person to do this is not possible due to the lack of know-how. In such a case, the SWA is used. The SWA program is integrated directly into the deployment chain. The program runs with every update and writes automatic documentation. In the medium term, only the license costs for the tool are incurred, which are much cheaper than the labor.
How do you go about documentation as experts?
Post-documentation has different phases. For orientation we first generate a graphic to understand the interrelationships of the system. Certain parts of the system are picked out and together with the team we develop a set of rules on how something should be presented in the documentation so that it is easy to read for the employees. The resulting set of rules is then applied to the entire code.
Alternatively, you can also set up additional sets of rules that focus on other parts or other levels of abstraction in the code or prepare them for other positions in the company, e.g. for department heads.
How complex is an SWA and how long does it take to complete the documentation?
If current programming languages are in use, the applications are quickly documented. However, there are also systems that are getting on in years. Some of these systems date from the 1970s – documentation takes a little longer. Since there are only a few programmers who have mastered these codes, we must first acquire the knowledge. Many older systems are still in use, especially in the public sector and in banking.