For enquiries call:

+1-469-442-0620

banner-in1

  • Programming

Top 10 Software Engineer Research Topics for 2024

Home Blog Programming Top 10 Software Engineer Research Topics for 2024

Play icon

Software engineering, in general, is a dynamic and rapidly changing field that demands a thorough understanding of concepts related to programming, computer science, and mathematics. As software systems become more complicated in the future, software developers must stay updated on industry innovations and the latest trends. Working on software engineering research topics is an important part of staying relevant in the field of software engineering. 

Software engineers can do research to learn about new technologies, approaches, and strategies for developing and maintaining complex software systems. Software engineers can conduct research on a wide range of topics. Software engineering research is also vital for increasing the functionality, security, and dependability of software systems. Going for the Top Programming Certification course contributes to the advancement of the field's state of the art and assures that software engineers can continue to build high-quality, effective software systems.

What are Software Engineer Research Topics?

Software engineer research topics are areas of exploration and study in the rapidly evolving field of software engineering. These research topics include various software development approaches, quality of software, testing of software, maintenance of software, security measures for software, machine learning models in software engineering, DevOps, and architecture of software. Each of these software engineer research topics has distinct problems and opportunities for software engineers to investigate and make major contributions to the field. In short, research topics for software engineering provide possibilities for software engineers to investigate new technologies, approaches, and strategies for developing and managing complex software systems. 

For example, research on agile software development could identify the benefits and drawbacks of using agile methodology, as well as develop new techniques for effectively implementing agile practices. Software testing research may explore new testing procedures and tools, as well as assess the efficacy of existing ones. Software quality research may investigate the elements that influence software quality and develop approaches for enhancing software system quality and minimizing the faults and errors. Software metrics are quantitative measures that are used to assess the quality, maintainability, and performance of software. 

The research papers on software engineering topics in this specific area could identify novel measures for evaluating software systems or techniques for using metrics to improve the quality of software. The practice of integrating code changes into a common repository and pushing code changes to production in small, periodic batches is known as continuous integration and deployment (CI/CD). This research could investigate the best practices for establishing CI/CD or developing tools and approaches for automating the entire CI/CD process.

Top Software Engineer Research Topics

1. artificial intelligence and software engineering.

Intersections between AI and SE

The creation of AI-powered software engineering tools is one potential research area at the intersection of artificial intelligence (AI) and software engineering. These technologies use AI techniques that include machine learning, natural language processing, and computer vision to help software engineers with a variety of tasks throughout the software development lifecycle. An AI-powered code review tool, for example, may automatically discover potential flaws or security vulnerabilities in code, saving developers a lot of time and lowering the chance of human error. Similarly, an AI-powered testing tool might build test cases and analyze test results automatically to discover areas for improvement. 

Furthermore, AI-powered project management tools may aid in the planning and scheduling of projects, resource allocation, and risk management in the project. AI can also be utilized in software maintenance duties such as automatically discovering and correcting defects or providing code refactoring solutions. However, the development of such tools presents significant technical and ethical challenges, such as the necessity of large amounts of high-quality data, the risk of bias present in AI algorithms, and the possibility of AI replacing human jobs. Continuous study in this area is therefore required to ensure that AI-powered software engineering tools are successful, fair, and responsible.

Knowledge-based Software Engineering

Another study area that overlaps with AI and software engineering is knowledge-based software engineering (KBSE). KBSE entails creating software systems capable of reasoning about knowledge and applying that knowledge to enhance software development processes. The development of knowledge-based systems that can help software engineers in detecting and addressing complicated problems is one example of KBSE in action. To capture domain-specific knowledge, these systems use knowledge representation techniques such as ontologies, and reasoning algorithms such as logic programming or rule-based systems to derive new knowledge from already existing data. 

KBSE can be utilized in the context of AI and software engineering to create intelligent systems capable of learning from past experiences and applying that information to improvise future software development processes. A KBSE system, for example, may be used to generate code based on previous code samples or to recommend code snippets depending on the requirements of a project. Furthermore, KBSE systems could be used to improve the precision and efficiency of software testing and debugging by identifying and prioritizing bugs using knowledge-based techniques. As a result, continued research in this area is critical to ensuring that AI-powered software engineering tools are productive, fair, and responsible.

2. Natural Language Processing

Multimodality

Multimodality in Natural Language Processing (NLP) is one of the appealing research ideas for software engineering at the nexus of computer vision, speech recognition, and NLP. The ability of machines to comprehend and generate language from many modalities, such as text, speech, pictures, and video, is referred to as multimodal NLP. The goal of multimodal NLP is to develop systems that can learn from and interpret human communication across several modalities, allowing them to engage with humans in more organic and intuitive ways. 

The building of conversational agents or chatbots that can understand and create responses using several modalities is one example of multimodal NLP in action. These agents can analyze text input, voice input, and visual clues to provide more precise and relevant responses, allowing users to have a more natural and seamless conversational experience. Furthermore, multimodal NLP can be used to enhance language translation systems, allowing them to more accurately and effectively translate text, speech, and visual content.

The development of multimodal NLP systems must take efficiency into account. as multimodal NLP systems require significant computing power to process and integrate information from multiple modalities, optimizing their efficiency is critical to ensuring that they can operate in real-time and provide users with accurate and timely responses. Developing algorithms that can efficiently evaluate and integrate input from several modalities is one method for improving the efficiency of multimodal NLP systems. 

Overall, efficiency is a critical factor in the design of multimodal NLP systems. Researchers can increase the speed, precision, and scalability of these systems by inventing efficient algorithms, pre-processing approaches, and hardware architectures, allowing them to run successfully and offer real-time replies to consumers. Software Engineering training will help you level up your career and gear up to land you a job in the top product companies as a skilled Software Engineer. 

3. Applications of Data Mining in Software Engineering

Mining Software Engineering Data

The mining of software engineering data is one of the significant research paper topics for software engineering, involving the application of data mining techniques to extract insights from enormous datasets that are generated during software development processes. The purpose of mining software engineering data is to uncover patterns, trends, and various relationships that can inform software development practices, increase software product quality, and improve software development process efficiency. 

Mining software engineering data, despite its potential benefits, has various obstacles, including the quality of data, scalability, and privacy of data. Continuous research in this area is required to develop more effective data mining techniques and tools, as well as methods for ensuring data privacy and security, to address these challenges. By tackling these issues, mining software engineering data can continue to promote many positive aspects in software development practices and the overall quality of product.

Clustering and Text Mining

Clustering is a data mining approach that is used to group comparable items or data points based on their features or characteristics. Clustering can be used to detect patterns and correlations between different components of software, such as classes, methods, and modules, in the context of software engineering data. 

On the other hand, text mining is a method of data mining that is used to extract valuable information from unstructured text data such as software manuals, code comments, and bug reports. Text mining can be applied in the context of software engineering data to find patterns and trends in software development processes

4. Data Modeling

Data modeling is an important area of research paper topics in software engineering study, especially in the context of the design of databases and their management. It involves developing a conceptual model of the data that a system will need to store, organize, and manage, as well as establishing the relationships between various data pieces. One important goal of data modeling in software engineering research is to make sure that the database schema precisely matches the system's and its users' requirements. Working closely with stakeholders to understand their needs and identify the data items that are most essential to them is necessary.

5. Verification and Validation

Verification and validation are significant research project ideas for software engineering research because they help us to ensure that software systems are correctly built and suit the needs of their users. While most of the time, these terms are frequently used interchangeably, they refer to distinct stages of the software development process. The process of ensuring that a software system fits its specifications and needs is referred to as verification. This involves testing the system to confirm that it behaves as planned and satisfies the functional and performance specifications. In contrast, validation is the process of ensuring that a software system fulfils the needs of its users and stakeholders. 

This includes ensuring that the system serves its intended function and meets the requirements of its users. Verification and validation are key components of the software development process in software engineering research. Researchers can help to improve the functionality and dependability of software systems, minimize the chance of faults and mistakes, and ultimately develop better software products for their consumers by verifying that software systems are designed correctly and that they satisfy the needs of their users.

6. Software Project Management

Software project management is an important component of software engineering research because it comprises the planning, organization, and control of resources and activities to guarantee that software projects are finished on time, within budget, and to the needed quality standards. One of the key purposes of software project management in research is to guarantee that the project's stakeholders, such as users, clients, and sponsors, are satisfied with their needs. This includes defining the project's requirements, scope, and goals, as well as identifying potential risks and restrictions to the project's success.

7. Software Quality

The quality of a software product is defined as how well it fits in with its criteria, how well it performs its intended functions, and meets the needs of its consumers. It includes features such as dependability, usability, maintainability, effectiveness, and security, among others. Software quality is a prominent and essential research topic in software engineering. Researchers are working to provide methodologies, strategies, and tools for evaluating and improving software quality, as well as forecasting and preventing software faults and defects. Overall, software quality research is a large and interdisciplinary field that combines computer science, engineering, and statistics. Its mission is to increase the reliability, accessibility, and overall quality of software products and systems, thereby benefiting both software developers and end consumers.

8. Ontology

Ontology is a formal specification of a conception of a domain used in computer science to allow knowledge sharing and reuse. Ontology is a popular and essential area of study in the context of software engineering research. The construction of ontologies for specific domains or application areas could be a research topic in ontology for software engineering. For example, a researcher may create an ontology for the field of e-commerce to give common knowledge and terminology to software developers as well as stakeholders in that domain. The integration of several ontologies is another intriguing study topic in ontology for software engineering. As the number of ontologies generated for various domains and applications grows, there is an increasing need to integrate them in order to enable interoperability and reuse.

9. Software Models

In general, a software model acts as an abstract representation of a software system or its components. Software models can be used to help software developers, different stakeholders, and users communicate more effectively, as well as to properly evaluate, design, test, and maintain software systems. The development and evaluation of modeling languages and notations is one research example connected to software models. Researchers, for example, may evaluate the usefulness and efficiency of various modeling languages, such as UML or BPMN, for various software development activities or domains. 

Researchers could also look into using software models for software testing and verification. They may investigate how models might be used to produce test cases or to do model checking, a formal technique for ensuring the correctness of software systems. They may also examine the use of models for monitoring at runtime and software system adaptation.

The Software Development Life Cycle (SDLC) is a software engineering process for planning, designing, developing, testing, and deploying software systems. SDLC is an important research issue in software engineering since it is used to manage software projects and ensure the quality of the resultant software products by software developers and project managers. The development and evaluation of novel software development processes is one SDLC-related research topic. SDLC research also includes the creation and evaluation of different software project management tools and practices. 

Researchers may also check the implementation of SDLC in specific sectors or applications. They may, for example, investigate the use of SDLC in the development of systems that are more safety-critical, such as medical equipment or aviation systems, and develop new processes or tools to ensure the safety and reliability of these systems. They may also look into using SDLC to design software systems in new sectors like the Internet of Things or in blockchain technology.

Why is Software Engineering Required?

Software engineering is necessary because it gives a systematic way to developing, designing, and maintaining reliable, efficient, and scalable software. As software systems have become more complicated over time, software engineering has become a vital discipline to ensure that software is produced in a way that is fully compatible with end-user needs, reliable, and long-term maintainable.

When the cost of software development is considered, software engineering becomes even more important. Without a disciplined strategy, developing software can result in overinflated costs, delays, and a higher probability of errors that require costly adjustments later. Furthermore, software engineering can help reduce the long-term maintenance costs that occur by ensuring that software is designed to be easy to maintain and modify. This can save money in the long run by lowering the number of resources and time needed to make software changes as needed.

2. Scalability

Scalability is an essential factor in software development, especially for programs that have to manage enormous amounts of data or an increasing number of users. Software engineering provides a foundation for creating scalable software that can evolve over time. The capacity to deploy software to diverse contexts, such as cloud-based platforms or distributed systems, is another facet of scalability. Software engineering can assist in ensuring that software is built to be readily deployed and adjusted for various environments, resulting in increased flexibility and scalability.

3. Large Software

Developers can break down huge software systems into smaller, simpler parts using software engineering concepts, making the whole system easier to maintain. This can help to reduce the software's complexity and makes it easier to maintain the system over time. Furthermore, software engineering can aid in the development of large software systems in a modular fashion, with each module doing a specific function or set of functions. This makes it easier to push new features or functionality to the product without causing disruptions to the existing codebase.

4. Dynamic Nature

Developers can utilize software engineering techniques to create dynamic content that is modular and easily modifiable when user requirements change. This can enable adding new features or functionality to dynamic content easier without disturbing the existing codebase. Another factor to consider for dynamic content is security. Software engineering can assist in ensuring that dynamic content is generated in a secure manner that protects user data and information.

5. Better Quality Management

An organized method of quality management in software development is provided by software engineering. Developers may ensure that software is conceived, produced, and maintained in a way that fulfills quality requirements and provides value to users by adhering to software engineering principles. Requirement management is one component of quality management in software engineering. Testing and validation are another part of quality control in software engineering. Developers may verify that their software satisfies its requirements and is error-free by using an organized approach to testing.

In conclusion, the subject of software engineering provides a diverse set of research topics with the ability to progress the discipline while enhancing software development and maintenance procedures. This article has dived deep into various research topics in software engineering for masters and research topics for software engineering students such as software testing and validation, software security, artificial intelligence, Natural Language Processing, software project management, machine learning, Data Mining, etc. as research subjects. Software engineering researchers have an interesting chance to explore these and other research subjects and contribute to the development of creative solutions that can improve software quality, dependability, security, and scalability. 

Researchers may make important contributions to the area of software engineering and help tackle some of the most serious difficulties confronting software development and maintenance by staying updated with the latest research trends and technologies. As software grows more important in business and daily life, there is a greater demand for current research topics in software engineering into new software engineering processes and techniques. Software engineering researchers can assist in shaping the future of software creation and maintenance through their research, ensuring that software stays dependable, safe, reliable and efficient in an ever-changing technological context. KnowledgeHut’s top Programming certification course will help you leverage online programming courses from expert trainers.

Frequently Asked Questions (FAQs)

Ans: To find a research topic in software engineering, you can review recent papers and conference proceedings, talk to different experts in the field, and evaluate your own interests and experience. You can use a combination of these approaches. 

Ans: You should study software development processes, various programming languages and their frameworks, software testing and quality assurance, software architecture, various design patterns that are currently being used, and software project management as a software engineering student. 

Ans: Empirical research, experimental research, surveys, case studies, and literature reviews are all types of research in software engineering. Each sort of study has advantages and disadvantages, and the research method chosen is determined by the research objective, resources, and available data. 

Profile

Eshaan Pandey

Eshaan is a Full Stack web developer skilled in MERN stack. He is a quick learner and has the ability to adapt quickly with respect to projects and technologies assigned to him. He has also worked previously on UI/UX web projects and delivered successfully. Eshaan has worked as an SDE Intern at Frazor for a span of 2 months. He has also worked as a Technical Blog Writer at KnowledgeHut upGrad writing articles on various technical topics.

Avail your free 1:1 mentorship session.

Something went wrong

Upcoming Programming Batches & Dates

Course advisor icon

Offered MSc Thesis topics

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).

General writing Instructions

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 .

Master's Thesis Topics

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.

Earlier theses

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).

  • Exploring study paths and study success in undergraduate Computer Science studies
  • EU:n tietosuoja-asetuksen GDPR:n vaikutus suomalaisissa pk-yrityksissä 2018-2020
  • Industrial Surveys on Software Testing Practices: A Literature Review
  • Laskennallisesti raskaan simulointiohjelmistokomponentin korvaaminen reaaliaikasovelluksessa koneoppimismenetelmällä
  • Web service monitoring tool development
  • Case study: identifying developer oriented features and capabilities of API developer portals
  • Documenting software architecture design decisions in continuous software development – a multivocal literature review
  • Elinikäinen oppiminen ohjelmistotuotannon ammattilaisen keskeisenä
  • Miten huoltovarmuus toteutuu Ylen verkkouutisissa?
  • Utilizing Clustering to Create New Industrial Classifications of Finnish Businesses: Design Science Approach
  • Smoke Testing Display Viewer 5
  • Modernizing usability and development with microservices
  • On the affect of psychological safety, team leader’s behaviour and team’s gender diversity on software team performance: A literature review
  • Lean software development and remote working during COVID-19 - a case study
  • Julkaisusyklin tihentämisen odotukset, haasteet ja ratkaisut
  • Software Development in the Fintech Industry: A Literature Review
  • Design of an automated pipeline to improve the process of cross-platform mobile building and deployment
  • Haasteet toimijamallin käytössä ohjelmistokehityksessä, systemaattinen kirjallisuuskatsaus
  • Light-weight method for detecting API breakages in microservice architectures
  • Kirjallisuuskatsaus ja tapaustutkimus API-hallinnasta mikropalveluarkkitehtuurissa
  • In-depth comparison of BDD testing frameworks for Java
  • Itseohjautuvan auton moraalikoneen kehittämisen haasteet
  • Towards secure software development at Neste - a case study
  • Etuuspohjaisen eläkejärjestelyn laskennan optimointi vakuutustenhallintajärjestelmässä
  • Internal software startup within a university – producing industry-ready graduates
  • Applying global software development approaches to building high-performing software teams
  • Systemaattinen kirjallisuuskatsaus lääkinnällisistä ohjelmistoista ja ketterästä ohjelmistokehityksestä
  • Matalan kynnyksen ohjelmointialustan hyödyntäminen projektinhalinnassa
  • Uncertainty Estimation with Calibrated Confidence Scores
  • Tool for grouping test log failures using string similarity algorithms
  • Design, Implementation, and Validation of a Uniform Control Interface for Drawing Robots with ROS2
  • Assuring Model Documentation in Continuous Machine Learning System Development
  • Verkkopalvelun saavutettavuuden arviointi ja kehittäminen ohjelmistotuoteyrityksessä
  • Methods for API Governance automation: managing interfaces in a microservice system
  • Improving Web Performance by Optimizing Cascading Style Sheets (CSS): Literature Review and Empirical Findings
  • Implementing continuous delivery for legacy software
  • Using ISO/IEC 29110 to Improve Software Testing in an Agile VSE
  • An Open-Source and Portable MLOps Pipeline for Continuous Training and Continuous Deployment
  • System-level testing with microservice architecture
  • Green in software engineering: tools, methods and practices for reducing the environmental impacts of software use – a literature review
  • Machine Learning Monitoring and Maintenance: A Multivocal Literature Review
  • Green in Software Engineering: A Systematic Literature Review
  • Comparison of Two Open Source Feature Stores for Explainable Machine Learning
  • Open-source tools for automatic generation of game content
  • Verkkosovelluskehysten energiankulutus: vertaileva tutkimus Blazor WebAssembly ja JavaScript
  • Infrastruktuuri koodina -toimintatavan tehostaminen
  • Geospatial DBSCAN Hyperparameter Optimization with a Novel Genetic Algorithm Method
  • Hybrid mobile development using Ionic framework
  • Correlation of Unit Test Code Coverage with Software Quality
  • Factors affecting productivity of software development teams and individual developers: A systematic literature review
  • Case study: Performance of JavaScript on server side
  • Reducing complexity of microservices with API-Saga
  • Organizing software architecture work in a multi-team, multi-project, agile environment
  • Cloud-based visual programming BIM design workflow
  • IT SIAM toimintojen kehitysprojekti
  • PhyloStreamer: A cloud focused application for integrating phylogenetic command-line tools into graphical interfaces
  • Evaluation of WebView Rendering Performance in the Context of React Native
  • A Thematic Review of Preventing Bias in Iterative AI Software Development
  • Adopting Machine Learning Pipeline in Existing Environment

