Change search
Link to record
Permanent link

Direct link
BETA
Publications (10 of 86) Show all publications
Minhas, N. M., Petersen, K., Börstler, J. & Wnuk, K. (2020). Regression testing for large-scale embedded software development: Exploring the state of practice. Information and Software Technology, 120, Article ID UNSP 106254.
Open this publication in new window or tab >>Regression testing for large-scale embedded software development: Exploring the state of practice
2020 (English)In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 120, article id UNSP 106254Article in journal (Other academic) Published
Abstract [en]

Context: A majority of the regression testing techniques proposed by the research have not been adopted in industry. To increase adoption rates, we need to better understand the practitioners' perspectives on regression testing.

Objective: This study aims at exploring the regression testing state of practice in the large-scale embedded software development. The study has two objectives, 1) to highlight the potential challenges in practice, and 2) to identify the industry-relevant research areas regarding regression testing.

Method: We conducted a qualitative study in two large-scale embedded software development companies, where we carried out semi-structured interviews with representatives from five software testing teams. We did conduct the detailed review of the process documentation of the companies to complement/validate the findings of the interviews.

Results: Mostly, the practitioners run regression testing with a selected scope, the selection of scope depends upon the size, complexity, and location of the change. Test cases are prioritized on the basis of risk and critical functionality. The practitioners rely on their knowledge and experience for the decision making regarding selection and prioritization of test cases.The companies are using both automated and manual regression testing, and mainly they rely on in-house developed tools for test automation. The challenges identified in the companies are: time to test, information management, test suite maintenance, lack of communication, test selection/prioritization, lack of assessment, etc. The proposed improvements are in line with the identified challenges. Regression testing goals identified in this study are customer satisfaction, critical defect detection, confidence, effectiveness, efficiency, and controlled slip through of faults.

Conclusions: Considering the current state of practice and identified challenges we conclude that there is a need to reconsider the regression test strategy in the companies. Researchers need to analyze the industry perspective while proposing new regression testing techniques. The industry-academia collaboration projects would be a good platform in this regard.

Place, publisher, year, edition, pages
Elsevier, 2020
Keywords
Regression testing, practices, challenges, goals, multi-case study
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-17362 (URN)10.1016/j.infsof.2019.106254 (DOI)000514233800006 ()
Projects
EASE - Embedded Applications Software Engineering
Funder
Vinnova, 2015-03235
Available from: 2018-11-30 Created: 2018-11-30 Last updated: 2020-03-06Bibliographically approved
Britto, R., Šmite, D., Damm, L.-O. & Börstler, J. (2019). Performance Evolution of Newcomers in Large-Scale Distributed Software Projects: An Industrial Case Study. In: Proceedings - 2019 ACM/IEEE 14th International Conference on Global Software Engineering, ICGSE 2019: . Paper presented at 14th ACM/IEEE International Conference on Global Software Engineering, ICGSE, Montreal, 25 May 2019 through 26 May 2019 (pp. 1-11). Institute of Electrical and Electronics Engineers Inc., Article ID 8807643.
Open this publication in new window or tab >>Performance Evolution of Newcomers in Large-Scale Distributed Software Projects: An Industrial Case Study
2019 (English)In: Proceedings - 2019 ACM/IEEE 14th International Conference on Global Software Engineering, ICGSE 2019, Institute of Electrical and Electronics Engineers Inc. , 2019, p. 1-11, article id 8807643Conference paper, Published paper (Refereed)
Abstract [en]

