1. Overview of design methods, ADARTS and CFODARTS. The terminology. The evolution of design software methods: RTSAD- 9 structured analysis and design for real time), DARTS, JSD. Object oriented design.
2. Analysis and modeling of parallel systems and RT systems. The system decomposition, behavioral system description, behavioral analysis, state dependent behavior and state independent behavior, examples.
3. System structuring into processes and modules. Structuring criteria. Cohesion and coupling. Parallel architectures. The communication and synchronization of processes.
4. Distributed system design. RPC, message sending communication. Design steps in distributed design: Decomposition, interface specification, tightly and loosely coupled communication, Client – Server cooperation
5. OOD of RT systems. Abstraction, encapsulation, objects, classes, inheritance, polymorphism. Object and classes diagrams, state transition diagrams, timing diagrams, processes diagrams. Identification of classes and objects and the relations between them.
6. Design patterns: description, catalog, of DP, inheritance, delegation, composition, type parameterization, design patterns use.
7. Application, framework, toolkit. Examples-Box Component Builder, Jbed.