A methodology for designing and dimensioning critical complex computing systems
Gérard Le Lann · 2002
It is widely recognized that real-time, fault-tolerant and distributed computing technologies play a key role in the deployment of many current and future (civilian or defense) critical and complex applications. Computing systems needed to support such applications are referred to as C/sup 3/ systems. Lack of a clear identification of those issues involved with designing and dimensioning C/sup 3/ systems can only lead to failures, as recently demonstrated by a number of sizeable projects that have been aborted or suspended in Europe and in the USA, in various application domains. The paper describes a systems engineering methodology that, given some specificationof a particular systems engineering problem, permits to develop a specificationof a C/sup 3/ system such thatprobably satisfies. It is explicitly assumed thatincludes arbitrarily stringent timeliness requirements, arbitrary distribution requirements as well as arbitrarily stringent dependability requirements. Moving fromtoinvolves some number of design stages and one final dimensioning stage. It is shown how to verify whether every single design decision satisfies the logical part ofas well as whether a dimensioning decision satisfies the physical part of. This methodology is fully orthogonal to formal specification methods or formal software engineering methods currently in use. It does not rest on any particular programming language either.