Software Engineering as a Domain to Formalize
- URL: http://arxiv.org/abs/2502.17170v1
- Date: Mon, 24 Feb 2025 14:07:01 GMT
- Title: Software Engineering as a Domain to Formalize
- Authors: Bertrand Meyer,
- Abstract summary: "Research ideas" article explores what a theory of software engineering could and should look like.<n>This article outlines the structure of a possible theory of software engineering in the form of an object-oriented model.
- Score: 37.48416208168878
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Software engineering concepts and processes are worthy of formal study; and yet we seldom formalize them. This "research ideas" article explores what a theory of software engineering could and should look like. Software engineering research has developed formal techniques of specification and verification as an application of mathematics to specify and verify systems addressing needs of various application domains. These domains usually do not include the domain of software engineering itself. It is, however, a rich domain with many processes and properties that cry for formalization and potential verification. This article outlines the structure of a possible theory of software engineering in the form of an object-oriented model, isolating abstractions corresponding to fundamental software concepts of project, milestone, code module, test and other staples of our field, and their mutual relationships. While the presentation is only a sketch of the full theory, it provides a set of guidelines for how a comprehensive and practical Theory of Software Engineering should (through an open-source community effort) be developed.
Related papers
- UOOR: Seamless and Traceable Requirements [28.579389358111115]
The proposed solution is a requirements engineering method, called UOOR.
The method unifies many known requirements concepts and a few new ones in a framework entirely devised to accommodate and support seamless change throughout the project lifecycle.
The UOOR approach is not just a theoretical proposal but has been designed for practical use and has been applied to a significant real-world case study: Roborace.
arXiv Detail & Related papers (2025-02-25T20:03:01Z) - Model-Guided Fieldwork: A Practical, Methodological and Philosophical Investigation in the use of Ethnomethodology for Engineering Software Requirements [0.0]
This thesis focuses on the use of ethnomethodological fieldwork for the engineering of software requirements.
It proposes an approach, dubbed "Model Guided Fieldwork," to support a fieldworker in making observations that may contribute to a technological development process.
arXiv Detail & Related papers (2024-11-14T09:24:56Z) - Abstraction Engineering [6.091612632147657]
Abstraction is already used across many disciplines involved in software development.
This paper looks at these new challenges and proposes to address them through the lens of Abstraction.
We discuss the foundations of Abstraction Engineering, identify key challenges, highlight the research questions that help address these challenges, and create a roadmap for future research.
arXiv Detail & Related papers (2024-08-26T07:56:32Z) - Estimating the Energy Footprint of Software Systems: a Primer [56.200335252600354]
quantifying the energy footprint of a software system is one of the most basic activities.
This document aims to be a starting point for researchers who want to begin conducting work in this area.
arXiv Detail & Related papers (2024-07-16T11:21:30Z) - Towards an Approach to Pattern-based Domain-Specific Requirements Engineering [0.0]
We propose the Pattern-based Domain-specific Requirements Engineering Approach for the specification of functional and performance requirements.
This approach emerges from an academia-industry collaboration and is our first attempt to frame an approach which allows for analyzing domain knowledge.
Our contribution is two-fold: First, we present a solution to pattern-based domain-specific requirements engineering and its exemplary integration into quality assurance techniques.
arXiv Detail & Related papers (2024-04-26T11:38:55Z) - Enhancing Architecture Frameworks by Including Modern Stakeholders and their Views/Viewpoints [48.87872564630711]
The stakeholders with data science and Machine Learning related concerns, such as data scientists and data engineers, are yet to be included in existing architecture frameworks.<n>We surveyed 61 subject matter experts from over 25 organizations in 10 countries.
arXiv Detail & Related papers (2023-08-09T21:54:34Z) - Lessons from Formally Verified Deployed Software Systems (Extended version) [65.69802414600832]
This article examines a range of projects, in various application areas, that have produced formally verified systems and deployed them for actual use.
It considers the technologies used, the form of verification applied, the results obtained, and the lessons that the software industry should draw regarding its ability to benefit from formal verification techniques and tools.
arXiv Detail & Related papers (2023-01-05T18:18:46Z) - Requirements Engineering for Machine Learning: A Review and Reflection [39.01716712094724]
This paper aims to provide an overview of the requirements engineering process for machine learning applications.
An example case of industrial data-driven intelligence applications is also discussed in relation to the aforementioned steps.
arXiv Detail & Related papers (2022-10-03T12:24:39Z) - On the validity of pre-trained transformers for natural language
processing in the software engineering domain [78.32146765053318]
We compare BERT transformer models trained with software engineering data with transformers based on general domain data.
Our results show that for tasks that require understanding of the software engineering context, pre-training with software engineering data is valuable.
arXiv Detail & Related papers (2021-09-10T08:46:31Z) - Empowered and Embedded: Ethics and Agile Processes [60.63670249088117]
We argue that ethical considerations need to be embedded into the (agile) software development process.
We put emphasis on the possibility to implement ethical deliberations in already existing and well established agile software development processes.
arXiv Detail & Related papers (2021-07-15T11:14:03Z) - Machine Learning for Software Engineering: A Systematic Mapping [73.30245214374027]
The software development industry is rapidly adopting machine learning for transitioning modern day software systems towards highly intelligent and self-learning systems.
No comprehensive study exists that explores the current state-of-the-art on the adoption of machine learning across software engineering life cycle stages.
This study introduces a machine learning for software engineering (MLSE) taxonomy classifying the state-of-the-art machine learning techniques according to their applicability to various software engineering life cycle stages.
arXiv Detail & Related papers (2020-05-27T11:56:56Z) - Synergizing Domain Expertise with Self-Awareness in Software Systems: A
Patternized Architecture Guideline [11.155059219430207]
This paper highlights the importance of synergizing domain expertise and the self-awareness to enable better self-adaptation in software systems.
We present a holistic framework of notions, enriched patterns and methodology, dubbed DBASES, that offers a principled guideline for the engineers.
arXiv Detail & Related papers (2020-01-20T12:17:22Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.