Employing resilience engineering in eliciting software requirements for complex systems: experiments with the functional resonance analysis method (FRAM)

Resilience engineering provides concepts and methods for assessing the ability of socio-technical systems to adjust their functioning before, during, or after changes or disturbances. As such, this field of study has great potential to contribute to software engineering—particularly for the requirements specification for information systems—that deals with variability, unpredictability, and adaptation in complex contexts. Despite software engineers’ efforts, the requirements phase is still challenging, especially in complex socio-technical systems. In these systems, the software must be more resilient and adaptable to deal with uncertain situations. Thus, this study aimed to investigate the contributions of resilience engineering to requirements engineering to identify software requirements for complex systems. Two experiments were performed with software professionals to produce requirements specifications in healthcare. The participants used information from the functional resonance analysis method (FRAM) compared to business process modeling notation (BPMN). Both experiments were supported by a systematic approach called MacKnight. This study indicates innovative strategies to gather resilient software requirements from FRAM models for complex systems.

[1]  Isaac José Antonio Luquetti dos Santos,et al.  Nuclear power plant shift supervisor's decision making during microincidents , 2005 .

[2]  David Woods,et al.  Basic Patterns in How Adaptive Systems Fail , 2017 .

[3]  Rogier Woltjer,et al.  The Alaska Airlines Flight 261 accident : A systemic analysis of functional resonance , 2007 .

[4]  Luciana C. Ballejos,et al.  Quality Properties Evaluation for Software Requirements Specifications: An Exploratory Analysis , 2013, WER.

[5]  Wil M. P. van der Aalst,et al.  Declarative workflows: Balancing between flexibility and support , 2009, Computer Science - Research and Development.

[6]  Frédéric Vanderhaegen,et al.  Can dissonance engineering improve risk analysis of human–machine systems? , 2017, Cognition, Technology & Work.

[7]  Paulo Victor Rodrigues de Carvalho,et al.  The use of Functional Resonance Analysis Method (FRAM) in a mid-air collision to understand some characteristics of the air traffic management system resilience , 2011, Reliab. Eng. Syst. Saf..

[8]  William Wilson,et al.  Automated quality analysis of Natural Language requirement specifications , 1996 .

[9]  Karl E. Wiegers,et al.  Writing quality requirements , 1999 .

[10]  Erik Hollnagel,et al.  Joint Cognitive Systems: Foundations of Cognitive Systems Engineering , 2005 .

[11]  E. Hollnagel,et al.  Where the rubber meets the road: using FRAM to align work-as-imagined with work-as-done when implementing clinical guidelines , 2015, Implementation Science.

[12]  Rjoè,et al.  Activity theory as a framework for analyzing and redesigning work , 2005 .

[13]  R. Likert “Technique for the Measurement of Attitudes, A” , 2022, The SAGE Encyclopedia of Research Design.

[14]  Karen Holtzblatt,et al.  Contextual design , 1997, INTR.

[15]  Charles B. Keating,et al.  System requirements engineering in complex situations , 2012, Requirements Engineering.

[16]  David W. Bates,et al.  Reducing the frequency of errors in medicine using information technology. , 2001, Journal of the American Medical Informatics Association : JAMIA.

[17]  Ian Sommerville,et al.  Socio-technical systems: From design methods to systems engineering , 2011, Interact. Comput..

[18]  Pedro N. P. Ferreira,et al.  Assessing operational impacts of automation using functional resonance analysis method , 2019, Cognition, Technology & Work.

[19]  Hans Eriksson,et al.  Business Modeling With UML: Business Patterns at Work , 2000 .

[20]  Catherine M. Burns,et al.  Contributions from cognitive engineering to requirements specifications for complex sociotechnical systems: A case study in the context of healthcare in Brazil , 2018, Human Factors and Ergonomics in Manufacturing & Service Industries.

[21]  Riccardo Patriarca,et al.  Resilience Engineering: current status of the research and future challenges , 2018 .

[22]  Erik Hollnagel,et al.  Barriers And Accident Prevention , 2004 .

[23]  J.K.J. van der Vorm,et al.  Images Of Resilience: The Resilience Analysis Grid Applicable At Several Organizational Levels? , 2011 .

[24]  Anthony Finkelstein,et al.  Requirements engineering: a review and research agenda , 1994, Proceedings of 1st Asia-Pacific Software Engineering Conference.

[25]  Walter Schön,et al.  Interdisciplinary safety analysis of complex socio-technological systems based on the functional resonance accident model: An application to railway trafficsupervision , 2011, Reliab. Eng. Syst. Saf..

[26]  Ian Sommerville,et al.  Integrated requirements engineering: a tutorial , 2005, IEEE Software.

[27]  Luciana C. Ballejos,et al.  Software Requirements Quality Evaluation: State of the art and research challenges , 2013 .

[28]  J. J. Carr Requirements engineering and management: the key to designing quality complex systems , 2000 .

[29]  John P. T. Mo,et al.  System Hazard Analysis of a Complex Socio-Technical System : The Functional Resonance Analysis Method in Hazard Identification , 2014 .

[30]  Stefan Wagner,et al.  Naming the pain in requirements engineering: design of a global family of surveys and first results from Germany , 2013, EASE '13.

[31]  M. Jarke,et al.  A proposal for a scenario classification framework , 1998, Requirements Engineering.

[32]  John Mylopoulos,et al.  GaiusT: supporting the extraction of rights and obligations for regulatory compliance , 2013, Requirements Engineering.

[33]  Gesa Praetorius,et al.  Modelling Vessel Traffic Service to understand resilience in everyday operations , 2015, Reliab. Eng. Syst. Saf..

[34]  Luigi Macchi,et al.  A Resilience Engineering approach for the evaluation of performance variability: development and application of the Functional Resonance Analysis Method for air traffic management safety assessment , 2010 .

