EmbeddedRelated.com
Books

Real-Time Software Design for Embedded Systems

Gomaa, Hassan 2016

This tutorial reference takes the reader from use cases to complete architectures for real-time embedded systems using SysML, UML, and MARTE and shows how to apply the COMET/RTE design method to real-world problems. The author covers key topics such as architectural patterns for distributed and hierarchical real-time control and other real-time software architectures, performance analysis of real-time designs using real-time scheduling, and timing analysis on single and multiple processor systems. Complete case studies illustrating design issues include a light rail control system, a microwave oven control system, and an automated highway toll system. Organized as an introduction followed by several self-contained chapters, the book is perfect for experienced software engineers wanting a quick reference at each stage of the analysis, design, and development of large-scale real-time embedded systems, as well as for advanced undergraduate or graduate courses in software engineering, computer engineering, and software design.


Why Read This Book

You will learn how to take real-time embedded requirements from use cases to full, verifiable architectures using SysML/UML/MARTE and the COMET/RTE design method. The book emphasizes practical design patterns, performance and timing analysis, and full case studies so you can apply the techniques to real-world embedded and distributed control systems.

Who Will Benefit

Experienced embedded software engineers, system architects, and technical leads who need to design, analyze, and document dependable real-time systems from requirements through implementation.

Level: Advanced — Prerequisites: Familiarity with software engineering and basic embedded-system concepts, knowledge of UML or SysML (basic modeling skills), and a working understanding of real-time concepts (tasks, deadlines, preemption) and a programming language such as C or C++.

Get This Book

Key Takeaways

  • Apply SysML/UML and the MARTE profile to model timing, concurrency, and real-time constraints in embedded system designs.
  • Use the COMET/RTE method to transform use cases and requirements into concrete software architectures and task decompositions.
  • Perform schedulability and performance analysis for single- and multi-processor real-time systems and reason about timing margins.
  • Design and evaluate distributed and hierarchical real-time control architectures and common architectural patterns for embedded systems.
  • Map software functions to hardware and assess trade-offs between partitioning, concurrency, and timing predictability.
  • Produce end-to-end design documentation and validated designs, demonstrated through full case studies (light rail, microwave oven, highway toll).

Topics Covered

  1. Introduction: Goals, Scope, and the COMET/RTE Approach
  2. From Use Cases to Real-Time Requirements
  3. Modeling Real-Time Systems with UML and SysML
  4. MARTE: Representing Time, Schedulability, and Performance
  5. The COMET/RTE Design Method: Steps and Artifacts
  6. Architectural Patterns for Real-Time and Distributed Control
  7. Task Decomposition and Concurrency Design
  8. Real-Time Scheduling Theory and Performance Analysis
  9. Timing Analysis on Single-Processor Systems
  10. Timing and Scheduling for Multiprocessor and Distributed Systems
  11. Mapping Software to Hardware and Implementation Considerations
  12. Verification, Validation, and Design Trade-offs
  13. Case Studies: Light Rail Control, Microwave Oven, Highway Toll System
  14. Practical Considerations, Tools, and Further Reading

Languages, Platforms & Tools

UMLSysMLMARTECC++Ada (conceptual)ARM Cortex-M (general embedded targets)ARM Cortex-A and other embedded processors (conceptual)Generic microcontroller and multiprocessor embedded platformsModeling tools (e.g., Enterprise Architect, MagicDraw, Papyrus)RTOS concepts and implementations (conceptual coverage)Scheduling and timing analysis tools (conceptual examples: MAST, Cheddar)

How It Compares

Compared with Jane W. S. Liu's Real-Time Systems (which focuses on scheduling theory and mathematical foundations), Gomaa's book emphasizes model-driven design (SysML/UML/MARTE) and the COMET/RTE method; compared with Bruce Powel Douglass's Real-Time UML, it provides broader architectural patterns and detailed timing analysis case studies.

Related Books

Bryant, Randal, O'Hallaron,...