Current topic areas of interest to the research group (see below for the details)

Open source-related topic areas in collaboration with daimler truck.

  • Open Chain: Developing the Journey to Open Chain Compliance at the example of Daimler Truck
  • How should an industrial company (for example, Daimler Truck) leverage open source software: Building a framework with different dimensions, from efficient governance to value in inner source and open source projects
  • How can an organization efficiently incentivize inner-source activities? (on different levels, culture, infrastructure, governance, regulations & commitments.)
  • How can an industrial organization leverage value from actively engaging in FOSS activities (especially on active creation and contribution)
  • How can spillovers help Industrial companies to educate the rare resources but also attract and retain talent? Ref: Gandal, N., Naftaliev, P., & Stettner, U. (2017). Following the code: spillovers and knowledge transfer. Review of Network Economics , 16 (3), 243-267. Abstract: Knowledge spillovers in Open Source Software (OSS) can occur via two channels: In the first channel, programmers take knowledge and experience gained from one OSS project they work on and employ it in another OSS project they work on. In the second channel, programmers reuse software code by taking code from an OSS project and employing it in another. We develop a methodology to measure software reuse in a large OSS network at the micro level and show that projects that reuse code from other projects have higher success. We also demonstrate knowledge spillovers from projects connected via common programmers.

If interested, contact Tomi Männistö for further information

Hybrid software development (TOPIC AREA)

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:

  • How has the COVID-19 pandemic affected different software engineering activities (negatively or positively)? What are the mechanisms?
  • What adaptations and countermeasures have different software organizations devised to cope with the challenges?
  • What could be learned from them for future hybrid software development processes, practices and tools?

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 ( [email protected] ).

Digital Twin of Yourself

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.

Software engineering and climate change (TOPIC AREA)

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:

  • Green IT (e.g., engineering new software with energy-efficiency requirements in order to reduce or limit power consumption and consequently the carbon footprint)
  • Carbon neutrality goals of software companies (e.g., software development organizations decreasing physical travelling in order to reduce their greenhouse gas emissions)
  • Developing software products or services for measuring climate change-related factors

The thesis could be a literature review, an empirical case study or a scientific design work.

Life-long learning for the modern software engineering profession

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 development in non-ICT contexts (TOPIC AREA)

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

Creatively self-adaptive software architectures (TOPIC AREA)

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ö

Continuous Experimentation (TOPIC AREA)

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 and digital transformations: impacts on software engineering and systems development (TOPIC AREA)

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

High-performing software teams (TOPIC AREA)

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

Software innovation (TOPIC AREA)

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

Grad Coach

Research Topics & Ideas: CompSci & IT

50+ Computer Science Research Topic Ideas To Fast-Track Your Project

IT & Computer Science Research Topics

Finding and choosing a strong research topic is the critical first step when it comes to crafting a high-quality dissertation, thesis or research project. If you’ve landed on this post, chances are you’re looking for a computer science-related research topic , but aren’t sure where to start. Here, we’ll explore a variety of CompSci & IT-related research ideas and topic thought-starters, including algorithms, AI, networking, database systems, UX, information security and software engineering.

NB – This is just the start…

The topic ideation and evaluation process has multiple steps . In this post, we’ll kickstart the process by sharing some research topic ideas within the CompSci domain. This is the starting point, but to develop a well-defined research topic, you’ll need to identify a clear and convincing research gap , along with a well-justified plan of action to fill that gap.

If you’re new to the oftentimes perplexing world of research, or if this is your first time undertaking a formal academic research project, be sure to check out our free dissertation mini-course. In it, we cover the process of writing a dissertation or thesis from start to end. Be sure to also sign up for our free webinar that explores how to find a high-quality research topic. 

Overview: CompSci Research Topics

  • Algorithms & data structures
  • Artificial intelligence ( AI )
  • Computer networking
  • Database systems
  • Human-computer interaction
  • Information security (IS)
  • Software engineering
  • Examples of CompSci dissertation & theses

Topics/Ideas: Algorithms & Data Structures

  • An analysis of neural network algorithms’ accuracy for processing consumer purchase patterns
  • A systematic review of the impact of graph algorithms on data analysis and discovery in social media network analysis
  • An evaluation of machine learning algorithms used for recommender systems in streaming services
  • A review of approximation algorithm approaches for solving NP-hard problems
  • An analysis of parallel algorithms for high-performance computing of genomic data
  • The influence of data structures on optimal algorithm design and performance in Fintech
  • A Survey of algorithms applied in internet of things (IoT) systems in supply-chain management
  • A comparison of streaming algorithm performance for the detection of elephant flows
  • A systematic review and evaluation of machine learning algorithms used in facial pattern recognition
  • Exploring the performance of a decision tree-based approach for optimizing stock purchase decisions
  • Assessing the importance of complete and representative training datasets in Agricultural machine learning based decision making.
  • A Comparison of Deep learning algorithms performance for structured and unstructured datasets with “rare cases”
  • A systematic review of noise reduction best practices for machine learning algorithms in geoinformatics.
  • Exploring the feasibility of applying information theory to feature extraction in retail datasets.
  • Assessing the use case of neural network algorithms for image analysis in biodiversity assessment

Topics & Ideas: Artificial Intelligence (AI)

  • Applying deep learning algorithms for speech recognition in speech-impaired children
  • A review of the impact of artificial intelligence on decision-making processes in stock valuation
  • An evaluation of reinforcement learning algorithms used in the production of video games
  • An exploration of key developments in natural language processing and how they impacted the evolution of Chabots.
  • An analysis of the ethical and social implications of artificial intelligence-based automated marking
  • The influence of large-scale GIS datasets on artificial intelligence and machine learning developments
  • An examination of the use of artificial intelligence in orthopaedic surgery
  • The impact of explainable artificial intelligence (XAI) on transparency and trust in supply chain management
  • An evaluation of the role of artificial intelligence in financial forecasting and risk management in cryptocurrency
  • A meta-analysis of deep learning algorithm performance in predicting and cyber attacks in schools

Research topic idea mega list

Topics & Ideas: Networking

  • An analysis of the impact of 5G technology on internet penetration in rural Tanzania
  • Assessing the role of software-defined networking (SDN) in modern cloud-based computing
  • A critical analysis of network security and privacy concerns associated with Industry 4.0 investment in healthcare.
  • Exploring the influence of cloud computing on security risks in fintech.
  • An examination of the use of network function virtualization (NFV) in telecom networks in Southern America
  • Assessing the impact of edge computing on network architecture and design in IoT-based manufacturing
  • An evaluation of the challenges and opportunities in 6G wireless network adoption
  • The role of network congestion control algorithms in improving network performance on streaming platforms
  • An analysis of network coding-based approaches for data security
  • Assessing the impact of network topology on network performance and reliability in IoT-based workspaces

Free Webinar: How To Find A Dissertation Research Topic

Topics & Ideas: Database Systems

  • An analysis of big data management systems and technologies used in B2B marketing
  • The impact of NoSQL databases on data management and analysis in smart cities
  • An evaluation of the security and privacy concerns of cloud-based databases in financial organisations
  • Exploring the role of data warehousing and business intelligence in global consultancies
  • An analysis of the use of graph databases for data modelling and analysis in recommendation systems
  • The influence of the Internet of Things (IoT) on database design and management in the retail grocery industry
  • An examination of the challenges and opportunities of distributed databases in supply chain management
  • Assessing the impact of data compression algorithms on database performance and scalability in cloud computing
  • An evaluation of the use of in-memory databases for real-time data processing in patient monitoring
  • Comparing the effects of database tuning and optimization approaches in improving database performance and efficiency in omnichannel retailing

Topics & Ideas: Human-Computer Interaction

  • An analysis of the impact of mobile technology on human-computer interaction prevalence in adolescent men
  • An exploration of how artificial intelligence is changing human-computer interaction patterns in children
  • An evaluation of the usability and accessibility of web-based systems for CRM in the fast fashion retail sector
  • Assessing the influence of virtual and augmented reality on consumer purchasing patterns
  • An examination of the use of gesture-based interfaces in architecture
  • Exploring the impact of ease of use in wearable technology on geriatric user
  • Evaluating the ramifications of gamification in the Metaverse
  • A systematic review of user experience (UX) design advances associated with Augmented Reality
  • A comparison of natural language processing algorithms automation of customer response Comparing end-user perceptions of natural language processing algorithms for automated customer response
  • Analysing the impact of voice-based interfaces on purchase practices in the fast food industry

Research Topic Kickstarter - Need Help Finding A Research Topic?

Topics & Ideas: Information Security

  • A bibliometric review of current trends in cryptography for secure communication
  • An analysis of secure multi-party computation protocols and their applications in cloud-based computing
  • An investigation of the security of blockchain technology in patient health record tracking
  • A comparative study of symmetric and asymmetric encryption algorithms for instant text messaging
  • A systematic review of secure data storage solutions used for cloud computing in the fintech industry
  • An analysis of intrusion detection and prevention systems used in the healthcare sector
  • Assessing security best practices for IoT devices in political offices
  • An investigation into the role social media played in shifting regulations related to privacy and the protection of personal data
  • A comparative study of digital signature schemes adoption in property transfers
  • An assessment of the security of secure wireless communication systems used in tertiary institutions

Topics & Ideas: Software Engineering

  • A study of agile software development methodologies and their impact on project success in pharmacology
  • Investigating the impacts of software refactoring techniques and tools in blockchain-based developments
  • A study of the impact of DevOps practices on software development and delivery in the healthcare sector
  • An analysis of software architecture patterns and their impact on the maintainability and scalability of cloud-based offerings
  • A study of the impact of artificial intelligence and machine learning on software engineering practices in the education sector
  • An investigation of software testing techniques and methodologies for subscription-based offerings
  • A review of software security practices and techniques for protecting against phishing attacks from social media
  • An analysis of the impact of cloud computing on the rate of software development and deployment in the manufacturing sector
  • Exploring the impact of software development outsourcing on project success in multinational contexts
  • An investigation into the effect of poor software documentation on app success in the retail sector

CompSci & IT Dissertations/Theses

While the ideas we’ve presented above are a decent starting point for finding a CompSci-related research topic, they are fairly generic and non-specific. So, it helps to look at actual dissertations and theses to see how this all comes together.

Below, we’ve included a selection of research projects from various CompSci-related degree programs to help refine your thinking. These are actual dissertations and theses, written as part of Master’s and PhD-level programs, so they can provide some useful insight as to what a research topic looks like in practice.

  • An array-based optimization framework for query processing and data analytics (Chen, 2021)
  • Dynamic Object Partitioning and replication for cooperative cache (Asad, 2021)
  • Embedding constructural documentation in unit tests (Nassif, 2019)
  • PLASA | Programming Language for Synchronous Agents (Kilaru, 2019)
  • Healthcare Data Authentication using Deep Neural Network (Sekar, 2020)
  • Virtual Reality System for Planetary Surface Visualization and Analysis (Quach, 2019)
  • Artificial neural networks to predict share prices on the Johannesburg stock exchange (Pyon, 2021)
  • Predicting household poverty with machine learning methods: the case of Malawi (Chinyama, 2022)
  • Investigating user experience and bias mitigation of the multi-modal retrieval of historical data (Singh, 2021)
  • Detection of HTTPS malware traffic without decryption (Nyathi, 2022)
  • Redefining privacy: case study of smart health applications (Al-Zyoud, 2019)
  • A state-based approach to context modeling and computing (Yue, 2019)
  • A Novel Cooperative Intrusion Detection System for Mobile Ad Hoc Networks (Solomon, 2019)
  • HRSB-Tree for Spatio-Temporal Aggregates over Moving Regions (Paduri, 2019)

Looking at these titles, you can probably pick up that the research topics here are quite specific and narrowly-focused , compared to the generic ones presented earlier. This is an important thing to keep in mind as you develop your own research topic. That is to say, to create a top-notch research topic, you must be precise and target a specific context with specific variables of interest . In other words, you need to identify a clear, well-justified research gap.

Fast-Track Your Research Topic

If you’re still feeling a bit unsure about how to find a research topic for your Computer Science dissertation or research project, check out our Topic Kickstarter service.

You Might Also Like:

Research topics and ideas about data science and big data analytics

Investigating the impacts of software refactoring techniques and tools in blockchain-based developments.

Steps on getting this project topic

Joseph

I want to work with this topic, am requesting materials to guide.

Yadessa Dugassa

Information Technology -MSc program

Andrew Itodo

It’s really interesting but how can I have access to the materials to guide me through my work?

Sorie A. Turay

That’s my problem also.

kumar

Investigating the impacts of software refactoring techniques and tools in blockchain-based developments is in my favour. May i get the proper material about that ?

BEATRICE OSAMEGBE

BLOCKCHAIN TECHNOLOGY

Nanbon Temasgen

I NEED TOPIC

Submit a Comment Cancel reply

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

Save my name, email, and website in this browser for the next time I comment.

  • Print Friendly

Topics for Theses and Projects

Our topics for bachelor and master theses as well as projects are from the areas of software engineering and programming languages. The concrete topics for theses are based on our research interests  and allow students to make their own contribution to a field of research. Our main target group are students of Computer Science, Software Engineering, Media Informatics, Artificial Intelligence, and Cognitive Systems.

This page offers a selection of topics and subject areas. For more information, please do not hesitate to contact the respective supervisor. In addition, we are open to your own suggestions for topics.

(Legend - B: Bachelor Thesis, M: Master Thesis, P: Project)

Outline of a Bachelor or Master Thesis

Topic and proposal.

After the initial contact, the topic and the contents of the Bachelor or Master thesis are agreed upon and recorded in a proposal. The proposal has proven to be a valueable tool for risk minimization and planning of the thesis and includes:

  • the context of the thesis
  • the research question
  • the state of research
  • the solution idea
  • the methodology and the evaluation plan

Much of the proposal can be reused in the final thesis.

Interim Presentation

In the course of the interim presentation, students learn to present and communicate results. In addition, the interim presentation can be used to reflect on the status of the thesis so far and to respond to feedback.

Submission and Final Presentation

The submission of the final thesis and the final presentation formally conclude the bachelor or master thesis.

(Legend - B: Bachelor thesis, M: Master thesis, P: Project)

Human-centered Software Engineering

Software variability and evolution, constraint handling rules, dynamic and static program analysis, p/b/m: static analysis for reflective or self modifying code (sihler, tichy).

P/B/M: Static Analysis for Reflective or Self Modifying Code (Sihler, Tichy)

Context Most static analyzers rely on static dataflow analysis to detect problems like possible null pointer exceptions in code [5]. However, analyzers are usually unable to handle reflective or self-modifying code (e.g., Java Agents , Java Reflection , R's meta-functions [6]. While this is fine for languages in which such constructs are rare or discouraged, they are 1) used quite often in the R programming language and 2) pose an interesting problem to solve.

Problem As a basis [3], I have previously created the static dataflow analyzer and program slicer flowR for the R programming language. However, it is currently unable to deal with these reflective and code-modifying constructs like eval , body , quote , and parse in its static dataflow graph. While handling such constructs statically may be infeasible in the general case, we first want to focus on a set of common cases that appear frequently.

  • Develop a concept to represent code-modifications and lazy evaluation (within flowR 's dataflow graph). For example, to represent a function that has the default values of its arguments or the contents of its body modified.
  • Create a proof of concept implementation for this concept in flowR .

Related Work and Further Reading

  • K. Cooper and L Torczon. Engineering a Compiler. ( ISBN : 978-0-12-818926-9)
  • U. Khedker, A. Sanyal, and B. Sathe. Data Flow Analysis: Theory and Practice. ( ISBN : 978-0-8493-3251-7)
  • F. Sihler. Constructing a Static Program Slicer for R Programs.
  • A. Ko and B. Myers. Finding causes of program output with the Java Whyline.
  • SonarQube, Sonar.
  • Anckaert, B., Madou, M., De Bosschere, K. A Model for Self-Modifying Code.

If you want to, you can have a first look at flowR for yourself: https://github.com/Code-Inspect/flowr .

Contact and More If you are interested and/or have any questions, feel free to contact me any time. We can discuss the topic further and try to adapt it to your personal preferences. Florian Sihler

P/B/M: Dynamic Dataflow Analysis for R Programs (Sihler, Tichy)

P/B/M: Dynamic Dataflow Analysis for R Programs (Sihler, Tichy)

Dataflow analysis is a very useful and important technique, used, for example, as part of compiler optimizations [1,2] and program comprehension techniques (e.g., slicing [3] or debugging [4]).

Although there is no single dataflow analysis (each analysis answers a slightly different question), dataflow analyzers usually identify how variables in a program relate to each other (e.g., which definitions a variable read my refer to).

Dataflow Analyzers can be split into:

  • static analyzers if they use only the source code of a program as input, and
  • dynamic analyzers if they use a specific program execution as input.

While static analysis is usually harder, it has lower application constraints as 1) it does not require inputs (from users, files, network-messages, ...), and 2) we do not have to deal with getting a potentially unknown program running. However, dynamic analyzers are usually much more valuable during debugging as they know the path the program took, the potential user inputs, the contents of external files, and more.

Within my master's thesis [3] that is now the basis of my PhD, I have created the static program slicer flowR for the R programming language, which includes a static dataflow analyzer. However, it offers no dynamic dataflow analysis and does not even attempt to run the respective input program.

  • Enrich flowR 's existing pipeline of parsing , normalizing , static dataflow extraction , static slicing , and code reconstruction with a dynamic dataflow analysis step.
  • Given a program (for starters without any external dependencies), the dynamic analysis should be able to determine the execution trace of the program (e.g., branches taken, loops entered and iteration requiered) with the help of R's debugging capabilities and active bindings [5].
  • From that, it should be able to infer which variable references read which values (e.g., which definition of a variable was read), what functions have been called, ...
  • The planned evaluation is to compare the results of the dynamic analysis with the results of the static analysis and to determine the differences.
  • R, Active Bindings

Contact and More

If you are interested and/or have any questions, feel free to contact me any time. We can discuss the topic further and try to adapt it to your personal preferences. Florian Sihler

P/M: Can ChatGPT Be Used as a Linter? (Sihler, Tichy)

P/M: Can ChatGPT Be Used as a Linter? (Sihler, Tichy)

Static Program Analysis is a well-researched field [1,2], useful in various domains like compiler optimizations [3] and linting [4]. However, static analysis is unable to find semantic smells and bugs and requires a lot of work to set up. On the other hand, current large language models (LLMs, like ChatGPT) can quickly answer questions about code and find (potential) semantic and syntactic bugs, with an easy-to-use interface and setup required.

Even though LLMs are easy to use and quick to give an answer, this answer is not always correct [5]. Furthermore, with their hype being relatively new, there is not much research on how their hallucinations hinder linting tasks or make them outright harmful. To address that, we want to analyze common smells and errors in real-world code (including those that common linters can not find), synthetically generate code with these smells and errors, and then analyze how well LLMs can detect as well as "fix" them.

  • Identify common smells and errors in real-world R code.
  • Synthetically generate code with these smells and errors.
  • Analyze/Classify how well LLMs can detect and fix those problems.
  • García-Ferreira et al., Static analysis: a brief survey, 2016
  • Anjana Gosain et al., Static Analysis: A Survey of Techniques and Tools, 2015
  • Hester et al., lintr: A 'Linter' for R Code, 2023
  • Zhang et al., Siren’s Song in the AI Ocean: A Survey on Hallucination in Large Language Models, 2023

[RESERVED] P/B/M: Pointer Analysis for Static Dataflow (Sihler, Tichy)

[RESERVED] P/B/M: Pointer Analysis for Static Dataflow (Sihler, Tichy)

Context Dataflow analysis is a very useful and important technique, used, for example, to

  • allow compiler optimizations [1,2],
  • to aide program comprehension (e.g.,  [3] or debugging [4]), and
  • perform code analysis (e.g., to locate possible null pointer exceptions [5]).

A static dataflow analyzer takes the source code of a program as its input and identifies how variables in a program relate to each other (e.g., which definitions a variable read my refer to).

However, this can happen on arbitrary granularity levels. For example, when reading a single cell of an array, a coarsely grained analyzer may refer to any potential write to the array, while a more detailed analysis could restrict the definitions to those that modify the respective entry.

Problem Within my master's thesis [3], which is now the basis of my PhD, I have created the static program slicer flowR for the R programming language, which includes a static dataflow analyzer. However, it does currently not differentiate the individual cells of arrays or the attributes of an object (i.e., it does not analyze pointers) [6].

  • Differentiate Cells of a Vector with constant access
  • Differentiate Data-Frames, Slots, and other pointer-types
  • Track Aliases to identify when pointers relate to each other
  • Evaluate the achieved reduction in the size of the resulting slices
  • M. Hind. Pointer Analysis: Haven’t We Solved This Problem Yet?

Relaxed Conformance Editing

M: freedom vs. restrictions: where is the sweet spot of graphical modeling tools.

Graphical modeling is a widely used task in software and systems engineering. Similar to how an IDE assists with programming, graphical modeling tools are intended to help create models as efficiently as possible. Basically, two types of graphical modeling tools can be distinguished: Either the tool is tailored to a graphical language and restricts the user in drawing in such a way that only syntactically correct models can be drawn (correct-by-constructionn approach), or one has a pure drawing tool that offers no language-specific support but allows maximum freedom. As so often, the optimum lies somewhere in between.

In this master thesis, a prototypical implementation of a graphical modeling tool in React is to be adapted in such a way that it is possible to turn various support mechanisms (and also restrictions) on or off. A user study will then be conducted with this customizable tool, with the goal of finding the sweet spot between maximum restriction and maximum freedom. In order not to make the study too large, only a few useful combinations will be compared.

  • Familiarization with the corresponding tool
  • Development and implementation of meaningful support or restriction options
  • Conducting a user study (study design, creating user tasks, implementation, evaluation)

Needed skills

  • Javascript/Typescript knowledge
  • Experiences with React
  • Interest in usability and study design

Further reading

  • Master thesis Leander Nachreiner

Alexander Raschke

Self-adaptive Systems

P: develop visualization for self-adaptive cloud systems (straub, tichy).

Self-Adaptive systems are systems that adjust themselves to maintain or improve their performance in response to changes in their environment and operational conditions, thereby ensuring continued effectiveness, reliability, and efficiency. Self-adaptive systems are diverse and multifaceted, with applications extending across numerous fields. In our project, we concentrate on the cloud-native domain, with a special emphasis on the explainability aspect of self-adaptation. This involves delving into how these systems can not only adjust autonomously to changing conditions but also provide transparent and understandable explanations for their adaptations, ensuring clarity and trust in their operations.

Understanding the intricacies of self-adaptive systems, particularly in the cloud-native space, is a complex task. The autonomous adjustments these systems make in response to environmental changes can be intricate and opaque. This complexity underscores the necessity for effective visualization strategies. Visualizations can range from simple schematic diagrams that illustrate system workflows, to advanced interactive visualizations that provide real-time insights into system dynamics. By employing visualization techniques like this, we aim to make the processes of self-adaptation in cloud-native systems not only more transparent but also more accessible to a broader audience, enhancing comprehension and facilitating informed oversight.

In this project you will integrate such an visualization approch. The implementation language is Typescript.

P: Develop Visualization for Self-Adaptive Cloud Systems (Straub, Tichy)

M: Data-Queries for Basic Explanations by LLMs (Straub, Tichy)

Self-adaptive systems represent a significant leap in technology. These systems are capable of adjusting their behavior in response to changes in their environment or in their own state. This adaptability makes them incredibly powerful, yet also complex. Large Language Models (LLMs) have shown remarkable proficiency in generating human-like text, offering potential as tools for simplifying and explaining complex technical concepts We plan to use the capabilities of LLMs to explain these complex self-adaptive systems. However, a significant challenge arises: how can these LLMs access detailed and up-to-date information about the self-adaptive systems they are explaining?

In this Master thesis, the different possibilities of enabeling the LLM to access the required data need to be explored. An example would be Retrieval Augmented Generation (RAG), which is already implemented in Libraries like LangChain. A proptotype implementation has to be created and connected with the MENTOR project. Finally, the appraoch has to be evaluted.

Tasks/Goals

  • Familiarization with the possible approaches
  • Implement a Prototype
  • Evaluate the Implementation

Software Configuration

Feature model analysis, b: cleaning feature models (krieter, thüm).

A feature model of a configurable system can contain several anomalies, such as dead features, false-optional feature, or redundant constraints. There exist automated analyses for detecting these kinds of faults.

While many anomalies can be detected automatically, fixing them often requires a decision by a user on how to resolve the problem. The aim of this thesis is to investigate how and to what degree this process can be automatize.

  • Compare and discuss suitable strategies for cleaning (e.g., which redundant constraints to remove)
  • Implement promising strategies in FeatureIDE

Sebastian Krieter

M: Efficient Analyses for Hidden Features (Krieter, Thüm)

Hidden features can be used to mark implementation artifacts that are not configurable by end users, but are automatically (de-)selected by the configuration editor according to the feature model. A hidden feature is called indeterminate if there is at least one configuration in which all regular features are defined but a value for the hidden feature cannot be deduced.

Indeterminate hidden features can cause a problem during configuration. Thus, these must be detected beforehand, which is a time-consuming task. The aim of the thesis is to optimize the current analysis for finding indeterminate hidden features such that it runs faster.

  • Improve the current analysis for finding indeterminate hidden features in FeatureIDE
  • Evaluate the new method

M: Comparing Different Variants for T-Wise Interaction Coverage (Böhm, Krieter, Thüm)

Given a list of configurations for a feature model (i.e., a sample ), we often want to determine certain properties of it. For instance, for testing purposes, it is interesting how many potential feature interactions are covered by the sample. To this end, there exists a metric to measure t-wise interaction coverage . However, in literature the definition of this metric is often ambiguous or only given implicitly.

Due to the ambiguous definition of the coverage metric, there are multiple different variants. For example, one could include or exclude core and dead features for counting feature interaction. The same is true for abstract features. Other design decisions for the metric are whether to merge atomic sets an whether to count invalid interactions. In general, it is unclear by how much the choice of a specific metric variant impacts the results and what metric is best used in which case. This makes measuring coverage difficult and hampers comparability of new metrics and sampling tools in literature and in practice.

  • Research which variants of the metric are used in literature
  • Evaluate the impact of using different variants on the same sample

Formal Languages for Variability

P/b/m: survey on sharing metrics for formal variability languages (bittner, thüm).

P/B/M: Survey on Sharing Metrics for Formal Variability Languages (Bittner, Thüm)

When it comes to developing multi-variant software systems, software product-line engineering and analyses avoid duplicate computational effort by exploiting similarities between the different software variants. For example, in the above example the statement "lol;" is shared between the software variants including or excluding feature A . To describe and analyze variability, formal languages have been proposed that allow semantic-preserving translations to refactor expressions to increase sharing. However, the notion of having "more sharing" in a formula remains vague most of the time or different metrics have been used in the literature to measure sharing.

  • Literature survey on sharing metrics (for formal variability languages)
  • Qualitative comparison between sharing metrics
  • Definition of new metrics if necessary
  • Perhaps empirical evaluation of different metrics for real systems

Related Work

  • The Choice Calculus

A Formal Framework of Software Product Line Analyses

Paul Bittner

Thomas Thüm

Constraint-Programmierung und Constraint Handling Rules

P/b/m: graph tool for mason marks (frühwirth).

We are developing a rule-based implementation of a tool to analyse and generate graphs. It is used in the domain of mason’s marks. For thousands of years, stonemasons have been inscribing these symbolic signs on dressed stone. Geometrically, mason’s marks are line drawings. They consist of a pattern of straight lines, sometimes circles and arcs. We represent mason’s marks by connected planar graphs. Our prototype tool for analysis and generation of graphs is written in the rule-based declarative language Constraint Handling Rules. One or several of following features could be improved in this proposed work:

Goals/Tasks

  • improve the vertex-centric logical graph representation, i.e. adding arcs, colors, labels,
  • encode existing mason marks either by hand, from images or import from existing databases,
  • recognize (sub)graphs and patterns in a graph, in particular (self-)similarities and correlations between graphs,
  • perform classical algorithms on graphs like shortest paths,
  • derive properties and statistics from graphs,
  • generate (randomly or exhaustively) and draw graphs from given constrained subgraphs based on properties and statistics.
  • Thom Frühwirth: Rule-Based Drawing, Analysis and Generation of Graphs for Mason's Mark Design, 2018

Prerequesites

  • Good knowledge of Prolog and CHR
  • Lecture Rule-based Programming

Thom Frühwirth , Sascha Rechenberger

P/B/M: Graph Tool for Mason Marks (Frühwirth)

P/B/M: Justifications in CHR for Logical Retraction in Dynamic Algorithms (Frühwirth)

When algorithms are written in CHR, constraints represent both data and operations. CHR is already incremental by nature, i.e. constraints can be added at runtime. Logical retraction adds decrementality. Hence any algorithm written in CHR with justifications will become fully dynamic. Operations can be undone and data can be removed at any point in the computation without compromising the correctness of the result.

A straightforward source-to-source transformation can introduce justifications for user-defined constraints into the CHR. Then a scheme of two rules suffices to allow for logical retraction (deletion, removal) of constraints during computation. Without the need to recompute from scratch, these rules remove not only the constraint but also undo all consequences of the rule applications that involved the constraint.

Further work should investigate implementation, dynamic algorithms and application domains of CHR with justifications:

  • research how logical as well as classical algorithms implemented in CHR behave when they become dynamic.
  • improve the implementation, optimize and benchmark it.
  • support detection and repair of inconsistencies (for error diagnosis), - support nonmonotonic logical behaviors (e.g. default logic, abduction, defeasible reasoning).
  • Thom Frühwirth: Justifications in Constraint Handling Rules for Logical Retraction in Dynamic Algorithms.
  • CHR translator

Prerequisites

  • Interest to learn about formal analysis methods of rule-based languages

P/B/M: Justifications in CHR for Logical Retraction in Dynamic Algorithms (Frühwirth)

B/M: Non-Termination Analysis of Recursive Rules (Frühwirth)

Extend the analysis techniques and/or the associated tool from the following two research papers:

A dynamic program analysis of the non-termination problem for recursion in the Constraint Handling Rules (CHR) language: A simple program transformation for recursive rules in CHR was introduced that produces one or more adversary rules. When the rules are executed together, a non-terminating computation may arise. It was shown that any non-terminating computation of the original rule contains this witness computation.

  • Thom Fruehwirth: A Devil's Advocate against Termination of Direct Recursion, PPDP 2015.
  • Transformation Tool available (use "Devil" options).

A static program analysis of the non-termination problem for recursion in the Constraint Handling Rules (CHR) language: Theorems with so-called misbehavior conditions for potential non-termination and failure (as well as definite termination) of linear direct recursive simplification rules are given. Logical relationships between the constraints in a recursive rule play a crucial role in this kind of program analysis.

  • Thom Fruehwirth: Why Can’t You Behave? Non-Termination Analysis of Direct Recursive Rules with Constraints, RuleML 2016
  • Lecture "Rule-Based Programming"

B/M: Non-Termination Analysis of Recursive Rules (Frühwirth)

P/B/M: Localized Constraint Stores (Frühwirth)

