Industrial software requires high levels in quality attributes, especially regarding maintainability, correctness and robustness. For safety-relevant applications, these factors play an important role because of both safety requirements and longevity of the systems. In order to make systems future-proof and to save maintenance costs on a long-term basis, it is strongly recommended to invest time and budget in continuously measuring and improving software quality.
The market offers a wide range of solutions to analyze artefacts within the software development process, but lacks an integrated solution capable of serving the needs of industrial software developement projects in the railway domain. With our ESE Lab for Intelligent Software Analysis, ELISA for short, we offer you comprehensive software quality consulting, consisting of the know-how of our ELISA experts and our adaptive analysis platform ELISA.
The core of ELISA is a modular framework, consisting of so-called assistants, each responsible for one specific analysis task within the development process. These assistants are arranged about a core used to store analysis results and present the data in a clear user interface.
A team of experts will work closely with you to determine which analysis assistants can be flexibly combined for your specific application. With regard to the programming languages used, our focus with the ELISA platform is on C, C++, Java and Python.
ELISA - Cooperationmodel
Using our assistants, a significant step towards higher quality and therefore future-proofness of software can be made in projects of all sizes and from all domains.
One of our assistants allows a visual representation of software architectures. This three-dimensional representation of software code enables users to explore the code base like a giant city with streets and buildings, making architectural problems visible in a natural way.
The assistant "CoCoVis" makes it possible to measure the complexity of software code from the user's point of view. The assistant assesses the comprehensibility of the software code for any user, taking psychological factors into account. CoCoVis takes over a key factor, which is typically checked by verifiers, validators and experts.
The relationship between test cases and software requirements is often referred to as requirements tracing. Using a novel approach to analyzing and visualizing this relationship, our assistant identifies critical areas within requirements tracing, such as indications of unbalanced test coverage or problematic requirements.