ProGuide
Wissenschaftsdisziplinen
Informatik (100%)
Keywords
- Software Engineering Process,
- Quality Assurance,
- Process Deviation,
- Constraint Violation,
- Constraint Repair,
- Violation Impact
Gerade in sicherheitskritischen Bereichen ist die Sicherstellung einer hohen Softwarequalität relevant. Stellen Sie sich die Folgen bei einer Rettungsaktion vor, wenn die Kommunikation zwischen Leitstelle und Rettungseinheiten aufgrund eines Softwarefehlers ausfällt. Unter den verschiedenen Maßnahmen zur Erzielung einer hohen Qualität sind Regelungen, wie die einzelnen Software-Engineering-Artefakte (wie Anforderungen, Designdokumente, Testfälle etc.) verknüpft werden müssen. Durch eine solche Verknüpfung (auch Tracing genannt) kann beispielsweise überprüft werden, ob alle Anforderungen umgesetzt und auch getestet werden. Richtigkeit und Vollständigkeit dieser Traces gehören zur Erfüllung der Qualitätssicherungskriterien (QS). Was die Entwicklung sicherheitskritischer Systeme erschwert, ist die Tatsache, dass das Erstellen oder Aktualisieren dieser Artefakte und deren Verknüpfung selten die Aufgabe eines einzelnen Ingenieurs ist. Vielmehr erfordert dies die Koordination mehrerer Ingenieure: einige sind für die Definition von High- Level-Anforderungen verantwortlich, andere für deren Verfeinerung auf Low-Level-Anforderungen, andere verantwortlich für die Entwicklung von Testfällen usw. Diese Ingenieure müssen sich daher koordinieren, um Fehler wie etwas das Fehlen eines Testfalls oder eine nicht nachgezogene Anforderungsaktualisierung zu vermeiden. Dazu beschreibt ein Software-Engineering-Prozess, wie sich diese Ingenieure koordinieren sollen. Den Prozess zu befolgen und sicherzustellen, dass die Qualitätskriterien erfüllt werden, ist nicht trivial. Oftmals müssen Ingenieure wissentlich aufgrund von Zeitdruck oder unvorhergesehene Situationen vorübergehend von den Prozess- und QS-Kriterien abweichen. Ziel des Projekts ist es, Ingenieure dabei zu unterstützen, eine Abweichung von den Prozess- und QS- Kriterien zu beheben, auch wenn einige Arbeiten bereits als erledigt gelten und andere auf diesen Ergebnissen aufbauen. Beispielsweise muss eine High-Level-Anforderung überarbeitet werden, obwohl diese bereits zu einer Low-Level-Anforderung verfeinert wurde. Eine strikte Befolgung des Prozesses erlaubt es eventuell nicht, dies zu tun. Der in diesem Forschungsprojekt untersuchte Ansatz unterstützt die Ingenieure dabei, bewusst zu werden, welche Artefakte von einer Änderung (und damit Prozessabweichung) betroffen sind, welche QS-Kriterien möglicherweise nicht mehr erfüllt sind und wer in die Entscheidung zur Behebung eingebunden werden soll. Letztendlich besteht das Ziel darin, detaillierte, umsetzbare Anleitungen zu den Behebungsmöglichkeiten zu geben, jedoch weiterhin Unterstützung zu bieten, welche Prozessschritte durchgeführt werden müssen und ob andere QS- Einschränkungen erfüllt sind, auch wenn die bestehende Abweichung noch nicht behoben ist. Das Projekt wird die Auswirkung einer solchen Engineering-Unterstützung durch die Anwendung in einer realen Software-Engineering-Umgebungen zeigen. Es wird erwartet, dass Software-Ingenieure weniger Zeit aufwenden müssen, um herauszufinden, gegen welche QS-Beschränkungen sie verstoßen oder wer davon betroffen ist, sowie dass sie weniger QS-Kriterien verletzen welche zu kostspieligen Fehlern und/oder deren zeitaufwändiger Behebung führen.
Softwareprozesse zusammen mit der Software-Qualitätssicherung (QA) zielen darauf ab, sicherzustellen und nachzuweisen, dass die Engineering-Prozesse zu der entsprechenden Softwarequalität führen. Dennoch besteht eine Spannung zwischen der Notwendigkeit, Vorschriften und Prozessen zu folgen, und dem Bedürfnis, bei Bedarf davon abweichen zu können. Das Problem besteht also darin, wie man Ingenieur:innen in Anwesenheit verletzter Prozess- und Qualitäts-Constraints automatisierte Prozessunterstützung bieten kann. Dies ist nicht trivial, da eine Prozessabweichung typischerweise nicht nur eine einzelne Person betrifft, sondern Auswirkungen auf andere Ingenieur:innen hat. Ohne Bewusstsein für die Prozessabweichung und deren Auswirkungen auf andere könnte eine Abweichung (wie z. B. ein nicht erfülltes QA-Constraint) unbemerkt bleiben oder nicht vollständig korrigiert werden. Die Constraint-Verletzung könnte sich dann auf nachfolgende Prozessschritte und deren Engineering-Artefakte ausbreiten, was letztlich zu kostspieligem Mehraufwand zu einem späteren Zeitpunkt oder zu einer geringeren Softwarequalität führt. Wir argumentieren, dass die Unterstützung in zwei Formen erfolgen muss. Erstens durch Unterstützung der Ingenieur:innen bei der Bestimmung, welche Aktivitäten erforderlich sind, um in einen konsistenten Prozesszustand zurückzukehren, und zweitens durch die Identifikation der betroffenen Prozessschritte und deren verantwortlichen Ingenieur:innen. In diesem Projekt haben wir untersucht, wie man Software-Engineering-Prozesse und deren QA-Constraints passiv im Hintergrund verwalten kann, sodass Ingenieur:innen flexibel vom Prozess abweichen können. Wir haben Algorithmen entwickelt, um die Ursachen zu identifizieren und zu analysieren, wer sich abstimmen muss, um eine Abweichung im Prozess und/oder bei den QA-Anforderungen zu beheben. Ebenso haben wir Algorithmen zur Bestimmung des Wirkungskreises einer Abweichung etabliert, um die nachfolgenden Effekte auf andere zu identifizieren. Letztlich ermöglichen unsere Mechanismen die Erstellung eines detaillierten Reparaturplans, der die Ingenieur:innen durch die verschiedenen Alternativen zurück zu einem konformen Prozess führt. Die zentrale Innovation besteht darin, auch denjenigen Ingenieur:innen eine Unterstützung zu bieten, die von einer Abweichung betroffen sind. Evaluierungen mit Ingenieur:innen aus den Bereichen Luftverkehrskontrolle und Automobilindustrie haben gezeigt, dass unsere neu entwickelten Modelle, Techniken und Algorithmen in einem Proof-of-Concept-Prototyp eine effektive Unterstützung unter realistischen Bedingungen bieten. Die Ingenieur:innen begrüßen die automatisierten Prüfungen und das unmittelbare Feedback.
- Universität Linz - 100%
- Martina Seidl, Universität Linz , nationale:r Kooperationspartner:in
- Ruben Heradio, Spanish Open University - Spanien
Research Output
- 67 Zitationen
- 17 Publikationen
- 1 Methoden & Materialien
- 1 Datasets & Models
- 1 Wissenschaftliche Auszeichnungen
- 1 Weitere Förderungen
-
2026
Titel Recommending Process Guidance Actions Typ PhD Thesis Autor Anmol Bilal (Thesis Finished, Defense Scheduled Q2/2026) -
2026
Titel Evaluating Temporal OCL Process Constraints Typ PhD Thesis Autor Cosmina Ratiu (Thesis Finished, Defense Scheduled Q3/2026) -
2025
Titel Generating Quality Assurance Constraints From Natural Language With LLMs DOI 10.1002/smr.70062 Typ Journal Article Autor Mayr-Dorn C Journal Journal of Software: Evolution and Process Link Publikation -
2024
Titel Using reactive links to propagate changes across engineering models DOI 10.1007/s10270-024-01186-w Typ Journal Article Autor Ratiu C Journal Software and Systems Modeling Seiten 1213-1239 Link Publikation -
2024
Titel Towards Leveraging Fine-Grained Dependencies to Check Requirements Traceability Correctness DOI 10.1145/3639478.3643091 Typ Conference Proceeding Abstract Autor Mayr-Dorn C Seiten 292-293 -
2024
Titel An extensive replication study of the ABLoTS approach for bug localization DOI 10.1007/s10664-024-10537-6 Typ Journal Article Autor Niu F Journal Empirical Software Engineering Seiten 143 Link Publikation -
2024
Titel Ranking guidance actions to support engineers in fulfilling process constraints DOI 10.1002/smr.2729 Typ Journal Article Autor Bilal A Journal Journal of Software: Evolution and Process Link Publikation -
2024
Titel Actionable light-weight process guidance DOI 10.1016/j.jss.2024.112064 Typ Journal Article Autor Mayr-Dorn C Journal Journal of Systems and Software Seiten 112064 Link Publikation -
2024
Titel TRIAD: Automated Traceability Recovery based on Biterm-enhanced Deduction of Transitive Links among Artifacts DOI 10.1145/3597503.3639164 Typ Conference Proceeding Abstract Autor Gao H Seiten 1-13 Link Publikation -
2024
Titel Supporting High-Level to Low-Level Requirements Coverage Reviewing with Large Language Models DOI 10.1145/3643991.3644922 Typ Conference Proceeding Abstract Autor Preda A Seiten 242-253 Link Publikation -
2024
Titel Balanced knowledge distribution among software development teams—Observations from open- and closed-source software development DOI 10.1002/smr.2655 Typ Journal Article Autor Shafiq S Journal Journal of Software: Evolution and Process Link Publikation -
2024
Titel Supporting Engineering Process Compliance via Generation of Detailed Guidance Actions DOI 10.1145/3666015.3666019 Typ Conference Proceeding Abstract Autor Bilal A Seiten 87-97 Link Publikation -
2023
Titel ProCon: An automated process-centric quality constraints checking framework DOI 10.1016/j.jss.2023.111727 Typ Journal Article Autor Mayr-Dorn C Journal Journal of Systems and Software Seiten 111727 Link Publikation -
2023
Titel TRIAD: Automated Traceability Recovery based on Biterm-enhanced Deduction of Transitive Links among Artifacts DOI 10.48550/arxiv.2312.16854 Typ Other Autor Gao H Link Publikation -
2023
Titel RAT: A Refactoring-Aware Traceability Model for Bug Localization DOI 10.1109/icse48619.2023.00028 Typ Conference Proceeding Abstract Autor Assunção W Seiten 196-207 -
2023
Titel The ABLoTS Approach for Bug Localization: is it replicable and generalizable? DOI 10.1109/msr59073.2023.00083 Typ Conference Proceeding Abstract Autor Mayr-Dorn C Seiten 576-587 -
2023
Titel Taming Cross-Tool Traceability in the Wild DOI 10.1109/re57278.2023.00031 Typ Conference Proceeding Abstract Autor Ratiu C Seiten 233-243
-
2023
Titel Best Paper Award, Feifei Niu, Christoph Mayr-Dorn, Wesley K. G. Assunção, LiGuo Huang, Jidong Ge, Bin Luo, Alexander Egyed: The ABLoTS Approach for Bug Localization: is it replicable and generalizable? MSR 2023 Typ Research prize Bekanntheitsgrad Continental/International
-
2022
Titel CEPS - Cognitive Engineering Process Support Typ Research grant (including intramural programme) Förderbeginn 2022 Geldgeber Austrian Research Promotion Agency