software Craftsmanship is about professionalism in software development. The "craftsmanship" metaphor is based on the notion of professional craftsmen who take responsibility for their work and aim to achiev...
详细信息
ISBN:
(纸本)9798350378986;9798350378979
software Craftsmanship is about professionalism in software development. The "craftsmanship" metaphor is based on the notion of professional craftsmen who take responsibility for their work and aim to achieve mastery - not only as individuals but also as part of a community. Especially in the context of developing and extending high-quality systems with long lifecycles, it is important that we nurture a strong culture of professionalism in software development. This includes both technical aspects such as automated tests, addressing technical debt, and refactoring as well as cultural aspects such as responsibility, failure culture, embracing change, and continuous learning. This paper describes what we, as industrial practitioners, mean by professionalism and describes our global training program that sets the foundation for this way of working. This is accompanied by a software craftsmanship program that enables software engineers to continuously learn, further increase their mastery of craftsmanship and apply what they learned on their current and future projects.
softwareengineering artifacts are central to DevOps, enabling the collaboration of teams involved with integrating the development and operations domains. However, collaboration around DevOps artifacts has yet to rec...
详细信息
ISBN:
(纸本)9798400700446
softwareengineering artifacts are central to DevOps, enabling the collaboration of teams involved with integrating the development and operations domains. However, collaboration around DevOps artifacts has yet to receive detailed research attention. We apply the sociological concept of Boundary Objects to describe and evaluate the specific softwareengineering artifacts that enable a cross-disciplinary understanding. Using this focus, we investigate how different DevOps stakeholders can collaborate efficiently using common artifacts. We performed a multiple case study and conducted twelve semi-structured interviews with DevOps practitioners in nine companies. We elicited participants' collaboration practices, focusing on the coordination of stakeholders and the use of engineering artifacts as a means of translation. This paper presents a consolidated overview of four categories of DevOps Boundary Objects and eleven stakeholder groups relevant to DevOps. To help practitioners assess cross-disciplinary knowledge management strategies, we detail how DevOps Boundary Objects contribute to four areas of DevOps knowledge and propose derived dimensions to evaluate their use.
Context. Modern software systems increasingly commonly contain one or multiple machine learning (ML) components. Current development practices are generally on a trial-and-error basis, posing a significant risk of int...
详细信息
ISBN:
(纸本)9798400706226
Context. Modern software systems increasingly commonly contain one or multiple machine learning (ML) components. Current development practices are generally on a trial-and-error basis, posing a significant risk of introducing bugs. One type of bug is the "conceptual design bug," referring to a misunderstanding between the properties of input data and prerequisites imposed by ML algorithms (e.g., using unscaled data in a scale-sensitive algorithm). These bugs are challenging to test at design time, causing problems at runtime through crashes, noticeably poor model performance, or not at all, threatening the system's robustness and transparency. Objective. In this work, I propose the line of research I intend to pursue during my PhD, addressing conceptual design bugs in complex ML software from a prevention-oriented perspective. I intend to build open-source tooling for ML engineers that can be used to detect conceptual design bugs, enabling them to make quality assurances about their system design's robustness. Approach. We need to understand conceptual bugs beyond the status quo, identifying their types, prevalence, impacts, and structural elements in the code. We operationalize this knowledge into a tool that detects them at design time, allowing ML engineers to resolve them before running their code and wasting resources. We anticipate this tool will leverage contract-based validation applied to partial ML software models. Evaluation. We plan to evaluate the built tool two-fold using professional (industrial) ML software. First, we will study its effectiveness regarding bug detection at design time, identifying whether it fulfills its functional objective. Second, we will study its usability, identifying whether ML engineers benefit when tools like this are introduced into their ML engineering workflow.
Advancements in large language models (LLMs) are transforming softwareengineering through innovative prompt engineering strategies. By analyzing prompt-driven enhancements across key softwareengineering tasks, we pr...
详细信息
ISBN:
(纸本)9798350376975;9798350376968
Advancements in large language models (LLMs) are transforming softwareengineering through innovative prompt engineering strategies. By analyzing prompt-driven enhancements across key softwareengineering tasks, we present a systematic literature review and a pioneering taxonomy elucidating the practical applications of prompt engineering in softwareengineering. Our taxonomy offers a foundational framework that clarifies the roles of prompt engineering and measures its impact, thereby guiding evolving AI-driven softwareengineering research and practices.
The integration of Artificial Intelligence (AI) technologies into educational settings has paved the way for innovative teaching and learning approaches. In softwareengineering (SE) education, using Unified Modeling ...
详细信息
ISBN:
(纸本)9798350378986;9798350378979
The integration of Artificial Intelligence (AI) technologies into educational settings has paved the way for innovative teaching and learning approaches. In softwareengineering (SE) education, using Unified Modeling Language (UML) diagrams is a fundamental teaching element for understanding complex software systems. This research addresses ChatGPT's ability to utilize UML class and sequence diagrams to create SE modeling exercises. We use ChatGPT to generate exercises based on the information from uploaded UML diagrams by analyzing textual UML representations such as Mermaid and graphical diagrams. The research explores ChatGPT's ability to synthesize UML-specific information from class and sequence diagrams, enabling the generation of various exercises tailored to strengthen conceptual understanding and practical application. Furthermore, we investigate generating graphical UML class and sequence diagrams based on natural language as input. By bridging the gap between AI-driven natural language understanding and the comprehension of UML diagrams, this study highlights the potential of ChatGPT to improve SE education. Our concise findings address educators, practitioners, and other researchers engaged in the field of SE education with a special focus on UML.
software project success depends on effective people management;however, managers often rely on intuition rather than evidence-based practice. To bridge this gap, we compiled a catalog of good practices to assist mana...
详细信息
software project success depends on effective people management;however, managers often rely on intuition rather than evidence-based practice. To bridge this gap, we compiled a catalog of good practices to assist managers in implementing people management practices, reducing resistance, and simultaneously collecting indicators that can be used to evaluate the effectiveness of practices. We compiled the practices outlined in the literature from 63 selected studies conducted from 2016 to 2023. These studies were then categorized into 9 problem domains and 16 associated practices. Subsequently, through a survey, these practices were validated by 31 professionals, enabling classification based on overall relevance and problem-resolution efficacy. The results underscore the importance of interpersonal skills (soft skills) over technical abilities (hard skills) and highlight the significance of continuous feedback, open communication, and transparent management practices. This catalog is a valuable resource for managers to assess and customize practices for their specific project needs.
In the robustness verification of neural networks, formal methods have been used to give deterministic guarantees for neural networks. However, recent studies have found that the verification method of single-neuron r...
详细信息
In the robustness verification of neural networks, formal methods have been used to give deterministic guarantees for neural networks. However, recent studies have found that the verification method of single-neuron relaxation in this field has an inherent convex barrier that affects its verification capability. To address this problem, we propose a new verification method by combining dual-neuron relaxation and linear programming. This method captures the dependencies between different neurons in the same hidden layer by adding a two-neuron joint constraint to the linear programming model, thus overcoming the convex barrier problem caused by relaxation for only a single neuron. Our method avoids the combination of exponential inequality constraints and can be computed in polynomial time. Experimental results show that we can obtain tighter bounds and achieve more accurate verification than single-neuron relaxation methods.
Previous research found that socio-demographic factors, like national culture or gender have an impact on the frequency and type of given user feedback for software requirements. However, few exploratory studies have ...
详细信息
ISBN:
(纸本)9798350395525;9798350395518
Previous research found that socio-demographic factors, like national culture or gender have an impact on the frequency and type of given user feedback for software requirements. However, few exploratory studies have analyzed this impact and focused their analyses on individual factors separately. In this study, we add knowledge about the influence of socio-demographics on given user feedback. Our work investigates the effect of two independent factors, gender and country of residence, on user feedback characteristics from Twitter and Apple App Store reviews. We analyzed 2,911 tweets and reviews from different countries, languages, and apps using statistical methods. Our analyses show that (1) gender significantly influences the content of user feedback in tweets such as women submitting more bug reports than men, (2) users' gender also has an interaction effect with the country of residence on Apple App Store reviews' and Twitter content, (3) users' country of residence impacts the text length and ratings in app reviews, and (4) users' country of residence also influences the sentiment and content in tweets and reviews. Our work raises awareness of potential biases in automatic approaches used during software development and evolution that process diverse user feedback and highlight the necessity to include users with (intersecting) marginalized identities during software evolution.
This research paper proposes a curriculum for a five-year academic program with a bachelor's degree (honors) in intelligent systems engineering and softwareengineering and a master's degree in intelligent sys...
详细信息
ISBN:
(纸本)9798350361513;9798350372304
This research paper proposes a curriculum for a five-year academic program with a bachelor's degree (honors) in intelligent systems engineering and softwareengineering and a master's degree in intelligent systems engineering and softwareengineering. This program includes courses in data structures, compiler design, operating system design, firmware design, database systems, computer graphics and virtual reality design, static and dynamic website design, development of chatbots and voice assistants, softwareengineering methodology, knowledge-based systems, fuzzy logic, neural networks, evolutionary computation, evolutionary multiojective optimization, machine learning, image processing, computer vision, pattern recognition, voice recognition, natural language processing, data science, control systems, intelligent control systems, robotics, digital signal processing, mathematics, engineering physics, biology, etc. These degrees will allow graduates to have a good understanding of all of the main branches of intelligent systems engineering and softwareengineering as well as other relevant subjects in electrical and computer engineering.
We report on our experience and lessons learned from teaching the theory and practice of softwareengineering to hundreds of undergraduate students majoring primarily in computer science. These students know how to wr...
详细信息
ISBN:
(纸本)9798400704987
We report on our experience and lessons learned from teaching the theory and practice of softwareengineering to hundreds of undergraduate students majoring primarily in computer science. These students know how to write code but not engineer software. In particular, the teaching load appears to scale well to hundreds of students despite offering open-ended exams in an interactive theory course that focuses on solving concrete problems. We teach theory and practice sequentially, to give students time to apply what they learn, which also enables us to iterate on the theory course quickly based on results from the practice course.
暂无评论