Real-Time Systems Development

Structured Analysis and Design (SA/SD), although increasingly abandoned in favour of Object-oriented Design (OOD) methods, retains popularity in the field of real-time systems to gain improved performance. This chapter explains that the original Yourdon SA/SD method was extended for use with real-time systems design. Finite State Machines (FSM), Data-flow Diagrams (DFD) and entity relationship diagrams (ERD) are unified within real-time Yourdon. The routes through to implementing code are also described.
It is now widely recognized that appropriate design methods are essential for the successful production of good software. The preliminary activities for any software development usually involve research, analysis and self-education, before real design can start, so development methodologies have to support many different activities within the software lifecycle. In short, design must assist in finding the best way to implement the functional requirements. In particular, real-time systems have several special areas which demand strong support through the design phase and into implementation.
Guidance for code structuring
Data definitions
Identification of tasks
Task sequence model with initial priority settings
Intertask dependencies and communication needs
Highlight critical sections
Reveal potential deadlock situations
Guide the production of test data
Offer flexible/adaptable implementations
Assistance during debugging
When choosing a design method, an important aspect concerns the moment when decisions are taken. If important decisions have to be taken early in the project lifecycle the risk incurred with using that method might be unacceptable...