Arguing safety with Problem Oriented Software Engineering

Standards demand that assurance cases support safety critical developments. It is widely acknowledged, however, that the current practice of post-hoc assurance-that the product is built and only then argued for safety-leads to many engineering process deficiencies, extra expense, and poorer products. This paper argues how the problem oriented software engineering framework can be used in the concurrent design of a safe product and its safety case, by which these deficiencies can be addressed. The basis of the paper is a real development, undertaken by the second author of this paper, of safety-related subsystems flying in real aircraft. The case study retains all essential detail and complexity.

[1]  Axel van Lamsweerde,et al.  Requirements engineering in the year 00: a research perspective , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[2]  Daniel Gross,et al.  From Non-Functional Requirements to Design through Patterns , 2001, Requirements Engineering.

[3]  Douglas R. Smith Comprehension by Derivation , 2005, IWPC.

[4]  Betty H. C. Cheng,et al.  A general framework for formalizing UML with formal languages , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[5]  Anthony Finkelstein,et al.  A UML profile to support requirements engineering with KAOS , 2002 .

[6]  Jon G. Hall,et al.  Problem Oriented Software Engineering: A design-theoretic framework for software engineering , 2007, Fifth IEEE International Conference on Software Engineering and Formal Methods (SEFM 2007).

[7]  Jon G. Hall,et al.  Developing critical systems with PLD components , 2005, FMICS '05.

[8]  Natarajan Shankar,et al.  PVS: A Prototype Verification System , 1992, CADE.

[9]  S. Toulmin The uses of argument , 1960 .

[10]  Heather Goldsby,et al.  A visualization framework for the modeling and formal analysis of high assurance systems , 2006, MoDELS'06.

[11]  Karl Cox,et al.  A roadmap of problem frames research , 2005, Inf. Softw. Technol..

[12]  Shari Lawrence Pfleeger,et al.  Workshop on Assurance Cases: Best Practices, Possible Obstacles, and Future Opportunities , 2004, DSN.

[13]  John C. Knight,et al.  The essential synthesis of problem frames and assurance cases , 2008, Expert Syst. J. Knowl. Eng..

[14]  John A. McDermid Defence Standard 00-56 Issue 3 , 2005 .

[15]  Carroll Morgan,et al.  Programming from specifications , 1990, Prentice Hall International Series in computer science.

[16]  Stephen Fickas,et al.  Goal-Directed Requirements Acquisition , 1993, Sci. Comput. Program..

[17]  Jon G. Hall,et al.  Towards Normal Design for Safety-Critical Systems , 2007, FASE.

[18]  Betty H. C. Cheng,et al.  Facilitating the construction of specification pattern-based properties , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[19]  Michael A. Jackson,et al.  Problem Frames - Analysing and Structuring Software Development Problems , 2000 .

[20]  S. C. Kleene,et al.  Introduction to Metamathematics , 1952 .

[21]  Sam Supakkul,et al.  Capturing and Reusing Functional and Non-functional Requirements Knowledge: A Goal-Object Pattern Approach , 2006, 2006 IEEE International Conference on Information Reuse & Integration.

[22]  Jon G. Hall,et al.  Safety Process Improvement with POSE and Alloy , 2007, SAFECOMP.

[23]  Hassan Gomaa,et al.  Knowledge-Based Automation of a Design Method for Concurrent Systems , 2002, IEEE Trans. Software Eng..

[24]  Andrew Martin,et al.  Improving Angel's Parallel Operator: Gumtree's Approach , 1997 .

[25]  Jane Cleland-Huang,et al.  Softgoal Traceability Patterns , 2006, 2006 17th International Symposium on Software Reliability Engineering.

[26]  Jan Jürjens Using UMLsec and goal trees for secure systems development , 2002, SAC '02.

[27]  Henry Muccini,et al.  CHARMY: an extensible tool for architectural analysis , 2005, ESEC/FSE-13.

[28]  Tim Kelly,et al.  Achieving Integrated Process and Product Safety Arguments , 2007, SSS.

[29]  W E Vesely,et al.  Fault Tree Handbook , 1987 .

[30]  Ralph-Johan Back,et al.  Trace Refinement of Action Systems , 1994, CONCUR.

[31]  John Mylopoulos,et al.  UML for Agent-Oriented Software Development: The Tropos Proposal , 2001, UML.

[32]  Tim Kelly A Systematic Approach to Safety Case Management , 2004 .

[33]  Jon G. Hall,et al.  A problem-oriented approach to normal design for safety-critical systems , 2007 .

[34]  Jaelson Brelaz de Castro,et al.  Closing the GAP between organizational requirements and object oriented modeling , 2000, J. Braz. Comput. Soc..

[35]  Johan Lilius,et al.  vUML: a tool for verifying UML models , 1999, 14th IEEE International Conference on Automated Software Engineering.

[36]  Betty H. C. Cheng,et al.  Object analysis patterns for embedded systems , 2004, IEEE Transactions on Software Engineering.

[37]  Jing Wang,et al.  Analysis of secure design patterns: a case study in e-commerce system , 2005, Third ACIS Int'l Conference on Software Engineering Research, Management and Applications (SERA'05).