Abstract
Organizations developing safety-critical software are increasingly seeking to create better practices by meshing agile and plan-driven development processes. Significant differences between the agile and the plan-driven processes make meshing difficult, and very little empirical evidence on using agile processes for safety-critical software development exists. There are four areas of concern, in particular, for meshing the development of safety-critical software concerning: documentation, requirements, life cycle and testing. We report on a case study of a pharmaceutical organization in which a Scrum process was implemented to support agile software development in a plan-driven safety-critical project. The purpose was to answer the following research question: For safety-critical software, what can a software team do to mesh agile and plan-driven processes effectively? The main contribution of the paper is an elaborated understanding of meshing in the four areas of concern and how the conditions for safety-critical software influence them. We discuss how meshing within the four areas of concern is a contribution to existing research.
Similar content being viewed by others
References
Abdelaziz A, El-Tahir Y, Osman R (2015) Adaptive software development for developing safety critical software. International Conference on Computing, Control, Networking, Electronics and Embedded Systems Engineering (ICCNEEE), Khartoum, Sudan
Bedoll R (2003) A tail of two projects: how ‘agile’ methods succeeded after ‘traditional’ methods had failed in a critical system-development project. Conference on Extreme Programming and Agile Methods
Beznosov K (2003) Extreme Security Engineering: On Employing XP Practices to Achieve 'Good Enough Security' without Defining It X. The First ACM Workshop on Business Driven Security Engineering, BizSec, Fairfax
Beznosov K, Kruchten P (2004) Towards agile security assurance. Proceedings of the 2004 Workshop on New Security Paradigms, Nova Scotia
Boehm B, Turner R (2005) Balancing agility and discipline: a guide for the perplexed. Addison-Wesley Professional, Boston
Boström G, Wäyrynen J, Bodén M, Beznosov K, Kruchten P (2006) Extending XP practices to support security requirements engineering. Proceedings of the 2006 international workshop on software engineering for secure systems, Shanghai
Cockburn A (2006) Agile software development: the cooperative game. Addison-Wesley Professional, Boston
Conboy K (2009) Agility from first principles: reconstructing the concept of agility in information systems development. Inf Syst Res 20(3):329–354
Demissie S, Keenan F, McCaffery F (2016) Investigating the suitability of using agile for medical embedded software development. International conference on software process improvement and capability determination (SPICE), Dublin
Drobka J, Noftz D, Raghu R (2004) Piloting XP on four mission-critical projects. IEEE Softw 21(6):70. https://doi.org/10.1109/Ms.2004.47
Fitzgerald B, Stol K-J, O'Sullivan R, O’Brien D (2013) Scaling agile methods to regulated environments: An industry case study. Proceedings of the 2013 International Conference on Software Engineering, San Francisco
Gary K, Enquobahrie A, Ibanez L, Cheng P, Yaniv Z, Cleary K, Kokoori S, Muffih B, Heidenreich J (2011) Agile methods for open source safety-critical software. Softw - Pract Exper 41(9):945–962
Ge X, Paige RF, McDermid JA (2010) An iterative approach for development of safety-critical software and safety arguments. The Agile Conference (AGILE), Orlando
Górski J, Łukasiewicz K (2012) Assessment of risks introduced to safety critical software by agile practices-a software engineer's perspective. Comput Therm Sci 13(4):165–182
Górski J, Łukasiewicz K (2013) Towards agile development of critical software. The International Workshop on Software Engineering for Resilient Systems
Gregor S (2006) The nature of theory in information systems. MIS Q 30(3):611–642
Grenning J (2001) Launching extreme programming at a process-intensive company. IEEE Softw 18(6):27
Hajou A, Batenburg R, Jansen S (2015a) An insight into the difficulties of software development projects in the pharmaceutical industry. Lect Notes Softw Eng 3(4):267
Hajou A, Batenburg R, Jansen S (2015b) Method æ, the agile software development method tailored for the pharmaceutical industry. Lect Notes Softw Eng 3(4):251
Heeager L (2012) Introducing agile practices in a documentation-driven software development practice: a case study. J Info Technol Case Appl Res 14(1):3–24
Heeager L, Nielsen PA (2009) Agile software development and its compatibility with a document-driven approach? A Case Study. The Australasian Conference on Information Systems, Melbourne
Heeager LT, Nielsen PA (2018) A conceptual model of agile software development in a safety-critical context: a systematic literature review. Inf Softw Technol 103:22–39
Jonsson H, Larsson S, Punnekkat S (2012) Agile Practices in Regulated Railway Software Development. The 23rd International Symposium on Software Reliability Engineering Workshops (ISSREW)
Karlström D, Runeson P (2006) Integrating agile software development into stage-gate managed product development. Empir Softw Eng 11:203–225
Kasauli R, Knauss E, Kanagwa B, Nilsson A, Calikli G (2018) Safety-Critical Systems and Agile Development: A Mapping Study. The 2018 44th Euromicro Conference on Software Engineering and Advanced Applications (SEAA)
Kuhrmann M, Diebold P, Münch J, Tell P, Garousi V, Felderer M, Trektere K, McCaffery F, Linssen O, Hanser E, Prause CR (2017) Hybrid Software and System Development in Practice: Waterfall, Scrum, and Beyond. Proceedings of the 2017 International Conference on Software and System Process
Lee G, Xia WD (2010) Toward agile: an integrated analysis of quantitative and qualitative field data on software development agility. MIS Q 34(1):87–114
Lin W, Fan X (2009) Software Development Practice for FDA-Compliant Medical Devices. International Joint Conference on Computational Sciences and Optimization (CSO), Hainan, Sanya
McCaffery F, Trektere K, Ozcan-Top O (2016) Agile–Is it Suitable for Medical Device Software Development? International Conference on Software Process Improvement and Capability Determination (SPICE), Dublin
McHugh M, McCaffery F, Casey V (2012) Barriers to Adopting Agile Practices When Developing Medical Device Software. International Conference on Software Process Improvement and Capability Determination, Plam de Mallorca, Spain
McHugh M, Cawley O, McCaffery F, Richardson I, Wang X (2013) An Agile V-Model for Medical Device Software Development to Overcome the Challenges with Plan-Driven Software Development Lifecycles. 5th International Workshop onSoftware Engineering in Health Care (SEHC), San Francisco
McHugh M, McCaffery F, Casey V (2014a) Adopting agile practices when developing software for use in the medical domain. J Softw-Evol Process 26(5):504–512
McHugh, M., McCaffery, F., & Coady, G. (2014b). An Agile Implementation within a Medical Device Software Organisation. International Conference on Software Process Improvement and Capability Determination, Vilnius, Lithuania
Mehrfard H, Pirzadeh H, Hamou-Lhadj A (2010) Investigating the capability of agile processes to support life-science regulations: the case of XP and FDA regulations with a focus on human factor requirements. In Software Engineering Research, Management and Applications 2010 (pp. 241-255): Springer
Misra S, Kumar V, Kumar U (2010) Identifying some critical changes required in adopting agile practices in traditional software development projects. Int J Qual Reliabil Manag 27(4):451–474
Myklebust T, Stålhane T (2016) Safety Stories–A New Concept in Agile Development. International Conference on Computer Safety, Reliability, and Security (SAFECOMP 2016)
Myklebust T, Stålhane T (2018) The Agile Safety Case: springer
Notander JP, Höst M, Runeson P (2013a) Challenges in flexible safety-critical software development–an industrial qualitative survey. International Conference on Product Focused Software Process Improvement, paphos, Cyprus
Notander JP, Runeson P, Höst M (2013b) A model-based framework for flexible safety-critical software development: a design study. The 28th Annual ACM Symposium on Applied Computing, Coimbra
Özcan-Top Ö, McCaffery F (2019) To what extent the medical device software regulations can be achieved with agile software development methods? XP—DSDM—scrum. J Supercomput:1-34
Paige RF, Chivers H, McDermid JA, Stephenson ZR (2005) High-integrity extreme programming. The ACM symposium on Applied computing, Santa Fe
Paige RF, Charalambous R, Ge X, Brooke PJ (2008) Towards agile engineering of high-integrity systems. International Conference on Computer Safety, Reliability, and Security, Newcastle upon Tyne
Rasmussen R, Hughes T, Jenks J, Skach J (2009) Adopting agile in an FDA regulated environment. Agile Conference (AGILE), Chigaco
Ronkainen J, Abrahamsson P (2003) Software development under stringent hardware constraints: Do agile methods have a chance? International Conference on Extreme Programming and Agile Processes in Software Engineering, New Orleans
Rottier PA, Rodrigues V (2008) Agile development in a medical device company. Agile Conference (AGILE), Toronto
Runeson P, Höst M (2009) Guidelines for conducting and reporting case study research in software engineering. Empir Softw Eng 14(2):131
Schwaber K, Beedle M (2001) Agile software development with scrum. Prentice Hall, Upper Saddle River
Shafiq S, Minhas NM (2014) Integrating formal methods in XP—A conceptual solution. J Softw Eng Appl 2014
Sidky A, Arthur J (2007) Determining the applicability of agile practices to mission and life-critical systems. Paper presented at the Software Engineering Workshop (SEW), Columbia
Spence J (2005) There has to be a better way![software development]. Paper presented at the Agile Development Conference (ADC'05), Denver
Stålhane T, Myklebust T, Hanssen G (2012) The application of safe scrum to IEC 61508 certifiable software. Paper presented at the European Safety and Reliability Conference (ESREL), Helsinki
U. S. Department of Health and Human Services (2010) FDA U.S. Food and Drug Administration. In: U.S. Department of Health and Human Services
Van Schooenderwoert N, Shoemaker B (2018) Agile methods for safety-critical systems: a primer using medical device example. CreateSpace Publishing, Scotts Valley
VanderLeest SH, Buter A (2009) Escape the waterfall: agile for aerospace. The 28th Digital Avionics Systems Conference, Orlanda
Vogel D (2006) Agile methods: Most are not ready for prime time in medical device software design and development. DesignFax Online:1–6
Walsham G (2006) Doing interpretive research. Eur J Inf Syst 15(3):320–330
Wang Y, Wagner S (2018) Combining STPA and BDD for safety analysis and verification in agile development: a controlled experiment. International Conference on Agile Software Development
Wang Y, Ramadani J, Wagner S (2017) An exploratory study on applying a scrum development process for safety-critical systems. International Conference on Product-Focused Software Process Improvement
Wäyrynen J, Bodén M, Boström G (2004) Security engineering and eXtreme programming: an impossible marriage? XP/Agile Universe 2004. LNCS 3134:117–128
Wils A, Van Baelen S, Holvoet T, De Vlaminck K (2006) Agility in the avionics software world. International Conference on Extreme Programming and Agile Processes in Software Engineering, Oulu
Wysocki RK (2011) Effective Project Management: traditional, agile. Wiley, Extreme
Yin RK (2009) Case study research: design and methods, vol 5. Sage Publications Inc., Thousand Oaks
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by: Per Runeson
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix 1 Interview Guides
Appendix 1 Interview Guides
Rights and permissions
About this article
Cite this article
Heeager, L.T., Nielsen, P.A. Meshing agile and plan-driven development in safety-critical software: a case study. Empir Software Eng 25, 1035–1062 (2020). https://doi.org/10.1007/s10664-020-09804-z
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10664-020-09804-z