Deriving Architectural Flexibility Requirements in Safety-Critical Systems
IEE Proceedings in Software 152(4), August 2005, pp143-152
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 we describe and evaluate an analysis technique that the designer can apply when faced with potential requirements problems. 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. Our 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.