See also our current list of projects on the Research page to get an idea of what is topical in our research. Another list of all our projects is also available in Tuhat, with responsible persons listed (you can ask them about potential thesis topics).
A more exhaustive list of topics from the department is available at CSM Master thesis topics (moodle).
We have written some instructions to help the students write their Master's theses, seminar papers and B.Sc. theses. Please, read the guide before starting your thesis work: Scientific Writing – Guide of the Empirical Software Engineering Research Group.
Software engineering and technology are prevalent areas for thesis at the department, and many candidates ask for thesis topics every academic year. We do our best to accommodate the requests, but the applicants can smoothen the process by taking an active role in thinking about potential topics based on the themes presented below.
We provide guidance for selecting a suitable topic and the supervision and support needed to complete the work. Please contact Antti-Pekka Tuovinen or Tomi Männistö if you are interested. You can also contact the group members to ask about the subject areas they are working on.
Suppose you, as a student, are working in software development, processes, architecture or something related. In that case, there is a good chance of finding an interesting thesis topic that closely relates to your work. In such a case, the actual work often provides an excellent problem to investigate, propose or try out potential solutions for, or the case can act as a rich source of data about the practice of software development.
We also welcome companies to suggest potential topics for Master's thesis. The topics can be general, based on existing research, or they may require original research and problem-solving. We will help to evaluate and fine-tune the proposals. Depending on the topic, you may also need to be prepared to provide guidance and assistance during the thesis project.
Please contact Antti-Pekka Tuovinen or Tomi Männistö if you have an idea for an industrial thesis and need further information.
The listing below introduces our current research areas and potential topics for the thesis. Each topic has a short description and the names of the researchers working on the topic. Please contact them for more details about the research and thesis work. Note that you can also suggest and discuss other topics within the general area of software engineering research. We encourage creativity and student-centred insight in selecting and defining the topic.
Some earlier MSc thesis titles below give some idea about the topics. You can try looking up more info from E-thesis, but note that it is up to the author if the actual thesis pdf is available online. Just search using the title (or part of it) in quotation marks. You can also go to the library in person and read all theses (even those without a public pdf) on a kiosk workstation (ask the staff if you need help).
Open source-related topic areas in collaboration with Daimler Truck (TOPIC AREAs, INDUSTRIAL COLLABORATION) |
Hybrid software development (TOPIC AREA) |
MLOps (PROJECTS) |
Digital Twin of Yourself |
Software engineering and climate change (TOPIC AREA) |
Life-long learning for the modern software engineering profession |
Software development in non-ICT contexts (TOPIC AREA) |
Creatively self-adaptive software architectures (TOPIC AREA) |
Continuous experimentation (TOPIC AREA) |
Digitalization and digital transformations: impacts on software engineering and systems development (TOPIC AREA) |
High-performing software teams (TOPIC AREA) |
Software innovation (TOPIC AREA) |
If interested, contact Tomi Männistö for further information
The current pandemic has brought many, even radical, changes to almost all software companies and software development organizations. Especially the sudden moves to working from home (WFH) in March 2020 forced them to adapt and even rethink many software engineering practices in order to continue productive software development under the new constraints.
Now (December 2021), various hybrid ways of working appear to become the new "normal" for the software industry in general. For instance, many companies are offering flexible workplace arrangements (WFX).
This thesis theme aims to explore and possibly explain such changes in contemporary software engineering. Potential research questions include the following:
Contact: Petri Kettunen
MLOps -- as a derivative of DevOps -- is about practice and tools for ML-based systems that technically enable iterative software engineering practice. We have several funded positions in the area of MLOps in our research projects (IMLE4 https://itea4.org/project/iml4e.html and AIGA https://ai-governance.eu/) that can be tailored to the interest of the applicant. For details, contact Mikko Raatikainen (first.last@helsinki.fi).
Digital twins are virtual world dynamic models of real-world physical objects. They originate from manufacturing domains. In such environments, they are utilized, for example, for predictive maintenance of equipment based on real-time machine data.
Recently the application domains of digital twins have broadened to cover living objects – especially human beings, for instance, in medical domains (so-called Human Digital Twins). In this thesis topic, the objective is to design a digital twin of yourself. The choice of the digital twin dynamic model is free, and so are the data inputs. One possibility could be, for instance, your real-life physical exercise data (e.g., from a heart-rate monitor). You could also consider your Citizen Digital Twin, following your study data and yourself as a lifelong learner.
Contact: Petri Kettunen
Global climate change may have various impacts on future software engineering on the one hand, and software engineering may affect climate change directly or indirectly, positively or negatively on the other hand. All that opens up many potentially important research problems. Specific theses in this topic area could be, for instance, the following themes:
The thesis could be a literature review, an empirical case study or a scientific design work.
Contact: Petri Kettunen
Specific intended learning outcomes for computer science (software engineering) graduates are life-long learning skills. Such skills and capabilities are essential in modern industrial software engineering environments. Workplace learning is a vital part of most professional software development jobs. What are the necessary life-long learning skills exactly? Why are those skills and capabilities essential in different software organizations? How can they be learned and improved? How do software professionals learn in their workplaces? What particular skills will be more critical in the future? Why?
This topic could be investigated by case studies in real-life software organizations. The specific research questions could be some of the above or possibly focused on particular skills (e.g., assessing one's own and the works of other software developers).
Contact: Petri Kettunen
Software technology is increasingly applied in non-ICT domains and environments (e.g., healthcare, financial sector, telecommunications systems, industrial automation). Such conditions bring up many considerations for effective and efficient software engineering, such as: What are the key characteristics of different use domains (e.g., complexity, reliability)? What is the scope of the particular software system? How are the software requirements engineered? What are the specific constraints (e.g., regulations) in different domains to be considered in software engineering? How to measure the success of software projects and products? What software development methods (e.g., agile) are applicable in different domains? Why/why not? What particular software-related competencies are needed (e.g., digitalization, IoT, cyber-physical systems)?
This research problem could be investigated theoretically (literature study) and empirically in industrial case studies. The actual research questions could be some of the above or formulated individually.
Contact: Petri Kettunen
We have recently started exciting research in the intersection between the research fields of self-adaptive software and computational creativity, intending to develop novel software architectures that can creatively adapt themselves in unforeseen situations. This initiative is a new research collaboration between the Discovery Group of Prof. Hannu Toivonen and ESE. There are different options for thesis work with either of the groups. To get a better idea of the topic, see Linkola et al. 2017. Aspects of Self-awareness: An Anatomy of Metacreative Systems. http://computationalcreativity.net/iccc2017/ICCC_17_accepted_submissions/ICCC-1…
Contact: Tomi Männistö
Software product and service companies need capabilities to evaluate their development decisions and customer and user value. Continuous experimentation, as an experiment-driven development approach, may reduce such development risks by iteratively testing product and service assumptions critical to the software's success. Experiment-driven development has been a crucial component of software development, especially in the last decade. Companies such as Microsoft, Facebook, Google, Amazon and many others often conduct experiments to base their development decisions on data collected from field usage.
Contact: Tomi Männistö
Digitalization is nowadays cross-cutting and inherent in most areas of businesses and organizations. Software is increasingly built-in and ubiquitous. Such trends and developments bring up many potential software research problems, such as: What does digitalization entail in different contexts? How should digitalization be taken into account in software development processes? What is the role of customer/user involvement in software-intensive systems development (e.g., digital services)? What are the key quality attributes? What new software engineering skills and competencies may be needed? What is the role of software (and IT) in general in different digital transformations (e.g., vs business process development)? How is digitalization related to traditional software engineering and computer science disciplines in different contexts? What aspects of software development and digital technologies are fundamentally new or different from the past?
This research problem could be investigated theoretically (literature study) or empirically in industrial case studies. The actual research questions could be some of the above or formulated individually.
Contact: Petri Kettunen
How is (high) performance defined and measured in software development (e.g., productivity)? Which factors affect it - positively or negatively - and how strongly (e.g., development tools, team composition)? Can we "build" high-performing software teams systematically, or do they merely emerge under certain favourable conditions? What are suitable organizational designs and environments for hosting and supporting such teams? See this link and this link for more info.
Contact: Petri Kettunen
How are innovation and creativity taken into account in software development processes and methods (e.g., Agile)? What role do customer/user input and feedback play in software(-intensive) product creation (e.g., open innovation)? How to define and measure 'innovativeness' in software development? What makes software development organizations (more) innovative? See here for more about the topic. How can Open Data Software help innovation?
Contact: Petri Kettunen