Software Engineering (Workshops), pp. 493–499
Software-intensive systems that perform safety-critical tasks are increasingly prevalent and pervasive in today's world. Driven by the incessant increase in the number of integrated control units, communication systems and software, managing architectural complexity, let alone mastering it, is becoming an increasingly difficult task. Safety standards recommend (if not dictate) performing many analyses during the concept phase of development as well as the early adoption of multiple measures at the architectural design level, most of which has become part of the day-today business of safety-critical development, yet has to receive adequate tool support. This is particularly true if one wishes to front-load these aspects into an integrated solution environment, in which these (mostly) repetitive tasks can be automated. Model-based development techniques are increasingly used and well suited for these parameters. Combining argumentation logic used for safety cases and safety concepts with abstract reasoning using model-based system description I argue about architectural optimization for safety-critical development. My approach allows reasoning about the system through the use of compositional description, which integrates physical environment models with system functional description models, and links problem-solving patterns with component model libraries which include nominal as well as faulty behavior.