Industrial Challenges with Quality Requirements in Safety Critical Software Systems

Budget constraints and the difficulty to specify quality requirements, such as reliability, robustness, and safety present challenges to many software companies in particular if they develop safety-critical systems. Failing to specify this type of requirements properly can lead to misunderstandings between the developers and the customers, which can threaten the quality of the system. However, little information is available on how companies currently work with these requirements. This paper describes the state of requirements engineering practice and identifies challenges with quality requirements by conducting a requirements analysis on two projects, including 980 requirements, at a company developing safety-critical systems. We also compare to similar results for a company developing end user software. Problematic and ambiguous requirements have caused misunderstandings with the customers and introduced late and project-critical costs to the projects. The results show that despite a high percentage of quality requirements at the company, the majority of these requirements are non-quantified, which potentially leads to lower verifiability, high ambiguity and can create late-project delays in verification and validation. Our study adds empirical evidence on the characteristics and challenges of real-world requirements engineering for safety-critical systems.

[1]  Tony Gorschek,et al.  Quality Requirements in Practice: An Interview Study in Requirements Engineering for Embedded Systems , 2009, REFSQ.

[2]  Martin Glinz,et al.  On Non-Functional Requirements , 2007, 15th IEEE International Requirements Engineering Conference (RE 2007).

[3]  Tony Gorschek,et al.  Prioritization of quality requirements: State of practice in eleven companies , 2011, 2011 IEEE 19th International Requirements Engineering Conference.

[4]  Erik Simmons Quantifying Quality Requirements Using Planguage , 2001 .

[5]  Ali Shahrokni,et al.  Towards a Framework for Specifying Software Robustness Requirements Based on Patterns , 2010, REFSQ.

[6]  Ali Shahrokni,et al.  A systematic review of software robustness , 2013, Inf. Softw. Technol..

[7]  Alistair Cockburn,et al.  Agile Software Development , 2001 .

[8]  Björn Regnell,et al.  An investigation of how quality requirements are specified in industrial practice , 2013, Inf. Softw. Technol..

[9]  Nancy G. Leveson,et al.  Safeware: System Safety and Computers , 1995 .

[10]  Julio Cesar Sampaio do Prado Leite,et al.  On Non-Functional Requirements in Software Engineering , 2009, Conceptual Modeling: Foundations and Applications.

[11]  Tony Gorschek,et al.  Quality Requirements in Industrial Practice—An Extended Interview Study at Eleven Companies , 2012, IEEE Transactions on Software Engineering.

[12]  Stephan Jacobs Introducing measurable quality requirements: a case study , 1999, Proceedings IEEE International Symposium on Requirements Engineering (Cat. No.PR00188).

[13]  Hareton K. N. Leung,et al.  Quality metrics for intranet applications , 2001, Inf. Manag..

[14]  ISO / IEC 25010 : 2011 Systems and software engineering — Systems and software Quality Requirements and Evaluation ( SQuaRE ) — System and software quality models , 2013 .

[15]  Martin Höst,et al.  The importance of quality requirements in software platform development-a survey , 2001, Proceedings of the 34th Annual Hawaii International Conference on System Sciences.