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
-
Zampetti, Fiorella; Tamburri, Damian A.; Panichella, Sebastiano; Panichella, Annibale; Canfora, Gerardo; Penta, Massimiliano Di,
2022.
Continuous integration and delivery practices for cyber-physical systems : an interview-based study.
ACM Transactions on Software Engineering and Methodology.
32(3), S. 73.
Verfügbar unter: https://doi.org/10.1145/3571854
-
Birchler, Christian; Ganz, Nicolas; Khatiri, Sajad; Gambi, Alessio; Panichella, Sebastiano,
2022.
Cost-effective simulation-based test selection in self-driving cars software with SDC-Scissor [Paper].
In:
2022 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER).
29th IEEE International Conference on Software Analysis, Evolution, and Reengineering, Honolulu, USA (online), 15-18 March 2022.
IEEE.
S. 164-168.
Verfügbar unter: https://doi.org/10.1109/SANER53432.2022.00030
-
Devroey, Xavier; Gambi, Alessio; Galeotti, Juan Pablo; Just, René; Kifetew, Fitsum; Panichella, Annibale; Panichella, Sebastiano,
2022.
JUGE : an infrastructure for benchmarking Java unit test generators.
Software Testing, Verification and Reliability.
33(3), S. e1838.
Verfügbar unter: https://doi.org/10.1002/stvr.1838
-
Gabi, Lukas,
2022.
Nachhaltigkeit in der Informatik bei SWICA.
Winterthur:
ZHAW Zürcher Hochschule für Angewandte Wissenschaften.
Verfügbar unter: https://doi.org/10.21256/zhaw-27679
-
Kallis, Rafael; Chaparro, Oscar; Di Sorbo, Andrea; Panichella, Sebastiano,
2022.
NLBSE’22 tool competition [Paper].
In:
2022 IEEE/ACM 1st International Workshop on Natural Language-Based Software Engineering (NLBSE).
1st International Workshop on Natural Language-Based Software Engineering (NLBSE), Pittsburgh, USA (online), 8 May 2022.
IEEE.
S. 25-28.
Verfügbar unter: https://doi.org/10.1145/3528588.3528664