Real-time programming

Model
Digital Document
Publisher
Florida Atlantic University
Description
Enhanced system design productivity is key to satisfying time-to-market demands. One
will have to exploit design reuse methodology to meet project schedule requirements.
Integration of components often fails due to various concurrency violations.
Concurrency issues arise when components executing in parallel share resources and
interact with each other. Such a system may have intermittent, yet catastrophic failures,
if these concurrency issues are not addressed properly. In this thesis, we propose a
methodology for developing concurrency compliant components from a requirement
document. We have applied this methodology for developing process management and
memory management aspects of a Real Time Operating System (RTOS). In this
methodology, we start from a "customer' s" requirement document that is then mapped to
activity diagram, swimlane diagram, class diagrams, and use case diagrams. To evolve a
concurrency compliant design, we use the Message Sequence Chart plug-in for the
Labeled Transition State Analyzer (LTSA). This plug-in lets us use Message Sequence
Charts rather than coding in Finite State Processes (FSP). Later, we use MLDesigner to
simulate our R TOS sub-system and demonstrate proper behavior of this sub-system.
Model
Digital Document
Publisher
Florida Atlantic University
Description
Many methodologies for software modeling and design include some form of static and dynamic modeling to describe the structural and behavioral views respectively. Modeling and design of complex real-time software systems requires notations for describing concurrency, asynchronous event handling, communication between independent machines, timing properties, and accessing real time. Function-oriented structured analysis methodologies such as Ward and Mellor's SA/RT and Harel's Statecharts have provided extensions for real-time system modeling. Dynamic modeling of real time systems using object-oriented methodologies also requires extensions to the traditional state machine notations in order to convey the real time system characteristics and constraints. Shaw's Communicating Real Time State Machines (CRSM's), Harel's O-Chart notations, and the Octopus methodology provide methods for modeling real-time systems consistent with object-oriented methods. This thesis proposes an object-oriented analysis and design methodology that augments the traditional Object Modeling Technique (OMT) dynamic model with real-time extensions based on high-level parallel machines and communication notations from CRSM. An example of the proposed methodology is provided using a realistic but hypothetical example of an automated passenger train system. A design refinement step is included for fault tolerant considerations. An evaluation of the proposed methodology with its extended notations is provided.