Large-scale distributed software projects with long life cycles often involve a considerable amount of complex legacy code. The combination of scale and distribution challenges and the difficulty in acquiring knowledge about massive amounts of complex legacy code may make the onboarding of new developers/teams problematic. These problems may lead to extended periods of low performance. The primary objective of this paper is to investigate the performance evolution of offshore newcomers onboarded in a large-scale globally distributed project and how it relates to the employed onboarding strategy. To achieve our objective, we conducted a case study in Ericsson. We identified that the following aspects in the onboarding strategy employed in the investigated case seem to be related to the unexpectedly low performance evolution: i) the distance to mentors; ii) the used formal training approach, which did not fit the sociocultural background of the newcomers; iii) allocation of large and distributed tasks in the early stages of the onboarding process; and iv) team instability. We conclude that the onboarding of newcomers in globally distributed projects must be planned well ahead and should consider avoiding the aspects mentioned above. © 2019 IEEE.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers Inc., 2019
Keywords
developer onboarding, global software engineering, large scale software development, performance, Life cycle, Offshore oil well production, Distributed projects, Distributed software, Industrial case study, Onboarding, Performance evolutions, Primary objective, Software design
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-18673 (URN)10.1109/ICGSE.2019.00000 (DOI)9781538691960 (ISBN)
Conference
14th ACM/IEEE International Conference on Global Software Engineering, ICGSE, Montreal, 25 May 2019 through 26 May 2019
Available from: 2019-09-19 Created: 2019-09-19 Last updated: 2019-09-19Bibliographically approved
Minhas, N. M., Majeed, A., Börstler, J. & Gorschek, T. (2019). SWVP-A Requirements Prioritization Technique for Global Software Development. In: Proceedings - 45th Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2019: . Paper presented at 45th Euromicro Conference on Software Engineering and Advanced Applications, SEAA, Kallithea, Chalkidiki; Greece, 28 August 2019 through 30 August 2019 (pp. 1-9). Institute of Electrical and Electronics Engineers Inc.
Open this publication in new window or tab >>SWVP-A Requirements Prioritization Technique for Global Software Development
2019 (English)In: Proceedings - 45th Euromicro Conference on Software Engineering and Advanced Applications, SEAA 2019, Institute of Electrical and Electronics Engineers Inc. , 2019, p. 1-9Conference paper, Published paper (Refereed)
Abstract [en]

Requirements prioritization plays a vital role in software release planning, and the process requires good interaction between stakeholders. Requirement prioritization process is challenging in global software development (GSD) context, where communication and coordination are core bottlenecks. Based on the issues found in the literature and industry survey, this paper proposes a requirements prioritization technique for GSD settings based on stakeholders' weight, vote, and priority (SWVP). The technique has two phases: (1) a calculation of stakeholders' profile weights and setting up communication parameters and (2) a voting process supporting the actual prioritization, based on the weights from phase (1). The proposed technique was applied to three industrial projects. The feedback of the practitioners after using SWVP was encouraging, and the feedback results indicate that SWVP could be a practical solution for requirements prioritization in GSD contexts. © 2019 IEEE.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers Inc., 2019
Keywords
Global Software Development, Requirements Negotiation, Requirements Prioritization, SWVP, Application programs, Communication parameters, Practical solutions, Prioritization process, Software release planning, Software design
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-19053 (URN)10.1109/SEAA.2019.00010 (DOI)2-s2.0-85075983269 (Scopus ID)9781728132853 (ISBN)
Conference
45th Euromicro Conference on Software Engineering and Advanced Applications, SEAA, Kallithea, Chalkidiki; Greece, 28 August 2019 through 30 August 2019
Available from: 2019-12-27 Created: 2019-12-27 Last updated: 2019-12-27Bibliographically approved
Tran, H. K., Ali, N. b., Börstler, J. & Unterkalmsteiner, M. (2019). Test-Case Quality: Understanding Practitioners’ Perspectives. In: Franch X.,Mannisto T.,Martinez-Fernandez S. (Ed.), Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics): . Paper presented at 20th International Conference on Product-Focused Software Process Improvement, PROFES 2019; Barcelona; Spain; 27 November 2019 through 29 November (pp. 37-52). Springer, 11915
Open this publication in new window or tab >>Test-Case Quality: Understanding Practitioners’ Perspectives
2019 (English)In: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) / [ed] Franch X.,Mannisto T.,Martinez-Fernandez S., Springer , 2019, Vol. 11915, p. 37-52Conference paper, Published paper (Refereed)
Abstract [en]

Background: Test-case quality has always been one of the major concerns in software testing. To improve test-case quality, it is important to better understand how practitioners perceive the quality of test-cases. Objective: Motivated by that need, we investigated how practitioners define test-case quality and which aspects of test-cases are important for quality assessment. Method: We conducted semi-structured interviews with professional developers, testers and test architects from a multinational software company in Sweden. Before the interviews, we asked participants for actual test cases (written in natural language) that they perceive as good, normal, and bad respectively together with rationales for their assessment. We also compared their opinions on shared test cases and contrasted their views with the relevant literature. Results: We present a quality model which consists of 11 test-case quality attributes. We also identify a misalignment in defining test-case quality among practitioners and between academia and industry, along with suggestions for improving test-case quality in industry. Conclusion: The results show that practitioners’ background, including roles and working experience, are critical dimensions of how test-case quality is defined and assessed. © Springer Nature Switzerland AG 2019.

Place, publisher, year, edition, pages
Springer, 2019
Keywords
Natural-language test case, Software testing, Test-case quality, Process engineering, Quality management, Testing, Critical dimension, Natural languages, Quality assessment, Quality attributes, Quality modeling, Semi structured interviews, Software company, Test case
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-19063 (URN)10.1007/978-3-030-35333-9_3 (DOI)2-s2.0-85076540061 (Scopus ID)9783030353322 (ISBN)
Conference
20th International Conference on Product-Focused Software Process Improvement, PROFES 2019; Barcelona; Spain; 27 November 2019 through 29 November
Available from: 2019-12-27 Created: 2019-12-27 Last updated: 2019-12-27Bibliographically approved
Nurdiani, I., Börstler, J., Fricker, S., Petersen, K. & Chatzipetrou, P. (2019). Understanding the order of agile practice introduction: Comparing agile maturity models and practitioners’ experience. Journal of Systems and Software, 156, 1-20
Open this publication in new window or tab >>Understanding the order of agile practice introduction: Comparing agile maturity models and practitioners’ experience
Show others...
2019 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 156, p. 1-20Article in journal (Refereed) Published
Abstract [en]

Context: Agile maturity models (AMMs) suggest that agile practices are introduced in a certain order. However, whether the order of agile practice introduction as suggested in the AMMs is relevant in industry has not been evaluated in an empirical study. Objectives: In this study, we want to investigate: (1) order of agile practice introduction mentioned in AMMs, (2) order of introducing agile practices in industry, and (3) similarities and differences between (1) and (2). Methods: We conducted a literature survey to identify strategies proposed by the AMMs. We then compared the AMMs’ suggestions to the strategies used by practitioners, which we elicited from a survey and a series of interviews from an earlier study. Results: The literature survey revealed 12 AMMs which provide explicit mappings of agile practices to maturity levels. These mappings showed little agreement on when practices should be introduced. Comparison of the AMMs’ suggestions and the empirical study revealed that the guidance suggested by AMMs are not aligned with industry practice. Conclusion: Currently, AMMs do not provide sufficient information to guide agile adoption in industry. Our results suggest that there might be no universal strategy for agile adoption that works better than others. © 2019 Elsevier Inc.

Place, publisher, year, edition, pages
Elsevier Inc., 2019
Keywords
Agile maturity model, Agile practice, Introduction strategies, Mapping, Agile adoptions, Agile practices, Empirical studies, Industry practices, Introduction strategy, Literature survey, Maturity levels, Maturity model, Surveys
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-18038 (URN)10.1016/j.jss.2019.05.035 (DOI)000483658000001 ()2-s2.0-85066489426 (Scopus ID)
Available from: 2019-06-14 Created: 2019-06-14 Last updated: 2019-10-09Bibliographically approved
Nurdiani, I., Börstler, J., Fricker, S. & Petersen, K. (2019). Usage, Retention, and Abandonment of Agile Practices. e-Informatica Software Engineering Journal, 13(1), 7-35
Open this publication in new window or tab >>Usage, Retention, and Abandonment of Agile Practices
2019 (English)In: e-Informatica Software Engineering Journal, ISSN 1897-7979, E-ISSN 2084-4840, Vol. 13, no 1, p. 7-35Article in journal (Refereed) Published
Abstract [en]

Background: A number of Agile maturity models (AMMs) have been proposed to guide software organizations in their adoption of Agile practices. Typically the AMMs suggest that higher maturity levels are reached by gradually adding more practices. However, recent research indicates that certain Agile practices, like test-driven development and continuous integration are being abandoned. Little is known on the rationales for abandoning Agile practices. Aim: We aim to identify which Agile practices are abandoned in industry, as well as the reasons for abandoning them. Method: We conducted a web survey with 51 respondents and interviews with 11 industry practitioners with experience in Agile adoption to investigate why Agile practices are abandoned. Results: Of the 17 Agile practices that were included in the survey, all have been abandoned at some point. Nevertheless, respondents who retained all practices as well as those who abandoned one or more practices, perceived their overall adoption of Agile practices as successful. Conclusion: Going against the suggestions of the AMMs, i.e. abandoning Agile one or more practices, could still lead to successful outcomes. This indicates that introducing Agile practices gradually in a certain sequence, as the AMMs suggest, may not always be suitable in different contexts.

Place, publisher, year, edition, pages
Software Engineering Section of the Committee on Informatics of the Polish Academy of Sciences and Wrocław University of Science and Technology., 2019
Keywords
Agile maturity models (AMMs), Agile practices
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-16236 (URN)10.5277/e-Inf190101 (DOI)000453279600001 ()
Available from: 2018-05-30 Created: 2018-05-30 Last updated: 2019-02-21Bibliographically approved
Nurdiani, I., Börstler, J., Fricker, S. & Petersen, K. (2018). A Preliminary Checklist for Capturing Baseline Situations in Studying the Impacts of Agile Practices Introduction. In: IEEE-ACM International Workshop on Conducting Empirical Studies in Industry CESI: . Paper presented at 2018 IEEE/ACM 6TH INTERNATIONAL WORKSHOP ON CONDUCTING EMPIRICAL STUDIES IN INDUSTRY (CESI), Gothenburg (pp. 25-28). IEEE Computer Society
Open this publication in new window or tab >>A Preliminary Checklist for Capturing Baseline Situations in Studying the Impacts of Agile Practices Introduction
2018 (English)In: IEEE-ACM International Workshop on Conducting Empirical Studies in Industry CESI, IEEE Computer Society, 2018, p. 25-28Conference paper, Published paper (Refereed)
Abstract [en]

To assess the benefits of introducing Agile practices, it is important to get a clear understanding of the baseline situation, i.e. the situation before their introduction. Without a clear baseline, we cannot properly assess the extent of impacts, both positive and negative, of introducing Agile practices. This paper provides a preliminary guideline to help researchers in capturing and reporting baseline situations. The guideline has been developed through the study of literature and interviews with industry practitioners, and validated by experts in academia.

Place, publisher, year, edition, pages
IEEE Computer Society, 2018
Series
Proceedings - International Conference on Software Engineering, ISSN 0270-5257
Keywords
Agile practices, checklist, baseline situation
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-16114 (URN)10.1145/3193965.3193969 (DOI)000468343800005 ()9781450357364 (ISBN)
Conference
2018 IEEE/ACM 6TH INTERNATIONAL WORKSHOP ON CONDUCTING EMPIRICAL STUDIES IN INDUSTRY (CESI), Gothenburg
Available from: 2018-04-24 Created: 2018-04-24 Last updated: 2019-06-14Bibliographically approved
Usman, M., Petersen, K., Börstler, J. & Neto, P. (2018). Developing and Using Checklists to Improve Software Effort Estimation: a Multi-Case Study. Journal of Systems and Software, 146, 286-309
Open this publication in new window or tab >>Developing and Using Checklists to Improve Software Effort Estimation: a Multi-Case Study
2018 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 146, p. 286-309Article in journal (Refereed) Published
Abstract [en]

Expert judgment based effort estimation techniques are widely used for estimating software effort. In the absence of process support, experts may overlook important factors during estimation, leading to inconsistent estimates. This might cause underestimation, which is a common problem in software projects. This multi-case study aims to improve expert estimation of software development effort. Our goal is two-fold: 1) to propose a process to develop and evolve estimation checklists for agile teams, and 2) to evaluate the usefulness of the checklists in improving expert estimation processes. The use of checklists improved the accuracy of the estimates in two case companies. In particular, the underestimation bias was reduced to a large extent. For the third case, we could not perform a similar analysis, due to the unavailability of historical data. However, when checklist was used in two sprints, the estimates were quite accurate (median Balanced Relative Error (BRE) bias of -0.05 ). The study participants from the case companies observed several benefits of using the checklists during estimation, such as increased confidence in estimates, improved consistency due to help in recalling relevant factors, more objectivity in the process, improved understanding of the tasks being estimated, and reduced chances of missing tasks.

Place, publisher, year, edition, pages
Elsevier, 2018
Keywords
Effort estimation, checklist, agile software development
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-15871 (URN)10.1016/j.jss.2018.09.054 (DOI)000451488900019 ()
Available from: 2018-02-08 Created: 2018-02-08 Last updated: 2018-12-13Bibliographically approved
Usman, M., Britto, R., Damm, L.-O. & Börstler, J. (2018). Effort Estimation in Large-Scale Software Development: An Industrial Case Study. Information and Software Technology, 99, 21-40
Open this publication in new window or tab >>Effort Estimation in Large-Scale Software Development: An Industrial Case Study
2018 (English)In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 99, p. 21-40Article in journal (Refereed) Published
Abstract [en]

Context: Software projects frequently incur schedule and budget overruns. Planning and estimation are particularlychallenging in large and globally distributed projects. While software engineering researchers have beeninvestigating effort estimation for many years to help practitioners to improve their estimation processes, there is littleresearch about effort estimation in large-scale distributed agile projects.Objective: The main objective of this paper is three-fold: i) to identify how effort estimation is carried out in largescaledistributed agile projects; ii) to analyze the accuracy of the effort estimation processes in large-scale distributedagile projects; and iii) to identify the factors that impact the accuracy of effort estimates in large-scale distributed agileprojects.Method: We performed an exploratory longitudinal case study. The data collection was operationalized througharchival research and semi-structured interviews.Results: The main findings of this study are: 1) underestimation is the dominant trend in the studied case, 2) reestimationat the analysis stage improves the accuracy of the effort estimates, 3) requirements with large size/scopeincur larger effort overruns, 4) immature teams incur larger effort overruns, 5) requirements developed in multi-sitesettings incur larger effort overruns as compared to requirements developed in a collocated setting, and 6) requirementspriorities impact the accuracy of the effort estimates.Conclusion: Effort estimation is carried out at quotation and analysis stages in the studied case. It is a challengingtask involving coordination amongst many different stakeholders. Furthermore, lack of details and changes in requirements,immaturity of the newly on-boarded teams and the challenges associated with the large-scale add complexitiesin the effort estimation process.

Place, publisher, year, edition, pages
Elsevier, 2018
Keywords
ffort estimation; Large-scale software development; Global and agile software development
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-15193 (URN)10.1016/j.infsof.2018.02.009 (DOI)000432767900003 ()
Funder
Knowledge Foundation
Available from: 2017-09-22 Created: 2017-09-22 Last updated: 2018-06-07Bibliographically approved
Nurdiani, I., Börstler, J. & Fricker, S. (2018). Literature Review of Flexibility Attributes: A Flexibility Framework for Software Developing Organization. Journal of Software: Evolution and Process, 30(9), Article ID e1937.
Open this publication in new window or tab >>Literature Review of Flexibility Attributes: A Flexibility Framework for Software Developing Organization
2018 (English)In: Journal of Software: Evolution and Process, ISSN 2047-7473, E-ISSN 2047-7481, Vol. 30, no 9, article id e1937Article in journal (Refereed) Published
Abstract [en]

Software developing organizations strive to achieve flexibility to maintain a competitive advantage. There is no common understanding of what characterize flexibility for a software organization beyond the scope of the software product. Without a common understanding, it is difficult to evaluate the degrees of flexibility of software development approaches. The aim of this literature review is to collect attributes that characterize flexibility. The collected attributes are consolidated into a flexibility framework with 3 main attributes: properties of change, flexibility perspectives, and flexibility enablers. The resulting flexibility framework is then used to evaluate Agile and Lean practices. The evaluation shows that Agile and Lean practices address many flexibility attributes. However, some attributes are not addressed, such as infrastructure flexibility and strategic flexibility. On the basis of our evaluation, the classifications of flexibility attributes that we present in this paper could be used to aid software organization flexibility evaluation.

Place, publisher, year, edition, pages
John Wiley & Sons, 2018
Keywords
Agile; flexibility; Lean; literature review; software development
National Category
Electrical Engineering, Electronic Engineering, Information Engineering
Identifiers
urn:nbn:se:bth-15963 (URN)10.1002/smr.1937 (DOI)000444678900001 ()
Available from: 2018-03-20 Created: 2018-03-20 Last updated: 2018-10-04Bibliographically approved
Organisations
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0003-0639-4234

Search in DiVA

Show all publications