Real-Time UML Workshop for Embedded Systems

Real-Time UML Workshop for Embedded Systems

2nd Edition - February 5, 2014

Write a review

  • Author: Bruce Douglass
  • eBook ISBN: 9780124078307

Purchase options

Purchase options
DRM-free (EPub, Mobi, PDF)
Sales tax will be calculated at check-out

Institutional Subscription

Free Global Shipping
No minimum order


Written as a workbook with a set of guided exercises that teach by example, this book gives a practical, hands-on guide to using UML to design and implement embedded and real-time systems.

Key Features

  • A review of the basics of UML and the Harmony process for embedded software development: two on-going case examples to teach the concepts, a small-scale traffic light control system and a large scale unmanned air vehicle show the applications of UML to the specification, analysis and design of embedded and real-time systems in general.
  • A building block approach: a series of progressive worked exercises with step-by-step explanations of the complete solution, clearly demonstrating how to convert concepts into actual designs.
  • A walk through of the phases of an incremental spiral process: posing the problems and the solutions for requirements analysis, object analysis, architectural design, mechanistic design, and detailed design.


Professional embedded systems engineers, undergraduate and post-graduate students.

Table of Contents

  • Dedication



    About the Author

    Chapter 1. Introduction to UML

    1.1 UML Basic Modeling Concepts

    1.2 Structural Elements and Diagrams

    1.3 Behavioral Elements and Diagrams

    1.4 Use Case and Requirements Models

    1.5 Summary

    Chapter 2. The Harmony Process

    2.1 Introduction

    2.2 The Harmony Development Process

    2.3 The Systems Engineering Harmony Workflows in Detail

    2.4 The Hand-off from Systems Engineering

    2.5 The Software Workflows in Detail

    2.6 Summary

    Chapter 3. Meeting Industry Standards

    3.1 Overview

    3.2 On the Importance of Being Standard

    3.3 Architectural Framework Standards (I’m looking at you UPDM)

    3.4 IEC 61508

    3.5 DO-178B/C

    3.6 IEC 62304

    3.7 CMMI-DEV

    3.8 Summary

    Chapter 4. Specifying Requirements

    4.1 Overview

    4.2 Representing Requirements in UML and SysML

    4.3 Specification View: State Machines for Requirements Capture

    Chapter 5. Systems Architecture: Deployment and Subsystems Architecture

    5.1 Overview

    5.2 The Hand-off from Systems to Downstream Engineering

    5.3 Looking Ahead

    Chapter 6. Dependability Architecture

    6.1 Overview

    6.2 A (Not-So) Quick Note about Design Patterns

    6.3 What is a Design Pattern?

    6.4 Summary

    Chapter 7. High-Fidelity Modeling

    7.1 Overview

    7.2 A Quick Note about Structured Design with UML

    7.3 High-Fidelity Modeling Workflow

    7.4 Key Strategies for Object Identification

    7.5 Summary

    Chapter 8. Distribution Architecture

    8.1 Overview

    8.2 Summary

    Chapter 9. Concurrency and Resource Architecture

    9.1 What is the Concurrency and Resource Architecture?

    9.2 Harmony Concurrency and Resource Architecture Workflow

    9.3 Summary

    Chapter 10. Collaboration and Detailed Design

    10.1 Overview

    10.2 Collaboration Design

    10.3 Detailed Design

    10.4 Summary

    Chapter 11. Specifying Requirements: Answers

    11.1 Answer 4.1: Identifying Kinds of Requirements

    11.2 Answer 4.2: Identifying Use Cases for the Roadrunner Traffic Light Control System

    11.3 Answer 4.3: Mapping Requirements to Use Cases

    11.4 Answer 4.4: Identifying Use Cases for the Coyote UAV System

    11.5 Answer 4.5: Create a Requirements Table

    11.6 Answer 4.6: Capturing Quality of Service Requirements

    11.7 Answer 4.7: Operational View: Identifying Traffic Light Scenarios

    11.8 Answer 4.8: Operational View: Coyote UAV Optical Surveillance Scenarios

    11.9 Answer 4.9: Specification View: Use Case Descriptions

    11.10 Answer 4.10: Simple State Machine Specification

    11.11 Answer 4.11: Specification View: Capturing Complex Requirements

    11.12 Answer 4.12: Operational to Specification View: Capturing Operational Contracts

    Chapter 12. Deployment and Subsystems Architecture: Answers

    12.1 Answer 5.1: Organizing the Systems Model

    12.2 Answer 5.2: Subsystem Identification

    12.3 Answer 5.3: Mapping Operational Contracts into the Subsystem Architecture

    12.4 Answer 5.4: Identifying Subsystem Use Cases

    12.5 Answer 5.5: Creating the Shared Model

    12.6 Answer 5.6: Initiating the Subsystem Model

    Chapter 13. Dependability Architecture: Answers

    13.1 Answer 6.1: Safety Architecture

    13.2 Answer 6.2: Reliability Architecture

    13.3 Answer 6.3: Security Architecture

    Chapter 14. High-Fidelity Modeling: Answers

    14.1 Answer 7.1: Apply Nouns and Causal Agents Strategies

    14.2 Answer 7.2: Apply Services and Messages Strategies

    14.3 Answer 7.3: Apply the Strategies with a Test-Driven Development Approach

    Chapter 15. Distribution Architecture: Answers

    15.1 Answer 8.1: Roadrunner Distribution Architecture

    15.2 Answer 8.2: Coyote UAV Distribution Architecture

    Chapter 16. Concurrency and Resource Architecture: Answers

    16.1 Answer 9.1: Roadrunner Concurrency and Resource Architecture

    16.2 Answer 9.2: Reconnaissance Concurrency and Resource Architecture

    Chapter 17. Collaboration and Detailed Design: Answers

    17.1 Answer 10.1: Applying Collaboration Design Patterns: Part 1

    17.2 Answer 10.2: Applying Collaboration Design Patterns: Part 2

    17.3 Answer 10.3: Applying Detailed Design State Behavioral Patterns

    17.4 Answer 10.4: Applying Detailed Design Idioms

    Appendix A. The Roadrunner™ Intersection Controller System Specification

    Appendix B. The Coyote Unmanned Aerial Vehicle System (CUAVS)

    Appendix C. UML Notational Summary


Product details

  • No. of pages: 576
  • Language: English
  • Copyright: © Newnes 2014
  • Published: February 5, 2014
  • Imprint: Newnes
  • eBook ISBN: 9780124078307

About the Author

Bruce Douglass

Embedded Software Methodologist. Triathlete. Systems engineer. Contributor to UML and SysML specifications. Writer. Black Belt. Neuroscientist. Classical guitarist. High school dropout. Bruce Powel Douglass, who has a doctorate in neurocybernetics from the USD Medical School, has over 35 years of experience developing safety-critical real-time applications in a variety of hard real-time environments. He is the author of over 5700 book pages from a number of technical books including Real-Time UML, Real-Time UML Workshop for Embedded Systems, Real-Time Design Patterns, Doing Hard Time, Real-Time Agility, and Design Patterns for Embedded Systems in C. He is the Chief Evangelist at IBM Rational, where he is a thought leader in the systems space and consulting with and mentors IBM customers all over the world. He can be followed on Twitter @BruceDouglass. Papers and presentations are available at his Real-Time UML Yahoo technical group ( and from his IBM thought leader page (

Affiliations and Expertise

Chief Evangelist, IBM Internet of Things, Fairfax, VA, USA

Ratings and Reviews

Write a review

There are currently no reviews for "Real-Time UML Workshop for Embedded Systems"