Topics
Note: Once it is clear who does which topic, the presentations will be scheduled. The presentations will be scheduled following the order of the topics shown below, i.e., starting with topics in the field of Software Requirements Engineering and ending with topics in the field of Software Management. Each selected topic must focus on specific aspects within a chosen topic, e.g., a specific activity (scope), a specific population, a specific intervention, a specific context, a specific outcome, etc.
Proposed topics for 1st year students
These topics can be picked by all students who don't yet have an approved MSc thesis topic. For 2nd year students I assume they already have a master thesis topic. If they don't, they can pick from the list, too. Additions/modifications of the topics listed below are possible but must be approved by the seminar teacher (after consultation).
Software Requirements Engineering (SRE)
- Topic SR-1: Machine learning applications in SRE
- Topic SR-2: The use of natural language processing in SRE
- Topic SR-3: Tool support in SRE
- Topic SR-4: Methods and techniques of agile SRE
- Topic SR-5: Large Language Models (LLMs) in SRE
Software Design (SD)
- Topic DE-1: Automatic detection of SD smells
- Topic DE-2: Methods and tools to assess SD quality
- Topic DE-3: Principles of SD used in gaming applications
Software Architecture (SA)
- Topic AR-1: Methods and tools for automatic detection of SA smells
- Topic AR-2: Methods and tools to assess SA quality
- Topic AR-3: SA paradigms in mobile applications
- Topic AR-4: SA paradigms in web applications
- Topic AR-5: Use of SA Description Languages (SADLs) in industry
- Topic AR-6: Message queuing services in microservice architectures
- Topic AR-7: Software architecture paradigms in data quality frameworks
Software Implementation
- Topic SI-1: Occurrence and frequency of code smells across programming languages & platforms
- Topic SI-2: Pros and cons of static code analysers
- Topic SI-3: Software engineering applied to the development of scientific software
- Topic SI-4: Tool support for developing scientific software
- Topic SI-5: Location-based navigation and services
- Topic SI-6: Interactive static code analysers
- Topic SI-7: LLM-based approaches for code generation
- Topic SI-8: Teaching of Object-Oriented Programming
- Topic SI-9: Student information systems
- Topic SI-10: Sustainable/Green Software Engineering
Software Test/QA
- Topic TQ-1: Automatic unit test generation
- Topic TQ-2: Automatic end-to-end test generation
- Topic TQ-3: AI/ML-approaches used to solve the test oracle problem
- Topic TQ-4: AI/ML-approaches used to speed up automated testing
- Topic TQ-5: (Automated) Security testing of web-applications
- Topic TQ-6: (Automated) Security testing of mobile applications
- Topic TQ-7: Methods for automatic test oracle generation
- Topic TQ-8: Testing of Automated Driving Systems (ADS)
- Topic TQ-9: Safety testing (note: this can be specialised to a specific product domain)
- Topic TQ-10: Security concepts in microservices and microservice architecture
- Topic TQ-11: Simulators and their application in testing of Automated Driving Systems (ADS)
Software Process/Methodology
- Topic PM-1: Adoption of agile development practices in embedded systems development
- Topic PM-2: Teaching agile software development to students and engineers
- Topic PM-3: Software process teaching / education
- Topic PM-4: Management practices in game development
Blockchain
- Topic BL-1: Use of blockchain technologies in <application domain X>
- Topic BL-2: Pros and cons of blockchain technologies
Business Process
- Topic BP-1: Business Process Simulation - Applications and Challanges
- Topic BP-2: Methods to extract security issues from business process models
- Topic BP-3: Business process description languages
- Topic BP-4: Teaching business process management
- Topic BP-5: Automated discovery of business process models from event logs
- Topic BP-6: The role of LLMs in business process management
Software Management
- Topic SM-1: Use software requirements management methods/tools in industry
- Topic SM-2: Effort estimation techniques/tools used in the software industry
- Topic SM-3: Methods to measure and improve the productivity of software development teams
- Topic SM-4: Use of agile management practices in software industry
Quantum Computing (QC)
- Topic QU-1: QC applications in software engineering
- Topic QU-2: QC in business applications
Note 1: All topics may be tailored (scoped), e.g., made activity, domain, platform or programming language specific. Also, the time frame may be limited (e.g., since 2010, or even since 2015) to limit the number of papers to be analysed.
Note 2: Second year students work alone. First year students work in pairs.
Note 3: For each chosen topic a set of research questions (RQs) must be formulated. Second year students must address at least 3 RQs while pairs of 1st year students must handle at least 4 RQs in their report/presentation.
Research Questions - Example
The following list of RQs is inspired by: Kai Petersen, Sairam Vakkalanka, Ludwik Kuzniarz (2015) Guidelines for conducting systematic mapping studies in software engineering: An update. Information and Software Technology, Volume 64, Pages 1-18. [https://doi.org/10.1016/j.infsof.2015.03.007]
- RQ1: Where (venue), when (date), and by whom (authors) were SMS published?
- RQ2: Which software engineering topics were covered by SMS?
- RQ3: Which guidelines were followed to conduct systematic mapping studies (SMS) in software engineering?
- RQ4: How was the SMS performed?
- This includes, for example:
- Identification of studies (search, inclusion and exclusion)
- Categorization and Classification schemes and processes
- Visualization of results
- This includes, for example: