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 Software Engineering 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.

List of Software Engineer Research Topics in 2024

Here is a list of Software Engineer research topics:

  • Artificial Intelligence and Software Engineering
  • Natural Language Processing 
  • Applications of Data Mining in Software Engineering
  • Data Modeling
  • Verification and Validation
  • Software Project Management
  • Software Quality
  • Software Models

Top 10 Software Engineer Research Topics

Let's discuss the top Software Engineer Research Topics in a detailed way:

1. Artificial Intelligence and Software Engineering

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

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

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

b. Efficiency

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

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

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

SDLC

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)

 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. 

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. 

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

NameDateFeeKnow more

Course advisor icon

  • Publications
  • News and Events
  • Education and Outreach

Software Engineering Institute

Research review 2022.

At the 2022 Research Review, our researchers detail how they are forging a new path for software engineering by executing the SEI’s technical strategy to deliver tangible results.

Researchers highlight methods, prototypes, and tools aimed at the most important problems facing the DoD, industry, and academia, including AI engineering, computing at the tactical edge, threat hunting, continuous integration/continuous delivery, and machine learning trustworthiness.

Learn how our researchers' work in areas such as model-based systems engineering, DevSecOps, automated design conformance, software/cyber/AI integration, and AI network defense—to name a few—has produced value for the U.S. Department of Defense (DoD) and advanced the state of the practice.

Monday, November 14, 2022

Tuesday, november 15, 2022, wednesday, november 16, 2022.

Trending Topics in Software Engineering

New citation alert added.

This alert has been successfully added and will be sent to:

You will be notified whenever a record that you have chosen has been cited.

To manage your alert preferences, click on the button below.

New Citation Alert!

Please log in to your account

PREVIOUS ARTICLE

software engineering research topics 2022

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.

Ernest Joseph

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

Andrew Alafassi

Database Management Systems

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.

software engineering research topics 2022

  • Print Friendly

Software Engineering Research Ideas

I was honored to be given ACM SIGSOFT’s “Influential Educator” award in 2020, but I was also surprised : as far as I can tell, projects like Beautiful Code , Making Software , The Architecture of Open Source Applications , and It Will Never Work in Theory haven’t actually had any impact on how software engineering is taught.

However, I have been collecting random software engineering research ideas from friends and colleagues for more than a decade. I know it’s a weird hobby, but I’ve always believed that studying things practitioners are actually curious about would lead to more fruitful collaboration between academia and industry. Here, therefore, are the questions I’ve been asked since I started taking notes ten years ago. I apologize for not keeping track of who wanted to know, but if you’re working on any of these, please get in touch and I’ll try to track them down.

Does putting documentation in code (e.g., Python’s docstrings) actually work better than keeping the documentation in separate files, and if so, by what measure(s)?

Do doctest -style tests (i.e., tests embedded directly in the code being tested) have any impact long-term usability or maintainability compared to putting tests in separate files?

Which tasks do developers collaborate on most often and which do they do solo most often? (If I’m reading my handwriting correctly, the questioner hypothesized that programmers routinely do bug triage in groups, but usually write new code alone, with other tasks falling in between.)

Are slideshows written using HTML- or Markdown-based tools more text-intensive than those written in PowerPoint? In particular, are slides written in formats that version control understands (text) less likely to use diagrams than slides written with GUI tools?

A lot of code metrics have been developed over the years; are there any for measuring/ranking the difficulty of getting software installed and configured?

How does the percentage of effort devoted to tooling and deployment change as a project grows and/or ages? And how has it changed as we’ve moved from desktop applications to cloud-based applications? (Note: coming back to full-time coding after a decade away, my impression is that we’ve gone from packaging or building an installer taking 10% of effort to cloud deployment infrastructure being 25-30% of effort, but that’s just one data point.)

Has anyone developed a graphical notation for software development processes like this one for game play ?

How do open source projects actually track and manage requirements or user needs? Do they use issues, is it done through discussion threads on email or chat, do people write wiki pages or PEPs , etc.?

Has anyone ever done a quantitative survey of programming books aimed at professionals (i.e., not textbooks) to find out what people in industry care enough to write about or think others care about?

Has anyone ever done a quantitative survey of the data structures used in undergraduate textbooks for courses that aren’t about data structures? I.e., do we know what data structures students are shown in their “other” courses?

Has anyone ever compared a list of things empirical software engineering research has “proven” (ranked by confidence) versus a list of things programmers believe (similarly ranked)?

Has anyone ever done a quantitative survey of how many claims in the top 100 software development books are backed by citations, and of those, how many are still considered valid?

Are there any metrics for code fitness that take process and team into account? (I actually have the source for this one.)

Which of the techniques catalogued in The Discussion Book are programmers familiar with? Which ones do they use informally (i.e., without explicit tool support), and how do they operationalize them?

Is there a graphical notation like UML to show the problems you’re designing around or the special cases you’ve had to take into account rather than the finished solution to the problem (other than complete UML diagrams of the solutions you didn’t implement)?

Ditto for architectural evolution over time: is there an explicit notation for “here’s how the system has changed”, and if so, can it show multiple changes in a single diagram or is it just stepwise?

  • Pick an application (e.g., Twitter).
  • Build a work-alike that is deliberately malicious in some way (e.g., designed to radicalize its users).
  • Have people selected at random use both and then guess which is which.

Has anyone ever summarized the topics covered by ACM Doctoral Dissertation Award winners to see what computer science is actually about? (A subject is defined by what it gives awards for…)

Has anyone ever surveyed developers to find out what the most boring part of their job is?

Is there data anywhere on speakers’ fees at tech conferences broken down by by age, subject, gender, and geography?

Are programmers with greenery or mini-gardens in the office happier and/or more productive than programmers with foosball tables? What about programmers working from home: does the presence of greenery and/or pets make a difference?

How much do software engineering managers know about organizational behavior and/or social psychology? What mistruths and urban myths do they believe?

Has anyone ever compared how long it takes to reach a workable level of understanding of a software system with and without UML diagrams or other graphical notations? More generally, is there any correlation between the amount or quality of different kinds of developer-oriented documentation and time-to-understanding, and if so, which kinds of documentation fare best?

Is it possible to trace the genealogy of the slide decks used in undergrad software engineering classes (i.e., figure out who is adapting lessons originally written by whom)? If so, how does the material change over time?

How do people physically organize coding lessons when using static site generators? For example, do they keep example programs in the same directory or subdirectory as the slides, or keep the slides in one place and the examples in another? And how do they handle incremental evolution of examples, where the first lesson builds a simple version of X, the next lesson changes some parts but leaves others alone, etc.?

Has anyone ever applied security analysis techniques to emerging models of peer review to (for example) anticipate ways in which different kinds of open review might be gamed?

Has anyone ever written a compare-and-contrast feature analysis of tools for building documentation and tutorials? For example, how do Sphinx , Jekyll , and roxygen stack up?

Käfer et al’s paper comparing text and video tutorials for learning new software tools was interesting: has anyone done a follow-up?

Bjarnason et al’s paper on retrospectives was interesting: has anyone looked in more detail at what developers discuss in retrospectives and (crucially) what impact that has?

Has anyone studied adoption over time of changes (read: fixes) to Git’s interface? For example, how widely is git switch actually now being used? And how do adopters find out about it?

Same questions for adoption of new CSS features.

Is ther any correlation between the length of a project’s README file and how widely that software is used? If so, which drives which: does a more detailed README drive adoption or does adoption spur development of a more detailed README ?

Do any programming languages use one syntax for assigning an initial value to a variable and another syntax for updating that value, and if so, does distinguishing the two cases help? (Note: I think the person asking this question initially assumed that Python’s new := operator could only be used to assign an initial value.)

How, when, and why do people move from one open source project to another? For example, do they tend to move from a project to one of its dependencies or one of the projects that depends on it? And do they tend to keep the same role in the new project or use the switch as an opportunity to change roles?

How often do developers do performance profiling, what do they measure, and how do they measure it?

Has anyone ever created some like Sajaniemi’s roles of variables for refactoring steps or test cases? (Note: the person asking the question is a self-taught programmer who found Gamma et al’s book a bit intimidating, and is looking for beginner-level patterns.)

Has anyone defined a set of design patterns for the roles that columns play in dataframes during a data analysis?

(How) does team size affect the proportion of time spent on planning and the accuracy of plans?

Is there any way to detect altruism in software teams (i.e., how much time developer A spends helping developer B even though B’s problem isn’t officially A’s concern)? If so, is there any correlation between altruism and (for example) staff turnover or the long-term maintainability of the code base?

Is there any correlation between the quality of the error messages in a software system and the quality of the community? (Note: by “quality of the community”, I believe the questioner meant things like “welcoming to newcomers” and “actually enforces its code of conduct”.)

If you collect data from a dozen projects and guess which ones think they’re doing agile and which aren’t, is there anything more than a weak correlation to what process team members tell you they think they’re following? I.e., are different development methodologies distinct rhetorically but not practically?

What are students taught about debugging after their introductory courses? How much of what they’re explicitly taught is domain-specific (e.g., “how to debug a graphics pipeline”)?

Can we assess students’ proficiency with tools by watching screencasts of their work? And can we do it efficiently enough to make it a feasible way to grade how they code (as well as the code they write)?

A lot of people have built computational notebooks based on text formats (like Markdown) or that run in the browser. Has anyone built a computational notebook starting with Microsoft Word or OpenOffice, i.e., embedded runnable code chunks and their output in a rich document?

When people write essay-length explanations about error handling or database internals , how do they decide what’s worth explaining? Is it “I struggled to figure this out and want to save you the pain” or “I’m trying to build my reputation as an expert in this field” or something else?

Has anyone done a study that plots when people get funded on a loose timeline of “building a startup” broken out by founders’ characteristics? I.e., if 0 is “I have an idea” and 100 is fully functioning company, where do most black/brown founders get funded vs. other poc founders vs. white founders?

Has anyone analyzed videos of coding clubs for children or teens to see if girls are treated differently than boys by instructors and by their peers?

How does the distribution of language constructs actually used in large programs vary by language? For example, if we plot percentage of programs that use feature X in a language, ordered by decreasing frequency, how do the curves for different languages compare?

Is it possible to calculate something like a Gini coefficient to see how effectively scientists use computing? If so, is inequality static, decreasing, or increasing? (Note: the questioner felt strongly that the most proficient scientists are getting better at programming but the vast majority haven’t budged in the last three decades, so the gap between “median” and “best” is actually widening.)

If you train a Markov text generator on your software’s documentation, generate some fake man pages, and give users a mix of real and fake pages, can they tell which are which?

How does the number of (active) Slack channels in an organization grow as a function of time or of the number of employees?

How well are software engineering researchers able to summarize each other’s work based solely on the abstracts of their research papers, and how does that compare to researchers in other domains?

Second-line tech support staff often spend a lot of time explaining how things work in general so that they can solve a specific problem. How do they tell how much detail they need to go into?

Is there a notation like CSS selectors for selecting parts of a program to display in tutorials? (Note: I’ve used several systems that relied on specially-formatted comments to slice sections out of programs for display; the questioner was using one of these for the first time and wondering if there was something simpler, more robust, or more general.)

How does the order in which people write code differ from the order in which they explain code in a tutorial and why?

Has anyone built a computational notebook that presents a two-column display with the code on the left and commentary on the right? If so, how does that change what people do or how they do it?

Is it possible to extract entity-relationship diagrams from programs that use Pandas or the tidyverse to show how dataframes are being combined (e.g., to infer foreign key relationships)?

What percentage of time to developers spend debugging and how does that vary by the kind of code they’re working on?

At what point is it more economical to throw away a module and write a replacement instead of refactoring or extending the module to meet new needs?

Are SQL statements written in execution order easier for novices to understand or less likely to be buggy than ones written in standard order? (Note: the questioner was learning SQL after learning to manipulate dataframes with the tidyverse, and found the out-of-order execution of SQL confusing after the in-order execution of tidyverse pipelines.)

What error recovery techniques are used in what languages and applications how often?

What labels do people define for GitHub issues and pull requests, and do they take those labels with them to new projects or re-think each project?

  • Creating a set of scenarios, each with multiple-choice options.
  • Having an ethics expert determine the best answer for each.
  • Then have students and professionals answer the same questions.
  • Analyzed the results to see how well each group matches the experts’ opinions and whether practitioners are any better than students.

Has anyone ever studied students from the first year to the final year of their program to see what tools they actually start using when. In particular, when (if ever) do they start to use more advanced features of their IDE (e.g., “rename variable in scope”)?

  • Underrepresented groups often develop “whisper networks” to share essential knowledge (e.g., a young woman joining a company might be taken aside for an off-the-record chat by an older colleague and cautioned about the behavior of certain senior male colleagues). How have these networks changed during the COVID-19 lockdown?

And here are two of my own:

Journal of Software Engineering Research and Development Cover Image

  • Search by keyword
  • Search by citation

Page 1 of 2

Metric-centered and technology-independent architectural views for software comprehension

The maintenance of applications is a crucial activity in the software industry. The high cost of this process is due to the effort invested on software comprehension since, in most of cases, there is no up-to-...

  • View Full Text

Back to the future: origins and directions of the “Agile Manifesto” – views of the originators

In 2001, seventeen professionals set up the manifesto for agile software development. They wanted to define values and basic principles for better software development. On top of being brought into focus, the ...

Investigating the effectiveness of peer code review in distributed software development based on objective and subjective data

Code review is a potential means of improving software quality. To be effective, it depends on different factors, and many have been investigated in the literature to identify the scenarios in which it adds qu...

On the benefits and challenges of using kanban in software engineering: a structured synthesis study

Kanban is increasingly being used in diverse software organizations. There is extensive research regarding its benefits and challenges in Software Engineering, reported in both primary and secondary studies. H...

Challenges on applying genetic improvement in JavaScript using a high-performance computer

Genetic Improvement is an area of Search Based Software Engineering that aims to apply evolutionary computing operators to the software source code to improve it according to one or more quality metrics. This ...

Actor’s social complexity: a proposal for managing the iStar model

Complex systems are inherent to modern society, in which individuals, organizations, and computational elements relate with each other to achieve a predefined purpose, which transcends individual goals. In thi...

Investigating measures for applying statistical process control in software organizations

The growing interest in improving software processes has led organizations to aim for high maturity, where statistical process control (SPC) is required. SPC makes it possible to analyze process behavior, pred...

An approach for applying Test-Driven Development (TDD) in the development of randomized algorithms

TDD is a technique traditionally applied in applications with deterministic algorithms, in which the input and the expected result are known. However, the application of TDD with randomized algorithms have bee...

Supporting governance of mobile application developers from mining and analyzing technical questions in stack overflow

There is a need to improve the direct communication between large organizations that maintain mobile platforms (e.g. Apple, Google, and Microsoft) and third-party developers to solve technical questions that e...

Working software over comprehensive documentation – Rationales of agile teams for artefacts usage

Agile software development (ASD) promotes working software over comprehensive documentation. Still, recent research has shown agile teams to use quite a number of artefacts. Whereas some artefacts may be adopt...

Development as a journey: factors supporting the adoption and use of software frameworks

From the point of view of the software framework owner, attracting new and supporting existing application developers is crucial for the long-term success of the framework. This mixed-methods study explores th...

Applying user-centered techniques to analyze and design a mobile application

Techniques that help in understanding and designing user needs are increasingly being used in Software Engineering to improve the acceptance of applications. Among these techniques we can cite personas, scenar...

A measurement model to analyze the effect of agile enterprise architecture on geographically distributed agile development

Efficient and effective communication (active communication) among stakeholders is thought to be central to agile development. However, in geographically distributed agile development (GDAD) environments, it c...

A survey of search-based refactoring for software maintenance

This survey reviews published materials related to the specific area of Search-Based Software Engineering that concerns software maintenance and, in particular, refactoring. The survey aims to give a comprehen...

Guest editorial foreword for the special issue on automated software testing: trends and evidence

Similarity testing for role-based access control systems.

Access control systems demand rigorous verification and validation approaches, otherwise, they can end up with security breaches. Finite state machines based testing has been successfully applied to RBAC syste...

An algorithm for combinatorial interaction testing: definitions and rigorous evaluations

Combinatorial Interaction Testing (CIT) approaches have drawn attention of the software testing community to generate sets of smaller, efficient, and effective test cases where they have been successful in det...

How diverse is your team? Investigating gender and nationality diversity in GitHub teams

Building an effective team of developers is a complex task faced by both software companies and open source communities. The problem of forming a “dream”

Investigating factors that affect the human perception on god class detection: an analysis based on a family of four controlled experiments

Evaluation of design problems in object oriented systems, which we call code smells, is mostly a human-based task. Several studies have investigated the impact of code smells in practice. Studies focusing on h...

On the evaluation of code smells and detection tools

Code smells refer to any symptom in the source code of a program that possibly indicates a deeper problem, hindering software maintenance and evolution. Detection of code smells is challenging for developers a...

On the influence of program constructs on bug localization effectiveness

Software projects often reach hundreds or thousands of files. Therefore, manually searching for code elements that should be changed to fix a failure is a difficult task. Static bug localization techniques pro...

DyeVC: an approach for monitoring and visualizing distributed repositories

Software development using distributed version control systems has become more frequent recently. Such systems bring more flexibility, but also greater complexity to manage and monitor multiple existing reposi...

A genetic algorithm based framework for software effort prediction

Several prediction models have been proposed in the literature using different techniques obtaining different results in different contexts. The need for accurate effort predictions for projects is one of the ...

Elaboration of software requirements documents by means of patterns instantiation

Studies show that problems associated with the requirements specifications are widely recognized for affecting software quality and impacting effectiveness of its development process. The reuse of knowledge ob...

ArchReco: a software tool to assist software design based on context aware recommendations of design patterns

This work describes the design, development and evaluation of a software Prototype, named ArchReco, an educational tool that employs two types of Context-aware Recommendations of Design Patterns, to support us...

On multi-language software development, cross-language links and accompanying tools: a survey of professional software developers

Non-trivial software systems are written using multiple (programming) languages, which are connected by cross-language links. The existence of such links may lead to various problems during software developmen...

SoftCoDeR approach: promoting Software Engineering Academia-Industry partnership using CMD, DSR and ESE

The Academia-Industry partnership has been increasingly encouraged in the software development field. The main focus of the initiatives is driven by the collaborative work where the scientific research work me...

Issues on developing interoperable cloud applications: definitions, concepts, approaches, requirements, characteristics and evaluation models

Among research opportunities in software engineering for cloud computing model, interoperability stands out. We found that the dynamic nature of cloud technologies and the battle for market domination make clo...

Game development software engineering process life cycle: a systematic review

Software game is a kind of application that is used not only for entertainment, but also for serious purposes that can be applicable to different domains such as education, business, and health care. Multidisc...

Correlating automatic static analysis and mutation testing: towards incremental strategies

Traditionally, mutation testing is used as test set generation and/or test evaluation criteria once it is considered a good fault model. This paper uses mutation testing for evaluating an automated static anal...

A multi-objective test data generation approach for mutation testing of feature models

Mutation approaches have been recently applied for feature testing of Software Product Lines (SPLs). The idea is to select products, associated to mutation operators that describe possible faults in the Featur...

An extended global software engineering taxonomy

In Global Software Engineering (GSE), the need for a common terminology and knowledge classification has been identified to facilitate the sharing and combination of knowledge by GSE researchers and practition...

A systematic process for obtaining the behavior of context-sensitive systems

Context-sensitive systems use contextual information in order to adapt to the user’s current needs or requirements failure. Therefore, they need to dynamically adapt their behavior. It is of paramount importan...

Distinguishing extended finite state machine configurations using predicate abstraction

Extended Finite State Machines (EFSMs) provide a powerful model for the derivation of functional tests for software systems and protocols. Many EFSM based testing problems, such as mutation testing, fault diag...

Extending statecharts to model system interactions

Statecharts are diagrams comprised of visual elements that can improve the modeling of reactive system behaviors. They extend conventional state diagrams with the notions of hierarchy, concurrency and communic...

On the relationship of code-anomaly agglomerations and architectural problems

Several projects have been discontinued in the history of the software industry due to the presence of software architecture problems. The identification of such problems in source code is often required in re...

An approach based on feature models and quality criteria for adapting component-based systems

Feature modeling has been widely used in domain engineering for the development and configuration of software product lines. A feature model represents the set of possible products or configurations to apply i...

Patch rejection in Firefox: negative reviews, backouts, and issue reopening

Writing patches to fix bugs or implement new features is an important software development task, as it contributes to raise the quality of a software system. Not all patches are accepted in the first attempt, ...

Investigating probabilistic sampling approaches for large-scale surveys in software engineering

Establishing representative samples for Software Engineering surveys is still considered a challenge. Specialized literature often presents limitations on interpreting surveys’ results, mainly due to the use o...

Characterising the state of the practice in software testing through a TMMi-based process

The software testing phase, despite its importance, is usually compromised by the lack of planning and resources in industry. This can risk the quality of the derived products. The identification of mandatory ...

Self-adaptation by coordination-targeted reconfigurations

A software system is self-adaptive when it is able to dynamically and autonomously respond to changes detected either in its internal components or in its deployment environment. This response is expected to ensu...

Templates for textual use cases of software product lines: results from a systematic mapping study and a controlled experiment

Use case templates can be used to describe functional requirements of a Software Product Line. However, to the best of our knowledge, no efforts have been made to collect and summarize these existing templates...

F3T: a tool to support the F3 approach on the development and reuse of frameworks

Frameworks are used to enhance the quality of applications and the productivity of the development process, since applications may be designed and implemented by reusing framework classes. However, frameworks ...

NextBug: a Bugzilla extension for recommending similar bugs

Due to the characteristics of the maintenance process followed in open source systems, developers are usually overwhelmed with a great amount of bugs. For instance, in 2012, approximately 7,600 bugs/month were...

Assessing the benefits of search-based approaches when designing self-adaptive systems: a controlled experiment

The well-orchestrated use of distilled experience, domain-specific knowledge, and well-informed trade-off decisions is imperative if we are to design effective architectures for complex software-intensive syst...

Revealing influence of model structure and test case profile on the prioritization of test cases in the context of model-based testing

Test case prioritization techniques aim at defining an order of test cases that favor the achievement of a goal during test execution, such as revealing failures as earlier as possible. A number of techniques ...

A metrics suite for JUnit test code: a multiple case study on open source software

The code of JUnit test cases is commonly used to characterize software testing effort. Different metrics have been proposed in literature to measure various perspectives of the size of JUnit test cases. Unfort...

Designing fault-tolerant SOA based on design diversity

Over recent years, software developers have been evaluating the benefits of both Service-Oriented Architecture (SOA) and software fault tolerance techniques based on design diversity. This is achieved by creat...

Method-level code clone detection through LWH (Light Weight Hybrid) approach

Many researchers have investigated different techniques to automatically detect duplicate code in programs exceeding thousand lines of code. These techniques have limitations in finding either the structural o...

The problem of conceptualization in god class detection: agreement, strategies and decision drivers

The concept of code smells is widespread in Software Engineering. Despite the empirical studies addressing the topic, the set of context-dependent issues that impacts the human perception of what is a code sme...

  • Editorial Board
  • Sign up for article alerts and news from this journal
  • Publications
  • News and Events
  • Education and Outreach

Software Engineering Institute

Cite this post.

AMS Citation

Carleton, A., 2021: Architecting the Future of Software Engineering: A Research and Development Roadmap. Carnegie Mellon University, Software Engineering Institute's Insights (blog), Accessed September 4, 2024, https://insights.sei.cmu.edu/blog/architecting-the-future-of-software-engineering-a-research-and-development-roadmap/.

APA Citation

Carleton, A. (2021, July 12). Architecting the Future of Software Engineering: A Research and Development Roadmap. Retrieved September 4, 2024, from https://insights.sei.cmu.edu/blog/architecting-the-future-of-software-engineering-a-research-and-development-roadmap/.

Chicago Citation

Carleton, Anita. "Architecting the Future of Software Engineering: A Research and Development Roadmap." Carnegie Mellon University, Software Engineering Institute's Insights (blog) . Carnegie Mellon's Software Engineering Institute, July 12, 2021. https://insights.sei.cmu.edu/blog/architecting-the-future-of-software-engineering-a-research-and-development-roadmap/.

IEEE Citation

A. Carleton, "Architecting the Future of Software Engineering: A Research and Development Roadmap," Carnegie Mellon University, Software Engineering Institute's Insights (blog) . Carnegie Mellon's Software Engineering Institute, 12-Jul-2021 [Online]. Available: https://insights.sei.cmu.edu/blog/architecting-the-future-of-software-engineering-a-research-and-development-roadmap/. [Accessed: 4-Sep-2024].

BibTeX Code

@misc{carleton_2021, author={Carleton, Anita}, title={Architecting the Future of Software Engineering: A Research and Development Roadmap}, month={Jul}, year={2021}, howpublished={Carnegie Mellon University, Software Engineering Institute's Insights (blog)}, url={https://insights.sei.cmu.edu/blog/architecting-the-future-of-software-engineering-a-research-and-development-roadmap/}, note={Accessed: 2024-Sep-4} }

Architecting the Future of Software Engineering: A Research and Development Roadmap

Headshot of Anita Carleton.

Anita Carleton

July 12, 2021, published in.

Software Engineering Research and Development

This post has been shared 10 times.

This post is coauthored by John Robert, Mark Klein, Doug Schmidt, Forrest Shull, John Foreman, Ipek Ozkaya, Robert Cunningham, Charlie Holland, Erin Harper, and Edward Desautels

Software is vital to our country’s global competitiveness, innovation, and national security. It also ensures our modern standard of living and enables continued advances in defense, infrastructure, healthcare, commerce, education, and entertainment. As the DoD’s federally funded research and development center (FFRDC) focused on improving the practice of software engineering, the Carnegie Mellon University (CMU) Software Engineering Institute (SEI) is leading the community in creating a multi-year research and development vision and roadmap for engineering next-generation software-reliant systems. This blog post describes that effort.

Software Engineering as Strategic Advantage

In a 2020 National Academy of Science Study on Air Force software sustainment , the U.S. Air Force recognized that “to continue to be a world-class fighting force, it needs to be a world-class software developer.” This concept clearly applies far beyond the Department of Defense . Software systems enable world-class healthcare, commerce, education, energy generation, and more. These systems that run our world are rapidly becoming more data intensive and interconnected, increasingly utilize AI, require larger-scale integration, and must be considerably more resilient. Consequently, significant investment in software engineering R&D is needed now to enable and ensure future capability.

Goals of This Work

The SEI has leveraged its connections with academic institutions and communities, DoD leaders and members of the Defense Industrial Base , and industry innovators and research organizations to:

  • identify future challenges in engineering software-reliant and intelligent systems in emerging, national-priority technical domains, including gaps between current engineering techniques and future domains that will be more reliant on continuous evolution and AI
  • develop a research roadmap that will drive advances in foundational software engineering principles across a range of system types, such as intelligent, safety-critical, and data-intensive systems
  • raise the visibility of software to the point where it receives the sustained recognition commensurate with its importance to national security and competitiveness
  • enable strategic partnerships and collaborations to drive innovation among industry, academia, and government.

Guided by an Advisory Board of U.S. Visionaries and Senior Thought Leaders

To succeed in developing our vision and roadmap for software engineering research and development, it is vital to coordinate the academic, defense, and commercial communities to define an effective agenda and implement impactful results. To help represent the views of all these software engineering constituencies, the SEI formed an advisory board from DoD, industry, academia, research labs, and technology companies to offer guidance. Members of this advisory board include the following:

  • Deb Frincke , advisory board chair, Associate Laboratory Director for National Security Sciences, Oak Ridge National Laboratory
  • Michael McQuade , vice president for research, Carnegie Mellon University
  • Vint Cerf , vice president and chief internet evangelist, Google
  • Penny Compton , vice president for software systems, cyber, and operations, Lockheed Martin Space
  • Tim Dare , deputy director for prototyping and software, Office of the Under Secretary of Defense for Research and Engineering (previous position)
  • Sara Manning Dawson , chief technology officer enterprise security, Microsoft
  • Jeff Dexter , senior director of flight software & cybersecurity, SPACEX
  • Yolanda Gil, president, Association for the Advancement of Artificial Intelligence (AAAI); Director of Knowledge Technologies, Information Sciences Institute at University of Southern California
  • Tim McBride , president, Zoic Studios
  • Nancy Pendleton , vice president and senior chief engineer for mission systems, payloads and sensors, Boeing Defense, Space and Security
  • William Scherlis , director Information Innovation Office, DARPA

In June 2020, the SEI assembled this board to leverage their diverse perspectives and provide strategic advice, influence stakeholders, develop connections, assist in executing the roadmap, and advocate for the use of our results.

Future Systems and Fundamental Shifts in Software Engineering Require New Research Focus

Rapidly deploying software with confidence requires fundamental shifts in software engineering. New types of systems will continue to push beyond the bounds of what current software engineering theories, tools, and practices can support, including (but not limited to):

  • Systems that fuse data at a huge scale, whether for news, entertainment, or intelligence: We will need to continuously mine vast amounts of open-source data streams (e.g., YouTube videos and Twitter feeds) for important information that will in turn drive decision making. This vast stream of data will also drive new ways of constructing systems.
  • Smart cities, buildings, roads, cars, and transport: How will these highly connected systems work together seamlessly? How will we enable safe and affordable transportation and living?
  • Personal digital assistants: How will these assistants learn, adapt, and engage in home and business workflows?
  • Dynamically integrated healthcare: Data from your personal device will be combined with hospital data. How do we meet stringent safety and privacy requirements? How do we evaluate assurance in a highly data-driven environment?
  • Mission-level adaptation for DoD systems: DoD systems will feature mission-level construction of new integrated systems that combine a range of capabilities, such as intel, weapons, and human/machine teaming. The DoD is already moving in this direction, but how can we increase confidence that there will be no unintended consequences?

A Guiding Vision of the Future of Software Engineering

Our guiding vision is one in which the current notion of software development is replaced by the concept of a software pipeline consisting of humans and software as trustworthy collaborators who rapidly evolve systems based on user intent. To achieve this vision, we anticipate the need for not only new development paradigms but also new architectural paradigms for engineering new kinds of systems.

Advanced development paradigms, such as those listed below, lead to efficiency and trust at scale:

  • Humans leverage trusted AI as a workforce multiplier for all aspects of software creation.
  • Formal assurance arguments are evolved to assure and efficiently re-assure continuously evolving software.
  • Advanced software composition mechanisms enable predictable construction of systems at increasingly large scale.

Advanced architectural paradigms, as outlined below, enable the predictable use of new computational models:

  • Theories and techniques drawn from the behavioral sciences are used to design large-scale socio-technical systems, leading to predictable social outcomes.
  • New analysis and design methods facilitate the development of quantum-enabled systems.

AI and non-AI components interact in predictable ways to achieve enhanced mission, societal, and business goals.

Research Focus Areas

The fundamental shifts and needed advances in software engineering described above require new areas of research. In close collaboration with our advisory board and other leaders in the software engineering community, we have developed a research roadmap with six focus areas. Figure 1 shows those areas and outlines a suggested course of research topics to undertake. Short descriptions of each focus area and its challenges follow.

Figure 1: Software Engineering Research Roadmap with Research Focus Areas and Research Objectives (10-15 Year Horizon)

  • AI-Augmented Software Development . At almost every stage of the software development process, AI holds the promise of assisting humans. By relieving humans of tedious tasks, they will be better able to focus on tasks that require the creativity and innovation that only humans can provide. To reach this goal, we need to re-envision the entire software development process with increased AI and automation tool support for developers, and we need to ensure we take advantage of the data generated throughout the entire lifecycle. The focus of this research area is on what AI-augmented software development will look like at each stage of the development process and during continuous evolution, where it will be particularly useful in taking on routine tasks.
  • Assuring Continuously Evolving Systems . When we consider the software-reliant systems of today, we see that they are not static (or even infrequently updated) engineering artifacts. Instead, they are fluid—meaning that they are expected to undergo continuing updates and improvements throughout their lifespan. The goal of this research area is therefore to develop a theory and practice of rapid and assured software evolution that enables efficient and bounded re-assurance of continuously evolving systems.
  • Software Construction through Compositional Correctness . As the scope and scale of software-reliant systems continues to grow and change continuously, the complexity of these systems makes it unrealistic for any one person or group to understand the entire system. It is therefore necessary to integrate (and continually re-integrate) software-reliant systems using technologies and platforms that support the composition of modular components, many of which are reused from existing elements that were not designed to be integrated or evolved together. The goal of this research area is to create methods and tools (such as domain specific modeling language and annotation-based dependency injection) that enable the specification and enforcement of composition rules that allow (1) the creation of required behaviors (both functionality and quality attributes) and (2) the assurance of these behaviors.
  • Engineering Socio-Technical Systems . Societal-scale software systems, such as today’s commercial social media systems, are designed to keep users engaged to influence them. However, avoiding bias and ensuring the accuracy of information are not always goals or outcomes of these systems. Engineering societal-scale systems focuses on prediction of such outcomes (which we refer to as socially inspired quality attributes) that arise when we humans as integral components of the system. The goal is to leverage insights from the social sciences to build and evolve societal-scale software systems that consider qualities such as bias and influence.
  • Engineering AI-enabled Software Systems . AI-enabled systems, which are software-reliant systems that include AI and non-AI components, have some inherently different characteristics than those without AI. However, AI-enabled systems are, above all, a type of software system. These systems have many parallels with the development and sustainment of more conventional software-reliant systems. This research area focuses on exploring which existing software engineering practices can reliably support the development of AI systems, as well as identifying and augmenting software engineering techniques for the specification, design, architecture, analysis, deployment, and sustainment of systems with AI components.
  • Engineering Quantum Computing Systems . Advances in software engineering for quantum are as important as the hardware advances. The goals of this research area are to first enable current quantum computers so they can be programmed more easily and reliably, and then enable increasing abstraction as larger, fully fault-tolerant quantum computing systems become available. Eventually, it should be possible fully integrate these types of systems into a unified classical and quantum software development lifecycle.

Help Shape Our National Software Research Agenda

Along with the advisory board, our research team has examined future trends in the computing landscape and emerging technologies; conducted a series of expert interviews; and convened multiple workshops for broad engagement and diverse perspectives, including a workshop on Software Engineering Grand Challenges and Future Visions co-hosted with the Defense Advanced Research Projects Agency (DARPA) . This workshop brought together leaders in the software engineering research and development community to describe (1) important classes of future software-reliant systems and their associated software engineering challenges, and (2) research methods, tools, and practices that are needed to make those systems feasible. An upcoming SEI blog post will provide a synopsis of what was covered in this workshop.

Your feedback would be appreciated on the software engineering challenges and proposed research focus areas to help inform the National Agenda for Software Engineering Study. Please email [email protected] to send your thoughts and comments on the software engineering study & research roadmap or to volunteer as a potential reviewer of study drafts. Thank you.

Headshot of Anita Carleton.

Digital Library Publications

Send a message, more by the author, application of large language models (llms) in software engineering: overblown hype or disruptive change, october 2, 2023 • by ipek ozkaya , anita carleton , john e. robert , douglas schmidt (vanderbilt university), join the sei and white house ostp to explore the future of software and ai engineering, may 30, 2023 • by anita carleton , john e. robert , mark h. klein , douglas schmidt (vanderbilt university) , erin harper, software engineering as a strategic advantage: a national roadmap for the future, november 15, 2021 • by anita carleton , john e. robert , mark h. klein , erin harper, more in software engineering research and development, the latest work from the sei: apis, sboms, and static analysis, july 1, 2024 • by bill scherlis, the latest work from the sei: an openai collaboration, generative ai, and zero trust, april 10, 2024 • by douglas schmidt (vanderbilt university), applying the sei sbom framework, february 5, 2024 • by carol woody, 10 benefits and 10 challenges of applying large language models to dod software acquisition, january 22, 2024 • by john e. robert , douglas schmidt (vanderbilt university), the latest work from the sei, january 15, 2024 • by douglas schmidt (vanderbilt university), get updates on our latest work..

Sign up to have the latest post sent to your inbox weekly.

Each week, our researchers write about the latest in software engineering, cybersecurity and artificial intelligence. Sign up to get the latest post sent to your inbox the day it's published.

Navigation Menu

Search code, repositories, users, issues, pull requests..., provide feedback.

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly.

To see all available qualifiers, see our documentation .

software-engineering-research

Here are 22 public repositories matching this topic..., mauricioaniche / repodriller.

a tool to support researchers on mining software repositories studies

  • Updated Nov 28, 2023

wogscpar / SZZUnleashed

An implementation of the SZZ algorithm, i.e., an approach to identify bug-introducing commits.

  • Updated Oct 4, 2023

carpentries-incubator / python-intermediate-development

"Intermediate Research Software Development Skills (Python)" Lesson Material

  • Updated Aug 14, 2024

MrVPlusOne / Singularity

Pattern Fuzzing for Worst-Case Algorithmic Complexity using Program Synthesis

  • Updated Aug 24, 2021

ProdigyXable / defexts

Defexts: A Curated Dataset of Reproducible Real-World Bugs for Modern JVM Languages

  • Updated Aug 12, 2019

staslev / CodeDistillery

A highly parallel software repository mining framework.

  • Updated May 20, 2022

ponder-lab / GitHub-Issue-Classifier

Python script to mine for GitHub issues + comments and classify them.

  • Updated Dec 8, 2022

vcuse / alvo

⚙️ Software: A block-based programming language prototype for mobile robots.

  • Updated Mar 8, 2023

staslev / software-maintenance-explorer

A software maintenance explorer tool - https://soft-evo.shinyapps.io/maintenance-activities/ .

  • Updated May 31, 2019

mrksbrg / ImpRec

Recommendation System for Change Impact Analysis

  • Updated Feb 21, 2020

vcuse / workstation-setups

📄 Replication package: Investigating High-Res Virtual Reality with Passthrough Cameras in the Wild for Work in Homes and Offices.

  • Updated Aug 22, 2023

nirtiac / EmbeddingBugs

Source Code for Applying Embeddings to the Bug Localization Task

  • Updated Dec 11, 2018

serobotics / duplo

⚙️ A block-based programming language for two-armed robots.

  • Updated Mar 14, 2024

mrksbrg / SZZUnleashed

  • Updated Jul 13, 2020

ganeshkavhar / Music-Player-Python

  • Updated Nov 7, 2020

deenuy / se-imagenet

A large-scale repository of images for software-specific lexicons database called 'SE-ImageNet' to complement software engineering communities and computer vision researchers

  • Updated May 25, 2022

fronchetti / COLA-2022

📄 Replication package: Language impact on productivity for industrial end users: A case study from Programmable Logic Controllers

  • Updated Jan 25, 2022

ayaankazerouni / incremental-testing

Repo mining and analysis code to measure adherence to incremental testing.

  • Updated Jan 31, 2020

martinvelez / stackoverflow_data_dump

Ruby scripts to process the Stack Overflow Posts.xml file in the Stack Exchange data dump.

  • Updated Aug 17, 2016

ganeshkavhar / Youtube-Downloader-App-with-Python

  • Updated Nov 18, 2020

Improve this page

Add a description, image, and links to the software-engineering-research topic page so that developers can more easily learn about it.

Curate this topic

Add this topic to your repo

To associate your repository with the software-engineering-research topic, visit your repo's landing page and select "manage topics."

This week: the arXiv Accessibility Forum

Help | Advanced Search

Computer Science > Software Engineering

Title: the general index of software engineering papers.

Abstract: We introduce the General Index of Software Engineering Papers, a dataset of fulltext-indexed papers from the most prominent scientific venues in the field of Software Engineering. The dataset includes both complete bibliographic information and indexed ngrams (sequence of contiguous words after removal of stopwords and non-words, for a total of 577 276 382 unique n-grams in this release) with length 1 to 5 for 44 581 papers retrieved from 34 venues over the 1971-2020 period.The dataset serves use cases in the field of meta-research, allowing to introspect the output of software engineering research even when access to papers or scholarly search engines is not possible (e.g., due to contractual reasons). The dataset also contributes to making such analyses reproducible and independently verifiable, as opposed to what happens when they are conducted using 3rd-party and non-open scholarly indexing services.The dataset is available as a portable Postgres database dump and released as open data.
Comments: MSR 2022 - The 2022 Mining Software Repositories Conference, May 2022, Pittsburgh, Pennsylvania, United States
Subjects: Software Engineering (cs.SE)
Cite as: [cs.SE]
  (or [cs.SE] for this version)
  Focus to learn more arXiv-issued DOI via DataCite
: Focus to learn more DOI(s) linking to related resources

Submission history

Access paper:.

  • Other Formats

References & Citations

  • Google Scholar
  • Semantic Scholar

BibTeX formatted citation

BibSonomy logo

Bibliographic and Citation Tools

Code, data and media associated with this article, recommenders and search tools.

  • Institution

arXivLabs: experimental projects with community collaborators

arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.

Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.

Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs .

Browse Course Material

Course info, instructors.

  • Juliana Furgala
  • Jennifer Swanson
  • David Maurer
  • Maxsimo Salazar
  • Amanda C. Prescott
  • Cristina Gath

As Taught In

  • Engineering

Learning Resource Types

Ll educate: introduction to engineering concepts, software engineering.

Software engineers bring the application of engineering concepts for software development. They create, improve, and maintain software. This can include the software that runs your phone, or a spaceship, or a factory, or fights cybercrime. Software engineers are responsible for the lifecycle of a software product from conception to testing to production to upgrades.

Specializations:

  • Embedded software engineering
  • Computer graphics
  • Cybersecurity
  • Front-end application development
  • Back-end application development
  • Quality assurance (QA)
  • Development and Operations (DevOps)
  • Web development
  • Software architecture
  • Artificial intelligence/machine learning
  • Math (discrete math, statistics, calculus, geometry)
  • Programming languages (often multiple, e.g., Python, C++, Java)
  • Algorithmic analysis
  • Software testing
  • Software tooling (e.g., git, integrated development environments)
  •   ACM Special Interest Groups (SIGs) : 37 groups dedicated to specific topics in computer science and software engineering.
  • Association for the Advancement of Artificial Intelligence (AAAI) : Non-profit scientific society devoted to advancing the scientific understanding of the mechanisms underlying thought and intelligent behavior and their embodiment in machines.
  • Association for Women in Computing (AWC) : One of the first professional organizations for women in computing focused on promoting the advancement of women in the computing professions.
  • Computing Research Association : Mission is to enhance innovation by joining with industry, government and academia to strengthen research and advanced education in computing.
  • Association for Information Science and Technology (ASIS&T) : (ASIS&T is the preeminent professional association that bridges the gap between information science practice and research. ASIS&T members represent the fields of information science, computer science, linguistics, management, librarianship, engineering, data science, information architecture, law, medicine, chemistry, education, and related technology.
  • Society for Industrial and Applied Mathematics (SIAM) : Advance the application of mathematics and computational science to engineering, industry, science, and society. Research areas include computational science and numerical analysis, control and systems theory, data science, classical applied math, imaging sciences, and life sciences.
  • IEEE Computer Society : The IEEE Computer Society is the world’s leading membership organization dedicated to computer science and technology.
  • IEEE Technical Community on Software Engineering: The TCSE (Technical Community on Software Engineering) is the voice of software engineering within the IEEE and the Computer Society. TCSE has the duty to advance awareness of software engineering and to support education and training through conferences, workshops, and other professional activities that contribute to the growth and enrichment of software engineering academics and professionals.

Conferences:

  • ICSE: International Conference on Software Engineering
  • AAAI Conference on Artificial Intelligence
  • ASE – IEEE/ACM International Conference on Automated Software Engineering
  • ICSE – International Conference on Software Engineering
  • ICSR – International Conference on Software Reuse
  • TACAS - ETAPS International Conference on Tools and Algorithms for the Construction and Analysis of Systems
  • FoSSaCS - ETAPS International Conference on Foundations of Software Science and Computation Structures
  • FASE - ETAPS International Conference on Fundamental Approaches to Software Engineering
  • SEA – Symposium on Experimental Algorithms

Wikipedia,  Try Engineering (IEEE) ,  Engineering Conferences ,  Engineering Professional Associations & Organizations ,  Engineering Societies & Organizations , professional association websites

facebook

You are leaving MIT OpenCourseWare

logo

200+ Best Engineering Research Paper Topics in 2022

/favicon.jpg

Team Desklib

Published: 2022-10-13

blog_image

Since the dawn of humanity, there have been  engineering issues   and a need to solve them. Without technological understanding, ancient civilizations would not have been feasible because even then, enormous cities were being constructed with the aid of engineering principles.

This list of research issues aims to familiarise anyone interested in real-world engineering with specific scenarios that occur during practically any sort of professional activity of an engineer and call for ethical problem-level solutions.

You should first define the direction of engineering before beginning your research. You can locate an intriguing research topic in a variety of areas and subtopics. Students interested in history can learn more about engineering anthropology and comprehend this field's numerous phenomena and growth.

Genetic engineering might be a topic for those that enjoy biology. Additionally, any student is free to approach the teacher for suggestions on the most delicate subject matter.

You can choose the topic that will help you find a lot of useful technical information with the assistance of someone with years of experience.

There are many intriguing  engineering research paper   themes available in today's technologically advanced world. However, their diversity can also be an issue because it might be difficult to choose the proper one if you want to present high-quality work.

In this post, we provide a list of intriguing research paper topics for engineering students that are both simple to investigate and enjoyable to write about.

But before suggesting you some good engineering research topics we want to teach you how to choose engineering topics for your research paper.

The following procedures and advice will assist you in selecting the appropriate option from the list of options:

  • If there isn't a list of suggested subjects, brainstorm ideas to come up with engaging engineering research topics that are pertinent to both your project and the industry as a whole.  
  • Select a topic that you are familiar with because engineering topics can get very difficult; moreover, ensure that the topic you select is one that you can understand.  
  • Ensure there are enough resources available on the topics; while writing an essay on a specialized subject can produce intriguing content, it can become too difficult if there aren't good information sources available.  
  • Be open-minded while making your choice; instead of limiting yourself to topics you are familiar with, consider what will make your essay compelling and leave an impression on the grader.

The application of scientific principles is a  direct concern of engineering . Because of this, this field has several unique  characteristics that you cannot find elsewhere.

These are the engineering subjects that touch on them:

  • Engineering education issues and suggestions for improvement
  • The idea of engineering optimization
  • Engineering, quality assurance
  • Engineering measurement and data analysis specifics
  • Utilizing optical techniques for engineering analysis
  • Corrosion's impact on engineering
  • Nanotechnology applications in contemporary engineering
  • Value engineering and analysis
  • AI and machine learning applications in engineering
  • Engineering modeling techniques
  • Engineering and upkeep
  • Micromanufacturing and engineering
  • Engineering advancements in Western culture
  • Technical economy
  • Engineering's theoretical underpinnings and their connection to science
  • Engineering material specifics
  • The design and administration of complex systems
  • Reliability's significance in engineering
  • Complex nuclear engineering issues
  • The function of statistics and probability in engineering
  • Trends in the creation of agricultural technology equipment.
  • Technology in the food sector conserves energy and resources.
  • Innovations in the food business that produces little or no waste.
  • Food industry engineering in small businesses.
  • The modern technosphere's high level of complexity and its extensive integration into societal life.
  • Apparatus for heating up food bulk.
  • Hardware for filling and presenting finished goods.
  • Automation and mechanization of technological procedures in the food sector.
  • Food industry construction products.
  • Food industry production lines.
  • Approaches to systems engineering.
  • Theories for making an engineering-related career decision.
  • Professional analysis of an engineer's education and activity.
  • Professional competency is formed and developed during training.
  • An engineer's design and engineering tasks.
  • Engineering organization and management tasks.
  • Engineering production and technological activities.
  • Engineers and inventors from the United States and Europe (in the field of food production).
  • Types of programs for engineering education.
  • American and international engineering training systems integration

Top 8 Engineering Branches and Research Topics

  • Engineering ethics-related research paper topics
  • Genetic engineering research paper topics
  • Biomedical engineering research paper topics
  • Electrical engineering research paper topics
  • Security engineering research paper topics
  • Software engineering research paper topics
  • Mechanical engineering research paper topics
  • Civil engineering research paper topics

20 Best Engineering Ethics-related Research Paper Topics

  • A set of moral guidelines that engineers use in their work.
  • How might a moral engineer benefit society more?
  • What moral ideals ought to guide engineering practice and research?
  • What moral considerations ought every engineer to make before beginning their professional development?
  • The conception of a product in accordance with all moral principles.
  • Problems with ethics in the test and design areas.
  • Ethical problems with goods and services. How can they be fixed?
  • Moral dilemmas in leadership and collaboration.
  • Obeying the law and ethical principles.
  • What are the most crucial moral principles for engineers?
  • How can an engineer maintain morality?
  • Phases of a personality's growth professionally in engineering.
  • Engineering ethics: What is it?
  • How may engineering ethics be followed?
  • The primary functions of engineering psychology and ergonomics.
  • Why is a strong work ethic necessary in an organization?
  • How does a strong work ethic help a company avoid many issues?
  • Humanitarian knowledge's integration into engineering methods.
  • How may human knowledge be related in many ways to technical thinking?
  • The fundamentals of engineering ethics.

20 Best Genetic Engineering Research Paper Topics

  • Genetic engineering and morality
  • Genetic engineering's significance in modern agriculture
  • Using genetic engineering to increase the production of biofuel
  • One of the key tools for genetic engineering is CRISPR-Cas.
  • Manufacture of antibiotics with genetic engineering
  • The global politics of genetic engineering
  • Genetic engineering: Myths and actual risks
  • Genetic modification and organic food production
  • Possibilities of combining conventional breeding with genetic engineering
  • Utilizing genetic engineering to combat pollution
  • Gene therapy in genetic engineering.
  • How much of our genetic makeup is under our control, and when do we stop being human?
  • What are the benefits of genetically modified organisms?
  • Describe the advantages and disadvantages of genetic testing.
  • What are epigenetics and its value?
  • How to label food with genetically modified organisms?
  • Use of genetically modified organisms in future farming.
  • How can we involve nursing in genomics?
  • Explain the genetic characteristics in humans having different traits like homosexuality.
  • Food safety and guidelines for using genetically modified food products.

Top 20 Interesting Biomedical Engineering Research Paper Topics

  • Research On Blood Resistivity-Based Blood Glucose Measurement
  • Using Finite Element Analysis, A Hybrid Artificial Hip Joint Was Designed.
  • Design Of A Clinical Engineering Department's Management Program With a Real-Time Planning System for Recognizing Heart Sounds
  • Design of a Programmed Oxygen Delivery System Improvement: Adaptive Techniques for Cardiac Arrhythmia Detection Using Artificial Neural Networks By looking for a suitable activation function short message technique in health level 7, U-Net for MRI brain tumor segmentation (HL7)
  • A Study of the Optical and Thermal Effects of Gold Nanoparticles for Magnetic Resonance Noise Reduction Image
  • Analysis of Heart Rate Variability Using Statistical Techniques
  • Reflexology for the Early Detection of Stomach Pain
  • Central Medical Waste Treatment Facility Developing an Internet-Based Tele-Pediatric System
  • Conducting polymers are used in biomedical engineering.
  • The greatest successes in contemporary biomedical engineering
  • IoT applications for biomedical engineering
  • Engineering in biomedicine and 3D printing
  • Carbon-based nanomaterials' significance for biomedical engineering
  • Tactile sensing techniques and technologies
  • Techniques for repairing damaged nerves with biomedical engineering
  • Biomedical engineering uses X-rays, terahertz imaging, and spectrography for medical imaging.
  • Potential of biological materials in biomedical engineering
  • Piezoelectricity in systems for biomedical engineering
  • Breast cancer can be detected by using artificial neural networks.
  • Medical waste treatment equipment.

Best 30 Electrical Engineering Research Paper Topics

  • Can general relativity affect the techniques used in electrical engineering?
  • Electrical engineering and computer science integration
  • Methods for electronic control in mechanical engineering
  • Electrical engineering ideas of energy and information
  • Engineering in electrical nonlinear optimization
  • Dielectric materials that work best for electrical engineering
  • Electrical engineering's differential progression
  • Electrical circuits and quantum electrodynamics
  • Optimization's advantages in electrical engineering
  • Electrical engineering uses polymers and nanoparticles
  • High-speed, high-power PM machines.
  • Active voltage equalization using li-ion and supercapacitor cells connected in series.
  • Direct drive in-wheel motor design choice.
  • Inertia Motors.
  • Nanoelectronics.
  • Interaction engineering at the atomic level.
  • Using silicon carbide, graphene, and photovoltaics.
  • Ferroelectricity and piezoelectricity.
  • Analyzing behavior using computer modeling.
  • Computational research on novel materials and technologies.
  • Powerful electronic devices and tools.
  • Motors for electric vehicles and their redesign.
  • Networks of energy and the mathematics supporting them.
  • Engineering for electrical systems using computers.
  • Monitoring for smart grids.
  • Composites made of soft magnets.
  • Gearboxes and motors for electric vehicles.
  • Loss detection of grid events in distributed generating systems using pattern recognition
  • Autonomous power system difficulties
  • Hybrid electric aerospace.

Top 30 Security Engineering Research Paper Topics

  • Patterns used in security engineering
  • Cloud security engineering specifics
  • Security design for distributed or complicated systems
  • Engineering for privacy and security
  • Security requirements analysis's significance
  • Engineering security in the automobile sector
  • Modeling and testing for security analysis
  • A financial viewpoint on security engineering
  • Flexible security measures
  • Using attack graph models to improve network security
  • the development of ransomware in the field of cybersecurity.
  • Digital device denial-of-service attacks.
  • the foundation of the global cybersecurity strategy.
  • Network intrusion detection and remedies.
  • How should the government deal with cybersecurity?
  • A firewall's function in securing networks.
  • the most typical closed weaknesses.
  • After a data breach, what to do?
  • Widespread spectrum sharing for communications in public safety.
  • Digital security and downloaded materials
  • How to efficiently use the Internet.
  • Modern virus encryption technology.
  • Investigating the importance of algorithm encryption.
  • What is digital piracy?
  • How to navigate the efficiency of the internet?
  • Where do the vulnerabilities come from in a wireless mobile data exchange?
  • Describe the evolution of Android malware.
  • How to detect mobile phone hacking?
  • Privacy and security issues come in chatbots.
  • Cybersecurity and malware connection.

20 Interesting Software Engineering Research Paper Topics

  • Software engineering economics
  • Experimental software engineering techniques
  • There are significant disparities between software engineering theory and practice.
  • Software engineering role models
  • Software engineering for industry
  • Testing's significance in software engineering
  • Collaborating when developing software
  • Security through software engineering
  • Problems with embedded software engineering
  • Managerial techniques in software engineering
  • Describe the distribution of anti-virus software.
  • Suggest some software tools for qualitative research.
  • Software development by data scientists.
  • What is an agile software development process?
  • The Capabilities of Compiere Software and How Well It Fits Into Different Industries.
  • WBS completion and software project management.
  • International Software Development's Ethical Challenges: User-Useful Software
  • People with visual impairments face difficulties using assistive application software.
  • Getting to the Ideal Process. Application Development
  • Development of Software with IPR Violations.

Top 25 Mechanical Engineering Research Paper Topics

  • Nonlinear oscillations and mechanical engineering
  • Mechanical engineering education through gaming Techniques for dependable and sustainable design
  • How can the design development cycle for mechanical engineering designs be shortened?
  • appropriate material selection's significance in mechanical engineering
  • Mechanical engineering's use of mechatronics and microcontrollers
  • German mechanical engineering is a benchmark worldwide
  • Modern mechanical engineering techniques for modeling and prototyping
  • System design using numerical calculation techniques
  • What effects has the growth of mechanical engineering had on Western culture?
  •  Machine learning approaches for quality assurance in a manufacturing setting
  • Using a variable speed drive with supervisory control and data acquisition to control an induction motor.
  • Biomechanics.
  • Energy and combustion systems.
  • Fluid mechanics and aerodynamics.
  • Fluid-structure interactions, acoustic, and vibrations.
  • Food industry category for quality.
  • Food industry physical and mechanical procedures.
  • The food sector uses thermal procedures.
  • Food industry physical and chemical processes.
  • Processes of mass transfer in the food business.
  • Food industry biochemical and microbiological processes.
  • the significance of technological chemical regulation in the food sector.
  • Process engineers and mechanical engineers have different jobs in the food industry.
  • Tools for preparing raw materials for the main technical procedures.
  • Equipment for processing food bulk mechanically.

Best 20 Civil Engineering Research Paper Topics

  • Civil engineering's effect on how we live our daily lives
  • Neural networks' use in civil engineering
  • Engineering and vegetation
  • Techniques for inspecting civil engineering components
  • various composite materials' micromechanics in civil engineering
  • Uncertainty's relevance in civil engineering modeling
  • IR thermography's application to civil engineering
  • In civil engineering, cutting-edge materials and adhesives are employed.
  • Risk assessment's significance in civil engineering
  • Sustainability and civil engineering
  • Techniques for enhancing plants' ability to withstand water stress.
  • The most pressing issues in civil engineering and solutions.
  • Building quality is in jeopardy due to a lack of certified professionals.
  • Economics in transportation engineering is significant.
  • Protection at building sites.
  • Modern developments in civil engineering.
  • How can the entropy theory be applied in real life?
  • How can I discover a suitable job offer and how much is civil engineering worth?
  • How can issues in seismically active areas be resolved?
  • What opportunities does civil engineering have?

A theoretical inquiry is part of the  engineering discipline's control task . You must independently choose the pertinent scientific data, process it, and accurately present it in a sequential manner for your answer to be effective.

Scientific research is still a challenging procedure, especially for students who are unable to balance work and school.

You may always get in touch with our business to conduct the study if you find yourself in such a predicament.  Professional artists   create each work particularly for each client, making each piece unique.

Additionally, they can offer planning advice, suggest study topics, and explain the nuances of research methodology.

Get more about research and research topics down here -

  • Top Trending 150+ Accounting Research Topics
  • 130+ Marketing Research Topics for Marketing Students
  • Top 140+ Research Topics for Journalism Students
  • 120 Hot Research Topics for Nursing Students
  • Top 50+ Research Topics for High School Students in 2022
  • A Thorough Analysis of Market Research
  • Research for Psychology and Personality Disorder
  • Mental Health Research Topics for Students in 2022
  • 4 Tips on How to Find Homework Answers Quickly  
  • How to Write Different Types of Research Paper?
  • How to Choose a Research Topic?
  • Step-by-step Guide For How to Write a Dissertation?
  • Scope of Career in Research and Development

Your Feedback matters

Sampling in software engineering research: a critical review and guidelines

  • Published: 28 April 2022
  • Volume 27 , article number  94 , ( 2022 )

Cite this article

software engineering research topics 2022

  • Sebastian Baltes   ORCID: orcid.org/0000-0002-2442-7522 1 &
  • Paul Ralph 2  

6456 Accesses

109 Citations

8 Altmetric

Explore all metrics

Representative sampling appears rare in empirical software engineering research. Not all studies need representative samples, but a general lack of representative sampling undermines a scientific field. This article therefore reports a critical review of the state of sampling in recent, high-quality software engineering research. The key findings are: (1) random sampling is rare; (2) sophisticated sampling strategies are very rare; (3) sampling, representativeness and randomness often appear misunderstood. These findings suggest that software engineering research has a generalizability crisis . To address these problems, this paper synthesizes existing knowledge of sampling into a succinct primer and proposes extensive guidelines for improving the conduct, presentation and evaluation of sampling in software engineering research. It is further recommended that while researchers should strive for more representative samples, disparaging non-probability sampling is generally capricious and particularly misguided for predominately qualitative research.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save.

  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime

Price includes VAT (Russian Federation)

Instant access to the full article PDF.

Rent this article via DeepDyve

Institutional subscriptions

Similar content being viewed by others

Investigating probabilistic sampling approaches for large-scale surveys in software engineering.

software engineering research topics 2022

Guidelines for Case Survey Research in Software Engineering

Challenges in survey research, explore related subjects.

  • Artificial Intelligence

Data Availability

Supplementary materials, which have been archived on Zenodo (Baltes and Ralph 2020 ), include:

– An Excel spreadsheet containing the complete list of articles, all of the extracted data and all of our analyses;

– The scripts we used to retrieve sampling frame and sample. Footnote 9

https://github.com

Diversity can be defined along many different axes, gender being one of them Vasilescu et al. ( 2015 ).

http://respondentdrivensampling.org/

True random number generation is available from numerous sources, including https://www.random.org/

https://www.core.edu.au/conference-portal

https://github.com/sbaltes/dblp-retriever

https://dblp.uni-trier.de/

https://www.random.org/

a more recent version of dblp-retriever may be available at https://github.com/sbaltes/dblp-retriever

Amir B, Ralph P (2018) There is no random sampling in software engineering research. In: Proceedings of the 40th international conference on software engineering: companion proceeedings, pp 344–345

Arnett JJ (2008) The neglected 95%: why American psychology needs to become less American. Am Psychol 63(7):602

Article   Google Scholar  

Baltes S, Diehl S (2016) Worse than spam: issues in sampling software developers. In: Genero M, Jedlitschka A, Jorgensen M (eds) 10th international symposium on Empirical Software Engineering and Measurement (ESEM 2016), ACM, Ciudad Real, Spain, pp 52:1–52:6, DOI https://doi.org/10.1145/2961111.2962628 , (to appear in print)

Baltes S, Ralph P (2020) Sampling in software engineering research supplementary material [data set]. https://doi.org/10.5281/zenodo.3666824

Baltes S, Dumani L, Treude C, Diehl S (2018) SOTOrrent: reconstructing and analyzing the evolution stack overflow posts. In: Zaidman A, Hill E, Kamei Y (eds) 15th international conference on Mining Software Repositories (MSR 2018), ACM, Gothenburg, Sweden, pp 319–330

Beecham S, Baddoo N, Hall T, Robinson H, Sharp H (2008) Motivation in software engineering: a systematic literature review. Inf Softw Technol 50(9):860–878. https://doi.org/10.1016/j.infsof.2007.09.004

Breckenridge J, Jones D (2009) Demystifying theoretical sampling in grounded theory research. Grounded Theory Rev 8(2):112–126

Google Scholar  

Caine K (2016) Local standards for sample size at chi. In: Proceedings of the 2016 CHI conference on human factors in computing systems, ACM, New York, NY, USA, CHI ’16, pp 981–992

Charmaz K (2014) Constructing grounded theory. Sage, London

Checkland P, Holwell S (1998) Action research: its nature and validity. Syst Pract Action Res 11(1):9–21. https://doi.org/10.1023/A:1022908820784

Cochran WG (2007) Sampling techniques. John Wiley & Sons

Cohen J (1988) Statistical power analysis for the behavioral sciences. Lawrence Erlbaum Associates, Hillsdale

MATH   Google Scholar  

Cosentino V, Izquierdo JLC, Cabot J (2016) Findings from github: methods, datasets and limitations. In: 2016 IEEE/ACM 13th working conference on Mining Software Repositories (MSR), IEEE, pp 137–141

Daniel J (2011) Sampling essentials: practical guidelines for making sampling choices. Sage Publications

De Mello RM, Travassos GH (2016) Surveys in software engineering: Identifying representative samples. In: Proceedings of the 10th ACM/IEEE international symposium on empirical software engineering and measurement, pp 1–6

Dillman DA, Smyth JD, Christian LM (2014) Internet, phone, mail and mixed-mode surveys: the tailored design method, 4th edn. John Wiley & Sons, Hoboken

Draucker CB, Martsolf DS, Ross R, Rusk TB (2007) Theoretical sampling and category development in grounded theory. Qual Health Res 17(8):1137–1148

Duignan B (2019) Postmodernism. In: Encyclopedia Britannica, Encyclopedia Britannica, Inc.. https://www.britannica.com/topic/postmodernism-philosophy

Easterbrook S, Singer J, Storey MA, Damian D (2008) Selecting empirical methods for software engineering research. In: Guide to advanced empirical software engineering, Springer, pp 285–311

Easton G (2010) One case study is enough. Lancaster University technical report https://eprints.lancs.ac.uk/id/eprint/49016/

Falessi D, Juristo N, Wohlin C, Turhan B, Münch J, Jedlitschka A, Oivo M (2018) Empirical software engineering experts on the use of students and professionals in experiments. Empir Softw Eng 23(1):452–489

Faugier J, Sargeant M (1997) Sampling hard to reach populations. J Adv Nurs 26(4):790–797

Feldt R, Zimmermann T, Bergersen GR, Falessi D, Jedlitschka A, Juristo N, Münch J, Oivo M, Runeson P, Shepperd M, Sjøberg DIK, Turhan B (2018) Four commentaries on the use of students and professionals in empirical software engineering experiments. Empir Softw Eng 23(6):3801–3820

Fitts PM (1954) The information capacity of the human motor system in controlling the amplitude of movement. J Exp Psychol 47(6):381–391

Foster E (2014) Software engineering: a methodical approach apress. New York, USA

Gentles SJ, Charles C, Ploeg J, McKibbon KA (2015) Sampling in qualitative research: insights from an overview of the methods literature. Qual Rep 20(11):1772–1789

Glaser BG, Strauss AL (2017) Discovery of grounded theory: strategies for qualitative research. Routledge

Goel S, Salganik MJ (2010) Assessing respondent-driven sampling. Proceedings of the National Academy of Sciences 107 (15):6743–6747. https://doi.org/10.1073/pnas.1000261107

Gousios G (2013) The GHTorrent dataset and tool suite. In: Zimmermann T, Di Penta M, Kim S (eds) 10Th international working conference on Mining Software Repositories (MSR, vol 2013. IEEE, San Francisco, CA, USA, pp 233–236

Guba EG, Lincoln YS (1982) Epistemological and methodological bases of naturalistic inquiry. Educ Commun Technol J 30(4):233–252

Heckathorn DD (1997) Respondent-driven sampling: a new approach to the study of hidden populations. Soc Probl 44(2):174–199

Henrich J, Heine SJ, Norenzayan A (2010) The weirdest people in the world? Behav Brain Sci 33(2-3):61–83

Henry GT (1990) Practical sampling. Sage

van Hoeven LR, Janssen MP, Roes KC, Koffijberg H (2015) Aiming for a representative sample: simulating random versus purposive strategies for hospital selection. BMC Med Res Methodol 15(1):90

Huang X, Zhang H, Zhou X, Babar MA, Yang S (2018) Synthesizing qualitative research in software engineering: a critical review. In: Proceedings of the 40th international conference on software engineering, pp 1207–1218

Humbatova N, Jahangirova G, Bavota G, Riccio V, Stocco A, Tonella P (2020) Taxonomy of real faults in deep learning systems. In: 2020 IEEE/ACM 42nd international conference on software engineering (ICSE), IEEE

Ingram C, Drachen A (2020) How software practitioners use informal local meetups to share software engineering knowledge. In: 2020 IEEE/ACM 42nd international conference on software engineering (ICSE), IEEE

Johnston LG, Sabin K (2010) Sampling hard-to-reach populations with respondent driven sampling. Methodological Innovations Online 5(2):38–48. https://doi.org/10.4256/mio.2010.0017

Kitchenham B, Charters S (2007) Guidelines for performing systematic literature reviews in software engineering. Tech. rep., Keele University and University of Durham

Kitchenham B, Pfleeger SL (2002) Principles of survey research: Part 5: populations and samples. ACM SIGSOFT Softw Eng Notes 27(5):17–20

Kitchenham BA, Pfleeger SL (2008) Personal opinion surveys. In: Guide to advanced empirical software engineering, Springer, pp 63–92

Kruskal W, Mosteller F (1979a) Representative sampling, i: mon-scientific literature. Int Stat Rev 47(1):13–24

Kruskal W, Mosteller F (1979b) Representative sampling, iii: the current statistical literature. Int Stat Rev 47(3):245–265. https://doi.org/10.2307/1402647

Article   MATH   Google Scholar  

Landon Jr, EL, Banks SK (1977) Relative efficiency and bias of Plus-One telephone sampling. J Mark Res 14(3):294. https://doi.org/10.2307/3150766

Lee AS, Baskerville RL (2003) Generalizing generalizability in information systems research. Inf Syst Res 14(3):221–243

Maalej W, Robillard MP (2013) Patterns of knowledge in api reference documentation. IEEE Trans Softw Eng 39(9):1264–1282

Malekinejad M, Johnston LG, Kendall C, Kerr LRFS, Rifkin MR, Rutherford GW (2008) Using respondent-driven sampling methodology for HIV biological and behavioral surveillance in international settings: a systematic review. AIDS and Behavior 12(1):105–130. https://doi.org/10.1007/s10461-008-9421-1

van Manen M (2016) Phenomenology of practice: meaning-giving methods in phenomenological research and writing. Routledge

McElreath R (2020) Statistical rethinking: a Bayesian course with examples in R and Stan. CRC press

de Mello RM, Travassos GH (2015) Characterizing sampling frames in software engineering surveys. In: Proceedings of the Ibero-American conference on sofware engineering (CibSE)

de Mello RM, Da Silva PC, Travassos GH (2015) Investigating probabilistic sampling approaches for large-scale surveys in software engineering. J Softw Eng Res Dev 3(1):1–26

Miles MB, Huberman AM, Saldaña J (2014) Qualitative data analysis: a methods sourcebook, 4th edn. Sage, Thousand Oaks, California, USA

Mohanani R, Turhan B, Ralph P (2019) Requirements framing affects design creativity. IEEE Trans Softw Eng

Moher D, Liberati A, Tetzlaff J, Altman DG, Group P et al (2009) Preferred reporting items for systematic reviews and meta-analyses: the prisma statement. PLoS Med 6(7):e1000097

Mullinix KJ, Leeper TJ, Druckman JN, Freese J (2015) The generalizability of survey experiments. J Exp Polit Sci 2(2):109–138

Nagappan M, Zimmermann T, Bird C (2013) Diversity in software engineering research. In: Proceedings of the 9th joint meeting on foundations of software engineering, ACM, pp 466–476

Patton MQ (2014) Qualitative research & evaluation methods: integrating theory and practice. Sage Publications

Paulson JW, Succi G, Eberlein A (2004) An empirical study of open-source and closed-source software products. IEEE Trans Softw Eng 30(4):246–256. https://doi.org/10.1109/TSE.2004.1274044

Ralph P (2019) Toward methodological guidelines for process theories and taxonomies in software engineering. IEEE Trans Softw Eng 45(7):712–735

Ralph P, Ali Nb, Baltes S, Bianculli D, Diaz J, Dittrich Y, Ernst N, Felderer M, Feldt R, Filieri A et al (2020a) Empirical standards for software engineering research. arXiv: 201003525

Ralph P, Baltes S, Adisaputri G, Torkar R, Kovalenko V, Kalinowski M, Novielli N, Yoo S, Devroey X, Tan X et al (2020b) Pandemic programming: how covid-19 affects software developers and how their organizations can help. Empir Softw Eng https://doi.org/10.1007/s10664-020-09875-y

Russo D, Stol K (in press) Gender differences in personality traits of software engineers. IEEE Trans Softw Eng https://doi.org/10.1109/TSE.2020.3003413

Salleh N, Hoda R, Su MT, Kanij T, Grundy J (2018) Recruitment, engagement and feedback in empirical software engineering studies in industrial contexts. Inform Software Technol 98:161–172

Sax LJ, Gilmartin SK, Bryant AN (2003) Assessing response rates and nonresponse bias in web and paper surveys. Res High Educ 44(4):409–432

Sedano T, Ralph P, Péraire C (2019) The product backlog. In: 2019 IEEE/ACM 41St international conference on software engineering (ICSE), IEEE, pp 200–211

Sjøberg D, Anda B, Arisholm E, Dyba T, Jørgensen M, Karahasanovic A, Koren EF, Vokac M (2002) Conducting realistic experiments in software engineering. In: 2002 international symposium on empirical software engineering. IEEE, Nara, Japan, pp 17–26, DOI https://doi.org/10.1109/ISESE.2002.1166921 , (to appear in print)

Stol KJ, Fitzgerald B (2018) The abc of software engineering research. ACM Transactions on Software Engineering and Methodology (TOSEM) 27 (3):11

Stol KJ, Ralph P, Fitzgerald B (2016) Grounded theory in software engineering research: a critical review and guidelines. In: Proceedings of the international conference on software engineering, IEEE, Austin, TX, USA, pp 120–131

Tempero E, Anslow C, Dietrich J, Han T, Li J, Lumpe M, Melton H, Noble J (2010) The qualitas corpus: a curated collection of java code for empirical studies. In: Proceedings of the 17th Asia Pacific software engineering conference. IEEE, Sydney, Australia, pp 336–345, DOI https://doi.org/10.1109/APSEC.2010.46 , (to appear in print)

Theisen C, Dunaiski M, Williams L, Visser W (2018) Software engineering research at the international conference on software engineering in 2016. ACM SIGSOFT Software Engineering Notes 42(4):1–7

Thomas G, Myers K (2015) The anatomy of the case study. Sage

Thompson SK (1990) Adaptive cluster sampling. J Am Stat Assoc 85(412):1050–1059

Article   MathSciNet   Google Scholar  

Toepoel V (2012) Effects of incentives in surveys. In: Gideon L (ed) Handbook of survey methodology for the social sciences, springer, pp 209–223

Torchiano M, Fernández DM, Travassos GH, de Mello RM (2017) Lessons learnt in conducting survey research. In: 2017 IEEE/ACM 5th international workshop on Conducting Empirical Studies in Industry (CESI), IEEE, pp 33–39

Trochim WM, Donnelly JP (2001) Research methods knowledge base, vol 2. Atomic Dog Publishing, Cincinnati, OH, USA

Trost JE (1986) Statistically nonrepresentative stratified sampling: a sampling technique for qualitative studies. Qual Sociol 9(1):54–57

Turk P, Borkowski JJ (2005) A review of adaptive cluster sampling: 1990–2003. Environ Ecol Stat 12(1):55–94

Valliant R, Dever JA, Kreuter F (2018) Designing multistage samples. In: Practical tools for designing and weighting survey samples, Springer, pp 209–264

Vasilescu B, Posnett D, Ray B, van den Brand MG, Serebrenik A, Devanbu P, Filkov V (2015) Gender and Tenure Diversity in GitHub Teams. In: Proceedings of the 33rd annual ACM conference on human factors in computing systems - CHI ’15. ACM Press, Seoul, Republic of Korea, pp 3789–3798, DOI https://doi.org/10.1145/2702123.2702549 , (to appear in print)

Wohlin C, Runeson P, Höst M, Ohlsson MC, Regnell B, Wesslén A (2012) Experimentation in software engineering. Springer Science & Business Media

Yin RK (2018) Case study research: Design and methods, 6th edn. Sage, Thousand Oaks, California

Zannier C, Melnik G, Maurer F (2006) On the success of empirical studies in the international conference on software engineering. In: Proceedings of the 28th international conference on software engineering, pp 341–350

Zhang H, Huang X, Zhou X, Huang H, Babar MA (2019) Ethnographic research in software engineering: a critical review and checklist. In: Proceedings of the 2019 27th ACM joint meeting on European software engineering conference and symposium on the foundations of software engineering, pp 659–670

Download references

Author information

Authors and affiliations.

University of Adelaide, Adelaide, Australia

Sebastian Baltes

Dalhousie University, Halifax, Canada

You can also search for this author in PubMed   Google Scholar

Corresponding author

Correspondence to Sebastian Baltes .

Ethics declarations

Conflict of interests.

The authors declare that they have no conflict of interest.

Additional information

Communicated by: Filippo Lanubile

Publisher’s note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Baltes, S., Ralph, P. Sampling in software engineering research: a critical review and guidelines. Empir Software Eng 27 , 94 (2022). https://doi.org/10.1007/s10664-021-10072-8

Download citation

Accepted : 28 October 2021

Published : 28 April 2022

DOI : https://doi.org/10.1007/s10664-021-10072-8

Share this article

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

  • Representative sampling
  • Random sampling
  • Purposive sampling
  • Probability sampling
  • Research methodology
  • Find a journal
  • Publish with us
  • Track your research

IEEE Account

  • Change Username/Password
  • Update Address

Purchase Details

  • Payment Options
  • Order History
  • View Purchased Documents

Profile Information

  • Communications Preferences
  • Profession and Education
  • Technical Interests
  • US & Canada: +1 800 678 4333
  • Worldwide: +1 732 981 0060
  • Contact & Support
  • About IEEE Xplore
  • Accessibility
  • Terms of Use
  • Nondiscrimination Policy
  • Privacy & Opting Out of Cookies

A not-for-profit organization, IEEE is the world's largest technical professional organization dedicated to advancing technology for the benefit of humanity. © Copyright 2024 IEEE - All rights reserved. Use of this web site signifies your agreement to the terms and conditions.

Research Topics in Software Engineering

software engineering research topics 2022

This seminar is an opportunity to become familiar with current research in software engineering and more generally with the methods and challenges of scientific research.

Each student will be asked to study some papers from the recent software engineering literature and review them. This is an exercise in critical review and analysis. Active participation is required (a presentation of a paper as well as participation in discussions).

The aim of this seminar is to introduce students to recent research results in the area of programming languages and software engineering. To accomplish that, students will study and present research papers in the area as well as participate in paper discussions. The papers will span topics in both theory and practice, including papers on program verification, program analysis, testing, programming language design, and development tools.

DateTitlePresenterSlidesTA
24 Feb Introduction to the seminar Dimitar I. Dimitrov
10 Mar Zikai Liu
10 Mar Pascal Strebel
17 Mar Eric Enzler
17 Mar Robin Schmidiger
24 Mar Fabian Bösiger
24 Mar Jasmin Schult
31 Mar Dennis Buitendijk
31 Mar Gianluca Moro
7 Apr Benjamin Simmonds
7 Apr Simon Hrabec
14 Apr Rahul Goli
14 Apr Mihajlo Djokic
28 Apr Yunfan Zou
28 Apr Yuxin Sun
5 May Jonathan Lampérth
5 May Roman Sobkuliak
12 May Oliver Schwarzenbach
12 May Viktor Gsteiger
19 May No presentations
2 Jun Niels Mündler

Top 7 Software Engineering Trends for 2023

HackerRank AI Promotion

In the fast-paced realm of software engineering, staying up to date with the latest trends is paramount. The landscape is constantly evolving, with new technologies and methodologies redefining the way we approach development, enhancing user experiences, and introducing new possibilities for businesses across industries. And 2023 will be no different. 

Already this year the tech headlines have been dominated by advancements in artificial intelligence ,   natural language processing , edge computing , and 5G . And these are just a few of the software engineering trends we expect to take shape this year. In this article, we’ll take a deeper look at how these technologies — and others — are evolving and the impact they’ll have on the software engineering landscape in 2023 and beyond.

Artificial Intelligence 

Artificial Intelligence (AI) has become more than just a buzzword; it is now a driving force behind innovation in the field of software engineering. With its ability to simulate human intelligence and automate tasks, AI is transforming the way software is developed, deployed, and used across industries. In 2022, machine learning was the most in-demand technical skill in the world, and in 2023, as AI and ML become even more deeply embedded in software engineering, we expect to see demand for professionals with these skills to remain high. 

One of the key areas where AI is making a significant impact is in automating repetitive tasks. Software engineers can leverage AI-powered tools and frameworks to automate mundane and time-consuming activities, such as code generation, testing, and debugging. This enables developers to focus on higher-level problem-solving and creativity, leading to faster and more efficient development cycles.

AI also plays a crucial role in enhancing decision-making processes. Through machine learning algorithms, software engineers can develop intelligent systems that analyze large datasets, identify patterns, and make predictions. This capability has far-reaching implications, ranging from personalized recommendations in e-commerce platforms to predictive maintenance in manufacturing industries.

Furthermore, AI is revolutionizing user experiences. Natural language processing (NLP) and computer vision are just a couple of AI subfields that enable software engineers to build applications with advanced capabilities. Chatbots that can understand and respond to user queries, image recognition systems that identify objects and faces, and voice assistants that make interactions more intuitive are all examples of AI-powered applications that enrich user experiences.

As AI continues to evolve, its applications are expanding into healthcare, finance, autonomous vehicles, and many other industries. Understanding AI and its potential empowers software engineers to harness its capabilities and drive innovation in their respective fields. 

As software applications become increasingly complex and distributed, the need for efficient management of containers and microservices has become crucial. This is where Kubernetes , an open-source container orchestration platform, comes into play. 

At its core, Kubernetes simplifies the management of containerized applications. Containers allow developers to package applications and their dependencies into portable and isolated units, ensuring consistency across different environments. Kubernetes takes containerization to the next level by automating the deployment, scaling, and management of these containers.

One of the key benefits of Kubernetes is its ability to enable horizontal scaling. By distributing containers across multiple nodes, Kubernetes ensures that applications can handle increasing traffic loads effectively. It automatically adjusts the number of containers based on demand, ensuring optimal utilization of resources.

Kubernetes also enhances fault tolerance and resilience. If a container or node fails, Kubernetes automatically detects and replaces it, ensuring that applications remain available and responsive. It enables self-healing capabilities, ensuring that the desired state of the application is always maintained.

Furthermore, Kubernetes promotes declarative configuration and infrastructure as code practices. Through the use of YAML-based configuration files, developers can define the desired state of their applications and infrastructure. This allows for reproducibility, version control, and easier collaboration among teams.

As the ecosystem surrounding Kubernetes continues to evolve and become more complex and sophisticated, both adoption of the Kubernetes platform and demand for professionals with Kubernetes experience will continue to grow.

Edge Computing

In the era of rapidly growing data volumes and increasing demand for real-time processing, edge computing has emerged as a crucial software engineering trend that supports cloud optimization and innovation within the IoT space . Edge computing brings computing resources closer to the data source, reducing latency, enhancing performance, and enabling near-instantaneous decision-making.

Traditional cloud computing relies on centralized data centers located far from the end users. In contrast, edge computing pushes computational capabilities to the edge of the network, closer to where the data is generated. This approach is particularly valuable in scenarios where real-time processing and low latency are critical, such as autonomous vehicles, industrial automation, and Internet of Things (IoT) applications.

By processing data at the edge, edge computing minimizes the need for data transmission to the cloud, reducing network congestion and latency. This is especially beneficial in situations where network connectivity is limited, unreliable, or costly. Edge Computing enables quicker response times and can support applications that require immediate actions, such as detecting anomalies, triggering alarms, or providing real-time feedback.

One of the key advantages of Edge Computing is its ability to address privacy and security concerns. With data being processed and analyzed locally, sensitive information can be kept closer to its source, reducing the risk of unauthorized access or data breaches. This is particularly significant in sectors like healthcare and finance, where data privacy and security are paramount.

According to a report by Cybersecurity Ventures , the global annual cost of cybercrime is expected to reach $8 trillion in 2023. Security is more important than ever, which has led many engineering organizations to reconsider the way they approach and implement security practices. And that’s where DevSecOps comes into play. 

DevSecOps , an evolution of the DevOps philosophy, integrates security practices throughout the entire software development lifecycle, ensuring that security is not an afterthought but an integral part of the process. Adoption of this new approach to development continues to gain momentum, with 56% of developers reporting their teams use DevSecOps and DevOps methodologies — up from 47% in 2022.

One of the key benefits of DevSecOps is the ability to identify and mitigate security vulnerabilities early in the development cycle. By conducting security assessments, code reviews, and automated vulnerability scanning, software engineers can identify potential risks and address them proactively. This proactive approach minimizes the likelihood of security breaches and reduces the cost and effort required for remediation later on.

DevSecOps also enables faster and more secure software delivery. By integrating security checks into the continuous integration and continuous deployment (CI/CD) pipeline, software engineers can automate security testing and validation. This ensures that each code change is thoroughly assessed for security vulnerabilities before being deployed to production, reducing the risk of introducing vulnerabilities into the software.

Collaboration is a fundamental aspect of DevSecOps. Software engineers work closely with security teams and operations teams to establish shared responsibilities and ensure that security practices are integrated seamlessly into the development process. This collaborative effort promotes a culture of shared ownership and accountability for security, enabling faster decision-making and more effective risk mitigation.

Progressive Web Applications

In an era where mobile devices dominate our daily lives, progressive web applications (PWAs) have emerged as a significant software engineering trend, with desktop installations of PWAs growing by 270 percent since 2021. PWAs bridge the gap between traditional websites and native mobile applications, offering the best of both worlds. These web applications provide a seamless and immersive user experience while leveraging the capabilities of modern web technologies.

PWAs are designed to be fast, responsive, and reliable, allowing users to access them instantly, regardless of network conditions. Unlike traditional web applications that require a constant internet connection, PWAs can work offline or with a poor network connection. By caching key resources, such as HTML , CSS , and JavaScript files, PWAs ensure that users can access content and perform actions even when they are offline. This enhances the user experience and allows applications to continue functioning seamlessly in challenging network conditions.

One of the key advantages of PWAs is their cross-platform compatibility. Unlike native mobile applications that require separate development efforts for different platforms (e.g., Android and iOS), PWAs are built once and can run on any device with a modern web browser. This significantly reduces development time and costs while expanding the potential user base.

PWAs are also discoverable and shareable. They can be indexed by search engines, making them more visible to users searching for relevant content. Additionally, PWAs can be easily shared via URLs, enabling users to share specific app screens or features with others.

As we venture into 2023, PWAs continue to gain traction, blurring the lines between web and mobile applications. 

The global Web 3.0 market size stood at $2.2 billion in 2022 and is set to grow by a compounded annual growth rate of 44.5 percent, reaching $81.9 billion by 2032. Also known as the Semantic Web, Web 3.0 is an exciting software engineering trend that aims to enhance the capabilities and intelligence of the World Wide Web. Building upon the foundation of Web 2.0, which focused on user-generated content and interactivity, Web 3.0 takes it a step further by enabling machines to understand and process web data, leading to a more intelligent and personalized online experience.

The core concept behind Web 3.0 is the utilization of semantic technologies and artificial intelligence to organize, connect, and extract meaning from vast amounts of web data. This enables computers and applications to not only display information but also comprehend its context and relationships, making the web more intuitive and interactive.

One of the key benefits of Web 3.0 is its ability to provide a more personalized and tailored user experience. By understanding user preferences, behavior, and context, Web 3.0 applications can deliver highly relevant content, recommendations, and services. For example, an e-commerce website powered by Web 3.0 can offer personalized product recommendations based on a user’s browsing history, purchase patterns, and preferences.

Web 3.0 also facilitates the development of intelligent agents and chatbots that can understand and respond to natural language queries, enabling more efficient and interactive user interactions. These intelligent agents can assist with tasks such as customer support, information retrieval, and decision-making.

5G , the fifth generation of wireless technology, is set to revolutionize connectivity and enable a new era of innovation. With its promise of ultra-fast speeds, low latency, and high capacity, 5G opens up a world of possibilities for software engineers, paving the way for advancements in areas such as autonomous vehicles, smart cities, Internet of Things, and immersive experiences. And as mobile networks continue to grow and consumers adopt more 5G devices, more and more companies are investing in the development of applications that take advantage of 5G’s capabilities . 

One of the most significant advantages of 5G is its remarkable speed. With download speeds reaching up to 10 gigabits per second, 5G enables lightning-fast data transfer, allowing for real-time streaming, seamless video calls, and rapid file downloads. This enhanced speed unlocks new possibilities for high-bandwidth applications, such as 4K and 8K video streaming, virtual reality, and augmented reality experiences.

Low latency is another key feature of 5G. Latency refers to the time it takes for data to travel from one point to another. With 5G, latency is significantly reduced, enabling near-instantaneous communication and response times. This is crucial for applications that require real-time interactions, such as autonomous vehicles that rely on split-second decision-making or remote robotic surgeries where even a slight delay can have serious consequences.

Moreover, 5G has the potential to connect a massive number of devices simultaneously, thanks to its increased capacity. This makes it ideal for powering the Internet of Things (IoT), where billions of devices can seamlessly communicate with each other and the cloud. From smart homes and wearables to industrial sensors and smart grids, 5G’s high capacity enables a truly connected and intelligent ecosystem.

Key Takeaways

As you can see, the software engineering landscape in 2023 will be marked by an exciting array of trends that are shaping the future of technology and innovation. Embracing these software engineering trends allows businesses and software engineers alike to harness their potential and create innovative solutions that meet the evolving needs of users. To learn more about the type of tech professionals and skills needed to build the future of software, check out HackerRank’s roles directory .

This article was written with the help of AI. Can you tell which parts? 

Get started with HackerRank

Over 2,500 companies and 40% of developers worldwide use HackerRank to hire tech talent and sharpen their skills.

Software Engineering Project Ideas (2024)

Are you an Engineering student looking for software engineering project Ideas and topics to develop for your final year compliance for 2024?

Then here’s what you need. I have here the best project ideas for software engineering which are best and ideal to develop for 2024.

There’s also a bonus list of Software Engineering Projects that you can see through to choose your desired project.

They were thoroughly made and researched to assure you that they are helpful and applicable for the current situation on every field of work.

New ideas and topics are formulated through the growing technology and software engineer project ideas .

These ideas were latest and are based to the current need of our surroundings.

We have chosen the TOP 5 Final Year Projects for Software Engineering Students this 2024 and provided the bonus list.

The bonus list is provided for you to choose your best choice of project that suits your capabilities.

TOP 5 Final Year Projects for Software Engineering Students for 2024

Now I present to the top 5 chosen Final Year Software Engineering Project topics and ideas that will surely be applicable in big establishments and for our current situations. They could also help a lot of people nowadays.

For verification, the suggested system uses the location of geography. If it detects an abnormal pattern, the user will have to repeat the verification process.

The E consultation system intends to provide an atmosphere in which patients can consult doctors, send photographs (for skin diseases/beauty-related issues), communicate with doctors, inform them about their problems, and explore possible solutions.

Bonus Lists of Final Year Projects For Software Engineering Students for 2024

Final year projects for software engineering students for 2024.

Here is the list of new topics and ideas for final-year software Engineering Projects applicable to all Engineering Students in 2024.

Final Year Software Engineering Projects Topics and Ideas using Android for 2024

We have also final year projects for computer science engineering   with source code, you can also have some articles might help you doing your document to support your software engineering project topics for final years :, we also recommended books, course, compiler, etc., 3 thoughts on “software engineering project ideas (2024)”.

Thanks for the great post you posted. I like the content which was mentioned above. If any of the final year students are looking for the software engineering projects

Thanks for the great post you posted. I like the content. thankyou.

In today’s ever-evolving technological landscape, mobile applications have become an integral part of our daily lives. With the increasing demand for innovative and user-friendly apps, Android App Development has become a popular choice for businesses and individuals alike. The possibilities for creating engaging and lucrative projects are endless. In this blog, we will explore some exciting Smart Android Project ideas for the year 2023. So, grab your thinking caps and let’s dive into the world of Android App Development!

Leave a Comment Cancel reply

This website uses cookies to ensure you get the best experience. Learn more about DOAJ’s privacy policy.

Hide this message

You are using an outdated browser. Please upgrade your browser to improve your experience and security.

The Directory of Open Access Journals

Quick search.

International Journal of Research and Applied Technology (Dec 2022)

The Systematic Literature Review of the spiral development model: Topics, trends, and application areas

  • Risna Sari,
  • Anggi Muhammad Rifa’i,
  • Muhammad Salimy Ahsan,
  • Mohammad Rezza Pahlevi,
  • M. Ilham Arief

Affiliations

Read online

The spiral model is one of the methods used to perform software engineering development and can also be used for development in other fields. This spiral model is the result of a modification from the combination of the waterfall model and prototyping model so that it has many advantages including in each result an evaluation will be carried out, carried out sequentially or systematically, and is more focused in carrying out risk analysis from each stage. Has a function in development to make changes, additions and developments by determining accuracy and speed based on needs. In its implementation the spiral model has been carried out in various fields, but the results of the implementation are not yet known in what scope and how many implementations each year. This study aims to identify the results of the implementation of the spiral model development with data obtained from related papers in the 2012-2022 range. The method used in this study is the Systematic Literature Review (SLR) with the aim of identifying, reviewing, evaluating, and concluding all research on each relevant paper. The results showed that the spiral model development was mostly implemented in software development with a total of 19 papers and in the education sector as many as 17 papers, while the peak of the spiral model development was mostly implemented in 2016 and then increased again in 2021

  • software engineering
  • spiral model

WeChat QR code

software engineering research topics 2022

IMAGES

  1. Top 10 Software Engineer Research Topics for 2024

    software engineering research topics 2022

  2. Software Engineering Trends: Prediction for 2023

    software engineering research topics 2022

  3. Evaluation of Novel Approaches to Software Engineering: 17th

    software engineering research topics 2022

  4. Software Engineering Research Trends

    software engineering research topics 2022

  5. (PDF) RESEARCH TRENDS IN SOFTWARE ENGINEERING FIELD: A LITERATURE REVIEW

    software engineering research topics 2022

  6. Top 10 Software Engineering Trends for 2022

    software engineering research topics 2022

VIDEO

  1. software engineering important questions for degree 3rd year 5th semester#degree#software#imp#que

  2. Software Engineering Diplomas

  3. PathWave Design 2022 RF System Design

  4. SOFTWARE ENGINEERING IMPORTANT QUESTIONS // BTECH

  5. Software Testing Research Topics ideas for MS and PHD Thesis

  6. Characteristics of Software in Software Engineering by Venu Gopal S

COMMENTS

  1. Top 10 Software Engineer Research Topics for 2024

    List of Software Engineer Research Topics in 2024. Here is a list of Software Engineer research topics: Artificial Intelligence and Software Engineering. Natural Language Processing. Applications of Data Mining in Software Engineering. Data Modeling. Verification and Validation. Software Project Management.

  2. Research Review 2022

    Research Review 2022. At the 2022 Research Review, our researchers detail how they are forging a new path for software engineering by executing the SEI's technical strategy to deliver tangible results. Researchers highlight methods, prototypes, and tools aimed at the most important problems facing the DoD, industry, and academia, including AI ...

  3. Trending Topics in Software Engineering

    In this new column Trending Topics in Software Engineering, we aim at providing insights, reports, and outlooks on how researchers and practitioners around the world are working (or planning to work) on those trends. ... Forti S (2022) Trending Topics in Software Engineering (1) ACM SIGSOFT Software Engineering Notes 10.1145/3561846.3561847 47: ...

  4. Computer Science Research Topics (+ Free Webinar)

    Find over 50 topic ideas for your dissertation, thesis or research project in various CompSci domains, such as algorithms, AI, networking, database systems, UX, information security and software engineering. Learn how to identify a research gap and develop a well-defined research topic with Grad Coach's free webinar and mini-course.

  5. The Third Bit · Software Engineering Research Ideas

    Software Engineering Research Ideas. I was honored to be given ACM SIGSOFT's "Influential Educator" award in 2020, but I was also surprised : as far as I can tell, projects like Beautiful Code , Making Software , The Architecture of Open Source Applications , and It Will Never Work in Theory haven't actually had any impact on how ...

  6. Journal of Software Engineering Research and Development

    A peer-reviewed journal that publishes original research and reviews on various topics of software engineering. Browse the latest articles on software comprehension, agile manifesto, code review, kanban, genetic improvement, iStar model, statistical process control, test-driven development, and more.

  7. Architecting the Future of Software Engineering: A Research and

    The SEI is leading a multi-year effort to create a vision and roadmap for engineering next-generation software-reliant systems in emerging domains. The roadmap covers six research focus areas, such as AI, data-intensive, and quantum systems, and aims to advance software engineering principles and practices.

  8. Software Engineering Technologies Primer for 2022

    Published: 04 February 2022 Summary. Software engineering leaders have to navigate a maze of emerging technologies as their teams build applications, APIs, integrations and modern digital experiences. This initiative focuses on the platforms, tools and frameworks that can help them make the right technology decisions. Included in Full Research

  9. software-engineering-research · GitHub Topics · GitHub

    Add this topic to your repo. To associate your repository with the software-engineering-research topic, visit your repo's landing page and select "manage topics." GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.

  10. Software Engineering Research, Management and Applications

    Softcover Book USD 109.99. Price excludes VAT (USA) Compact, lightweight edition. Dispatched in 3 to 5 business days. Free shipping worldwide - see info. Hardcover Book USD 109.99. This book presents scientific results of the 20th IEEE/ACIS International Conference on Software Engineering Research, Management, and Applications.

  11. Software Engineering research ideas / topics

    Best Research area in software engineering. Data mining semantic-web-mining. Distributed computing. Database. Distributed system. Data warehousing. Green computing. GUI-graphical-user-interface ...

  12. What are the latest research topics in software engineering

    Asked 2nd Feb, 2022. Nuredin Ali Salem Ahmed. University of Tripoli; ... There are many hot research topics in software engineering. For example, you may look at the following two topics:

  13. [2204.03254] The General Index of Software Engineering Papers

    A dataset of fulltext-indexed papers from 34 venues in the field of Software Engineering, with 577 276 382 unique n-grams. The dataset is open data and serves meta-research use cases, such as introspecting the output of software engineering research.

  14. Software Engineering

    Learn about software engineering concepts, specializations, skills, and societies from this online course. Explore the topics, resources, and conferences related to software engineering and computer science.

  15. Top 7 Software Development Trends for 2022

    Learn about the latest software development strategies and practices that will shape the future of software in 2022. From DevOps and cyber security to IoB and low-code, discover the trends that will help you create state-of-the-art software products.

  16. (PDF) Software Engineering Research Topics

    The software engineering research on CE is still in its infancy. There are future research opportunities in evaluation research of technical topics and investigations of ethical experimentation.

  17. 200+ Best Engineering Research Paper Topics in 2022

    Find a list of intriguing and relevant engineering research topics for your project, from ethics to biomedical engineering. Learn how to choose a topic, get resources, and write a successful essay.

  18. Sampling in software engineering research: a critical review and

    Representative sampling appears rare in empirical software engineering research. Not all studies need representative samples, but a general lack of representative sampling undermines a scientific field. This article therefore reports a critical review of the state of sampling in recent, high-quality software engineering research. The key findings are: (1) random sampling is rare; (2 ...

  19. Software Engineering Practices Primer for 2022

    Published: 04 February 2022 Summary. Software engineering leaders must optimize the delivery of customer value and drive innovation at the intersection of packaged applications and software engineering. This initiative will help them devise and continually adapt their software engineering practices to achieve this goal. Included in Full Research

  20. Detecting Latent Topics and Trends in Software Engineering Research

    The landscape of software engineering research has changed significantly from one year to the next in line with industrial needs and trends. Therefore, today's research literature on software engineering has a rich and multidisciplinary content that includes a large number of studies; however, not many of them demonstrate a holistic view of the field. From this perspective, this study aimed ...

  21. Research Topics in Software Engineering

    Overview. This seminar is an opportunity to become familiar with current research in software engineering and more generally with the methods and challenges of scientific research. Each student will be asked to study some papers from the recent software engineering literature and review them. This is an exercise in critical review and analysis.

  22. Top 7 Software Engineering Trends for 2023

    Learn how artificial intelligence, Kubernetes, edge computing, DevSecOps, and other technologies are shaping the software engineering landscape in 2023. Discover the benefits, challenges, and opportunities of these trends and how they impact software development, deployment, and user experiences.

  23. Software Engineering Project Ideas (2024)

    Here is the list of new topics and ideas for final-year software Engineering Projects applicable to all Engineering Students in 2024. Each of the projects Listed is ideal and applicable to your field. And the ideas applied were thoroughly formulated and assured. Active Chat Monitoring and Suspicious Chat Detection over the Internet.

  24. The Systematic Literature Review of the spiral development model

    The spiral model is one of the methods used to perform software engineering development and can also be used for development in other fields. ... International Journal of Research and Applied Technology (Dec 2022) The Systematic Literature Review of the spiral development model: Topics, trends, and application areas ... Published in ...