Prof. Grunske erforscht derzeit die automatisierte Qualitätssicherung und Fehlerdiagnose in Softwaresystemen, mit aktuellem Fokus auf die Erkennung von Inkonsistenzen zwischen Code und Dokumentation sowie auf intelligente Debugging-Methoden. Seine Arbeiten adressieren zentrale Herausforderungen in der Softwareentwicklung: Wie lassen sich Fehler schneller lokalisieren, wie können Entwickler bei der Erstellung korrekter Software unterstützt werden, und wie bleibt Dokumentation zuverlässig mit dem tatsächlichen Code synchron? Für Unternehmen relevant ist dies insbesondere in sicherheitskritischen Bereichen (Automotive, Materialwissenschaft) und bei der Skalierung von Softwareentwicklung, wo manuelle Qualitätsprüfung zum Engpass wird. Er kombiniert dabei moderne Ansätze wie Large Language Models mit systematischen Testverfahren und empirischen Studien, um praktisch einsetzbare Lösungen zu schaffen, die Entwickler im Alltag unterstützen.
🔒 Das System hat 957 mögliche Industrie-Partner gefunden — Firmen, Scores und Begründungen sind nur für eingeloggte Nutzer:innen sichtbar. Anmelden
Prof. Dr. Lars Grunske
HU-FIS-Profil ↗Verbundprojekt MANNHEIM-AutoDevSafeOps: Integrierte Entwicklung und Betrieb von sicheren Automotive-Systemen
company
Verbundprojekt MANNHEIM-AutoDevSafeOps: Integrierte Entwicklung und Betrieb von sicheren Automotive-Systemen
company
Verbundprojekt MANNHEIM-AutoDevSafeOps: Integrierte Entwicklung und Betrieb von sicheren Automotive-Systemen
company
SFB 1404/2: Semantische Erzeugung und Validierung interagierender Workflows in der computergestützten Materialwissenschaft (TP A07)
other
Verbundprojekt MANNHEIM-AutoDevSafeOps: Integrierte Entwicklung und Betrieb von sicheren Automotive-Systemen
university
EMPEROR: Lernen der Ursachen von Programmverhalten
other
Förderer: DFG Sachbeihilfe Zeitraum: 01/2016 - 08/2019 Projektleitung: Prof. Dr. Lars Grunske
Förderer: DAAD Zeitraum: 01/2016 - 12/2017 Projektleitung: Prof. Dr. Lars Grunske
Förderer: DFG Sachbeihilfe Zeitraum: 10/2016 - 04/2020 Projektleitung: Prof. Dr. Lars Grunske
IEEE Transactions on Software Engineering · DOI
Service-based systems that are dynamically composed at runtime to provide complex, adaptive functionality are currently one of the main development paradigms in software engineering. However, the Quality of Service (QoS) delivered by these systems remains an important concern, and needs to be managed in an equally adaptive and predictable way. To address this need, we introduce a novel, tool-supported framework for the development of adaptive service-based systems called QoSMOS (QoS Management and Optimization of Service-based systems). QoSMOS can be used to develop service-based systems that achieve their QoS requirements through dynamically adapting to changes in the system state, environment, and workload. QoSMOS service-based systems translate high-level QoS requirements specified by their administrators into probabilistic temporal logic formulae, which are then formally and automatically analyzed to identify and enforce optimal system configurations. The QoSMOS self-adaptation mechanism can handle reliability and performance-related QoS requirements, and can be integrated into newly developed solutions or legacy systems. The effectiveness and scalability of the approach are validated using simulations and a set of experiments based on an implementation of an adaptive service-based system for remote medical assistance.
IEEE Transactions on Software Engineering · DOI
Due to significant industrial demands toward software systems with increasing complexity and challenging quality requirements, software architecture design has become an important development activity and the research domain is rapidly evolving. In the last decades, software architecture optimization methods, which aim to automate the search for an optimal architecture design with respect to a (set of) quality attribute(s), have proliferated. However, the reported results are fragmented over different research communities, multiple system domains, and multiple quality attributes. To integrate the existing research results, we have performed a systematic literature review and analyzed the results of 188 research papers from the different research communities. Based on this survey, a taxonomy has been created which is used to classify the existing research. Furthermore, the systematic analysis of the research literature provided in this review aims to help the research community in consolidating the existing research efforts and deriving a research agenda for future developments.
Debugging is a costly process that consumes much of developer time and energy. To help reduce debugging effort, many studies have proposed various fault localization approaches. These approaches take as input a set of test cases (some failing, some passing) and produce a ranked list of program elements that are likely to be the root cause of the failures (i.e., failing test cases). In this work, we propose Savant, a new fault localization approach that employs a learning-to-rank strategy, using likely invariant diffs and suspiciousness scores as features, to rank methods based on their likelihood to be a root cause of a failure. Savant has four steps: method clustering & test case selection, invariant mining, feature extraction, and method ranking. At the end of these four steps, Savant produces a short ranked list of potentially buggy methods. We have evaluated Savant on 357 real-life bugs from 5 programs from the Defects4J benchmark. Out of these bugs, averaging over 100 repeated trials with different seeds to randomly break ties, we find that on average Savant can identify correct buggy methods for 63.03, 101.72, and 122 bugs at top 1, 3, and 5 positions in the ranked lists that Savant produces. We have compared Savant against several state-of-the-art fault localization baselines that work on program spectra. We show that Savant can successfully locate 57.73%, 56.69%, and 43.13% more bugs at top 1, top 3, and top 5 positions than the best performing baseline, respectively.