Deriving architectural flexibility requirements in safety-critical systems

Safety-critical embedded systems are constrained by safety regulations that require the designers of the system to explain its operation. This includes the operation of any flexibility mechanisms present in the design, and the rationale for their inclusion. The ability to place such flexibility where it is most needed is a crucial factor in reducing the cost and risk of safety-critical system development. In this paper an analysis technique that the designer can apply when faced with potential requirements problems is described and evaluated. The technique derives flexibility requirements from indicators of customer uncertainty in the way the requirement is expressed. This allows the designer to quickly describe the required flexibility in the architecture and proceed with design even when the requirement is expected to change. The evaluation shows a significant improvement in the ability of a design to manage change when it contains flexibility that is targeted using the uncertainty analysis technique, compared with flexibility that is generated through more conventional means.

[1]  Robert L. Nord,et al.  Applied Software Architecture , 1999, Addison Wesley object technology series.

[2]  David M. Weiss,et al.  Software Product-Line Engineering: A Family-Based Software Development Process , 1999 .

[3]  Gruia-Catalin Roman,et al.  A taxonomy of current issues in requirements engineering , 1985, Computer.

[4]  Bashar Nuseibeh,et al.  Lightweight validation of natural language requirements: a case study , 2000, Proceedings Fourth International Conference on Requirements Engineering. ICRE 2000. (Cat. No.98TB100219).

[5]  Tony Moynihan Coping with 'requirements-uncertainty': The theories-of-action of experienced IS project managers , 2000, IRMA Conference.

[6]  Bashar Nuseibeh,et al.  Making inconsistency respectable in software development , 2001, J. Syst. Softw..

[7]  Anthony Finkelstein,et al.  Requirements stability assessment using scenarios , 2003, Proceedings. 11th IEEE International Requirements Engineering Conference, 2003..

[8]  Gordon B. Davis,et al.  Strategies for Information Requirements Determination , 1982, IBM Syst. J..

[9]  Jeremy Dick,et al.  Requirements Engineering , 2002, Springer International Publishing.

[10]  Timo Saarinen,et al.  Managing the risks of information systems implementation , 1993 .

[11]  Axel van Lamsweerde,et al.  From System Goals to Software Architecture , 2003, SFM.

[12]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[13]  Jan Stage,et al.  Complexity and uncertainty in software design , 1990, COMPEURO'90: Proceedings of the 1990 IEEE International Conference on Computer Systems and Software Engineering@m_Systems Engineering Aspects of Complex Computerized Systems.