Modeling real-time distributed software systems

Bran Selić · 2002

The "architecture" of a software system refers to its highest-level modular decomposition and the interrelationship patterns between its modules. An architecture serves as a blueprint for implementation and also as the chief determinant of a system's ability to evolve. Consequently, there is an increased interest in methods for specifying and validating software architectures. One such method is based on the ROOM (Real-time Object-Oriented Modeling) language, which combines the object paradigm with modeling abstractions devised specifically for distributed real-time software. To overcome the treacherous "architectural decay" phenomenon, whereby, over time, software diverges increasingly from its specification, ROOM formally constrains the implementation to its architectural specification. This is achieved primarily through full automated code generation, a technique that is particularly challenging in real-time applications where stringent performance and memory requirements are the norm.

Read the paper · More papers on PaperTik