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.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
References
ARP 4761: Guidelines and Methods for Conducting the Safety Assessment Process on Civil Airborne Systems and Equipment, Society of Automotive Engineers, Inc. (1996)
Australian Defence Standard Def(Aust) 5679: Procurement of Computer-based Safety Critical Systems, Australian Department of Defence (1998)
IEC 615038 – Functional Safety of Electrical/Electronic/Programmable Electronic Safety-Related Systems, International Electrotechnical Commission (1998)
Netica, Norsys Software Corp. (2006), http://www.norsys.com/
RTCA/DO-178B: Software Considerations in Airborne Systems and Equipment Certification, Radio Technical Commission for Aeronautics (1992)
The United Modelling Language (UML) Specification. The Object Management Group (2005)
Achour, C.B., Rolland, C., Souveyet, C.: Guiding Goal Modelling Using Scenarios. IEEE Trans. on Software Engineering 24(2), 1055–1071
Alexander, I.: Misuse Cases: Use Cases with Hostile Intent. IEEE Software 20(1), 58–66
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)
Bachmann, F., Bass, L., Klein, M.: Deriving Architectural Tactics: A Step Toward Methodical Architectural Design, SEI (2003)
Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison Wesley, Reading, MA, USA (2003)
Boehm, B., Turner, R.: Balancing Agility and Discipline: A Guide for the Perplexed. Addison-Wesley Professional, Reading (2003)
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)
Buhr, R.J.A., Casselman, R.S.: Use Case Maps for Object-Oriented Systems. Prentice-Hall, Englewood Cliffs (1996)
Clements, P.: Documenting software architectures: views and beyond. Addison-Wesley, Boston (2003)
Conklin, J., Begeman, M.L.: gIBIS: A Hypertext Tool for Exploratory Policy Discussion. ACM Transactions on OfficeInformation Systems 6(4), 303–331
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
Feather, M.S., Cornford, S.L.: Quantitative risk-based requirements reasoning. Requirements Engineering 8(4), 248–265
Fenelon, P., McDermid, J., Nicholson, M., Pumfrey, D.: Towards Integrated Safety Analysis and Design. ACM Computing Reviews 2(1), 21–32
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
Gregoriades, A., Sutcliffe, A.: Scenario-Based Assessment of Nonfunctional Requirements. IEEE Trans. on Software Engineering 31(5), 392–409
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)
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)
Jacobson, I., Christerson, M., Jonsson, P., Oevergaard, G.: Object-Oriented Software Engineering: A Use Case Driven Approach. Addison Wesley, Reading, Mass (1992)
Jaynes, E.T.: Probability Theory: The Logic of Science. Cambridge University Press, Cambridge (2003)
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
Kelly, T.P.: Arguing Safety - A Systematic Approach to Safety Case Management Department of Computer Science, DPhil Thesis, University of York, York (1999)
Kirwan, B., Ainsworth, L.K. (eds.): A Guide to Task Analysis: The Task Analysis Working Group. Taylor & Francis, Abington (1992)
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)
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)
Lamsweerde, A.v., Dardenne, A., Fickas, S.: Goal-directed Requirements Acquisition. Science of Computer Programming 20, 3–50
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)
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)
Leveson, N.G.: Intent Specifications: An Approach to Building Human-Centered Specifications. IEEE Trans. on Software Engineering 26(1), 15–35
Leveson, N.G.: Safeware: System Safety and Computers. Addison-Wesley, Reading (1995)
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)
Lyu, M.R. (ed.): Handbook of Software Reliability Engineering. McGraw-Hill, New York (1996)
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)
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)
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
Nuseibeh, B.: Weaving Together Requirements and Architectures. IEEE Computer 34(3), 115–114
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)
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
Pearl, J.: Causality: models, reasoning, and inference. Cambridge University Press, Cambridge (2000)
Potts, C., Antón, A.I.: Inquiry-based Requirements Analysis. IEEE Software. 21–32.
Ramesh, B., Dhar, V.: Supporting systems development by capturing deliberations during requirements engineering. IEEE Trans. on Software Engineering 18(6), 498–510
Reason, J.: Human Error. Cambridge University Press, Cambridge (1990)
Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, Englewood Cliffs (1996)
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)
The SERENE Partners: CSR, E., ERA, OT, TUV. The SERENE Method Manual SafEty and Risk Evaluation using bayesian NEts: SERENE, ERA Technology Ltd. (1999)
Vesely, W.E.: Fault Tree Handbook. Nuclear Regulatory Commission (1987)
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)
Wu, W., Kelly, T.: Failure Modelling in Software Architecture Design for Safety. SIGSOFT Softw. Eng. Notes 30(4), 1–7
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)
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)
Author information
Authors and Affiliations
Editor information
Rights 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)