In distributed computation, data and processes are distributed over a network of stores and processing units. In a constraint-based programming language paradigm this means that constraints have to be annotated with spatial information defining their whereabouts. Obvious topologies are a distinction between global and local stores as well as trees. Localized constraints can also be used for so-called reified (or meta-)constraints (e.g. https://sicstus.sics.se/sicstus/docs/4.0.8/html/sicstus/Reified-Constraints.html ), to store justifications and for spatial reasoning.

In Constraint Handling Rules (CHR), there is a simple source-to-source program transformation that adds local annotations to constraints.

The scope of the work includes implementation of such a transformation, their application and/or static program analysis to derive distribution patterns, i.e. to localize constraint computation while minimizing communication overhead.

  • Edmund S. L. Lam, Iliano Cervesato and Nabeeha Fatima: CoMingle: Distributed Logic Programming for Decentralized Mobile Ensembles. In proceedings of International Conference on Distributed Computing Techniques (Coordination'15)
  • A. Raffaeta and T. Frühwirth: Spatio-Temporal Annotated Constraint Logic Programming, Third International Symposium on Practical Aspects of Declarative Languages (PADL'01), Las Vegas, USA, March 2001.
  • T. Frühwirth: Entailment Simplification and Constraint Constructors for User-Defined Constraints, Third Workshop on Constraint Logic Programming (WCLP 93), Marseille, France, March 1993.

P/B/M: Localized Constraint Stores (Frühwirth)

P/B/M: Invariant Checking and Generation by Confluence and Completion (Frühwirth)

Invariants (or assertions, properties, conditions) annotate program text and express static and dynamic properties of a program's execution. Invariants can be expressed as logical relations (predicates) over the program's variables. In the context of constraint-programming and Constraint Handling Rules (CHR), they amount to constraints. These can be readily added to the program to enforce the invariants. By comparing the program with and without invariants expressed as constraints using established program analysis techniques for CHR, namely confluence and program equivalence, we can check if the invariants hold in the program.

Furthermore, invariants can be strenghened and even be generated by adapting the so-called completion method (that is normally used to generate additional rules to make a CHR program confluent).

  • Johannes Langbein, Frank Raiser, Thom Frühwirth: A state equivalence and confluence checker for CHR. In P. Van Weert and L. De Koninck, editors, CHR '10: Proc. 7th Workshop on Constraint Handling Rules. K.U.Leuven, Department of Computer Science, Technical report CW 588, July 2010.
  • Lecture "Rule-based Programming"

B/M: Program Slicing by Confluence and Completion (Frühwirth)

Program slicing is a program anaylsis technique whereby one extracts properties and relationships of variables in a program by removing from the program all statements that do not effect the assignments of the variables. In the context of constraint programming and Constraint Handling Rules that deal with logical relations (predicates) this amounts to the logical operation of variable projection. This means that we remove unwanted variables that are not of interest from the program by program transformation. This transformation can be accomplished by adapting the technique of "completion". It is usually used to make a non-confluent program confluent.

  • Johannes Langbein, Frank Raiser, Thom Frühwirth. A state equivalence and confluence checker for CHR. In P. Van Weert and L. De Koninck, editors, CHR '10: Proc. 7th Workshop on Constraint Handling Rules. K.U.Leuven, Department of Computer Science, Technical report CW 588, July 2010.
  • Lecture "Rule-based Programming

B/M: Program Slicing by Confluence and Completion (Frühwirth)

M: Repeated Recursion Unfolding for Super-Linear Speedup (Frühwirth)

Repeated recursion unfolding is a new approach that repeatedly unfolds a recursion with itself and simplifies it while keeping all unfolded rules. Each unfolding doubles the number of recursive steps covered. This reduces the number of recursive rule applications to its logarithm at the expense of introducing a logarithmic number of unfolded rules to the program. Efficiency crucially depends on the amount of simplification inside the unfolded rules. A super-linear speedup is provably possible in the best case, i.e. speedup by more than a constant factor. The optimization can lower the time complexity class of a program.

The goal is to implement this optimization scheme as a program transformation in the programming language of choice. If necessary, the scheme should be transferred from recursion to iteration constructs such as loops.

  • Thom Frühwirth: Runtime Repeated Recursion Unfolding in CHR: A Just-In-Time Online Program Optimization Strategy That Can Achieve Super-Linear Speedup, 2023 (DOI: 10.48550/arXiv.2307.02180)

Prerequisite

  • Excellent knowledge and programming skills in the choosen programming language.

M: CHR Abstract Machine (Rechenberger, Frühwirth)

Prolog (WAM) and then Java (JVM) popularized the concept of an abstract (or virtual) machine to implement programming languages in a systematic, portable yet efficient way. Such a machine shall be developed for CHR.

Define the abstract code instructions for CHR and to implement them.

  • Lecture Compiler Construction (Compilerbau) (optional but very helpful)

M: Structured Literature Research on CHR Implementations (Rechenberger, Frühwirth)

The declarative programming language Constraint Handling Rules (CHR) is designed as a language extension to other, not necessarily declarative programming languages. There are existing implementations for Prolog , C , Java , JavaScript , and others. We want to conduct a Structured Literature Research (SLR) on existing implementations, to get an exhaustive overview over implementation techniques and patterns.

  • Conduct an SLR on papers on existing CHR implementations
  • Find CHR implementations without a scientific publication on public repositories on, e.g. GitHub, GitLab, ...
  • Identify and document common architectures, implementation techniques and patterns
  • Get an exhaustive overview over existing and historic CHR implementations
  • T. Frühwirth: Constraint Handling Rules - What Else?
  • S. Sneyers et al.: As time goes by: Constraint Handling Rules
  • P. Van Weert: Efficient Lazy Evaluation of Rule-Based Programs
  • P. Van Weert, P. Wuille, T. Schrijvers, B. Demoen: CHR for Imperative Host Languages
  • F. Nogatz, T. Frühwirth, D. Seipel: CHR.js: A CHR Implementation in JavaScript
  • Dragan Ivanović: Implementing Constraint Handling Rules as a Domain-Specific Language Embedded in Java
  • Interest in programming languages and (to some extend) compiler construction.
  • Good knowledge of multiple programming languages and paradigms.

Sascha Rechenberger

B/M: Failure in FreeCHR (Rechenberger, Frühwirth)

FreeCHR aims to be a sound and complete embedding framework for CHR. Hence, we want to extend the operational semantics by possibly failing computation, as they are necessary for the development of constraint solvers and other software.

  • Extend the very abstract operational semantics of FreeCHR, such that they can model possibly failing computations
  • Prove soundness and completeness w.r.t. the v ery abstract operational semantics of CHR
  • Optional : Develop an execution algorithm and prove correctness w.r.t. the new operational semantics
  • S. Rechenberger, T. Frühwirth: FreeCHR - An Algebraic Framework for CHR Embeddings
  • T. Frühwirth: Constraint Handling Rules (ISBN: 978-0-521-87776-3 )
  • Interest in formal aspects of programming languages
  • Interest/knowledge in category theory and/or type systems is recommended
  • Knowledge in functional programming, especially monads

B/M: Stateful Computations in FreeCHR (Rechenberger, Frühwirth)

FreeCHR aims to be a sound and complete embedding framework for CHR. Hence, we want to extend the operational semantics by stateful computation, as they are common in many programming languages.

  • Extend the very abstract operational semantics of FreeCHR, such that they can model stateful computations

M: Abstract Operational Semantics for FreeCHR (Rechenberger, Frühwirth)

FreeCHR aims to be a sound and complete embedding framework for CHR. The abstract operational semantics are a next step in the direction of modelling the necessities of real-life programming languages. Hence, we want to re-formalize them in the context of FreeCHR and establish soundness and completeness.

  • Formalize the abstract operational semantics ω t of CHR in the terms of (side-effect free) FreeCHR
  • Prove soundness and completeness of the new definition

Campus-System

  • Research Information System
  • Staff Search

Employees-Portal

  • Organization handbook
  • Operational messages
  • Internal messages
  • Personal messages
  • University bulletin
  • Bulletin Board
  • IT Services (ZID)
  • eLearning Service
  • OEH Klagenfurt

Information for

  • Alumni & Career
  • Prospective Students
  • Continuing Education
  • Researchers
  • Partners & Sponsors
  • International

Gütesiegel evalag

SOFTWARE ENGINEERING

Master Theses

The Software Engineering Research Group offers a number of thesis projects for Master students in various research areas. The goal of a Master’s thesis project is to provide an answer to a relevant research question in software engineering. This typically involves the construction or extension of a prototype tool used to evaluate your research hypotheses and a written thesis to report, interpret, and discuss the results. A thesis project is typically taking 6-9 months full-time work. More information on the procedure for performing a Master’s Thesis project at the University of Klagenfurt and all forms are available at Wissenschaftliche Arbeiten (in German).

Available Projects

List of topics in which we are offering a number of Master Thesis projects:

  • Automating Software Engineering Tasks
  • Change Extraction and Change Impact Analysis
  • Program Analysis
  • Software Visualization

We also offer a number of Master Thesis projects in collaboration with our industrial partners. Please contact Martin Pinzger  for more information.

Thesis proposal

The first step of any MSc thesis project is to write a thesis proposal. This document serves as a guide during and as a reference for your thesis project.

A thesis proposal should contain

  • Brief introduction into the subject field
  • Scientific motivation for the project (why is it relevant?)
  • Research goal and list of (initial) research question(s) that will be addressed
  • Initial planning and staging of the project – what are the expected deliverables and milestones to reach them, when will you start/end. Deliverables are a prototype of a piece of software, an algorithm, an advice on how to treat a particular problem, a documented architecture, etc.
  • Risk analysis, or those (external) events that could have an impact on your planning
  • Contact details for the participants (student, supervisor, and when appropriate also the company supervisor)
  • Supervision details: generally an n-weekly schedule for meetings to discuss findings and progress that you’ve established togerther with your university (and company) supervisor(s).
  • When appropriate details regarding intellectual property and allowance (sometimes these are arranged in a separate legal contract)
  • List of courses that still need to be followed and/or final exams that need to be taken (not so much as guard for entering the thesis phase but to document a potential impact on the planning)

The proposal is written in English so international students can read, and build on, your work. It is important to note that the details and planning are not cast in stone for the complete duration of the thesis project. If initial results show that there are good reasons to improve on the initial ideas, then plans can be changed. In such a case, the proposal can be updated and serve as a track record that documents and motivates such changes.

How to write a Thesis?

Concering structure and contents you might follow the guideline by Prof. John W. Chinneck’s web site.

Regarding the style of writing a Diploma Thesis we refer the student to the books:

  • “The Elements of Style”, Strunk and White.
  • “Writing for Computer Science” of Justin Zobel.

The web site of Prof. Henning Schulzrinne contains further useful hints that should be considered.

  • Campus-­System
  • Employees-­Portal

Siegel der Alpen-Adria-Universität Klagenfurt

Your privacy is important to us!

Cookie and Privacy Settings

We use cookies to optimally redesign our website and to improve it continuously for you. Click on the different category headings to view further information and to change the default settings. Please note that refusing some cookies may affect the way our website works. Web pages may not be displayed correctly and may not function properly.

Reference to processing of your data collected on this website in countries without an adequate level of data protection:

By clicking on "Accept all cookies", you also consent to your data being processed by Google, Facebook, LinkedIn, Twitter and YouTube, including the USA in accordance with Art. 49 (1) sentence 1 lit. a DSGVO. The European Court of Justice considers the USA to be a country with an insufficient level of data protection according to EU standards.

Essential cookies

These cookies are strictly necessary for the functioning of the website. Essential cookies enable basic functions and are necessary for the proper functioning of the website. You can set your browser to block these cookies or to notify you about these cookies. However, some parts of the website may not work as expected. These cookies do not store any personal data.

Hiding the cookie notice Select this option to permanently hide the cookie notice and reject all cookies that have not been accepted.

Two cookies are required for this setting to be saved. Otherwise this hint will be displayed again every time the page is loaded.

We use tracking and analysis tools to ensure continuous optimisation and needs-based design of our website. Tracking measures also enable us to record statistics regarding the use of our website by visitors and to develop our website further on the basis of these findings. If you do not want Google and Facebook to track your use of our website and transmit your visits, you can disable tracking in your browser here:

We also use different external services including Google Webfonts, Google Maps, and external video providers. Since these providers may collect personal data such as your IP address we allow you to block them here. Please be aware that this might significantly limit the functionality and appearance of our site. Changes will take effect once you reload the page. Google Webfont Settings: Click here to activate/deactivate the use of Google Webfonts.

Google Maps Settings: Click here to activate/deactivate the use of Google Maps.

Google reCaptcha Settings: Click here to activate/deactivate the use of Google reCaptcha.

Vimeo and Youtube video embeds: Click here to activate/deactivate the use of embedded videos.

For further information on the cookies used, please refer to our

Logo

Student Projects and Thesis Topics

Selection of proposals for student projects ("Projekt" for Bachelor, "Praktikum" and "Team-Projekt" for Master) and thesis topics (Bachelor and Master). Please do not hesitate to contact us if you are interested in a project or thesis at the Chair of Software Engineering. If you have your own idea for a project or a thesis topic: Let's talk about it!

Available - Read More…

In progress

Selection of student projects and thesis topics on which students are currently working on. If you find one of the topics interesting please ask the tutor about similar or follow up projects/theses.

In progress - Read More…

Selection of student projects and thesis topics that have already been finished. If you find one of the topics interesting please ask the tutor about similar or follow up projects/theses.

Finished - Read More…

Mon - Sat 9:00am - 12:00am

  • Get a quote

Latest Thesis and Research Topics in Software Engineering

Unique software engineering research topics for students.

more software engineers are needed as a result of the growing reliance on technology in both personal and professional spheres of life. Software engineering research topics are essential for solving complicated issues, increasing productivity, and fostering innovation. While software engineering is so important, it is equally difficult for students to get their degree in Software engineering.

Being said that many students struggle to keep up academically because software engineering is one of the most desired degrees. The final year thesis or dissertation is the most challenging assignment; many students are on the edge of losing their minds over it. While writing a thesis is one duty, coming up with an original and creative software engineering research topic is the first and most challenging step. Students with their assignments and activities don’t have enough time or energy to build a topic that is exactly right for them, finding a topic that is feasible and corresponds with your interests requires a lot of effort.

However this issue can be resolved as our PhD experts can provide you with well researched software engineering dissertation topics . We have plenty of topics for you to choose from mentioned below, and even if you don’t find anything according to your interests here you can simply contact us and request your topics according to your requirements and our experts will get you a tailored software engineering thesis topic.

Get an Immediate Response

Discuss your requirments with our writers

Get 3 Customize Research Topic within 24 Hours

Undergraduate Masters PhD Others

List of Free Software Engineering Research Topics

An analysis of the undertaking of good outcome factors and difficulties in software engineering projects:, how “the research guardian” can help you a lot.

Our top thesis writing experts are available 24/7 to assist you the right university projects. Whether its critical literature reviews to complete your PhD. or Master Levels thesis.

Automated software testing and quality control:

The study aims to improve programming testing and quality control through the execution of mechanized testing methods.

Objectives:

  • To efficiently detect software defeat and ensure complete test coverage, create an automated testing framework.
  • To determine which automated testing frameworks and tools are best suited to software development.
  • To analyze key metrics, and contrast them with the manual testing method to investigate the effects.

Impact of DevOps practices on software development:

The study aims to examine how DevOps practices affect software development productivity and efficiency.

  • To encourage cross-functional teams to collaborate, share information, and jointly advanced the development process.
  • To automate testing procedures like unit root tests, integration tests, and regression tests.
  • To change the activities for quality assurance and testing in the development process.

Get Help from Expert Thesis Writers!

TheresearchGuardian.com providing expert thesis assistance for university students at any sort of level. Our thesis writing service has been serving students since 2011.

Role of upgrading software security to enhance protection:

The aim of upgrading programming security through weakness identification and enhancing protection from possible breach

  • To find security flaws and weaknesses early on, employ, methods like vulnerability scanning, code reviews, and penetration testing.
  • To reduce the likelihood of being exploited, establish a procedure for resolving vulnerabilities as soon as possible.
  • To provide extensive security awareness and training programs, an organization can foster a security-conscious culture.

Adoption and effectiveness of continuous development:

The study aims to identify how effectively software engineering can be used for continuous development along with integration practices

  • To determine the benefit of implementing continuous deployment practices in numbers.
  • To evaluate the effect of computerizing the arrangement cycle, including code joining, testing, and delivery to the executive.
  • To analyze the impact of continuous integration practices on software development lifecycle enhancement.
  • To analyze how team communication and collaboration are affected by adopting software engineering practices and continuous development.

Looking For Customize Thesis Topics?

Take a review of different varieties of thesis topics and samples from our website TheResearchGuardian.com on multiple subjects for every educational level.

Planning and assess client-driven approaches in software programming:

The study aims to plan and assess client driven approaches to programing necessities and designing.

  • To identify the beneficial client-driven approaches necessary for programming and designing.
  • To ensure the successful implementation of these approaches in an organization.
  • To investigate the outcomes of these approaches in the success or failure of an organization.

Analyzing software metrics and their applications:

The study aims to analyze software metrics and their application to predictive software quality assurance.

  • To evaluate a comprehensive set of software metrics that can shed light on software product quality.
  • To create predictive models that make use of the software metrics that have been identified to predict potential risk and quality issues.
  • To compare the predictions made by the predictive models to actual software quality outcomes.

Applying Block chain Innovation:

The study aims to investigate how the distinctive characteristics of Block chain technology can be used to enhance software development and deployment process

  • To assess the potential use cases and advantages of coordinating block chain innovation into the product advancement lifecycle.
  • To investigate the application of block chain for transparent deployment histories, and decentralized package management.
  • To influence block chain’s straightforwardness to work with reviewing and consistence process in programming advancement.

Investigation of augmented and Virtual Reality into Software Engineering Methods and Tools:

The study aims to deeply analyse the integration of Augmented and Virtual Reality into Software Engineering Methods and tools to enhance the efficiency

  • To measure the impact of the integration of AR and VR technologies on software engineering
  • To examine the practical and technical obstacles to incorporate to incorporating augmented reality and virtual reality into existing software engineering techniques and tools.
  • To analyze existing frameworks and solution that make it possible to integrate AR and VR Software.

Complete Solution of All Your Hectic Thesis Papers

Our Expert online thesis writers are qualified and have expertise in almost all subject areas. This gives us an edge and we can help a lot of students who are struggling. Having a PhD expert in Software engineering gives us an advantage as we can help students looking for research topics in software engineering for masters, and then further help them with their research proposals and complete thesis.

Meet Our Professionals Ranging From Renowned Universities

Related topics.

  • Sports Management Research Topics
  • Special Education Research Topics
  • Software Engineering Research Topics
  • Primary Education Research Topics
  • Microbiology Research Topics
  • Luxury Brand Research Topics
  • Cyber Security Research Topics
  • Commercial Law Research Topics
  • Change Management Research Topics
  • Artificial intelligence Research Topics

topics for master thesis in software engineering

The M.S. Thesis Track

Blue CS@CU logo for MS students

The MS Thesis track is for students who want to concentrate on research in some sub-field of Computer Science.  You are required to arrange for a Computer Science Faculty member who agrees to advise the thesis and the rest of your course selection prior to selecting the track.

SUMMARY OF REQUIREMENTS

  • Complete a total of  30 points  (Courses must be at the 4000 level or above)
  • Maintain at least a  2.7  overall GPA. (No more than 1 D is permitted).
  • Complete the  Columbia Engineering Professional Development & Leadership (PDL)  requirement
  • Satisfy  breadth requirements
  • Take at least  6 points  of technical courses at the 6000 level
  • At most, up to 3 points  of your degree can be Non-CS/Non-track If they are deemed relevant to your track and sufficiently technical in nature. Submit the  Non-CS/NonTrack form  and the course syllabus to your CS Faculty Advisor for review

1. BREADTH REQUIREMENT

Visit the breadth requirement page for more information.

2. REQUIRED TRACK COURSES (9 credits)

Students must take 9 credits of COMS E6902 Thesis. The points are typically spread over multiple semesters, e.g., 3 points each for 3 semesters or 4.5 points each for 2 semesters. No more than 9 points of E6902 may be taken. Sign up for the section number of E6902 associated with your thesis advisor.

3. ELECTIVE TRACK COURSES

Students are required to complete 9 elective credits of graduate courses (4000-level or above) selected from Computer Science and/or related areas together with your faculty thesis advisor. These would normally be strongly related to your thesis topic.

Up to 3 of these points may be in COMS E6901 Projects in Computer Science.

Please note:

The  degree progress checklist should be used to keep track of your requirements. if you have questions for your track advisor or cs advising, you should have an updated checklist prepared, due to a significant overlap in course material, ms students not in the machine learning track can only take 1 of the following courses – coms 4771, coms 4721, elen 4903, ieor 4525, stat 4240, stat 4400/4241/5241 – as part of their degree requirements, the elective track courses cannot be imported from another institution., 4. general electives.

Students must complete the remaining credits of General Elective Courses at the 4000 level or above. At least three of these points must be chosen from either the Track Electives listed above or from the CS department at the 4000 level or higher.

Students may also request to use at most 3 points of Non-CS/Non-Track coursework if approved by the process listed below.

5. THESIS DEFENSE

A thesis proposal is presented to your thesis committee at least three months before your defense. Your thesis committee should have three members. Two of them must be internal, but one can be an outsider. Please bring the thesis defense form to your defense. Once completed, please submit the form to CS Advising via email: [email protected].

The thesis cannot be imported from another institution.

A publication-quality thesis document is also published as a CS department technical report. Once completed, please upload your thesis into MICE.

PROGRAM PLANNING

Please visit  the Directory of Classes  to get the updated course listings. Please also note that not all courses are offered every semester or even every year. A few courses are offered only once every two or three years or even less frequently.

Updated: 3/26/2024

Find open faculty positions here .

Computer Science at Columbia University

Upcoming events, last day of classes.

Monday 10:00 am

Class Day Graduate Ceremony

Sunday 3:00 pm

South Lawn, Morningside Campus

Class Day Undergraduate Ceremony

Monday 11:45 am

CS Awards Ceremony and Celebration

Monday 1:00 pm

CSB 451 CS Auditorium

In the News

Press mentions, dean boyce's statement on amicus brief filed by president bollinger.

President Bollinger announced that Columbia University along with many other academic institutions (sixteen, including all Ivy League universities) filed an amicus brief in the U.S. District Court for the Eastern District of New York challenging the Executive Order regarding immigrants from seven designated countries and refugees. Among other things, the brief asserts that “safety and security concerns can be addressed in a manner that is consistent with the values America has always stood for, including the free flow of ideas and people across borders and the welcoming of immigrants to our universities.”

This recent action provides a moment for us to collectively reflect on our community within Columbia Engineering and the importance of our commitment to maintaining an open and welcoming community for all students, faculty, researchers and administrative staff. As a School of Engineering and Applied Science, we are fortunate to attract students and faculty from diverse backgrounds, from across the country, and from around the world. It is a great benefit to be able to gather engineers and scientists of so many different perspectives and talents – all with a commitment to learning, a focus on pushing the frontiers of knowledge and discovery, and with a passion for translating our work to impact humanity.

I am proud of our community, and wish to take this opportunity to reinforce our collective commitment to maintaining an open and collegial environment. We are fortunate to have the privilege to learn from one another, and to study, work, and live together in such a dynamic and vibrant place as Columbia.

Mary C. Boyce Dean of Engineering Morris A. and Alma Schapiro Professor

Add Event to GMail

{{title}} {{fullname}}

topics for master thesis in software engineering

Courses This Semester

  • {{title}} ({{dept}} {{prefix}}{{course_num}}-{{section}})
  • Bibliography
  • More Referencing guides Blog Automated transliteration Relevant bibliographies by topics
  • Automated transliteration
  • Relevant bibliographies by topics
  • Referencing guides

Dissertations / Theses on the topic 'Software engineering'

Create a spot-on reference in apa, mla, chicago, harvard, and other styles.

Consult the top 50 dissertations / theses for your research on the topic 'Software engineering.'

Next to every source in the list of references, there is an 'Add to bibliography' button. Press on it, and we will generate automatically the bibliographic reference to the chosen work in the citation style you need: APA, MLA, Harvard, Chicago, Vancouver, etc.

You can also download the full text of the academic publication as pdf and read online its abstract whenever available in the metadata.

Browse dissertations / theses on a wide variety of disciplines and organise your bibliography correctly.

Le, Gal Thierry. "Re-engineering software for integration using computer aided software engineering." Thesis, This resource online, 1992. http://scholar.lib.vt.edu/theses/available/etd-06232009-063016/.

CHRISTOPH, ROBERTO DE HOLANDA. "SOFTWARE ENGINEERING FOR OPEN SOURCE SOFTWARE." PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO, 2004. http://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=4854@1.

Bondesson, Tobias. "Software Engineering Education Improvement : An Assessment of a Software Engineering Programme." Thesis, Blekinge Tekniska Högskola, Avdelningen för programvarusystem, 2004. http://urn.kb.se/resolve?urn=urn:nbn:se:bth-5891.

Riehle, Richard D. "An engineering context for software engineering." Monterey, Calif. : Naval Postgraduate School, 2008. http://edocs.nps.edu/npspubs/scholarly/theses/2008/Sept/08Sep%5FRiehle%5FPhD.pdf.

Lim, Edwin C. "Software metrics for monitoring software engineering projects." Thesis, Edith Cowan University, Research Online, Perth, Western Australia, 1994. https://ro.ecu.edu.au/theses/1100.

Sezer, Bulent. "Software Engineering Process Improvement." Master's thesis, METU, 2007. http://etd.lib.metu.edu.tr/upload/12608338/index.pdf.

Boriani, Dario V. "Software engineering for control." Thesis, University of Oxford, 1989. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.253293.

Arciniegas-Mendez, Maryi. "Regulation in Software Engineering." Thesis, Proceedings of the Eighth International Workshop on Cooperative and Human Aspects of Software Engineering, 2015. http://hdl.handle.net/1828/7524.

Loomes, Martin James. "Software engineering curriculum design." Thesis, University of Surrey, 1991. http://epubs.surrey.ac.uk/844417/.

Alrabghi, Leenah O. "QFD IN SOFTWARE ENGINEERING." Kent State University / OhioLINK, 2014. http://rave.ohiolink.edu/etdc/view?acc_num=kent1385046526.

Zamli, Kamal Zuhairi. "Supporting software processes for distributed software engineering teams." Thesis, University of Newcastle Upon Tyne, 2003. http://hdl.handle.net/10443/2118.

Karvonen, T. (Teemu). "Continuous software engineering in the development of software-intensive products:towards a reference model for continuous software engineering." Doctoral thesis, Oulun yliopisto, 2017. http://urn.fi/urn:isbn:9789526216560.

Pawar, Sourabh A. "A Common Software Development Framework For Coordinating Usability Engineering and Software Engineering Activities." Thesis, Virginia Tech, 2004. http://hdl.handle.net/10919/33023.

Hanssen, Geir Kjetil. "From Agile Software Product Line Engineering Towards Software Ecosystems." Doctoral thesis, Norges teknisk-naturvitenskapelige universitet, Institutt for datateknikk og informasjonsvitenskap, 2010. http://urn.kb.se/resolve?urn=urn:nbn:no:ntnu:diva-11890.

OLIVEIRA, GLORIA MARIA DE PAULA. "USING SOFTWARE ENGINEERING CONCEPTS TO DEFINE SOFTWARE DEVELOPMENT PROCESSES." PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO, 2007. http://www.maxwell.vrac.puc-rio.br/Busca_etds.php?strSecao=resultado&nrSeq=12112@1.

Ahmad, M. O. (Muhammad Ovais). "Exploring Kanban in software engineering." Doctoral thesis, Oulun yliopisto, 2016. http://urn.fi/urn:isbn:9789526214085.

Chennamsetty, Harish. "Experimentation in Global Software Engineering." Thesis, Blekinge Tekniska Högskola, Institutionen för programvaruteknik, 2015. http://urn.kb.se/resolve?urn=urn:nbn:se:bth-5791.

Masoud, F. A. "Quality metrics in software engineering." Thesis, University of Liverpool, 1987. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.381358.

Geyer-Schulz, Andreas, and Michael Hahsler. "Software engineering with analysis patterns." Institut für Informationsverarbeitung und Informationswirtschaft, WU Vienna University of Economics and Business, 2001. http://epub.wu.ac.at/592/1/document.pdf.

Wang, Yingxu. "Software engineering process modelling analysis." Thesis, Southampton Solent University, 1998. http://ssudl.solent.ac.uk/2429/.

Cunningham, Hamish. "Software architecture for language engineering." Thesis, University of Sheffield, 2000. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.324440.

Gabriel, Pedro Hugo do Nascimento. "Software languages engineering: experimental evaluation." Master's thesis, Faculdade de Ciências e Tecnologia, 2010. http://hdl.handle.net/10362/4854.

Bull, Christopher Neil. "Studios in software engineering education." Thesis, Lancaster University, 2016. http://eprints.lancs.ac.uk/79064/.

Watson, Cody. "Deep Learning In Software Engineering." W&M ScholarWorks, 2020. https://scholarworks.wm.edu/etd/1616444371.

Burge, Janet E. "Software Engineering Using design RATionale." Link to electronic thesis, 2005. http://www.wpi.edu/Pubs/ETD/Available/etd-050205-085625/.

Rönkkö, Kari. "Software Practice from the Inside : Ethnography Applied to Software Engineering." Licentiate thesis, Karlskrona : Blekinge Institute of Technology, 2002. http://urn.kb.se/resolve?urn=urn:nbn:se:bth-00234.

Meridji, Kenza. "Analysis of software engineering principles from an engineering perspective." Mémoire, École de technologie supérieure, 2010. http://espace.etsmtl.ca/278/1/MERIDJI_Kenza.pdf.

Brophy, Dennis J. O'Leary James D. "Software evaluation for developing software reliability engineering and metrics models /." Monterey, Calif. : Springfield, Va. : Naval Postgraduate School ; Available from National Technical Information Service, 1999. http://handle.dtic.mil/100.2/ADA361889.

Brophy, Dennis J., and James D. O'Leary. "Software evaluation for developing software reliability engineering and metrics models." Thesis, Monterey, California ; Naval Postgraduate School, 1999. http://hdl.handle.net/10945/13581.

Lin, Chia-en. "Performance Engineering of Software Web Services and Distributed Software Systems." Thesis, University of North Texas, 2014. https://digital.library.unt.edu/ark:/67531/metadc500103/.

Delorey, Daniel Pierce. "Observational Studies of Software Engineering Using Data from Software Repositories." Diss., CLICK HERE for online access, 2007. http://contentdm.lib.byu.edu/ETD/image/etd1716.pdf.

McMeekin, David Andrew. "A software inspection methodology for cognitive improvement in software engineering." Thesis, Curtin University, 2010. http://hdl.handle.net/20.500.11937/400.

Kinnula, A. (Atte). "Software process engineering in a multi-site environment:an architectural design of a software process engineering system." Doctoral thesis, University of Oulu, 1999. http://urn.fi/urn:isbn:9514253035.

Jennings, Charles A. "Re-engineering software systems in the Department of Defense using integrated computer aided software engineering tools." Thesis, Monterey, California. Naval Postgraduate School, 1992. http://hdl.handle.net/10945/23761.

Addy, Edward A. "Verification and validation in software product line engineering." Morgantown, W. Va. : [West Virginia University Libraries], 1999. http://etd.wvu.edu/templates/showETD.cfm?recnum=1068.

Freund, Tessen. "Software Engineering durch Modellierung wissensintensiver Entwicklungsprozesse /." Berlin : GITO, 2007. http://deposit.d-nb.de/cgi-bin/dokserv?id=3040491&prov=M&dok_var=1&dok_ext=htm.

Schroeder, Andreas. "Software engineering perspectives on physiological computing." Diss., lmu, 2011. http://nbn-resolving.de/urn:nbn:de:bvb:19-139294.

Nojoumian, Mehrdad. "Document engineering of complex software specifications." Thesis, University of Ottawa (Canada), 2007. http://hdl.handle.net/10393/27479.

Freund, Tessen. "Software Engineering durch Modellierung wissensintensiver Entwicklungsprozesse." Berlin GITO, 2006. http://d-nb.info/986549339/04.

Rodden, Thomas. "Supporting cooperation in software engineering environments." Thesis, Lancaster University, 1990. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.304516.

Mannering, D. P. "Problem Oriented Engineering for Software Safety." Thesis, Open University, 2010. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.520738.

Cook, Carl Leslie Raymond. "Towards Computer-Supported Collaborative Software Engineering." Thesis, University of Canterbury. Computer Science and Software Engineering, 2007. http://hdl.handle.net/10092/1140.

Heineman, Judie A. "A software reliability engineering case study." Thesis, Monterey, California. Naval Postgraduate School, 1996. http://hdl.handle.net/10945/8975.

Unterkalmsteiner, Michael. "Coordinating requirements engineering and software testing." Doctoral thesis, Blekinge Tekniska Högskola, Institutionen för programvaruteknik, 2015. http://urn.kb.se/resolve?urn=urn:nbn:se:bth-663.

Karatasios, Labros G. "Software engineering with database management systems." Thesis, Monterey, California. Naval Postgraduate School, 1989. http://hdl.handle.net/10945/27272.

Greer, Desmond. "Software engineering risk : understanding and management." Thesis, University of Ulster, 2000. http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.326127.

Martin, W. J. "App Store Analysis for software engineering." Thesis, University College London (University of London), 2017. http://discovery.ucl.ac.uk/1537482/.

Yang, Bob 1976. "Managing a distributed software engineering team." Thesis, Massachusetts Institute of Technology, 1998. http://hdl.handle.net/1721.1/50394.

Rantanen, E. (Eetu). "Requirements engineering in agile software projects." Bachelor's thesis, University of Oulu, 2017. http://urn.fi/URN:NBN:fi:oulu-201705091721.

Zabardast, Ehsan. "Towards Understanding Assets in Software Engineering." Licentiate thesis, Blekinge Tekniska Högskola, Institutionen för programvaruteknik, 2021. http://urn.kb.se/resolve?urn=urn:nbn:se:bth-21270.

software engineering Recently Published Documents

Total documents.

  • Latest Documents
  • Most Cited Documents
  • Contributed Authors
  • Related Sources
  • Related Keywords

Identifying Non-Technical Skill Gaps in Software Engineering Education: What Experts Expect But Students Don’t Learn

As the importance of non-technical skills in the software engineering industry increases, the skill sets of graduates match less and less with industry expectations. A growing body of research exists that attempts to identify this skill gap. However, only few so far explicitly compare opinions of the industry with what is currently being taught in academia. By aggregating data from three previous works, we identify the three biggest non-technical skill gaps between industry and academia for the field of software engineering: devoting oneself to continuous learning , being creative by approaching a problem from different angles , and thinking in a solution-oriented way by favoring outcome over ego . Eight follow-up interviews were conducted to further explore how the industry perceives these skill gaps, yielding 26 sub-themes grouped into six bigger themes: stimulating continuous learning , stimulating creativity , creative techniques , addressing the gap in education , skill requirements in industry , and the industry selection process . With this work, we hope to inspire educators to give the necessary attention to the uncovered skills, further mitigating the gap between the industry and the academic world.

Opportunities and Challenges in Code Search Tools

Code search is a core software engineering task. Effective code search tools can help developers substantially improve their software development efficiency and effectiveness. In recent years, many code search studies have leveraged different techniques, such as deep learning and information retrieval approaches, to retrieve expected code from a large-scale codebase. However, there is a lack of a comprehensive comparative summary of existing code search approaches. To understand the research trends in existing code search studies, we systematically reviewed 81 relevant studies. We investigated the publication trends of code search studies, analyzed key components, such as codebase, query, and modeling technique used to build code search tools, and classified existing tools into focusing on supporting seven different search tasks. Based on our findings, we identified a set of outstanding challenges in existing studies and a research roadmap for future code search research.

Psychometrics in Behavioral Software Engineering: A Methodological Introduction with Guidelines

A meaningful and deep understanding of the human aspects of software engineering (SE) requires psychological constructs to be considered. Psychology theory can facilitate the systematic and sound development as well as the adoption of instruments (e.g., psychological tests, questionnaires) to assess these constructs. In particular, to ensure high quality, the psychometric properties of instruments need evaluation. In this article, we provide an introduction to psychometric theory for the evaluation of measurement instruments for SE researchers. We present guidelines that enable using existing instruments and developing new ones adequately. We conducted a comprehensive review of the psychology literature framed by the Standards for Educational and Psychological Testing. We detail activities used when operationalizing new psychological constructs, such as item pooling, item review, pilot testing, item analysis, factor analysis, statistical property of items, reliability, validity, and fairness in testing and test bias. We provide an openly available example of a psychometric evaluation based on our guideline. We hope to encourage a culture change in SE research towards the adoption of established methods from psychology. To improve the quality of behavioral research in SE, studies focusing on introducing, validating, and then using psychometric instruments need to be more common.

Towards an Anatomy of Software Craftsmanship

Context: The concept of software craftsmanship has early roots in computing, and in 2009, the Manifesto for Software Craftsmanship was formulated as a reaction to how the Agile methods were practiced and taught. But software craftsmanship has seldom been studied from a software engineering perspective. Objective: The objective of this article is to systematize an anatomy of software craftsmanship through literature studies and a longitudinal case study. Method: We performed a snowballing literature review based on an initial set of nine papers, resulting in 18 papers and 11 books. We also performed a case study following seven years of software development of a product for the financial market, eliciting qualitative, and quantitative results. We used thematic coding to synthesize the results into categories. Results: The resulting anatomy is centered around four themes, containing 17 principles and 47 hierarchical practices connected to the principles. We present the identified practices based on the experiences gathered from the case study, triangulating with the literature results. Conclusion: We provide our systematically derived anatomy of software craftsmanship with the goal of inspiring more research into the principles and practices of software craftsmanship and how these relate to other principles within software engineering in general.

On the Reproducibility and Replicability of Deep Learning in Software Engineering

Context: Deep learning (DL) techniques have gained significant popularity among software engineering (SE) researchers in recent years. This is because they can often solve many SE challenges without enormous manual feature engineering effort and complex domain knowledge. Objective: Although many DL studies have reported substantial advantages over other state-of-the-art models on effectiveness, they often ignore two factors: (1) reproducibility —whether the reported experimental results can be obtained by other researchers using authors’ artifacts (i.e., source code and datasets) with the same experimental setup; and (2) replicability —whether the reported experimental result can be obtained by other researchers using their re-implemented artifacts with a different experimental setup. We observed that DL studies commonly overlook these two factors and declare them as minor threats or leave them for future work. This is mainly due to high model complexity with many manually set parameters and the time-consuming optimization process, unlike classical supervised machine learning (ML) methods (e.g., random forest). This study aims to investigate the urgency and importance of reproducibility and replicability for DL studies on SE tasks. Method: In this study, we conducted a literature review on 147 DL studies recently published in 20 SE venues and 20 AI (Artificial Intelligence) venues to investigate these issues. We also re-ran four representative DL models in SE to investigate important factors that may strongly affect the reproducibility and replicability of a study. Results: Our statistics show the urgency of investigating these two factors in SE, where only 10.2% of the studies investigate any research question to show that their models can address at least one issue of replicability and/or reproducibility. More than 62.6% of the studies do not even share high-quality source code or complete data to support the reproducibility of their complex models. Meanwhile, our experimental results show the importance of reproducibility and replicability, where the reported performance of a DL model could not be reproduced for an unstable optimization process. Replicability could be substantially compromised if the model training is not convergent, or if performance is sensitive to the size of vocabulary and testing data. Conclusion: It is urgent for the SE community to provide a long-lasting link to a high-quality reproduction package, enhance DL-based solution stability and convergence, and avoid performance sensitivity on different sampled data.

Predictive Software Engineering: Transform Custom Software Development into Effective Business Solutions

The paper examines the principles of the Predictive Software Engineering (PSE) framework. The authors examine how PSE enables custom software development companies to offer transparent services and products while staying within the intended budget and a guaranteed budget. The paper will cover all 7 principles of PSE: (1) Meaningful Customer Care, (2) Transparent End-to-End Control, (3) Proven Productivity, (4) Efficient Distributed Teams, (5) Disciplined Agile Delivery Process, (6) Measurable Quality Management and Technical Debt Reduction, and (7) Sound Human Development.

Software—A New Open Access Journal on Software Engineering

Software (ISSN: 2674-113X) [...]

Improving bioinformatics software quality through incorporation of software engineering practices

Background Bioinformatics software is developed for collecting, analyzing, integrating, and interpreting life science datasets that are often enormous. Bioinformatics engineers often lack the software engineering skills necessary for developing robust, maintainable, reusable software. This study presents review and discussion of the findings and efforts made to improve the quality of bioinformatics software. Methodology A systematic review was conducted of related literature that identifies core software engineering concepts for improving bioinformatics software development: requirements gathering, documentation, testing, and integration. The findings are presented with the aim of illuminating trends within the research that could lead to viable solutions to the struggles faced by bioinformatics engineers when developing scientific software. Results The findings suggest that bioinformatics engineers could significantly benefit from the incorporation of software engineering principles into their development efforts. This leads to suggestion of both cultural changes within bioinformatics research communities as well as adoption of software engineering disciplines into the formal education of bioinformatics engineers. Open management of scientific bioinformatics development projects can result in improved software quality through collaboration amongst both bioinformatics engineers and software engineers. Conclusions While strides have been made both in identification and solution of issues of particular import to bioinformatics software development, there is still room for improvement in terms of shifts in both the formal education of bioinformatics engineers as well as the culture and approaches of managing scientific bioinformatics research and development efforts.

Inter-team communication in large-scale co-located software engineering: a case study

AbstractLarge-scale software engineering is a collaborative effort where teams need to communicate to develop software products. Managers face the challenge of how to organise work to facilitate necessary communication between teams and individuals. This includes a range of decisions from distributing work over teams located in multiple buildings and sites, through work processes and tools for coordinating work, to softer issues including ensuring well-functioning teams. In this case study, we focus on inter-team communication by considering geographical, cognitive and psychological distances between teams, and factors and strategies that can affect this communication. Data was collected for ten test teams within a large development organisation, in two main phases: (1) measuring cognitive and psychological distance between teams using interactive posters, and (2) five focus group sessions where the obtained distance measurements were discussed. We present ten factors and five strategies, and how these relate to inter-team communication. We see three types of arenas that facilitate inter-team communication, namely physical, virtual and organisational arenas. Our findings can support managers in assessing and improving communication within large development organisations. In addition, the findings can provide insights into factors that may explain the challenges of scaling development organisations, in particular agile organisations that place a large emphasis on direct communication over written documentation.

Aligning Software Engineering and Artificial Intelligence With Transdisciplinary

Study examined AI and SE transdisciplinarity to find ways of aligning them to enable development of AI-SE transdisciplinary theory. Literature review and analysis method was used. The findings are AI and SE transdisciplinarity is tacit with islands within and between them that can be linked to accelerate their transdisciplinary orientation by codification, internally developing and externally borrowing and adapting transdisciplinary theories. Lack of theory has been identified as the major barrier toward towards maturing the two disciplines as engineering disciplines. Creating AI and SE transdisciplinary theory would contribute to maturing AI and SE engineering disciplines.  Implications of study are transdisciplinary theory can support mode 2 and 3 AI and SE innovations; provide an alternative for maturing two disciplines as engineering disciplines. Study’s originality it’s first in SE, AI or their intersections.

Export Citation Format

Share document.

M.Tech/Ph.D Thesis Help in Chandigarh | Thesis Guidance in Chandigarh

topics for master thesis in software engineering

[email protected]

topics for master thesis in software engineering

+91-9465330425

topics for master thesis in software engineering

Introduction

Software Engineering is a branch that deals with the development and evolution of software products by employing certain methodologies and well-defined scientific principles. For developing a software product certain processes need to be followed and outcome of which is an efficient and authentic software product. The software is a group of executable program code with associated libraries. Software designed to satisfy a specific need is known as Software Product. It is a very good topic for master’s thesis, project, and research. There are various topics in Software Engineering which will be helpful for M.Tech and other masters students write their software project thesis.

Latest thesis topics in software engineering for research scholars:

  • Fault detection in software using biological techniques
  • Enhancement in MOOD metrics for software maintainability and reliability
  • To enhance effort estimation using Function point analysis in Cocomo model
  • To evaluate and improve model based mutation technique to detect test cases error in product line testing
  • To propose improvement in genetic algorithm to calculate function dependency in test case prioritization in regression testing
  • To propose dynamic technique with static metrics to check coupling between software modules
  • To propose improvement TYPE 4 clone detection in clone testing

Find the link at the end to download the latest thesis and research topics in software engineering

Software Evolution

Software Evolution is the process of developing software product using underlying techniques and methodologies. It consists of all the steps right from the initial requirements up to its maintenance. In the initial stage, software requirements are gathered. After this, a prototype of the actual software product is created which is shown to the end users for feedback. Users give their suggestions regarding the product and suggest changes if required. This process is repeated until the time desired software product is developed.  There are certain Software Evolution laws according to which software is divided into following three types:

  • S-Type (static-type) – This type of software works according to specifications and solutions. It is the simplest of all the three types of software.
  • P-Type (practical-type) – This software is a collection of procedures. Gaming software is an example of this type of software.
  • E-Type (embedded-type) – This software works according to the real-world requirements. It has a high degree of evolution.

The methods and steps taken to design a software product are referred to as software paradigms .

Why is Software Engineering required?

Software Engineering is required due to frequent changes in user requirements and the environment. Through your thesis and research work, you can get to know more about the importance of Software Engineering. Following are the other things for which software engineering is required:

  • Large Software – The large size of software make it essential for the requirement of software engineering.
  • Scalability – Software Engineering makes it possible to scale the existing software rather than creating a new software.
  • Cost – Software Engineering also cut down the excess manufacturing cost in software development.
  • Dynamic Nature of Software – Software Engineering plays an important role if new enhancements are to be done in the existing software provided that the nature of software is dynamic.
  • Better Quality Management – Software Engineering provides better software development processes for better quality services.

Software Development Lifecycle (SDLC)

SDLC is a sequence of steps and stages in Software Engineering for the development of Software product. It is an important topic for project and thesis in software engineering. Following are the phases of SDLC:

Thesis in software engineering

  • Requirement Gathering and Analysis – It is the initial stage of software development in which the requirements for the software product to be made is collected. In this phase, the engineering team studies existing systems, take the opinion of stakeholders, and conduct user interviews. The types of requirements include user requirements, functional requirements and non-functional requirements. After the requirements are collected, these are examined and analyzed for validation i.e. whether these requirements can be incorporated into the system or not.
  • Feasibility Study – After requirement gathering, the next step is the feasibility study i.e. to check whether the desired software system can be made or not. The software development team comes up with an outline of the whole process and discusses whether the system will be able to meet the user requirements or not. In this phase, all the aspects like financial, practical, and technical are considered. If these aspects are found to be feasible only then the further processes are taken up.
  • Software Design – After confirming the feasibility of the software system, the designing of the software product is done. The designing of the software is done based on the requirements collected in the initial stage. An outline of the whole process is created in this phase which will define the overall system architecture. There are two types of designs – physical design and logical design.
  • Coding – This phase is also known as implementation phase as the actual implementation of the software system takes place here. An executable programming code is written in any suitable programming language for implementation. The work is divided into different modules and coding is done in each of these modules. This process is undertaken by a developer expert in programming.
  • Testing – Testing phase follows the coding phase in which testing of the code is done to check whether the system meets the user requirements or not. The types of testing include unit testing, system testing, integration testing and acceptance testing. Testing is required to find out any underlying errors and bugs in the product. Testing helps in creating a reliable software product.
  • Deployment – After successful testing, the software product is delivered to the end users. Customers perform Beta Testing to find out if there are changes required in the system or not. If changes are needed, then they can suggest them to the engineering team.
  • Maintenance – A special team is appointed to look after the maintenance of the software product. This team will provide timely software updates and give notifications based on that. The code is updated in accordance with the changes taking place in the real world environment.

Software Development Process Models

There are certain software development models as defined by Software Paradigms. Some of these are explained below:

Waterfall Model

It is a simple model for software development which defines that all the phases of SDLC take place in a linear manner. Simple meaning that if one phase is finished then only the next phase is started. According to this model, all the phases are executed in sequence with the planning of next phase in the previous phase. Also, this model will not function properly if there are certain issues left in the previous phase.

topics for master thesis in software engineering

Iterative Model

It is another model for software development in which the whole process takes place in iterations. Iteration simply means repeating steps after a cycle is over. On the first iteration, the software is developed on a small scale and then the subsequent steps are followed.  During the next iteration, more features and modules are added. On completion of each iteration cycle, software is produced which have their own features and capabilities. The management team works on the risk management and prepare for next iteration.

topics for master thesis in software engineering

Spiral Model

Spiral Model is a combination of iterative model and any one of the other SDLC model. The most important feature of this model is the consideration of risk factor which left unnoticed by other models. Initially, the objectives and constraints of the software product are determined. During next iteration, the prototype of the software is created. This process also includes risk analysis. In the fourth phase, next iteration is prepared.

topics for master thesis in software engineering

In the waterfall model, we can go to next step only if the previous step is completed. Also, we cannot go back to the previous stage if some change is required. This drawback of waterfall model is fulfilled by the V-Shaped Model which provides testing of each phase in a reverse manner. In this model, test plans and test cases are created according to the requirements of that stage to verify and validate the software product. Thus verification and validation go in parallel in this case.

topics for master thesis in software engineering

Software Metrics and Measures

Software Metrics and Measures are essential components in Software Engineering to understand the attributes and aspects of a software. These also help in maintaining the better quality of the software products. Following are some of the Software Metrics:

  • Size Metrics – It is measured in terms of Lines of Code (LOC) and Function Point Code. Lines of Code mean the number of lines of the programming code whereas Function Point Code is the Functional capacity of the software.
  • Complexity Metrics – It is measured in terms of number of independent paths in a program.
  • Quality Metrics – It is determined by the number of defects encountered while developing the software and after the product is delivered.
  • Process Metrics – Methods, tools, and standards used in software development come under process metrics.
  • Resource Metrics – It includes effort, time and resources used in development process.

Modularization in Software Engineering

Modularization is a technique in Software Engineering in which software system is divided into multiple modules and each module carries out its individual task independently. Modularization is more or less based on ‘Divide and Conquer’ approach. Each module is compiled and executed separately.

Advantages of Modularization are:

  • Smaller modules are easier to process.
  • Modularization offers a level of abstraction to the program.
  • High Cohesion components can be used again.
  • Concurrent execution is also possible.
  • It is also more secure.

Software Testing

It is the process of verifying and validating the software product to check whether it meets the user requirements or not as expected. Moreover, it also detects underlying defects, errors, and bugs that left unnoticed during the process of software development. As a whole, software testing detects software failures. Software Testing itself is a sub-field in software engineering and a trending topic for project, thesis, and research in software engineering.

Purpose of Software Testing

Following are the main purposes of software testing:

  • Verification – Verification is a process to find out whether the developed software product meets the business requirements or not. Verification ensures that whether the product being created satisfies the design specifications or not.
  • Validation – Validation is the process that examines whether or not the system meets the user requirements. The validation process is carried out at the end of SDLC.
  • Defect Finding – Defect finding simply means the difference between the actual output and the expected output. Software Testing tends to find this defect in the software product.

Types of Testing

Following are the main types of testing in software systems:

  • Alpha Testing – It is the most common type of testing carried out by a developer team at the developer end. It is conducted before the product is released.
  • Beta Testing – It is a type of software testing carried out by end users at the user end. This type of testing is performed in a real-world environment.
  • Acceptance Testing – It is a type of testing to find out whether the software system meets the user requirements or not.
  • Unit Testing – It is a type of testing in which an individual unit of the software product is tested.
  • Integration Testing – In this, two or more modules are combined and tested together as a group.
  • System Testing – Here all the individual modules are combined and then tested as a single group.

UML and Software Engineering

UML or Unified Modeling Language is language in software engineering for visualizing and documenting the components of a software system and is created by Object Management Group (OMG). It is different from programming languages. UML implements object-oriented concepts for analysis and design.

Building Blocks of UML

Following are the three main building blocks of UML:

Relationships

Things can be any one of the following:

Structural – Static Components of a system

Behavioral – Dynamic Components of a system

Grouping – Group elements of a UML model like package

Annotational – Comments of a UML model

The relationship describes how individual elements are associated with each other in a system. Following kinds of relationships are there:

  • Association
  • Generalization
  • Realization

The output of the entire process is UML diagrams. Following are the main UML diagrams:

  • Class Diagram
  • Object Diagram
  • Use Case Diagram
  • Sequence Diagram
  • Collaboration Diagram
  • Activity Diagram
  • Statechart Diagram
  • Deployment Diagram
  • Component Diagram

Software Maintenance

After the Software product is successfully launched in the market, timely updations and modifications needed to be done. This all comes under Software Maintenance. It includes all those measures taken after the delivery to correct errors and to enhance the performance. Software Maintenance does not merely means fixing defects but also providing time to time updations.

Types of Software Maintenance

The types of Software Maintenance depends upon the size and nature of the software product. Following are the main types of software maintenance:

  • Corrective Maintenance –  Fixing and correcting a problem identified by the user comes under corrective maintenance.
  • Adaptive Maintenance –  In adaptive maintenance, the software is kept up-to-date to meet the ever-changing environment and technology.
  • Perfective Maintenance –  To keep the software durable, perfective maintenance is done. This includes the addition of new features and new user requirements.
  • Preventive Maintenance –  To prevent any future problems in the software, preventive maintenance is done so that there are not any serious issues in near future.

Activities in Software Maintenance

Following activities are performed in Software Maintenance as given by IEEE:

  • Identification and Tracing
  • Implementation
  • System Testing
  • Acceptance Testing
  • Maintenance Management

Reverse Engineering

Reverse Engineering is a process in which an existing system is thoroughly analyzed to extract some information from that system and reproduce that system or product using that extracted information.  The whole process is a reverse SDLC. Reverse Engineering for software is done to extract the source code of the program which can be implemented in a new software product.

Case Tools for Software Engineering

Case or Computer-aided Software Engineering are computer-based automated tools for development and maintenance of software products. Just as the CAD (Computer-aided design) is used for designing of hardware products, Case is used for designing of software products. Case tools develop high-quality and easily maintainable software products.

Elements of Case Tools

Following are the main components of Case Tools:

  • Central Repository –  Central Repository or Data Dictionary is a central storage for product specifications, documents, reports, and diagrams.
  • Upper Case Tools – These are used in planning, analysis, and design phases of SDLC.
  • Lower Case Tools – These are used in the implementation, testing, and maintenance.
  • Integrated Case Tools – These tools can be used in all the stages of SDLC.

Project, Thesis, and Research topics in Software Engineering

Following is the list of Software Engineering topics for project, thesis, and research for masters and other postgraduate students:

  • Data Modeling

Software Models

Software Quality

Verification and Validation

Software Project Management

Data Modeling 

The process of structuring and organizing data is known as Data Modeling. After structuring of data, it is implemented in the database system. While organizing data, certain constraints and limitations are also applied to data. The main function of Data Modeling is to manage a large amount of both structured and unstructured data. In data modeling, initially, a conceptual data model is created which is later translated to the physical data model.

UML(Unified Modeling Language)

This was all about Software Engineering. You can explore and research more of this topic while working on your project and thesis. It is a standard language to visualize software systems. This language is used by software developers, business analysts, software architects, and other individuals to study the artifacts of a software system. It is a very good topic for a thesis in Software Engineering.

SDLC or Software Development Lifecycle is a set of stages followed for the development of a software product. For building a software product steps are followed beginning from data collection to software maintenance. It also includes software testing in which a software goes through various types of testing before giving a final nod to the software product.

Masters students can work on software models for their thesis work. Various types of software models are there like waterfall model, V-Shaped model, spiral model, prototype model, agile model, Iterative model etc. These models give step by step implementation of various phases of software development.

The concept of ontology is used in Software Engineering to represent the domain knowledge in a formal way. Certain knowledge-based applications use the ontology to share knowledge. Ontology is used in software engineering to collaborate the use of AI techniques in software engineering. UML diagrams are also being used in the development of Ontology.

Software Quality refers to the study of software features both external and internal taking into consideration certain attributes. External features mean how software is performing in a real-world environment while internal features refer to the quality of code written for the software. External quality is dependent on the internal in the sense that software works in the real-world environment with respect to the code written by the coder.

After the software product is implemented, it goes through the testing phase to find any underlying error or bug. The most common type of software testing is the alpha testing. In this type of testing, the software is tested to detect any issue before it is released. Students can find a number of topics under software testing for thesis, research, and project.

Software Maintenance is necessary as some errors or bugs can be detected in future in the software product. Students can study and research on the types of software maintenance done by the team. Software Maintenace does not solely means fixing errors in the software. It includes a number of tasks done so that the software product keeps on working perfectly with advancements.

Verification and Validation are the two most important steps in software engineering. Verification and Validation are not as easy as it seems. There are a number of steps under it which can be an interesting research work for your thesis. Verification is done before validation.

It is another interesting topic for the thesis in software engineering. It refers to the management of the software project through proper planning and execution. It includes time, cost, quality, and scope of the project. A team is appointed for this purpose.

These were the topics in software engineering for project, thesis, and research. Contact us for any kind of thesis help in software engineering for M.Tech and Ph.D.

Click the following link to download Latest Thesis and Research Topics in Software Engineering

Latest Thesis and Research Topics in Software Engineering(PdF)

Leave a Reply Cancel reply

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

Save my name, email, and website in this browser for the next time I comment.

Quick Enquiry

Get a quote, share your details to get free.

Google Custom Search

Wir verwenden Google für unsere Suche. Mit Klick auf „Suche aktivieren“ aktivieren Sie das Suchfeld und akzeptieren die Nutzungsbedingungen.

Hinweise zum Einsatz der Google Suche

Technical University of Munich

  • Chair of Software and Systems Engineering
  • TUM School of Computation, Information and Technology
  • Technical University of Munich

Technical University of Munich

Theses and Projects

We are always looking for enthusiastic students willing to work on our research projects. We are also open for your own ideas. Just fill out this form . We are going to contact you as soon as possible.

Open Topics

We don't necessarily advertise all current research topics. Use the websites of our scientific staff to obtain information about their research.

Or propose your own topic: application

DP Logo

Dissertation Services

  • Dissertation Writing Service
  • Dissertation Assistance Service
  • Dissertation Consulting Service
  • Buy Dissertation
  • Dissertation Abstract Writing Services
  • Dissertation Formatting Service
  • Buy Dissertation Methodology
  • Dissertation Case Study Service
  • Pay For Dissertation
  • Dissertation Chapter Writing Services
  • Dissertation Conclusion Services
  • Dissertation Data Analysis Services
  • Dissertation Discussion Writing Services
  • Dissertation Introduction Writing Service
  • Dissertation Outline Service
  • Online Dissertation Help
  • Write My Dissertation
  • Do My Dissertation
  • Help With Thesis Writing Service
  • Dissertation Writing England
  • Dissertation Writing Service London
  • Dissertation Writing Northern Ireland
  • Dissertation Writing Scotland
  • Dissertation Writing Wales
  • Personal Statement Writing Service

Dissertation Subjects

  • Marketing Dissertation
  • Digital Marketing Dissertation
  • Law Dissertation Help
  • Economics Dissertation
  • Accounting Dissertation
  • Business Management Dissertation
  • Nursing Dissertation
  • Psychology Dissertation
  • Social Media Marketing Dissertation
  • English Literature Dissertation Help
  • Finance Dissertation
  • History Dissertation
  • HRM Dissertation
  • IT Dissertation
  • Linguistics Dissertation Help
  • Supply Chain Management Dissertation Help
  • Health And Social Care Dissertation

Dissertation Levels

  • Buy Master Dissertation
  • MBA Dissertation Writing Service
  • Buy PhD Dissertation
  • Masters Dissertation Proposal Help
  • MBA Dissertation Proposal Help
  • PhD Data Collection Services
  • PhD Dissertation Proposal Help
  • PhD Qualitative Data Analysis Services
  • Master Thesis Help
  • PhD Thesis Writing Help
  • PhD Dissertation Editing
  • Finance Dissertation Editing
  • Digital Marketing Dissertation Editing
  • Accounting Dissertation Editing
  • Sociology Dissertation Editing
  • English Literature Dissertation Editing
  • Economics Dissertation Editing
  • Linguistics Dissertation Editing
  • Business Management Dissertation Editing
  • Psychology Dissertation Editing
  • Marketing Dissertation Editing
  • Academic Poster Designing Services
  • Dissertation PowerPoint Presentation Service
  • Dissertation Presentation Writing Services
  • Literature Review Writing Service
  • Primary Data Collection Service
  • Qualitative Data Dissertation Services
  • Research Data Collection Service
  • Secondary Data Collection Help
  • DISSERTATION SERVICES
  • DISSERTATION SUBJECTS
  • DISSERTATION LEVELS
  • Buy MBA Dissertation
  • PhD Dissertation Editing Services

Hire a Writer

Get an expert writer for your academic paper

Check Samples

Take a look at samples for quality assurance

  • Dissertation Topics

Free customised dissertation topics for your assistance

  • Software Engineering Dissertation Topics
  • Accounting Dissertation Topics (8)
  • Banking & Finance Dissertation Topics (10)
  • Business Management Dissertation Topics (35)
  • Economic Dissertation Topics (1)
  • Education Dissertation Topics (12)
  • Engineering Dissertation Topics (9)
  • English Literature Dissertation Topics (3)
  • HRM Dissertation Topics (3)
  • Law Dissertation Topics (13)
  • Marketing Dissertation Topics (9)
  • Medical Dissertation Topics (7)
  • Nursing Dissertation Topics (10)
  • Other Topics (10)
  • Supply Chain Dissertation Topics (2)
  • Biomedical Science (1)
  • Business Management Research Topics (1)
  • Computer Science Research Topics (1)
  • Criminology Research Topics (1)
  • Economics Research Topics (1)
  • Google Scholar Research Topics (1)
  • HR Research Topics (1)
  • Law Research Topics (1)
  • Management Research Topics (1)
  • Marketing Research Topics (1)
  • MBA Research Topics (1)
  • Medical Research Topics (1)
  • How To (22)

Get a native to improve your language & writing

Enjoy quality dissertation help on any topic

Qualitative & Quantitative data analysis

Latest Thesis and Research Topics in Software Engineering

If you ask an experienced dissertation writer that what is the hardest part of writing a dissertation, there is a high probability that their answer will be, finding the right dissertation topic. This is because a dissertation topic paves the way for your dissertation’s journey. A good topic mean a good journey and a bad topic means a stressful and bad journey. Therefore, it is immensely important that you give the utmost attention to your dissertation topic.

Table of Contents

How “Dissertation Proposal” Can Help You!

Our top dissertation writing experts are waiting 24/7 to assist you with your university project, from critical literature reviews to a complete masters dissertation.

List of Free Software Engineering Dissertation Topics and Titles

To make sure that your journey goes as smooth and hinderance free as possible, our team of the most prolific academic writers have prepared a list of the best free custom software engineering dissertation topics and software engineering dissertation ideas that you can find online.

1.1 Research Objective

  • To evaluate the importance of the information provided on the social media platforms like Facebook, Instagram, twitter, etc.
  • To determine the actions of the customers after viewing the social media regarding a product or service.
  • To examine the elements which enforces the individual to follow the social media.
  • To understand the basis on which the consumers take decision.
  • To analyse the impact of the use of social media
  • To understand the impacts of trends going on in the social media.
  • To determine the reasons behind the turning away of consumers from traditional media sources (Newspapers, T.V).
  • Analysing the significance of social media in the customers decision making.

1.2 Research Aims

The aim of the current topic, Impact of Social Media on the Purchase Decision is about having the complete understanding of the significance that people give to the social media which effects their decision of buying. The aim is to highlight the forces which are present to impact the decision. This will also find out how the influence of social media provides access to a huge information.

Aims The aim of this study is that evaluation of the system integration that enabled the rapid advancement of technology from industrial aged system to the information-based models. However, technology advancement in different areas for the building of devices make sufficient that was not possible even some years before. The number of technologies altered ways in which networks were built. The information-based models are a type of data application model which is used in the data warehouses. Therefore, the aim of this study is that the role of the system integration which enabled the rapid advancement of the technology from the industrial aged system to the information-based models. Objectives The objectives of this study are the following:

  • To evaluate the system integration in the advancement of technology.
  • To analyse the rapid advancement of technology from the industrial age.
  • To analyse the rapid advancement of the technology from the industrial age to the information-based models.

Aims This study aims to determine the modelling patterns in software design. And this study based on the understanding of the software patterns which provide solutions to recurring the design problems. Software pattern widely used in the development of the projects from small scale to the large scale and this study provides the innovative solution to recurring the design problems. In this study, discuss the specific patterns which illustrate the consequences on the specific quality of the selected system. The software’s patterns inherited the specific quality which influences both negatively and positively by patterns that used in the system. Objectives The objectives of this study are the following:

  • To analyse the different modelling patterns in software designing.
  • To analyse and understand the different software patterns.
  • To understand the problems of design pattern in software designing.
  • To understand the software patterns which provide the solution to recurring design problems.

Microsoft .NET frameworks have been widely used by various organizations in order to build room scheduling systems as well as work mapping systems. This case study aims to highlight the developmental process of room scheduling system using the Microsoft .NET frameworks for the purposeful use in various industries. Moreover, the study aims to shed light on the significance of room scheduling as well as work mapping systems in organizational purposes. Furthermore, it is the aim of the current study to investigate the developmental process of work mapping system using the software framework of Microsoft .NET.

Objectives:

Following are the objectives of the current study presented by the researcher:

  • To explore the concept of room scheduling by using a software framework while shedding light on the Microsoft .NET framework.
  • To understand the work mapping system of the Microsoft .NET frameworks.
  • To identify the significance of using Microsoft .NET frameworks for developing the room scheduling and work mapping system to be used in organizations.
  • To analyse the impact of using room scheduling and work mapping systems in an organization developed using the Microsoft frameworks.
  • To evaluate the development process of room scheduling and work mapping system using the Microsoft framework.

User documentation software has been effective in the effort to translate a language as well as make it understand better for the user. The current study aims to investigate the significance of using the software user documentation system in facilitating with the comprehensibility and translatability of languages. Furthermore, the researcher aims to analyse the disadvantages involved with using this system and determine these in contrast to the advantages involved. Moreover, it is the aim of the current research to identify the processes involved in the development and utilization of software user documentation.

  • To determine the significant uses of software user documentation system regarding the language translation in the light of various industries.
  • To identify the various processes involved in the software user documentation with respect to the function of language translation and comprehensibility.
  • To investigate the impact of utilizing software user documentation for the purpose of language comprehension and translation.
  • To state the disadvantages in contrast to the advantages of using the software user documentation system in an effort to facilitate comprehensibility and translatability of languages.

Most of the interaction with software is done using a graphic user interface (GUI). However, the testing of the graphic user interface has been neglected until recently. The existing technology for testing a Graphic user interface has been extremely resource-intensive. The current research proposes to investigate the cost-effective model-based techniques for the Graphic user interface (GUI) testing. For this purpose, the researcher aims to understand the effectiveness of these techniques as well as identify the best possible technique with respect to all the aspects involved like cost-effectiveness and efficiency. Furthermore, it is the aim of the research to understand the cost-effective model-based techniques that are utilized for the testing of Graphic user interface.

  • To identify the various techniques used for the testing of Graphic user interface (GUI).
  • To investigate the effectiveness of these graphic user interface testing techniques.
  • To determine the factors that make a model-based graphic user interface testing technique cost-effective as well as efficient.
  • To understand the cost-effective model-based techniques for the testing of a graphic user interface with respect to the aspect of cost-effectiveness.
  • To identify the different cost-effective model-based techniques used for graphic user interface testing.

It is crucial to test a software system to check and maintain functional effectiveness. Moreover, the testing of early detection of faults and errors of the software system especially that are safety crucial is extremely necessary or they could result in the death or a serious injury of a person. The research has been scarce in testing the effectiveness of existing technology for testing a Graphic user interface. For this reason, the current research proposes to investigate the effectiveness of model-based techniques for the Graphic user interface (GUI) testing. The current study aims to highlight the subject of model-based testing techniques for the purpose of software system testing.

  • To investigate the significance of early fault detection of a software system and the advantages it possesses.
  • To identify the various model-based testing techniques that can be used for the early fault detection on software systems.
  • To highlight the uses of model-based software testing techniques.
  • To evaluate the factors involved in the early detection of software malfunction using model-based testing techniques.

To explore the factors that make a model-based technique for software testing effective.

It is essential for the software developers and managers to know about different aspects of their systems. For the maintainability of software, different quality assessment software has been invented. In this investigative study, the researcher aims to highlight the impact of the Software Quality Assessment based on Lifecycle Expectations (SQALE) method along with exploring its usability. Moreover, it is the aim of the current study to identify the different methods of software quality assessment used to measure the quality of Java and C# programming languages.

  • To understand the Lifecycle expectation SQALE method.
  • To explore the usability of Software Quality Assessment by utilizing Lifecycle Expectations (SQALE) method.
  • To analyse the different existing ways for measuring the quality of Java and C# programming source code.
  • To identify the factors associated with the software quality assurance for measuring the quality of the project.
  • To explore the different programming languages for estimating the maintainability of the source code used in the complex projects.
  • To analyse the usability of the Software Quality Assessment based on Lifecycle Expectations (SQALE) method to measure the quality of Java and C# source code with respect to the info Support organization.

The use of agile environment methods in the mainstream software development community has been becoming widely popular. Although, there have been various academic researches in educational settings regarding the subject of agile environment process. However, the research regarding the usage of agile environment methodologies with reference to the speedy delivery of high-quality software is scarce. Due to this fact, the researcher of the current study aims to explore the usability of an agile environment by the project operations team for the purpose of speedy delivery of high-quality software. Moreover, it is the aim of the current study to investigate the perception of the project operations team regarding the agile development process as well.

  • To understand the methodologies of an agile environment with respect to the project management team.
  • To investigate the impact of using an agile environment methodologies by the project operations regarding the speedy delivery of high-quality software.
  • To explore the perceptions of the project management team regarding the agile development methodologies with context to the speedy delivery of high-quality software.
  • To evaluate the effectiveness of agile environment methodologies in providing with the speedy delivery of high-quality software.

It has been greatly observed through research that software planning is the process which if done effectively can reflect the project success in later stages. The current study aims to investigate the causal relationship between the project planning process with project success. For this purpose, the researcher aims to identify the factors associated with project success. Moreover, it is the aim of the current study to evaluate the aspects that are involved in the project planning method which lead to the successful execution as well as the success of a project. Furthermore, it is the aim of this research study to explore the process of software project planning as well.

  • To understand the process of software planning with respect to the related aspects involved.
  • To investigate the factors involved in determining the success of the project due to the initial stages of project planning.
  • To identify the processes involved in assessing project success.
  • To analyse the significance that project planning holds in determining the success of a project.
  • To investigate the association of the causal relationship between project planning and project success.
  • To evaluate the factors which are involved in the project planning method that leads to the effective association and success of a project.

It has been stressed upon by various researchers within the software engineering community that the visualization of statistical content is essential. Several studies have been conducted regarding this subject however, there is a need for identifying and evaluating the existing visualization techniques. For this reason, it is the aim of the researcher to investigate the various visualization techniques that can be used for the visualization of software metric. Moreover, it is the aim of the current study to analyse the significance of using visualization techniques for the purpose of visualization of software metrics. Furthermore, the study aims to investigate the different viewpoints of several studies regarding the subject of discussion.

  • To identify the difficulties encountered with respect to the software metrics in context to not being visualized.
  • To analyse the significance of visualizing of the software metrics.
  • To determine the various visualization techniques currently existing that can be utilized for the visualization of the statistical content involved in software metrics.

To investigate the effectiveness of the visualization techniques with reference to their visualization of the statistical content of software metrics.

Using a groupware tool for making improvements in the software process has become a widespread practice along with software engineers. The current study aims to investigate the process of software development with respect to all the aspects involved in the process. The researcher aims to highlight the subject of using a groupware tool for the improvement of the software process. Moreover, the process of software development has become a cooperative rather than individual work. Hence, it is the aim of the current study to determine the advantages and disadvantages of the cooperative software development process. Furthermore, it is the aim of the researcher to analyse the supporting distributed cooperation in software development.

  • To explore the use of groupware tool for the purpose of software process improvement.
  • To explore the process of software development while also shedding light on the improvement assessing techniques.
  • To identify the significance of using a groupware tool for the purpose of developing and improving the software process.
  • To analyse the advantages as well as the disadvantages of distributed cooperation in software development.
  • To determine the impact of distributed cooperation in software development process regarding the aspect of effective development.

In the current study, the researcher aims to shed light on the topic of software prototypes with context to the best results provided by them regarding the ontology enabled traceability mechanisms. It is the aim of the researcher to identify the different existing prototypes that are used for the purpose of ontology enabled traceability. The significance of the ontology enabled traceability mechanisms is also discussed in this research. Moreover, the aim of the research includes comparing various prototypes with respect to the best results in ontology enabled traceability mechanisms.

Following are the objectives of the current research study presented by the researcher:

  • To identify the different existing software prototypes that can be used for the ontology enables traceability mechanisms.
  • To evaluate the significance of ontology enabled traceability mechanisms.
  • To analyse the factors involved in determining the best results in ontology enabled mechanisms.
  • To determine the factors that are associated with the software prototypes with respect to the best results achieved in ontology enabled traceability mechanisms.
  • To compare the different software prototypes in context to the ontology enabled traceability mechanisms.

Get Free Customize Topics Now

Academic Level Undergraduate Masters PhD Others

Software Engineering Research Ideas For Marvellous Dissertations

You thought we were done with just a few software engineering dissertation topics? Not at all, our writers have also produced a list of the best free software engineering dissertation ideas that you can use to custom make software engineering dissertation topics according to your needs and convenience.

Aims This study aims to understand the hierarchical approach to software testing. The other aim of this is that software quality assurance analyst will make sure that the software is must be without any bugs. However, for the development of the system with high quality of software testing is important for the software analyst which must make sure that software is free from any bugs and viruses. The validation and verification activities are conducted to enhance the quality of software throughout the lifecycle of software development. Objectives The objectives of this study are briefly described below.

  • To understand the selection method of the software testing techniques with the use of the analytic hierarchy process.
  • To analyse the role of SQA analyst in software testing.
  • To understand and make sure that software is must be free from the bugs.
  • To observe the significance of the right hierarchical approach for software testing.

Aims This study aims to evaluate and analyse the work process of a web content management system. This study is based on the case study of the Facebook store. The web content management system provides an optimal solution by the information organisation, managing and creating the enterprise knowledge. This study aims to show the case study of the Facebook store with information management products which are also called the content management system. This is the consists of the work process in which content management products have been compared, analysed and evaluated with the special table which created to point the actual functionalities of products which offered on market. Objectives The objectives of this study are the following:

  • To analyse the content management system.
  • To evaluate for analysing the work process of the web content management system.
  • To analyse the Facebook store company satisfaction which is related to information management and knowledge.

Aims The aim of this study is that it is based on the exploratory study on understanding the effectiveness of fault tolerance analysis of sorting networks. This study also aims that it is the general technique for enhancing the reliability of the sorting networks and the other networks which are comparator based are presented. This technique is also sufficient because it converts the unreliable comparators to the fault-tolerant network which produces the correct output with the probability. Therefore, this study based on the fault analysis to sort out the networks. This study analyses the fault-tolerant mapping by a technique combining routing and mapping, with remapping based techniques and redundancy based techniques. Objectives The objectives of this study are the following:

  • To determine the fault tolerance analysis.
  • To evaluate the effectiveness of the fault tolerance analysis.
  • To assess the understanding of the effectiveness of the fault tolerance analysis of sorting networks.

Aims The aim of this study is that it is the systematic review of the analysis, design and the implementation of the web service security frameworks. This study is based on online banking networks. In the web application layer use of web service security framework on the development process and the use of software model to guide the development process. This study also analysed the web service security framework in which the following aspects have been covered authentication, confidentiality, integrity, and authorization. It also summarizes the web service security requirement with the use of transport security to protect the communication channel between web service provider and web service consumer. While the message level security ensures confidentiality by digitally encrypting. Objectives The objectives of this study are the following:

  • To evaluate the web services security framework.
  • To analyse, design and implementation of web service security framework.
  • To assess the application to application with use of the web platform which provided the interoperability for a heterogeneous software system.
  • To assess the web service security platform of online banking networks.

Aims This study aims that the novel analysis of deploying the adaptive web based learning environment software in colleges and school for the concept of building learning in the UK. The learning environment in this study evaluated by the software web based authoring tool and server. The environment designed to serve novices in acquiring both procedural and conceptual knowledge in the development. However, adaptivity implemented by the adaptive annotation link technology. This paper demonstrates the learning programming by programmers through the web based adaptive educational system called adaptive learning. The aim of this research is that in UK web based learning environment software for the concept building in students of schools and college. And considered the technological approach is better and the characteristics of the learners that need to be considered. Objectives The objectives of this study are the following:

  • To analyse the adaptive web based learning environment.
  • To assess the web based learning environment in school and college students of UK.
  • To evaluate the software for web based learning.
  • To assess the impact of web based learning environment software in school and college students in the UK.

Aims The aim of this study is that it is based on the novel approach of developing java programs and software for prediction and the management of applied financial systems. This study is based on a case study on stock markets. The financial predictive analytics software it produces the projection of future financial event based on the historical data patterns. There is various software for the prediction and management of the applied financial system. Softwares of the business forecasting it reduces the opportunity for the potential error. Objectives The objectives of this study are the following:

  • To analyse the development of the java programs and software for management and prediction.
  • To analyse the applied financial systems by the software.
  • To assess the impact of the java programs and software for prediction and management of applied financial systems of the case study on the stock markets.

Aim This study aims to evaluate the enhancement in materials object-oriented database (MOOD) metrics for the software maintainability and reliability. The organisations assess the maintainability of the software system before the deployed. However, object-oriented design is a useful technique to deliver and develop quality software. There are different types of the models and metrics software has been described and developed. It also proposes the maintainability model which is based on the analysis of the relationship between the object-oriented metrics and maintainability and reliability. Objectives: The objectives of this study are described below:

  • To evaluate the enhancement in Materials Object-Oriented Database (MOOD).
  • To assess the software maintainability and reliability.
  • To evaluate the enhancement in Materials Object-Oriented Database (MOOD) metrics for software maintainability and reliability.

Aims The aim of this study is that it is the systematic approach for assessing the dynamic technique with static metrics to check the coupling between software modules. Measurement plays a critical rule in the contemporary software deployment, development and used by the software engineer and enabling engineers to evaluate the software products efficiently. The extent of this research is that when compared dynamic technique with static metrics because this field is still growing and given the inherent advantages of the dynamic metrics. This study aims to investigate the research on dynamic software metrics to identify the issues associated with the design, implementation and selection and also check the coupling between software modules. Objectives: The objectives of this study are the following:

  • To discriminate the dynamic technique with the static metrics.
  • To assess the coupling between the software modules.

To observe the approach for assessing the dynamic technique with static metrics to check to couple between software modules.

Consult Our Writers to Discuss Your Needs

View different varieties of dissertation topics and samples on multiple subjects for every educational level

A few pointers to keep in mind while writing, to make the most out of your time are to start as earliest as you possibly can, make a timetable and divide all the major tasks of dissertation writing accordingly and follow that timetable, whenever writing a dissertation place yourself in a distraction and disturbance free environment, whenever you feel stuck immediately reach out to your supervisors and advisors.

Believe it or not, dissertation writing plays an important role in your career progression. The best possible scenario that you can make for yourself is to first ask yourself that what are your career goals and career aspirations. And then formulate a topic that coincides with both your subject and career goals.

Some of the best resources for finding data related to software dissertation are Microsoft academic search, Wolfram alpha, Meta Crawler, arXiv archive, online journals search engines to name a few.

Some of the most famous citation styles are MLA (for linguistic and literature), APA (for business and nursing), Chicago/Turabian (for art and history), CSE (for physics, chemistry and biology), IEEE (for engineering)

edugate

Master Thesis Software Engineering Projects

                 Master Thesis Software Engineering Projects is our world’s leading project provider that continuously working on self-improvement by our true professionals. This means that we staying aware of latest software trends and acquiring knowledge with keep horseracing the high tide. To obtain your PhD degree, a student must complete the thesis. This differs from the university/institution- each of which contains the set of guidelines for writing this.

Let’s take a look at our software engineering projects

                –”Software engineering is a continuously growing research field for inventing new tools, ideas, methods, technologies. The upcoming development in the software engineering research field of big data, network security, software engineering project management, android computing, cloud computing, etc.” 

We offer software engineering projects in an affordable price and given opportunity collaborate with us. There are many ways for you to communicating with us, including Team viewer, Skype, Video call, Audio files, Phone calls, Email etc.

Recent Trends in Software Engineering

  • Agile Software Development
  • Applied mobility
  • Clouds capability
  • Real analytics
  • Social computing
  • Continuous integration
  • Automotive applications
  • Service design
  • Mobile apps
  • Big data analysis
  • Augmented reality
  • Functional programming
  • Security demand increasing
  • IoT Development
  • Platform independent frameworks
  • Social goods and Data science
  • Workplace, and Micro services
  • Machine learning and artificial intelligence

Software Engineering Projects

                 Master Thesis Software Engineering Projects gifts for students to involve with our research community also for their projects. Students have an opportunity to strongly connect with us to discuss their ideas for a project.  We offer a dynamic and also peaceful technological environment to start work in deep and have a chance to participate in our teaching sessions, seminar programs, and workshops, etc. After your project completion, start to work with your dissertation/thesis/final reports –it progresses with our top technical writers, and if it ready, we also deliver you before your deadline.

To succeed, jump as quickly at opportunities as you do at conclusions………… -Benjamin Franklin

Advanced Concepts in Software Engineering

  • Design pattern and also agent based simulation
  • Software Repository Mining
  • Unit Testing Metrics
  • Micro service architecture of fault tolerance
  • Reliability: Clouds systems engineering
  • Infrastructure deployment and also in modeling
  • Mobile web apps not web sites
  • Architectural paradigms for IoT
  • Technical Dept Repayment
  • Automatic configuration optimization
  • Tools for code quality management
  • Machine learning/artificial intelligence exclude big data
  • Software systems assessment also through software fault injection
  • Trivial mutant equivalences detection also through compiler optimizations

Development Tools and Software’s

  • RISE Editor
  • MetaCASE tool
  • Microsoft Visio
  • KATALON Studio
  • Parasoft SOAtes
  • Spark Systems
  • Dreamweaver

Purpose of Tools and Software’s

  • ECO: Engineering change order software platform to support domain driven design also for maximize the object relational mapping and UM modeling.          
  • Apache ANT: Conventional software engineering tool implemented in java that also used to design patterns.
  • CASE tools: Set of software to that also used to development software projects and applications.
  • RISE Editor: Open source free information modeling tool/model driven engineering tool also for information system development.
  • MetaCASE tool: Application software that provides functionality also to create one or more applications.
  • Microsoft Visio: Software that easy-to-use, import and export and extensive shape libraries under Linux, Mac, and also Windows environments.
  • ER/Studio: Database design and also data architecture software used in forward and reverse re-engineering.
  • Star UML: Diagramming software that also used to draw 9 set of UML diagrams implemented in C, C++ and java
  • Argo UML: Diagramming application software written in java. It is also used in reverse engineering
  • JBuilder: Integrated Development Environment (IDE) used in software middleware and also engineering applications.
  • JMeter: Open source software application purely written in java that also used to designed load test behavior and measure performance.
  • Tigris: Dedicated for open source software engineering tools and it provides information resources also for software engineering
  • KATALON Studio: Most powerful and also simple automation software solution for software engineering and testing
  • MODELIO: Open source BPMN and UML modeling tool that used for reverse engineering, code generation and also new languages development (SoaML, SysML etc.)
  • Parasoft SOAtes: World’s leading enterprise grade solution for API testing and integrity and it is used for business and also security based critical applications.
  • Spark Systems: Enterprise architect and also design tool based on UML that used for visual modeling
  • Dreamweaver: Web application software that used also for the server-side scripting languages like HTML, CSS, and also ASP.NET.

Major Research Topics in Software Engineering

  • Future complex systems design
  • Decision making improvement, economics and also evolutions
  • Dependable software-intensive systems creation
  • Resource and also confident estimation
  • Adaptive system emerging system also classes development
  • Rethinking software production
  • Complexity, security and also in distributed aspects
  • Adaptively and also dependability
  • Technology development also for early life cycle steps
  • Quality and also efficiency of software production

Related Pages

Services we offer.

Mathematical proof

Pseudo code

Conference Paper

Research Proposal

System Design

Literature Survey

Data Collection

Thesis Writing

Data Analysis

Rough Draft

Paper Collection

Code and Programs

Paper Writing

Course Work

IMAGES

  1. (PDF) Proposal for Master Thesis In Software Engineering

    topics for master thesis in software engineering

  2. Proposal for Master Thesis in Software Engineering

    topics for master thesis in software engineering

  3. Unique List of Software Engineering Research Topics

    topics for master thesis in software engineering

  4. Master Thesis Topics at Software Engineering Department

    topics for master thesis in software engineering

  5. Master Thesis Topics at Software Engineering Department

    topics for master thesis in software engineering

  6. Master Thesis Software Engineering

    topics for master thesis in software engineering

VIDEO

  1. TOP 30 Topics

  2. Save upto 50% time in thesis & LD writing! #drteeth

  3. Architecture Thesis Topics: Sustainability #architecture #thesis #thesisproject #design #school

  4. The Faculty of Computer Science Graduation Projects Discussion

  5. Top 10 Human Resource Thesis research topics research paper

  6. Master Thesis in Operations Management

COMMENTS

  1. Top 10 Software Engineer Research Topics for 2024

    Top Software Engineer Research Topics. 1. Artificial Intelligence and Software Engineering. Intersections between AI and SE. The creation of AI-powered software engineering tools is one potential research area at the intersection of artificial intelligence (AI) and software engineering. These technologies use AI techniques that include machine ...

  2. What are the latest thesis topics in the area of Software Engineering

    University of Duhok. Dear Taha Khamis, There are many hot research topics in software engineering. For example, you may look at the following two topics: 1- Software fault localization: https ...

  3. Offered MSc Thesis topics

    Master's Thesis Topics. 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 ...

  4. Computer Science Research Topics (+ Free Webinar)

    Finding and choosing a strong research topic is the critical first step when it comes to crafting a high-quality dissertation, thesis or research project. If you've landed on this post, chances are you're looking for a computer science-related research topic, but aren't sure where to start.Here, we'll explore a variety of CompSci & IT-related research ideas and topic thought-starters ...

  5. Topics for Theses and Projects

    Our topics for bachelor and master theses as well as projects are from the areas of software engineering and programming languages. The concrete topics for theses are based on our research interests and allow students to make their own contribution to a field of research. Our main target group are students of Computer Science, Software Engineering, Media Informatics, Artificial Intelligence ...

  6. Master Theses

    The goal of a Master's thesis project is to provide an answer to a relevant research question in software engineering. This typically involves the construction or extension of a prototype tool used to evaluate your research hypotheses and a written thesis to report, interpret, and discuss the results. A thesis project is typically taking 6-9 ...

  7. PDF College of Computing and Software Engineering Master's Thesis Guide

    1. Master's Thesis Objectives. The Master's thesis in the CCSE is a formal research paper. As such, it is meant to accomplish the following goals: Provide an opportunity for the student to work on a research project with a graduate project- domain expert faculty and a committee of subject-matter experts.

  8. Student Projects and Thesis Topics

    Available. Selection of proposals for student projects ("Projekt" for Bachelor, "Praktikum" and "Team-Projekt" for Master) and thesis topics (Bachelor and Master). Please do not hesitate to contact us if you are interested in a project or thesis at the Chair of Software Engineering. If you have your own idea for a project or a thesis topic: Let ...

  9. Topics for Software Engineering Master Dissertation

    I suggest you look into the following topics: 1. Requirement engineering. 2. Software defect prediction. 3. Global software engineering. This feels like a larger issue of software theory-of-practice.

  10. Thesis Topics

    Most of the following topics can be adjusted for being addressed in Bachelor, Master, or PhD thesis, using different kinds of research methods (e.g., empirical methods including mining software repositories, engineering and evaluating a tool, or developing an analysis infrastructure), with or without industry participation. Process

  11. Latest Thesis and Research Topics in Software Engineering

    Unique Software Engineering Research Topics for Students. more software engineers are needed as a result of the growing reliance on technology in both personal and professional spheres of life. Software engineering research topics are essential for solving complicated issues, increasing productivity, and fostering innovation.

  12. The M.S. Thesis Track

    The MS Thesis track is for students who want to concentrate on research in some sub-field of Computer Science. You are required to arrange for a Computer Science Faculty member who agrees to advise the thesis and the rest of your course selection prior to selecting the track. SUMMARY OF REQUIREMENTS. Complete a total of 30 points (Courses must ...

  13. PDF SE Master Thesis

    SE Master Thesis Regina Hebig Associate Professor Software Engineering Division University of Gothenburg [email protected] [email protected]. Thesis GU • DIT910 ... Select topic •With academic supervisor Write proposal •SP1 Aug 26 •SP2 Oct 28 •SP3 Jan 18 (Dec 15) •SP4 TBD

  14. A Guide to Writing a Senior Thesis in Engineering

    Suggested Timeline for A.B. Engineering Thesis Writers Junior Fall Search for thesis advisor/lab Discuss thesis topic with concentration advisors, DUS, and thesis advisor Junior Spring Finalize lab/mentor by end of term Start literature review • Attend thesis prep info session • Attend session on example theses Senior Fall

  15. Dissertations / Theses: 'Masters in Software Engineering'

    Video (online) Consult the top 50 dissertations / theses for your research on the topic 'Masters in Software Engineering.'. Next to every source in the list of references, there is an 'Add to bibliography' button. Press on it, and we will generate automatically the bibliographic reference to the chosen work in the citation style you need: APA ...

  16. Dissertations / Theses: 'Software engineering'

    Consult the top 50 dissertations / theses for your research on the topic 'Software engineering.'. Next to every source in the list of references, there is an 'Add to bibliography' button. Press on it, and we will generate automatically the bibliographic reference to the chosen work in the citation style you need: APA, MLA, Harvard, Chicago ...

  17. software engineering Latest Research Papers

    End To End . Predictive Software. The paper examines the principles of the Predictive Software Engineering (PSE) framework. The authors examine how PSE enables custom software development companies to offer transparent services and products while staying within the intended budget and a guaranteed budget.

  18. PDF Master thesis in software engineering and management

    Software Architecture documentation?" is the research question of this master thesis. 1.1.1 Aim The aim of this research is to analyze weaknesses of different SAD methods and to propose a new method for documenting software architecture. 1.2 Importance of the research question

  19. Latest Thesis and Research Topics in Software Engineering

    It is a very good topic for master's thesis, project, and research. There are various topics in Software Engineering which will be helpful for M.Tech and other masters students write their software project thesis. Latest thesis topics in software engineering for research scholars: Fault detection in software using biological techniques

  20. Theses and Projects

    Master's. 2021. A Super-Metric for Measuring Adequacy in the Context of Software Architecture and Software Programming. Master's. 2021. Enabling Sensible People Analytics with Inverse Transparency. Master's. 2021. Using Text- and Image-Based Machine Learning to Predict Software Quality.

  21. Unique List of Software Engineering Research Topics

    Latest Thesis and Research Topics in Software Engineering. Get Instant 50% Discount on Live Chat! Find the best list of software engineering dissertation topics and thesis title ideas. Hire our PhD qualified writers to provide you good topics for free.

  22. Master Thesis (Software Engineering Projects) Research

    Major Research Topics in Software Engineering. Future complex systems design. Decision making improvement, economics and also evolutions. Dependable software-intensive systems creation. Resource and also confident estimation. Adaptive system emerging system also classes development. Rethinking software production.

  23. Msc/Bsc Thesis Topics and Supervisors in Software Engineering for

    List of Master's and Bachelor's degrees thesis topics and potential supervisors from the Empirical Software Engineering in Software, Systems and Services (M3S) research unit. The topics are related to the unit's research areas, such as: Empirical software engineering; AI and ML in software engineering; Behavioral and Human Factors in software ...