Model-Based System Engineering In Use

The development of embedded computer systems has long been plagued by costly problems in integration and evolution. What are the causes of these problems?

One recent study by the Committee on Certifiably Dependable Software Systems of the National Academy of Sciences (NAS) observes that two key contributors are (1) simplicity in software architecture and (2) the environment with which it interacts.* These two factors can work together to vex embedded systems development. One large defense contractor observes that the combination of ambiguous representation for system behaviors and constraints and nonstandard models increases complexity in embedded system development. This organization suggests that increased complexity can decrease productivity to six lines of code or less per programmer day.

Model-based engineering (MBE) tools address both factors. The Architecture Analysis & Design Language (AADL), for example, allows analysis

  • early and often during system design or when upgrading existing system architecture
  • at different architecture refinement levels as information becomes available
  • along diverse architectural aspects such as behavior and throughput

Furthermore, the AADL enables system designers to model a system that is human readable and machine processable. The AADL, in that way, ensures unambiguous semantics of models that can be automatically checked for critical properties.

For information on AADL experiences, go to