Software Engineering
We Transform Ideas into Software
Der schnelle gesellschaftliche, wirtschaftliche und technologische Wandel erfordert ein hohes Tempo bei der Entwicklung und Wartung von Softwaresystemen. Daher entwickelt die Forschungsgruppe Software Engineering (SWE) des InIT neuartige Methoden und Werkzeuge, um die Softwareentwicklung zu automatisieren und qualitativ hochwertige Software zu gewährleisten. Darüber hinaus sind wir Experten in der Anwendung von empirischem Software Engineering, um die erfolgreiche Entwicklung und Übertragung unserer Forschung für und in die Wirtschaft sicherzustellen. Wir beschäftigen uns unter anderem mit folgenden Forschungsfragen:
- Wie können Low-Code/No-Code-Tools eingesetzt werden, um die Einstiegshürde in die Softwareentwicklung für Experten ohne Programmierkenntnisse zu senken?
- Wie lassen sich wiederverwendbare Anwendungsfälle identifizieren, um den Aufwand für die Softwareerstellung zu reduzieren?
- Wie lassen sich Softwarequalität und Wartungsaufwand durch automatische Transformationen von Anforderungen in Code und Testfälle verbessern?
- Wie generiert man automatisch Traceability-Links zwischen Software-Anforderungen, Code und Testfällen für die Software-Entwicklungsüberwachung und Qualitätssicherung?
- Wie können Phasen des Lebenszyklus der Softwareentwicklung automatisiert werden?
- Welche Methoden können die Continuous Integration (CI) und das Continuous Deployment (CD) für eine nachhaltige Softwareentwicklung verbessern?
- Können Virtual Reality-Tools zur Verbesserung der agilen Softwareentwicklung und der Zusammenarbeit beitragen?
- Wie kann die Erstellung vollständiger und qualitativ hochwertiger Testfälle automatisiert werden?
Diese Themen bearbeiten wir gemeinsam mit externen Wirtschaftspartnern in nationalen und internationalen Projekten. Unsere Forschungskompetenz fliesst auch in den Studiengang Informatik ein und wird in Modulen wie dem Softwareprojekt, der Programmierung, dem Software-Engineering, der Web-Entwicklung und verschiedenen Wahlmodulen wie dem Rapid Software Prototyping, in die auch Studierende aus anderen Ingenieurstudiengängen wie Avionik und Maschinenbau eingebunden sind, an die Studierenden weitergegeben.
Forschungsthemen
Automatisierte Software-Generierung
Das Thema automatisierte Software-Generierung umfasst den Entwurf, die Entwicklung und die Analyse von Low-Code/No-Code-Tools. Diese Tools generieren mittels Transformation von Modellen (z. B. grafisch als Diagramme dargestellt), welche Geschäftslogik, Datenstrukturen, Geschäftsregeln, grafische Benutzeroberflächen usw. spezifizieren, automatisch Software.
Wir untersuchen, wie durch Low-Code/No-Code-Tools die Codequalität sichergestellt, eine hohe Entwicklungsgeschwindigkeit ermöglicht und die Trennung der Geschäftslogik von den zugrunde liegenden Plattformtechnologien gefördert werden kann. Wir verfügen über umfangreiche Erfahrung in der Entwicklung von Low-Code/No-Code-Tools und Model-Driven Engineering-Methoden, die objektorientierte und domänenspezifische Modellierungssprachen unterstützen.
Automatisierung des Software Development Life Cycle
Wir erforschen und entwickeln State-of-the-art Methoden und Tools zur Unterstützung der Automatisierung des Software Development Life Cycles, von Continuous Integration bis zu Continuous Deployment. Als Kern dieses Forschungsthemas wenden wir Tools zur virtuellen Zusammenarbeit im Software Engineering, im Traceability Engineering und in der Test-Automatisierung an.
Virtual Software Engineering Lab
Das Virtual Software Engineering Lab bietet die technische Ausstattung, um die Anwendung, der in der SWE-Gruppe entwickelten Forschungsprototypen, im realen Kontext zu untersuchen. Das Labor verfügt über einen interaktiven Projektor und diverse Touch-Geräte zur Evaluierung neuer Modellierungssprachen, kollaborativer Methoden oder flexibler Modellierungswerkzeuge. Im Labor ist zudem ein Doppelroboter, Microsoft HoloLens und Google Glass, sowie Drohnen integriert, um die Virtualität im Software Engineering besser zu erforschen. Diverse Geräte für empirisches Software Engineering wie Mikrofone und Kameras sind ebenfalls vorhanden.
Projekte
Im Zuge des Neuaufbaus der Forschungsdatenbank sind die bisherigen Listen mit Forschungsprojekten nicht mehr abrufbar. Die Zukunft geht in Richtung Volltextsuche und Filterung, um bestmögliche Suchergebnisse für unsere Besucher:innen zur Verfügung zu stellen.
In der Zwischenzeit kannst du die Projekte ganz einfach unter folgenden Link per Textsuche finden: «Zur neuen Suche in der Projektdatenbank»
Studentenarbeiten
Publikationen
-
Di Sorbo, Andrea; Panichella, Sebastiano,
2023.
Summary of the 1st Natural Language-based Software Engineering Workshop (NLBSE 2022) [Paper].
In:
1st International Workshop on Natural Language-Based Software Engineering (NLBSE), Pittsburgh, USA (online), 8 May 2022.
Association for Computing Machinery.
S. 101-104.
Verfügbar unter: https://doi.org/10.1145/3573074.3573101
-
Panichella, Sebastiano; Di Sorbo, Andrea,
2023.
Summary of the 2nd Natural Language-based Software Engineering Workshop (NLBSE 2023) [Paper].
In:
2nd International Workshop on Natural Language-Based Software Engineering (NLBSE), Melbourne, Australia, 20 May 2023.
Association for Computing Machinery.
S. 60-63.
Verfügbar unter: https://doi.org/10.1145/3617946.3617957
-
Birchler, Christian; Rohrbach, Cyrill; Kim, Hyeongkyun; Gambi, Alessio; Liu, Tianhai; Horneber, Jens; Kehrer, Timo; Panichella, Sebastiano,
2023.
TEASER : simulation-based CAN bus regression testing for self-driving cars software [Paper].
In:
2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE).
38th IEEE/ACM International Conference on Automated Software Engineering (ASE), Kirchberg, Luxembourg, 11-15 September 2023.
IEEE.
S. 2058-2061.
Verfügbar unter: https://doi.org/10.1109/ASE56229.2023.00154
-
Ruiz, Marcela; Hu, Jin Yang; Dalpiaz, Fabiano,
2023.
Why don’t we trace? : a study on the barriers to software traceability in practice.
Requirements Engineering.
28(4), S. 619-637.
Verfügbar unter: https://doi.org/10.1007/s00766-023-00408-9
-
Birchler, Christian; Khatiri, Sajad; Bosshard, Bill; Gambi, Alessio; Panichella, Sebastiano,
2022.
Machine learning-based test selection for simulation-based testing of self-driving cars software.
arXiv.
Verfügbar unter: https://doi.org/10.48550/arXiv.2212.04769