Overview: Development of qualitatively high-value software
The overarching goal of the software engineering group is to foster the development of high-quality software.
Important quality aspects are the correctness and usefulness of software as a basis. Furthermore, the works concentrate specially on usability and security (protection against attacks) in the context of particularly sensitive, but also completely normal software projects. How can companies and developers contribute to better software quality within the scope of their possibilities? The investigated techniques include automated security warnings for developers and the use of eye-tracking technology for knowledge transfer.
A new aspect in research is the so-called "explainability" of software: complicated algorithms and artificial intelligence components often behave unexpectedly. Users and involved people then ask themselves whether everything has come to conform to the integrity: Why did the software make this decision? Was it due to requirements, input data, or is there perhaps an error? We explore the appropriate form and technical realisation of explanations - where they make sense.
The other research topics of the field (see there) are closely related to the general topic of developing qualitatively high-value software:
- In Requirements Engineering, we investigate and support the ability to effectively elicit requirements and incorporate them into the development. Without valid and up-to-date requirements, the development cannot deliver satisfactory solutions.
- Agile development methods have been used since the turn of the millennium to make software projects faster, more flexible and more useful for customers. They require a fundamental re-thinking and a new perspective. The transformation to agile methods is therefore not easy and requires special attention. Established traditional methods are often mixed with agile approaches. We investigate these hybrid approaches in cooperation with industrial companies.
- To produce qualitatively high-value software, stakeholders must first be familiar with the requirements. But the requirements also need to be communicated effectively and transformed into design and development decisions. Through information flow analysis and the combination of technical development data (e.g. from JIRA) with social aspects, we develop an overall picture to ultimately support practitioners in appropriate communication.
See: DFG Key Point Program Design for Future – Managed Software Evolution (SPP 1593)