[35]  Miha Mraz,et al.  Towards the Declaration of Inter-Functional Protocol for FRAM , 2019, 2019 Annual Reliability and Maintainability Symposium (RAMS).

[36]  Erik Hollnagel,et al.  Learning How To Create Resilience In Business Systems , 2006 .

[37]  Kyo Chul Kang,et al.  Issues in Requirements Elicitation , 1992 .

[38]  Mahdi Derakhshanmanesh,et al.  Requirements-driven incremental adoption of variability management techniques and tools: an industrial experience report , 2013, Requirements Engineering.

[39]  Catherine M. Burns,et al.  Designing for patient risk assessment in primary health care: a case study for ergonomic work analysis , 2015, Cognition, Technology & Work.

[40]  E. Hollnagel FRAM: The Functional Resonance Analysis Method: Modelling Complex Socio-technical Systems , 2012 .

[41]  Vimla L. Patel,et al.  Cognitive and usability engineering methods for the evaluation of clinical information systems , 2004, J. Biomed. Informatics.

[42]  Erik Hollnagel,et al.  Resilience Engineering in Practice: A Guidebook , 2012 .

[43]  Renato José Bonfatti,et al.  ACOLHIMENTO COM CLASSIFICAÇÃO DE RISCO EM SAÚDE DA FAMÍLIA: UMA ABORDAGEM PARA APOIAR A TOMADA DE DECISÃO , 2014 .

[44]  Erik Hollnagel,et al.  Safety-I and Safety-II: The Past and Future of Safety Management , 2014 .

[45]  Ivy Hooks,et al.  WRITING GOOD REQUIREMENTS , 1994 .

[46]  Robert R. Hoffman,et al.  Using cognitive task analysis to explore issues in the procurement of intelligent decision support systems , 2008, Cognition, Technology & Work.

[47]  Venkataraman Ramesh,et al.  Improving information requirements determination: a cognitive perspective , 2002, Inf. Manag..

[48]  Francesco Costantino,et al.  Resilience engineering for socio-technical risk analysis: Application in neuro-surgery , 2018, Reliab. Eng. Syst. Saf..

[49]  A. Blenkinsopp,et al.  Gaps, traps, bridges and props: a mixed-methods study of resilience in the medicines management system for patients with heart failure at hospital discharge , 2019, BMJ Open.

[50]  Stefania Gnesi,et al.  The linguistic approach to the natural language requirements quality: benefit of the use of an automatic tool , 2001, Proceedings 26th Annual NASA Goddard Software Engineering Workshop.

[51]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2012, Springer Berlin Heidelberg.

[52]  C. Burns,et al.  Gatekeeper family doctors operating a decentralized referral prioritization system: Uncovering improvements in system resilience through a grounded-based approach , 2020 .

[53]  Robert L. Wears,et al.  Managing medicines management: organisational resilience in community pharmacies , 2015 .

[54]  Tarcisio Abreu Saurin,et al.  Towards a Resilient and Lean Health Care , 2016 .

[55]  David Woods,et al.  Resilience Engineering: Concepts and Precepts , 2006 .

[56]  L. Kohn,et al.  To Err Is Human : Building a Safer Health System , 2007 .

[57]  Daniel M. Berry,et al.  The impact of domain knowledge on the effectiveness of requirements engineering activities , 2016, Empirical Software Engineering.

[58]  Klaus A. Kuhn,et al.  A Strategic Approach for Business-IT Alignment in Health Information Systems , 2003, OTM.

[59]  O. Fernando Engenharia de Software , 2006 .

[60]  Kelly Grindrod,et al.  Information Technology Systems at the sharp end of medication therapy management , 2019, Proceedings of the Human Factors and Ergonomics Society Annual Meeting.

[61]  Jeffrey Braithwaite,et al.  Conclusion: the road ahead: where should we go now to improve healthcare quality in acute settings? , 2019, International journal for quality in health care : journal of the International Society for Quality in Health Care.

[62]  Christian Denger,et al.  Quality Assurance in Requirements Engineering , 2005 .

[63]  Barbara Odenthal,et al.  Cognitive Engineering of Automated Assembly Processes , 2014 .

[64]  David Woods,et al.  Incidents – Markers of Resilience or Brittleness? , 2017 .

[65]  John Mylopoulos,et al.  Tropos: A Framework for Requirements-Driven Software Development , 2000 .

[66]  Marc Werfs,et al.  Stepping into the clouds: enabling companies to adapt their capabilities to cloud computing to succeed under uncertain conditions , 2016 .

[67]  Erik Kamsties,et al.  Higher quality requirements specifications through natural language patterns , 2003, Proceedings 2003 Symposium on Security and Privacy.

[68]  Anne Hoffmann,et al.  Collaboration and Intercultural Issues on Requirements:Communication, Understanding and Softskills (CIRCUS) , 2009, 2009 Collaboration and Intercultural Issues on Requirements: Communication, Understanding and Softskills.

[69]  Nancy G. Leveson,et al.  A new accident model for engineering safer systems , 2004 .

[70]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2000, The Kluwer International Series in Software Engineering.

[71]  Alan M. Davis,et al.  Identifying and measuring quality in a software requirements specification , 1993, [1993] Proceedings First International Software Metrics Symposium.

[72]  Dhirendra Pandey,et al.  An Effective Requirement Engineering Process Model for Software Development and Requirements Management , 2010, 2010 International Conference on Advances in Recent Technologies in Communication and Computing.

[73]  Gary Klein,et al.  Working Minds: A Practitioner's Guide to Cognitive Task Analysis , 2006 .

[74]  J. Braithwaite,et al.  Health care as a complex adaptive system , 2013 .