Skip to main content

Towards Evidence-Based Architectural Design for Safety-Critical Software Applications

  • Chapter
Architecting Dependable Systems IV

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4615))

Abstract

Robust software and system architectures have been increasingly recognised as one of the keys to improving dependability. However, most modern design methods and explanations of underlying design principles still remain ad hoc. The communication between design and safety assessment in practice is often characterised as an “over-the-wall” process. The problems are exacerbated by the uncertainty problem in the early development lifecycle. In this paper, we propose a Triple Peaks process framework, from which a system model, deviation model, mitigation model are proposed and linked together. The application of this framework is supported by the use of Bayesian Belief Networks and collation of relevant evidence. We elaborate the linkage between the three models by means of a case study. The central tenet in this paper is to address safety concerns based upon evidence available at an architectural level.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. ARP 4761: Guidelines and Methods for Conducting the Safety Assessment Process on Civil Airborne Systems and Equipment, Society of Automotive Engineers, Inc. (1996)

    Google Scholar 

  2. Australian Defence Standard Def(Aust) 5679: Procurement of Computer-based Safety Critical Systems, Australian Department of Defence (1998)

    Google Scholar 

  3. IEC 615038 – Functional Safety of Electrical/Electronic/Programmable Electronic Safety-Related Systems, International Electrotechnical Commission (1998)

    Google Scholar 

  4. Netica, Norsys Software Corp. (2006), http://www.norsys.com/

  5. RTCA/DO-178B: Software Considerations in Airborne Systems and Equipment Certification, Radio Technical Commission for Aeronautics (1992)

    Google Scholar 

  6. The United Modelling Language (UML) Specification. The Object Management Group (2005)

    Google Scholar 

  7. Achour, C.B., Rolland, C., Souveyet, C.: Guiding Goal Modelling Using Scenarios. IEEE Trans. on Software Engineering 24(2), 1055–1071

    Google Scholar 

  8. Alexander, I.: Misuse Cases: Use Cases with Hostile Intent. IEEE Software 20(1), 58–66

    Google Scholar 

  9. Allenby, K., Kelly, T.: Deriving Safety Requirements using Scenarios. In: RE 2001. The 5th IEEE International Symposium on Requirements Engineering, p. 228. IEEE Computer Society Press, Los Alamitos (2001)

    Google Scholar 

  10. Bachmann, F., Bass, L., Klein, M.: Deriving Architectural Tactics: A Step Toward Methodical Architectural Design, SEI (2003)

    Google Scholar 

  11. Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison Wesley, Reading, MA, USA (2003)

    Google Scholar 

  12. Boehm, B., Turner, R.: Balancing Agility and Discipline: A Guide for the Perplexed. Addison-Wesley Professional, Reading (2003)

    Google Scholar 

  13. Brandozzi, M., Perry, D.E.: From Goal-Oriented Requirements to Architectural Prescriptions: The Preskriptor Process. In: STRAW 2003. Proceedings of Third International Workshop From SofTware Requirements to Architectures, pp. 107–113 (2003)

    Google Scholar 

  14. Buhr, R.J.A., Casselman, R.S.: Use Case Maps for Object-Oriented Systems. Prentice-Hall, Englewood Cliffs (1996)

    MATH  Google Scholar 

  15. Clements, P.: Documenting software architectures: views and beyond. Addison-Wesley, Boston (2003)

    Google Scholar 

  16. Conklin, J., Begeman, M.L.: gIBIS: A Hypertext Tool for Exploratory Policy Discussion. ACM Transactions on OfficeInformation Systems 6(4), 303–331

    Google Scholar 

  17. Easterbrook, S., Lutz, R., Covington, R., Kelly, J., Ampo, Y., Hamilton, D.: Experiences Using Lightweight Formal Methods for Requirements Modeling. IEEE Trans. on Software Engineering 24(1), 4–14

    Google Scholar 

  18. Feather, M.S., Cornford, S.L.: Quantitative risk-based requirements reasoning. Requirements Engineering 8(4), 248–265

    Google Scholar 

  19. Fenelon, P., McDermid, J., Nicholson, M., Pumfrey, D.: Towards Integrated Safety Analysis and Design. ACM Computing Reviews 2(1), 21–32

    Google Scholar 

  20. Galliers, J., Sutcliffe, A., Minocha, S.: An impact analysis method for safety-critical user interface design. ACM Transactions on Computer-Human Interaction (TOCHI) 6(4), 341–369

    Google Scholar 

  21. Gregoriades, A., Sutcliffe, A.: Scenario-Based Assessment of Nonfunctional Requirements. IEEE Trans. on Software Engineering 31(5), 392–409

    Google Scholar 

  22. Gurp, J.v., Bosch, J.: SAABNet: Managing Qualitative Knowledge in Software Architecture Assessment. In: ECBS 2000. 7th IEEE International Symposium on Engineering of Computer-Based Systems, IEEE Computer Society, Los Alamitos (2000)

    Google Scholar 

  23. Hall, J., Jackson, M., Laney, R., Nuseibeh, B., Rapanotti, L.: Relating Software Requirements and Architectures using Problem Frames. In: Proceedings of the 10th International Conference on Requirements Engineering, IEEE Computer Society, Los Alamitos (2002)

    Google Scholar 

  24. Jacobson, I., Christerson, M., Jonsson, P., Oevergaard, G.: Object-Oriented Software Engineering: A Use Case Driven Approach. Addison Wesley, Reading, Mass (1992)

    MATH  Google Scholar 

  25. Jaynes, E.T.: Probability Theory: The Logic of Science. Cambridge University Press, Cambridge (2003)

    MATH  Google Scholar 

  26. Kelly, T.: Using Software Architecture Techniques to Support the Modular Certification of Safety-Critical Systems. In: Proceedings of Eleventh Australian Workshop on Safety-Related Programmable Systems (2006), http://www-users.cs.york.ac.uk/~tpk/scs2006.pdf

  27. Kelly, T.P.: Arguing Safety - A Systematic Approach to Safety Case Management Department of Computer Science, DPhil Thesis, University of York, York (1999)

    Google Scholar 

  28. Kirwan, B., Ainsworth, L.K. (eds.): A Guide to Task Analysis: The Task Analysis Working Group. Taylor & Francis, Abington (1992)

    Google Scholar 

  29. Lamsweerde, A.v.: Elaborating Security Requirements by Construction of Intentional Anti-Models. In: Proceedings of the 26th International Conference on Software Engineering, pp. 148–157. IEEE Computer Society, Los Alamitos (2004)

    Chapter  Google Scholar 

  30. Lamsweerde, A.v.: Goal-Oriented Requirements Engineering: A Guided Tour. In: Lamsweerde, A. (ed.) RE 2001. Proceedings of 5th IEEE International Symposium on Requirements Engineering, pp. 249–263. IEEE Press, Los Alamitos (2001)

    Google Scholar 

  31. Lamsweerde, A.v., Dardenne, A., Fickas, S.: Goal-directed Requirements Acquisition. Science of Computer Programming 20, 3–50

    Google Scholar 

  32. Lamsweerde, A.v., Letier, E.: Integrating Obstacles in Goal-Driven Requirements Engineering. In: Lamsweerde, A. (ed.) Proceedings of the 20th International Conference on Software Engineering, pp. 53–62. IEEE Computer Society Press / ACM Press, Los Alamitos (1998)

    Chapter  Google Scholar 

  33. Lemos, R.d., Saeed, A., Anderson, T.: On the Safety Analysis of Requirements Specifications. In: Proceedings of the 13th International Conference on Computer Safety, Reliability and Security, Instrument Society of America, pp. 217–227 (1994)

    Google Scholar 

  34. Leveson, N.G.: Intent Specifications: An Approach to Building Human-Centered Specifications. IEEE Trans. on Software Engineering 26(1), 15–35

    Google Scholar 

  35. Leveson, N.G.: Safeware: System Safety and Computers. Addison-Wesley, Reading (1995)

    Google Scholar 

  36. Leveson, N.G., Modugno, F., Reese, J.D., Partridge, K., Sandys, S.D.: Integrated Safety Analysis of Requirements Specifications. In: Proceedings: 3rd International Conference on Requirements Engineering (1997)

    Google Scholar 

  37. Lyu, M.R. (ed.): Handbook of Software Reliability Engineering. McGraw-Hill, New York (1996)

    Google Scholar 

  38. McDermid, J.A.: Software Safety: Where’s the Evidence? In: McDermid, J.A. (ed.) SCS 2001. The 6th Australian Workshop on IndustrialExperience with Safety Critical Systems and Software (Brisbane, 2001), Australian Computer Society (2001)

    Google Scholar 

  39. Morgan, C.: Of Probabilistic Wp and SP-and Compositionality. In: Symposium on the Occasion of 25 Years of CSP, pp. 220–241. Springer, London (2004)

    Google Scholar 

  40. Mylopoulos, J., Chung, L.: B.N. Representing and Using Non-Functional Requirements:A Process-Oriented Approach. IEEE Trans. on Software Engineering 18(6), 497–497

    Google Scholar 

  41. Nuseibeh, B.: Weaving Together Requirements and Architectures. IEEE Computer 34(3), 115–114

    Google Scholar 

  42. Nuseibeh, B., Kramer, J., Finkelstein, A.: Expressing the relationships between multiple views in requirements specification. In: Proceedings of the 15th international conference on Software Engineering, pp. 187–196. IEEE Computer Society Press, Los Alamitos (1993)

    Chapter  Google Scholar 

  43. Parnas, D.L., Clements, P.C.A: rational design process: How and why to fake it. IEEE Trans. on Software Engineering 12(2), 251–257

    Google Scholar 

  44. Pearl, J.: Causality: models, reasoning, and inference. Cambridge University Press, Cambridge (2000)

    MATH  Google Scholar 

  45. Potts, C., Antón, A.I.: Inquiry-based Requirements Analysis. IEEE Software. 21–32.

    Google Scholar 

  46. Ramesh, B., Dhar, V.: Supporting systems development by capturing deliberations during requirements engineering. IEEE Trans. on Software Engineering 18(6), 498–510

    Google Scholar 

  47. Reason, J.: Human Error. Cambridge University Press, Cambridge (1990)

    Google Scholar 

  48. Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, Englewood Cliffs (1996)

    MATH  Google Scholar 

  49. Stamatelatos, M., Apostolakis, G., Dezfuli, H., Everline, C., Guarro, S., Moieni, P., Mosleh, A., Paulos, T., Youngblood, R.: Probabilistic Risk Assessment Procedures Guide for NASA Managers and Practitioners, NASA Office of Safety and Mission Assurance (2002)

    Google Scholar 

  50. The SERENE Partners: CSR, E., ERA, OT, TUV. The SERENE Method Manual SafEty and Risk Evaluation using bayesian NEts: SERENE, ERA Technology Ltd. (1999)

    Google Scholar 

  51. Vesely, W.E.: Fault Tree Handbook. Nuclear Regulatory Commission (1987)

    Google Scholar 

  52. Wu, W., Kelly, T.: Deriving Safety Requirements as Part of System Architecture Definition. In: Proceedings of 24th International System Safety Conference, System Safety Society (2006)

    Google Scholar 

  53. Wu, W., Kelly, T.: Failure Modelling in Software Architecture Design for Safety. SIGSOFT Softw. Eng. Notes 30(4), 1–7

    Google Scholar 

  54. Wu, W., Kelly, T.: Managing Architectural Design Decisions for Safety-Critical Software Systems. In: Proceedings of the 2nd International Conference on the Quality of Software Architectures, Springer, Heidelberg (2006)

    Google Scholar 

  55. Wu, W., Kelly, T.: Safety Tactics for Software Architecture Design. In: Proceedings of the 28th International Computer Software and Applications Conference, IEEE Computer Society, Los Alamitos (2004)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Rogério de Lemos Cristina Gacek Alexander Romanovsky

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Wu, W., Kelly, T. (2007). Towards Evidence-Based Architectural Design for Safety-Critical Software Applications. In: de Lemos, R., Gacek, C., Romanovsky, A. (eds) Architecting Dependable Systems IV. Lecture Notes in Computer Science, vol 4615. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-74035-3_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-74035-3_17

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-74033-9

  • Online ISBN: 978-3-540-74035-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics