Software Engineering
We Transform Ideas into Software
Fast societal, economic, and technological digital transformation demand a quick pace in developing and maintaining software systems. Therefore, our mission at the Software Engineering (SWE) research group is to develop novel methods and tools to ensure rapid software development of high-quality software products. As experts in empirical software engineering, we ensure the successful technology transfer of our research products for and to industry. Among other things, we address research questions such as:
- How to leverage Low-Code/No-Code tools to lower the entry barrier of software development for experts without coding knowledge?
- How to identify reusable use cases to reduce the effort of generating software?
- How to improve software quality and maintenance effort by means of automatic transformations of requirements into code and test cases?
- How to automatically generate traceability links between software requirements, code, and test cases for software development monitoring and quality assurance?
- How can phases of the software development life cycle be automated?
- Which methods can improve continuous integration (CI) and continuous deployment (CD) for sustainable software development??
- Can Virtual Reality tools help to enhance agile software development and collaboration?
- How to automate the generation of complete and high-quality test cases?
We work on these topics together with external business partners within national and international projects. Our research expertise is as well incorporated into the computer science degree program and is passed on to students in modules such as the software project, programming, software engineering, web development, and various elective modules like rapid software prototyping, which integrates students from other engineering programs like avionics and mechanical engineering.
Automated Software Generation
The topic of Automated Software Generation covers the design, development, and analysis of low-code/no-code Tools for the automatic generation of software by means of incremental transformation of models (e.g., graphically represented as diagrams) specifying information systems’ business logic, data structures, business rules, graphical user interface, etc.
We investigate how low-code/no-code Tools can ensure code quality by supporting requirements engineering, allow high development speed, and foster separation of business logic from underlying platform technologies. We have extensive experience in developing low-code/no-code tools and Model-Driven Engineering methods that support object-oriented and domain-specific modelling languages.
Automation for the Software development Life Cycle
We investigate and develop state of the art methods and tools to support the automation of the software development life cycle. Our methods aim at automating continuous integration and deployment activities. The core research activities of this line involve the application of virtual collaboration tools in software engineering, traceability engineering, and test automation.
Virtual Software Engineering Lab
The Virtual Software Engineering Lab provides the technical equipment to investigates the application of research prototypes developed at the SWE group in real world use cases. The lab has an interactive projector and diverse touch devices for evaluating new modelling languages, collaborative methods, or flexible modelling tools. To facilitate virtuality and its research in software engineering, the lab integrates a double robot, Microsoft HoloLens, Google Glass, and drones. Diverse equipment for empirical software engineering like microphones and cameras is also available.
Unfortunately, no list of projects can be displayed here at the moment. Until the list is available again, the project search on the ZHAW homepage can be used.
-
Ulasik, Malgorzata Anna; Hürlimann, Manuela; Germann, Fabian; Gedik, Esin; Benites de Azevedo e Souza, Fernando; Cieliebak, Mark,
2020.
CEASR : a corpus for evaluating automatic speech recognition [paper].
In:
Calzolari, Nicoletta; Béchet, Frédéric; Blache, Philippe; Choukri, Khalid; Cieri, Christopher; Declerck, Thierry; Goggi, Sara; Isahara, Hitoshi; Maegaard, Bente; Mariani, Joseph; Mazo, Hélène; Moreno, Asuncion; Odijk, Jan; Piperidis, Stelios, eds.,
Proceedings of the 12th Conference on Language Resources and Evaluation (LREC 2020).
12th Language Resources and Evaluation Conference (LREC), Marseille, France, 11-16 May 2020.
European Language Resources Association.
pp. 6477-6485.
Available from: https://doi.org/10.21256/zhaw-20125
-
Roy, Devjeet; Zhang, Ziyi; Ma, Maggie; Arnaoudova, Venera; Panichella, Annibale; Panichella, Sebastiano; Gonzalez, Danielle; Mirakhorli, Mehdi,
2020.
DeepTC-Enhancer : improving the readability of automatically generated tests [paper].
In:
Proceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering.
35th IEEE/ACM International Conference on Automated Software Engineering (ASE), Virtual Event, 21-25 September 2020.
Association for Computing Machinery.
pp. 287-298.
Available from: https://doi.org/10.1145/3324884.3416622
-
Campos, Jon Ander; Otegi, Arantxa; Soroa, Aitor; Deriu, Jan Milan; Cieliebak, Mark; Agirre, Eneko,
2020.
DoQA : accessing domain-specific FAQs via conversational QA [paper].
In:
Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics.
58th Annual Meeting of the Association for Computational Linguistics (ACL 2020), online, 5-10 July 2020.
Association for Computational Linguistics.
pp. 7302-7314.
Available from: https://doi.org/10.18653/v1/2020.acl-main.652
-
Cieliebak, Mark; Keck Frei, Andrea,
2020.
Flipped Classroom in der Hochschullehre einsetzen
.
In:
Bachmann, Heinz, ed.,
Hochschullehre variantenreich gestalten : Kompetenzorientierte Hochschullehre – Ansätze, Methoden und Beispiele.
Bern:
hep.
Forum Hochschuldidaktik und Erwachsenenbildung ; 4.
-
Devroey, Xavier; Panichella, Sebastiano; Gambi, Alessio,
2020.
Java unit testing tool competition [paper].
In:
ICSEW'20: Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops.
ICSEW '20: 42nd International Conference on Software Engineering, Seoul, South Korea, June 2020.
Association for Computing Machinery.
pp. 545-548.
Available from: https://doi.org/10.1145/3387940.3392265