Guiding assurance of architectural design patterns for critical applications

Abstract Development of critical systems nowadays is hardly achievable without reuse of previous knowledge. Design patterns have an important role in the design of such systems as they define and document common solutions to recurring design problems. However, critical systems such as those that are safety or security related, often require specific assurances that the system is adequate to operate in a given environment. Just as with any other reused knowledge in such systems, the reuse via application of design patterns needs to be assured every time. In this paper, we present a methodology for assuring the application of design patterns in critical domains. In particular, we enrich the design patterns template to support their further assurance. We define the aspects that should be tackled during the assurance of a design pattern application. We use the information specified in the design pattern template to guide the automated instantiation of the argumentation for each design pattern application in the system. We provide tool-support for our methodology in the context of the AMASS tool-platform and evaluate it in an automotive case study.

[1]  Christoph Schmittner,et al.  Systematic Pattern Approach for Safety and Security Co-engineering in the Automotive Domain , 2017, SAFECOMP.

[2]  Muhammad Atif Javed,et al.  Get EPF Composer back to the future: A trip from Galileo to Photon after 11 years , 2018 .

[3]  Hans A. Hansson,et al.  A method to generate reusable safety case argument-fragments from compositional safety analysis , 2017, J. Syst. Softw..

[4]  Barbara Gallina,et al.  Assuring Degradation Cascades of Car Platoons via Contracts , 2017, SAFECOMP Workshops.

[5]  Bruce P. Douglass,et al.  Doing hard time: developing real-time systems with uml , 1999 .

[6]  Jon Perez,et al.  Supporting pattern-based dependability engineering via model-driven development: Approach, tool-support and empirical validation , 2016, J. Syst. Softw..

[7]  Alberto L. Sangiovanni-Vincentelli,et al.  Contracts for System Design , 2018, Found. Trends Electron. Des. Autom..

[8]  Brahim Hamid,et al.  Process and tool support for design patterns with safety requirements , 2013, EuroPLoP.

[9]  Martin A. Skoglund,et al.  The AMASS Approach for Assurance and Certification of Critical Systems , 2019 .

[10]  HamidBrahim,et al.  Supporting pattern-based dependability engineering via model-driven development , 2016 .

[11]  Bruce Powel Douglass Agile Systems Engineering , 2015 .

[12]  Ralph E. Johnson,et al.  Patterns Generate Architectures , 1994, ECOOP.

[13]  Stefan Kowalewski,et al.  Design Pattern Representation for Safety-Critical Embedded Systems , 2009, J. Softw. Eng. Appl..

[14]  Alessandro Cimatti,et al.  Contracts-refinement proof system for component-based embedded systems , 2015, Sci. Comput. Program..

[15]  Markus Schumacher,et al.  Security Engineering with Patterns: Origins, Theoretical Models, and New Applications , 2003 .

[16]  Christopher Preschern,et al.  Building a safety architecture pattern system , 2015, EuroPLoP '13.

[17]  Christopher Preschern,et al.  Security analysis of safety patterns , 2013 .

[18]  Iain Bate,et al.  Deriving Safety Contracts to Support Architecture Design of Safety Critical Systems , 2015, 2015 IEEE 16th International Symposium on High Assurance Systems Engineering.

[19]  Neelam Soundarajan,et al.  Responsibilities and rewards: specifying design patterns , 2004, Proceedings. 26th International Conference on Software Engineering.