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
-
Mosquera, David; Ruiz, Marcela; Pastor, Oscar; Spielberger, Jürgen,
2022.
Assisted-modeling requirements for model-driven development tools [Paper].
In:
Guizzardi, Renata; Ralyté, Jolita; Franch, Xavier, Hrsg.,
Research Challenges in Information Science.
16th International Conference on Research Challenges in Information Science (RCIS), Barcelona, Spain, 17-20 May 2022.
Cham:
Springer.
S. 458-474.
Lecture Notes in Business Information Processing ; 446.
Verfügbar unter: https://doi.org/10.1007/978-3-031-05760-1_27
-
Mosquera, David; Martakos, Anastassios; Ruiz, Marcela,
2022.
In:
Augusto, Adriano; Gill, Asif; Bork, Dominik; Nurcan, Selmin; Reinhartz-Berger, Iris; Schmidt, Rainer, Hrsg.,
Enterprise, Business-Process and Information Systems Modeling.
27th International Conference on Exploring Modeling Methods for Systems Analysis and Development (EMMSAD), Leuven, Belgium, 6-7 June 2022.
Cham:
Springer.
S. 336-343.
Lecture Notes in Business Information Processing ; 450.
Verfügbar unter: https://doi.org/10.1007/978-3-031-07475-2_23
-
2022.
Machine learning for mathematical modelling of Piezo hysteresis [Paper].
In:
MikroSystemTechnik Congress 2021 : Proceedings.
MikroSystemTechnik Congress, Ludwigsburg, Germany, 8-10 November 2021.
Berlin:
VDE.
S. 170-173.
Verfügbar unter: https://ieeexplore.ieee.org/document/9698304
-
Zampetti, Fiorella; Kapur, Ritu; Di Penta, Massimiliano; Panichella, Sebastiano,
2022.
An empirical characterization of software bugs in open-source Cyber–Physical Systems.
Journal of Systems and Software.
192(111425).
Verfügbar unter: https://doi.org/10.1016/j.jss.2022.111425
-
Di Sorbo, Andrea; Zampetti, Fiorella; Visaggio, Corrado A.; Di Penta, Massimiliano; Panichella, Sebastiano,
2022.
ACM Transactions on Software Engineering and Methodology.
32(3), S. 67.
Verfügbar unter: https://doi.org/10.1145/3564821