SOFIE – Software Intelligence
Evidence-based quality management of software systems in real-time
Description
Project period: 2018-2021
During the software development process a lot of data is generated. However, the evaluation of this data is complex: On the one hand, this data is distributed across various systems, such as version management systems, issue trackers, tools for measuring test coverage, review tools, build results, results of static code analyses, results of profilers, usage data, project planning tools, documents, etc. On the other hand, this data is subject to constant change, i.e. the data must be viewed in a correspondingly historicized form. This leads to very large amounts of data, so that efficient algorithms and data structures are necessary to evaluate the data quickly and continuously.
This type of information acquisition and processing can be described as "Software Intelligence" (SI), analogous to the term "Business Intelligence" established in business IT.
The focus of this project is to enable the real-time analysis of data from the software engineering process for an immediate use of these data for continuous, risk-driven project execution and control. This allows, for example, to prioritize tests with a higher error detection rate, e.g. because these tests run through recently changed code, test particularly complicated code or have already often detected errors in the past. Especially for long-running integration or system tests, such measures can lead to a significant reduction of feedback times to the developers who have caused these errors.