Motorsport Engineering Dissertation Ideas Autism

We welcome students interested in software engineering, empirical research and modern software technologies to do their thesis with our group!

general writing Instructions

We have written some instructions to help the students in writing their Master's theses, and seminar papers and B.Sc. theses as well. Please, read the guide before starting your thesis work: Scientific Writing – Guide of the Empirical Software Engineering Research Group

Master's Thesis Topics

Software engineering and technology are very popular areas for thesis at the Department and there are many candidates asking for thesis topics every academic year.

We provide guidande for selecting a suitable topic and provide the supervision and support needed for completing 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.

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 some 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 if you need further information.

The listing below introduces our current areas of research and potential topics for 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 the actual thesis work. Note that you can also suggest and discuss other topics within the general area of software engineering research.

NEW: MSc Thesis in a research project (funded): Designing and implementing an intelligent product release assistant system that utilises Choco solver for inference about diagnosis and repair

The release problem concerns assigning requirements to a set of releases in which the requirements are planned to be implemented. The requirements are defined in different requirements management systems such as Doors or Jira. The requirements have properties, such as priority and effort, as well as interdependencies, such as one requirement requires or excludes another one. These properties must be taken into account when making the decision about the releases, but the release problem is also a negotiation process between stakeholders. We currently have basic functionalities to represent the problem in a declarative manner and to assist in making deductions using Choco solver as the inference engine. However, there is a need for defining and demonstrating more sophisticated inference. In particular, several releases need to be taken into account, conflicting properties and stakeholder concerns need to be negotiated, and explanations for resolving inconsistencies need to be generated for stakeholders. 
Contact: Mikko Raatikainen or Tomi Männistö

Creatively self-adaptive software architectures

We have recently started exciting research in the intersection between the research fields of self-adaptive software and computational creativity, with the goal of developing novel software architectures that can creatively adapt themselves in unforeseen situations. This initiative is a new research collaboration between 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...
Contact: Tomi Männistö

Natural language processing (NLP) for managing software requirements

The problem is to study how natural language processing can be applied in requirements management in the case of existing requirements.  For example, how the quality of requirements can be improved, how the requirements can be refactored, and how dependencies or other relationships can be extracted. The study should cover literature but also include an empirical part using, e.g., Qt's Jira (see below) or some other, preferable opens source, requirements data. As a starting point, see e.g. http://dl.acm.org/citation.cfm?id=2976769 (Extracting domain models from natural-language requirements: approach and industrial evaluation, Arora et al. 2016).
Contact: Mikko Raatikainen

Diagnosis algorithms for deficiencies in requirements or domain models

Domain models are high abstraction level models that consist of, e.g., features, requirements, or high level software components or services. Such a model can be constructed manually or automatically from smaller pieces. A feature model is an example of domain model that can be constructed from requirements automatically, or it can be constructed manually.  A domain model can suffer from different kinds of deficiencies, such as a lack of relationships or other information, or conflicting information. The special focus could be on inconsistent constraints. The objective is primarily to study and apply the existing algorithms to a domain model, and assess their practical value. The work should cover an empirical part, in which algorithms are applied to an open source system. See e.g., An efficient diagnosis algorithm for inconsistent constraint sets, Felfernig et al 2012 AI EDAM.
Contact: Mikko Raatikainen

Ontologies in the systems used for requirements engineering 

Nowadays, various different systems are used to manage requirements especially for large scale projects. For example, Qt open source project uses Jira issue tracker to manage requirements. That is, a requirement is reported as an issue, the issue is checked and finally assigned to a specific release. Respectively, Eclipse open source project uses Bugzilla. Requirement engineering ontologies or more practically datamodels or schemas describe what should be documented about requirements. 

The research problem is that what kinds of data about requirements can or should be managed, and how data is managed in practice especially in an open source project.
The focus can be adjusted, but the topic can consists of the following parts:

  • A survey and synthesis of ontologies reported in literature.
  • Empirical comparison of ontologies in open source project, specifically Eclipse's Bugzilla and Qt's Jira 
  • Empirical investigation on how ontologies are actually used in the above cases. For example, Bugzilla includes a dependency field but how extensively (often) the field is actually used?

Contact: Mikko Raatikainen

Literature review on requirements engineering.

The topic is to carry out a literature review on requirements engineering. A methodologically sound review may apply the principles of a systematic literature review (Kitchenham) or a similar methodology. A more focused topic, e.g., on comparison of RE ontologies is also possible. The more detailed topic, research questions and research method shall be defined and agreed on the basis of interests.
Contact: Mikko Raatikainen

CONTINUOUS EXPERIMENTATION 

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 that are critical to the success of the software. Experiment-driven development has been a crucial component of software development in especially in 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. The topic is one of the most active research field for our research group and some recent publications are on introducing the concept and the RIGHT model. 
Contact: Sezin Yaman

ANALYSIS OF QUESTION-ANSWER THREADS IN OSS PROJECTS

Use of state-of-the-art Natural Language Processing techniques to analyze communication in Open Source projects. Focusing on the type of questions posed, by whom, the answers given, if any, and by whom. The aim is to identify question-answer patterns to bring about deeper understanding of interaction, and enable automatic responses or automatic forwarding of questions, ensuring enough support is provided. (Some readings : - Guzzi, A.; Bacchelli, A.; Lanza, M.; Pinzger, M.; van Deursen, A., "Communication in open source software development mailing lists," in Mining Software Repositories (MSR), 2013 10th IEEE Working Conference on , vol., no., pp.277-286, 2013. - https://ossmeter.com/ )
Contact: Myriam Munezero

DIGITALIZATION AND DIGITAL TRANSFORMATIONS: IMPACTS ON SOFTWARE ENGINEERING AND SYSTEMS DEVELOPMENT

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?
Contact: Petri Kettunen

Programmable World 

The emergence of millions of remotely programmable devices in our surroundings will pose signicant challenges for software developers. A roadmap from today’s cloud-centric, data-centric Internet of Things systems to the Programmable World highlights those challenges that haven’t received enough attention.
See e.g., A Roadmap to the Programmable World: Software Challenges in the IoT Era
Contact: Tommi Mikkonen

HIGH PERFORMING SOFTWARE TEAMS

How is (high) performance defined and measured in software development (e.g., productivity)? Which factors affect it - either positively or negatively - and how strongly (e.g., development tools, team composition)? Can we "build" high-performing software teams in systematic ways, or do they merely emerge under certain favorable 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

SOFTWARE INNOVATION

How is innovation and creativity taken into account in software development processes and methods (e.g., Agile)? What is the role of customer/user input and feedback 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

Engineering Dissertation Topics

A dissertation (or a final year project report) is a comprehensive technical report of the research work carried out. A dissertation must present some new, original concepts that lead to further research. The core area of a dissertation consists of a hypothesis (or a research question) upon which an investigation is conducted and, in most cases, inevitably leads to further research. A dissertation must be focused, concise and must address the research topics at every level. Also, along with research, a dissertation is expected to present complete evidence of research work in the form of research methods. Sometimes it’s hard to even know where to start. Herein, many engineering research areas, currently being sought after in the industry and academia, are suggested, including electronics, sensors technology, environmental engineering, supply chain engineering, computer science engineering, electrical engineering and civil engineering, to help you start your research.

0 thoughts on “Motorsport Engineering Dissertation Ideas Autism

Leave a Reply

Your email address will not be published. Required fields are marked *