1. |
- Klünder, Jil, et al.
(author)
-
Catching up with Method and Process Practice: An Industry-Informed Baseline for Researchers
- 2019
-
In: Proceedings - 2019 IEEE/ACM 41st International Conference on Software Engineering: Software Engineering in Practice, ICSE-SEIP 2019. ; May 2019, s. 255-264
-
Conference paper (peer-reviewed)abstract
- Software development methods are usually not applied by the book.companies are under pressure to continuously deploy software products that meet market needs and stakeholders' requests. To implement efficient and effective development processes, companies utilize multiple frameworks, methods and practices, and combine these into hybrid methods. A common combination contains a rich management framework to organize and steer projects complemented with a number of smaller practices providing the development teams with tools to complete their tasks. In this paper, based on 732 data points collected through an international survey, we study the software development process use in practice. Our results show that 76.8% of the companies implement hybrid methods.company size as well as the strategy in devising and evolving hybrid methods affect the suitability of the chosen process to reach company or project goals. Our findings show that companies that combine planned improvement programs with process evolution can increase their process' suitability by up to 5%.
|
|
2. |
- Klünder, Jil, et al.
(author)
-
Determining context factors for hybrid development methods with trained models
- 2020
-
In: Proceedings - 2020 IEEE/ACM International Conference on Software and System Processes, ICSSP 2020. - New York, NY, USA : ACM.
-
Conference paper (peer-reviewed)abstract
- © 2020 ACM. Selecting a suitable development method for a specific project context is one of the most challenging activities in process design. Every project is unique and, thus, many context factors have to be considered. Recent research took some initial steps towards statistically constructing hybrid development methods, yet, paid little attention to the peculiarities of context factors influencing method and practice selection. In this paper, we utilize exploratory factor analysis and logistic regression analysis to learn such context factors and to identify methods that are correlated with these factors. Our analysis is based on 829 data points from the HELENA dataset. We provide five base clusters of methods consisting of up to 10 methods that lay the foundation for devising hybrid development methods. The analysis of the five clusters using trained models reveals only a few context factors, e.g., project/product size and target application domain, that seem to significantly influence the selection of methods. An extended descriptive analysis of these practices in the context of the identified method clusters also suggests a consolidation of the relevant practice sets used in specific project contexts.
|
|
3. |
- Kuhrmann, Marco, et al.
(author)
-
Preface
- 2018
-
In: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics). - 1611-3349 .- 0302-9743. ; 11271 LNCS, s. V-VI
-
Conference paper (other academic/artistic)
|
|
4. |
- Kuhrmann, Marco, et al.
(author)
-
Walking through the method zoo: Does higher education really meet software industry demands?
- 2019
-
In: Proceedings - 2019 IEEE/ACM 41st International Conference on Software Engineering: Software Engineering Education and Training, ICSE-SEET 2019. - : IEEE. ; , s. 1-11
-
Conference paper (peer-reviewed)abstract
- Software engineering educators are continually challenged by rapidly evolving concepts, technologies, and industry demands. Due to the omnipresence of software in a digitalized society, higher education institutions (HEIs) have to educate the students such that they learn how to learn, and that they are equipped with a profound basic knowledge and with latest knowledge about modern software and system development. Since industry demands change constantly, HEIs are challenged in meeting such current and future demands in a timely manner. This paper analyzes the current state of practice in software engineering education. Specifically, we want to compare contemporary education with industrial practice to understand if frameworks, methods and practices for software and system development taught at HEIs reflect industrial practice. For this, we conducted an online survey and collected information about 67 software engineering courses. Our findings show that development approaches taught at HEIs quite closely reflect industrial practice. We also found that the choice of what process to teach is sometimes driven by the wish to make a course successful. Especially when this happens for project courses, it could be beneficial to put more emphasis on building learning sequences with other courses.
|
|
5. |
- Kuhrmann, Marco, et al.
(author)
-
What Makes Agile Software Development Agile
- 2022
-
In: IEEE Transactions on Software Engineering. - 0098-5589 .- 1939-3520. ; 48:9, s. 3523-3539
-
Journal article (peer-reviewed)abstract
- Together with many success stories, promises such as the increase in production speed and the improvement in stakeholders' collaboration have contributed to making agile a transformation in the software industry in which many companies want to take part. However, driven either by a natural and expected evolution or by contextual factors that challenge the adoption of agile methods as prescribed by their creator(s), software processes in practice mutate into hybrids over time. Are these still agile In this article, we investigate the question: what makes a software development method agile We present an empirical study grounded in a large-scale international survey that aims to identify software development methods and practices that improve or tame agility. Based on 556 data points, we analyze the perceived degree of agility in the implementation of standard project disciplines and its relation to used development methods and practices. Our findings suggest that only a small number of participants operate their projects in a purely traditional or agile manner (under 15%). That said, most project disciplines and most practices show a clear trend towards increasing degrees of agility. Compared to the methods used to develop software, the selection of practices has a stronger effect on the degree of agility of a given discipline. Finally, there are no methods or practices that explicitly guarantee or prevent agility. We conclude that agility cannot be defined solely at the process level. Additional factors need to be taken into account when trying to implement or improve agility in a software company. Finally, we discuss the field of software process-related research in the light of our findings and present a roadmap for future research.
|
|
6. |
- Laiq, Muhammad, et al.
(author)
-
Early Identification of Invalid Bug Reports in Industrial Settings – A Case Study
- 2022
-
In: Product-Focused Software Process Improvement. - Cham : Springer Science+Business Media B.V.. - 1611-3349 .- 0302-9743. - 9783031213878 ; , s. 497-507
-
Conference paper (peer-reviewed)abstract
- Software development companies spend considerable time resolving bug reports. However, bug reports might be invalid, i.e., not point to a valid flaw. Expensive resources and time might be expended on invalid bug reports before discovering that they are invalid. In this case study, we explore the impact of invalid bug reports and develop and assess the use of machine learning (ML) to indicate whether a bug report is likely invalid. We found that about 15% of bug reports at the case company are invalid, and that their resolution time is similar to valid bug reports. Among the ML-based techniques we used, logistic regression and SVM show promising results. In the feedback, practitioners indicated an interest in using the tool to identify invalid bug reports at early stages. However, they emphasized the need to improve the explainability of ML-based recommendations and to reduce the maintenance cost of the tool. © 2022, The Author(s), under exclusive license to Springer Nature Switzerland AG.
|
|
7. |
- Liebel, Grischa, 1987, et al.
(author)
-
Human factors in model-driven engineering: future research goals and initiatives for MDE
- 2024
-
In: Software and Systems Modeling. - 1619-1374 .- 1619-1366. ; In Press
-
Journal article (peer-reviewed)abstract
- Software modelling and model-driven engineering (MDE) is traditionally studied from a technical perspective. However, one of the core motivations behind the use of software models is inherently human-centred. Models aim to enable practitioners to communicate about software designs, make software understandable, or make software easier to write through domain-specific modelling languages. Several recent studies challenge the idea that these aims can always be reached and indicate that human factors play a role in the success of MDE. However, there is an under-representation of research focusing on human factors in modelling. During a GI-Dagstuhl seminar, topics related to human factors in modelling were discussed by 26 expert participants from research and industry. In breakout groups, five topics were covered in depth, namely modelling human aspects, factors of modeller experience, diversity and inclusion in MDE, collaboration and MDE, and teaching human-aware MDE. We summarise our insights gained during the discussions on the five topics. We formulate research goals, questions, and propositions that support directing future initiatives towards an MDE community that is aware of and supportive of human factors and values.
|
|
8. |
- Taromirad, Masoumeh, et al.
(author)
-
Near Failure Analysis Using Dynamic Behavioural Data
- 2022
-
In: Product-Focused Software Process Improvement : 23rd International Conference, PROFES 2022, Jyväskylä, Finland, November 21–23, 2022, Proceedings - 23rd International Conference, PROFES 2022, Jyväskylä, Finland, November 21–23, 2022, Proceedings. - Cham : Springer International Publishing. - 1611-3349 .- 0302-9743. - 9783031213878 - 9783031213885 ; 13709, s. 171-178
-
Conference paper (peer-reviewed)abstract
- Automated testing is a safeguard against software regression and provides huge benefits. However, it is yet a challenging subject. Among others, there is a risk that the test cases are too specific, thus making them inefficient. There are many forms of undesirable behaviour that are compatible with a typical program’s specification, that however, harm users. An efficient test should provide most possible information in relation to the resources spent. This paper introduces near failure analysis which complements testing activities by analysing dynamic behavioural metrics (e.g., execution time) in addition to explicit output values. The approach employs machine learning (ML) for classifying the behaviour of a program as faulty or healthy based on dynamic data gathered throughout its executions over time. An ML-based model is designed and trained to predict whether or not an arbitrary version of a program is at risk of failure. The very preliminary evaluation demonstrates promising results for feasibility and effectiveness of near failure analysis.
|
|