Lynn von Kurnatowski has long been enthusiastic about the German Aerospace Center (Deutsches Zentrum für Luft- und Raumfahrt; DLR). After demonstrating her commitment in her master’s thesis, she has been working as a research associate at the DLR Software and Simulation Technology facility since May 2018.
Lynn von Kurnatowski became interested in DLR during her computer science master’s degree programme in Erlangen. She recognised an opportunity to embark on a mission when she applied to the Software and Simulation Technology facility in Cologne to complete a project and her master’s thesis.
From university to research organisation
What sets Lynn apart is that she completed both her project and master’s thesis in collaboration with DLR. Here, she used the project work to develop the topic of her master’s thesis, in order to be able to select a more extensive research area. “The examination regulations for my degree programme require students to complete a project and write a master’s thesis. We are advised to do the project in the third semester and the master’s thesis in the fourth,” explains Lynn. The outcome – a project entitled ‘Efficient processing of historicised software development results’, which led to a master’s thesis on the subject of ‘Visualising the evolution of software architecture’. Both of these research activities focused on MSR – Mining Software Repositories. MSR describes the analysis of data that is available in software repositories. In turn, a repository is a directory to store and describe digital objects for a digital archive. They can reveal interesting information about software systems and their development.
In her research, Lynn investigated how software architecture changes over time – that is, how the architecture of a software system evolves. “The history of the software system was extracted from Git, a version management system, and filtered to include only the changes that related to the architecture – as not every commit is related to the architecture. The data was then saved in a graph database. This type of database can be used to perform analyses and create visualisations.” Using a versioning system in this way, the history of the source code of the individual commits to a repository can be analysed and their architectural effects extracted. The aim was to understand the architectural changes that a project undergoes over time. During the project work, the entire history of a repository’s architecture was extracted from the source code and the associated files, and then suitably prepared in a graph database. Based on this, the goal of the master’s thesis was to filter this data so that only the absolutely essential information remained. This meant only saving the changes to the architecture, not the architecture of each commit.
Implementing her own first mission
Everything happened fairly quickly once Lynn had been accepted to write her research papers at DLR. A supervisor was soon found at the university to oversee both her project and her master’s thesis, in cooperation with DLR. Lynn got used to the working routines in no time at all and her mission began. The working environment was an aspect that Lynn found rewarding from day one. She was given the opportunity to think outside the box and to try new things. “There are definitely enough people on hand if you need help”, says Lynn. This ensured she was constantly encouraged to experiment and expand her knowledge. Lynn can certainly recommend writing a graduation thesis in cooperation with DLR. Her experience was entirely positive, and her results made an important research contribution.
As a result, Lynn has recognised how much potential there is in the field of MSR. She was also surprised to discover how much data could be extracted from a repository to identify useful and important patterns and information within the software development process. The possible areas in which MSR can be used are particularly extensive within software engineering. Visualising the data was a difficult challenge, which Lynn worked hard to address. There are many approaches to software visualisation that can be used to represent the current state of the architecture. However, Lynn has developed a concept that visualises the entire evolution process: “I am not only looking at what the architecture is like at present, but at its entire evolution over time. In RCE (Remote Component Environment – an application program), we are talking about a development period of 12 years,” says Lynn. “RCE was an application example that I used in my work. Actually, though, analysis and extraction works for all OSGi-based projects in Git.” This makes Lynn’s work versatile enough for use in other development areas as well, especially in the area of visualisation.
Important for DLR as a whole
Lynn’s research and results have the potential to support DLR, as it makes significant changes to software development processes and workflows.
Lynn is now working as a research associate, a position in which she can continue her previous work in simulation and software engineering at a new level. She is supporting an initiative by the Software Engineering Group, which acts in a consulting capacity for all DLR institutes, producing checklists and providing on-site training to help the institutes develop their own software and implement major projects. Lynn’s task is to prove the successful project outcomes in a study. “This relates directly to the field of MSR as well. The idea is to use repository mining to ‘discover’ successful results, changes and defects,” explains Lynn. The final product of her work will be an overview of the analysed project. It will demonstrate how clear and specific software development consistently improves the quality of a project. In this way, Lynn is helping the many DLR institutes to pursue and complete their missions successfully.