A formal theory on problem space as a semantic world model in systems engineering
Mayuranath SureshKumar, Hanumanthrao Kannan
Classic problem-space theory models problem solving as a navigation through a structured space of states, operators, goals, and constraints. Systems Engineering (SE) employs analogous constructs (functional analysis, operational analysis, scenarios, trade studies), yet still lacks a rigorous systems-theoretic representation of the problem space itself. In current practice, reasoning often proceeds directly from stakeholder goals to prescriptive artifacts. This makes foundational assumptions about the operational environment, admissible interactions, and contextual conditions implicit or prematurely embedded in architectures or requirements. This paper addresses that gap by formalizing the problem space as an explicit semantic world model containing theoretical constructs that are defined prior to requirements and solution commitments. These constructs along with the developed axioms, theorems and corollary establish a rigorous criterion for unambiguous boundary semantics, context-dependent interaction traceability to successful stakeholder goal satisfaction, and sufficiency of problem-space specification over which disciplined reasoning can occur independent of solution design. It offers a clear distinction between what is true of the problem domain and what is chosen as a solution. The paper concludes by discussing the significance of the theory on practitioners and provides a dialogue-based hypothetical case study between a stakeholder and an engineer, demonstrating how the theory guides problem framing before designing any prescriptive artifacts.
Teaching Empirical Research Methods in Software Engineering: An Editorial Introduction
Daniel Mendez, Paris Avgeriou, Marcos Kalinowski
et al.
Empirical Software Engineering has received much attention in recent years and became a de-facto standard for scientific practice in Software Engineering. However, while extensive guidelines are nowadays available for designing, conducting, reporting, and reviewing empirical studies, similar attention has not yet been paid to teaching empirical software engineering. Closing this gap is the scope of this edited book. In the following editorial introduction, we, the editors, set the foundation by laying out the larger context of the discipline for a positioning of the remainder of this book.
An Exploratory Study on the Engineering of Security Features
Kevin Hermann, Sven Peldszus, Jan-Philipp Steghöfer
et al.
Software security is of utmost importance for most software systems. Developers must systematically select, plan, design, implement, and especially, maintain and evolve security features -- functionalities to mitigate attacks or protect personal data such as cryptography or access control -- to ensure the security of their software. Although security features are usually available in libraries, integrating security features requires writing and maintaining additional security-critical code. While there have been studies on the use of such libraries, surprisingly little is known about how developers engineer security features, how they select what security features to implement and which ones may require custom implementation, and the implications for maintenance. As a result, we currently rely on assumptions that are largely based on common sense or individual examples. However, to provide them with effective solutions, researchers need hard empirical data to understand what practitioners need and how they view security -- data that we currently lack. To fill this gap, we contribute an exploratory study with 26 knowledgeable industrial participants. We study how security features of software systems are selected and engineered in practice, what their code-level characteristics are, and what challenges practitioners face. Based on the empirical data gathered, we provide insights into engineering practices and validate four common assumptions.
GLUE: Generative Latent Unification of Expertise-Informed Engineering Models
Tim Aebersold, Soheyl Massoudi, Mark D. Fuge
Engineering complex systems (aircraft, buildings, vehicles) requires accounting for geometric and performance couplings across subsystems. As generative models proliferate for specialized domains (wings, structures, engines), a key research gap is how to coordinate frozen, pre-trained submodels to generate full-system designs that are feasible, diverse, and high-performing. We introduce Generative Latent Unification of Expertise-Informed Engineering Models (GLUE), which orchestrates pre-trained, frozen subsystem generators while enforcing system-level feasibility, optimality, and diversity. We propose and benchmark (i) data-driven GLUE models trained on pre-generated system-level designs and (ii) a data-free GLUE model trained online on a differentiable geometry layer. On a UAV design problem with five coupling constraints, we find that data-driven approaches yield diverse, high-performing designs but require large datasets to satisfy constraints reliably. The data-free approach is competitive with Bayesian optimization and gradient-based optimization in performance and feasibility while training a full generative model in only 10 min on a RTX 4090 GPU, requiring more than two orders of magnitude fewer geometry evaluations and FLOPs than the data-driven method. Ablations focused on data-free training show that subsystem output continuity affects coordination, and equality constraints can trigger mode collapse unless mitigated. By integrating unmodified, domain-informed submodels into a modular generative workflow, this work provides a viable path for scaling generative design to complex, real-world engineering systems.
Investigating the Role of LLMs Hyperparameter Tuning and Prompt Engineering to Support Domain Modeling
Vladyslav Bulhakov, Giordano d'Aloisio, Claudio Di Sipio
et al.
The introduction of large language models (LLMs) has enhanced automation in software engineering tasks, including in Model Driven Engineering (MDE). However, using general-purpose LLMs for domain modeling has its limitations. One approach is to adopt fine-tuned models, but this requires significant computational resources and can lead to issues like catastrophic forgetting. This paper explores how hyperparameter tuning and prompt engineering can improve the accuracy of the Llama 3.1 model for generating domain models from textual descriptions. We use search-based methods to tune hyperparameters for a specific medical data model, resulting in a notable quality improvement over the baseline LLM. We then test the optimized hyperparameters across ten diverse application domains. While the solutions were not universally applicable, we demonstrate that combining hyperparameter tuning with prompt engineering can enhance results across nearly all examined domain models.
Experimental Study on Performance of Air Conditioning and Heat Pipe Integrated Equipment for Communication Cabinet in Transition Season
Zhang Yi, Cui Siqi, Bai Jing
et al.
To address the issues of the high-energy consumption of traditional air conditioners in communication cabinets, disordered airflow organization in cabinets, and poor temperature control effect of the baseband unit (BBU), this study integrates air-conditioning with heat pipes for communication cabinets using a temperature control system with heat pipe cooling as the primary cold source and vapor compression air conditioners as the supplementary cold source. Floor ventilation with air return from the ceiling is adopted with high wind speed and internal circulation. The unit was applied to a communication base station in Zhengzhou, and field testing results showed that under the short-term high-temperature condition during the transition season, the average working temperature of the BBU in operation mode 1 was 38.2 ℃, and the maximum outlet temperature was 46.5 ℃. Moreover, under the normal working conditions of the transition season, the average working temperature of the BBU regulated by operating mode 2 was 29.5 ℃, and the maximum air temperature was 41.3 ℃, which met the temperature control requirements of relevant standards and ensured the safe operation of BBU. Compared with those of the traditional air conditioner of the communication cabinet, the compressor operation ratio of the air-conditioning heat pipe integrated equipment in operation modes 1 and 2 was 24.9% and 0; the energy saving rate was 57.3% and 71.9%; the power usage efficiency (PUE) was 1.43 and 1.19, respectively. The comprehensive energy saving in the transition season was 71.3%, and the PUE was 1.20.
Heating and ventilation. Air conditioning, Low temperature engineering. Cryogenic engineering. Refrigeration
Towards Understanding the Impact of Data Bugs on Deep Learning Models in Software Engineering
Mehil B Shah, Mohammad Masudur Rahman, Foutse Khomh
Deep learning (DL) techniques have achieved significant success in various software engineering tasks (e.g., code completion by Copilot). However, DL systems are prone to bugs from many sources, including training data. Existing literature suggests that bugs in training data are highly prevalent, but little research has focused on understanding their impacts on the models used in software engineering tasks. In this paper, we address this research gap through a comprehensive empirical investigation focused on three types of data prevalent in software engineering tasks: code-based, text-based, and metric-based. Using state-of-the-art baselines, we compare the models trained on clean datasets with those trained on datasets with quality issues and without proper preprocessing. By analysing the gradients, weights, and biases from neural networks under training, we identify the symptoms of data quality and preprocessing issues. Our analysis reveals that quality issues in code data cause biased learning and gradient instability, whereas problems in text data lead to overfitting and poor generalisation of models. On the other hand, quality issues in metric data result in exploding gradients and model overfitting, and inadequate preprocessing exacerbates these effects across all three data types. Finally, we demonstrate the validity and generalizability of our findings using six new datasets. Our research provides a better understanding of the impact and symptoms of data bugs in software engineering datasets. Practitioners and researchers can leverage these findings to develop better monitoring systems and data-cleaning methods to help detect and resolve data bugs in deep learning systems.
Assured LLM-Based Software Engineering
Nadia Alshahwan, Mark Harman, Inna Harper
et al.
In this paper we address the following question: How can we use Large Language Models (LLMs) to improve code independently of a human, while ensuring that the improved code - does not regress the properties of the original code? - improves the original in a verifiable and measurable way? To address this question, we advocate Assured LLM-Based Software Engineering; a generate-and-test approach, inspired by Genetic Improvement. Assured LLMSE applies a series of semantic filters that discard code that fails to meet these twin guarantees. This overcomes the potential problem of LLM's propensity to hallucinate. It allows us to generate code using LLMs, independently of any human. The human plays the role only of final code reviewer, as they would do with code generated by other human engineers. This paper is an outline of the content of the keynote by Mark Harman at the International Workshop on Interpretability, Robustness, and Benchmarking in Neural Software Engineering, Monday 15th April 2024, Lisbon, Portugal.
Beyond Self-Promotion: How Software Engineering Research Is Discussed on LinkedIn
Marvin Wyrich, Justus Bogner
LinkedIn is the largest professional network in the world. As such, it can serve to build bridges between practitioners, whose daily work is software engineering (SE), and researchers, who work to advance the field of software engineering. We know that such a metaphorical bridge exists: SE research findings are sometimes shared on LinkedIn and commented on by software practitioners. Yet, we do not know what state the bridge is in. Therefore, we quantitatively and qualitatively investigate how SE practitioners and researchers approach each other via public LinkedIn discussions and what both sides can contribute to effective science communication. We found that a considerable proportion of LinkedIn posts on SE research are written by people who are not the paper authors (39%). Further, 71% of all comments in our dataset are from people in the industry, but only every second post receives at least one comment at all. Based on our findings, we formulate concrete advice for researchers and practitioners to make sharing new research findings on LinkedIn more fruitful.
Indian Livestock Farm Management Methodologies: A Survey
Sanjay Mate, Vikas Somani, Prashant Dahiwale
Agriculture has a good stake in the world’s GDP. In many countries, agriculture and allied sectors have a good stake in national GDP. This paper covers details related to livestock since 1960s. The workforce has managed livestock for many decades. The workforce increases as the number of animals increases; it is an energy, time-consuming, and economically costly approach. Apart from it, there is no assurance about animal welfare in case of diseases, breeding, and feed intake issues. In the 21st century of digitalization, technology has a key role in improving overall monitoring, controlling, and processing in livestock management. This paper has gone thoroughly into the manual and automated livestock farm management, aiming welfare of animals, livestock products, consumers’ benefit, and sustainable environmental approaches.
Transportation engineering, Systems engineering
Stop Words for Processing Software Engineering Documents: Do they Matter?
Yaohou Fan, Chetan Arora, Christoph Treude
Stop words, which are considered non-predictive, are often eliminated in natural language processing tasks. However, the definition of uninformative vocabulary is vague, so most algorithms use general knowledge-based stop lists to remove stop words. There is an ongoing debate among academics about the usefulness of stop word elimination, especially in domain-specific settings. In this work, we investigate the usefulness of stop word removal in a software engineering context. To do this, we replicate and experiment with three software engineering research tools from related work. Additionally, we construct a corpus of software engineering domain-related text from 10,000 Stack Overflow questions and identify 200 domain-specific stop words using traditional information-theoretic methods. Our results show that the use of domain-specific stop words significantly improved the performance of research tools compared to the use of a general stop list and that 17 out of 19 evaluation measures showed better performance. Online appendix: https://zenodo.org/record/7865748
Understanding the Influence of Motivation on Requirements Engineering-related Activities
Dulaji Hidellaarachchi, John Grundy, Rashina Hoda
et al.
Context: Requirements Engineering (RE)-related activities are critical in developing quality software and one of the most human-dependent processes in software engineering (SE). Hence, identifying the impact of diverse human-related aspects on RE is crucial in the SE context. Objective: Our study explores the impact of one of the most influential human aspects, motivation on RE, aiming to deepen understanding and provide practical guidance. Method: By conducting semi-structured interviews with 21 RE-involved practitioners, we developed a theory using socio-technical grounded theory(STGT) that explains the contextual, causal, and intervening conditions influencing motivation in RE-related activities. Result: We identified strategies to enhance motivating situations or mitigate demotivating ones, and the consequences resulting from applying these strategies. Conclusion: Our findings offer actionable insights for software practitioners to manage the influence of motivation on RE and help researchers further investigate its role across various SE contexts in the future.
A Comprehensive End-to-End Computer Vision Framework for Restoration and Recognition of Low-Quality Engineering Drawings
Lvyang Yang, Jiankang Zhang, Huaiqiang Li
et al.
The digitization of engineering drawings is crucial for efficient reuse, distribution, and archiving. Existing computer vision approaches for digitizing engineering drawings typically assume the input drawings have high quality. However, in reality, engineering drawings are often blurred and distorted due to improper scanning, storage, and transmission, which may jeopardize the effectiveness of existing approaches. This paper focuses on restoring and recognizing low-quality engineering drawings, where an end-to-end framework is proposed to improve the quality of the drawings and identify the graphical symbols on them. The framework uses K-means clustering to classify different engineering drawing patches into simple and complex texture patches based on their gray level co-occurrence matrix statistics. Computer vision operations and a modified Enhanced Super-Resolution Generative Adversarial Network (ESRGAN) model are then used to improve the quality of the two types of patches, respectively. A modified Faster Region-based Convolutional Neural Network (Faster R-CNN) model is used to recognize the quality-enhanced graphical symbols. Additionally, a multi-stage task-driven collaborative learning strategy is proposed to train the modified ESRGAN and Faster R-CNN models to improve the resolution of engineering drawings in the direction that facilitates graphical symbol recognition, rather than human visual perception. A synthetic data generation method is also proposed to construct quality-degraded samples for training the framework. Experiments on real-world electrical diagrams show that the proposed framework achieves an accuracy of 98.98% and a recall of 99.33%, demonstrating its superiority over previous approaches. Moreover, the framework is integrated into a widely-used power system software application to showcase its practicality.
A Case Study on AI Engineering Practices: Developing an Autonomous Stock Trading System
Marcel Grote, Justus Bogner
Today, many systems use artificial intelligence (AI) to solve complex problems. While this often increases system effectiveness, developing a production-ready AI-based system is a difficult task. Thus, solid AI engineering practices are required to ensure the quality of the resulting system and to improve the development process. While several practices have already been proposed for the development of AI-based systems, detailed practical experiences of applying these practices are rare. In this paper, we aim to address this gap by collecting such experiences during a case study, namely the development of an autonomous stock trading system that uses machine learning functionality to invest in stocks. We selected 10 AI engineering practices from the literature and systematically applied them during development, with the goal to collect evidence about their applicability and effectiveness. Using structured field notes, we documented our experiences. Furthermore, we also used field notes to document challenges that occurred during the development, and the solutions we applied to overcome them. Afterwards, we analyzed the collected field notes, and evaluated how each practice improved the development. Lastly, we compared our evidence with existing literature. Most applied practices improved our system, albeit to varying extent, and we were able to overcome all major challenges. The qualitative results provide detailed accounts about 10 AI engineering practices, as well as challenges and solutions associated with such a project. Our experiences therefore enrich the emerging body of evidence in this field, which may be especially helpful for practitioner teams new to AI engineering.
Motivational models for validating agile requirements in Software Engineering subjects
Eduardo A. Oliveira, Leon Sterling
This paper describes how motivational models can be used to cross check agile requirements artifacts to improve consistency and completeness of software requirements. Motivational models provide a high level understanding of the purposes of a software system. They complement personas and user stories which focus more on user needs rather than on system features. We present an exploratory case study sought to understand how software engineering students could use motivational models to create better requirements artifacts so they are understandable to non-technical users, easily understood by developers, and are consistent with each other. Nine consistency principles were created as an outcome of our study and are now successfully adopted by software engineering students at the University of Melbourne to ensure consistency between motivational models, personas, and user stories in requirements engineering.
Tailoring Requirements Engineering for Responsible AI
Walid Maalej, Yen Dieu Pham, Larissa Chazette
Requirements Engineering (RE) is the discipline for identifying, analyzing, as well as ensuring the implementation and delivery of user, technical, and societal requirements. Recently reported issues concerning the acceptance of Artificial Intelligence (AI) solutions after deployment, e.g. in the medical, automotive, or scientific domains, stress the importance of RE for designing and delivering Responsible AI systems. In this paper, we argue that RE should not only be carefully conducted but also tailored for Responsible AI. We outline related challenges for research and practice.
Effect of Oil Circulation Rate on the Performance of CO2 Heat Pump System for Electric Vehicles
Zou Huiming, Tang Xinbin, Tang Zuohang
et al.
In this study, a CO2 heat pump system test bench for electric vehicles with an oil circulation rate testing device was built to investigate the influence of the oil circulation rate on the performance of the compressor and the heat pump under typical vehicle operating conditions. Under refrigeration conditions, the increase in the oil circulation rate from 1.17% to 5.26% increased the volumetric and isentropic efficiencies of the compressor by 13.6% and 5.6%, respectively, Under heating conditions, when increasing the oil circulation rate from 1.51% to 6.68%, the volumetric and isentropic efficiencies of the compressor increased by 7.19% and 15.7%, respectively, while the discharge temperature of the compressor decreased from 155.5 °C to 146 °C. Unlike the flow resistance and heat exchange capacity of the air cooler in the high-temperature section, the oil circulation rate exhibited a significant effect on the evaporation process in the low-temperature section. The analysis of the influence of the oil circulation rate on the overall performance of the heat pump system demonstrated that the heat pump system performance improved when the oil circulation rate is approximately 4%.
Heating and ventilation. Air conditioning, Low temperature engineering. Cryogenic engineering. Refrigeration
Case Survey Studies in Software Engineering Research
Jorge Melegati, Xiaofeng Wang
Background: Given the social aspects of Software Engineering (SE), in the last twenty years, researchers from the field started using research methods common in social sciences such as case study, ethnography, and grounded theory. More recently, case survey, another imported research method, has seen its increasing use in SE studies. It is based on existing case studies reported in the literature and intends to harness the generalizability of survey and the depth of case study. However, little is known on how case survey has been applied in SE research, let alone guidelines on how to employ it properly. Aims: This article aims to provide a better understanding of how case survey has been applied in Software Engineering research. Method: To address this knowledge gap, we performed a systematic mapping study and analyzed 12 Software Engineering studies that used the case survey method. Results: Our findings show that these studies presented a heterogeneous understanding of the approach ranging from secondary studies to primary inquiries focused on a large number of instances of a research phenomenon. They have not applied the case survey method consistently as defined in the seminal methodological papers. Conclusions: We conclude that a set of clearly defined guidelines are needed on how to use case survey in SE research, to ensure the quality of the studies employing this approach and to provide a set of clearly defined criteria to evaluate such work.
Software Engineering Challenges of Deep Learning
Anders Arpteg, Björn Brinne, Luka Crnkovic-Friis
et al.
Surprisingly promising results have been achieved by deep learning (DL) systems in recent years. Many of these achievements have been reached in academic settings, or by large technology companies with highly skilled research groups and advanced supporting infrastructure. For companies without large research groups or advanced infrastructure, building high-quality production-ready systems with DL components has proven challenging. There is a clear lack of well-functioning tools and best practices for building DL systems. It is the goal of this research to identify what the main challenges are, by applying an interpretive research approach in close collaboration with companies of varying size and type. A set of seven projects have been selected to describe the potential with this new technology and to identify associated main challenges. A set of 12 main challenges has been identified and categorized into the three areas of development, production, and organizational challenges. Furthermore, a mapping between the challenges and the projects is defined, together with selected motivating descriptions of how and why the challenges apply to specific projects. Compared to other areas such as software engineering or database technologies, it is clear that DL is still rather immature and in need of further work to facilitate development of high-quality systems. The challenges identified in this paper can be used to guide future research by the software engineering and DL communities. Together, we could enable a large number of companies to start taking advantage of the high potential of the DL technology.
Software Engineers vs. Machine Learning Algorithms: An Empirical Study Assessing Performance and Reuse Tasks
Nathalia Nascimento, Carlos Lucena, Paulo Alencar
et al.
Several papers have recently contained reports on applying machine learning (ML) to the automation of software engineering (SE) tasks, such as project management, modeling and development. However, there appear to be no approaches comparing how software engineers fare against machine-learning algorithms as applied to specific software development tasks. Such a comparison is essential to gain insight into which tasks are better performed by humans and which by machine learning and how cooperative work or human-in-the-loop processes can be implemented more effectively. In this paper, we present an empirical study that compares how software engineers and machine-learning algorithms perform and reuse tasks. The empirical study involves the synthesis of the control structure of an autonomous streetlight application. Our approach consists of four steps. First, we solved the problem using machine learning to determine specific performance and reuse tasks. Second, we asked software engineers with different domain knowledge levels to provide a solution to the same tasks. Third, we compared how software engineers fare against machine-learning algorithms when accomplishing the performance and reuse tasks based on criteria such as energy consumption and safety. Finally, we analyzed the results to understand which tasks are better performed by either humans or algorithms so that they can work together more effectively. Such an understanding and the resulting human-in-the-loop approaches, which take into account the strengths and weaknesses of humans and machine-learning algorithms, are fundamental not only to provide a basis for cooperative work in support of software engineering, but also, in other areas.