Real-Time Design Patterns

Real-Time Design Patterns : Robust Scalable Architecture for Real-Time Systems

3.33 (9 ratings by Goodreads)

Free delivery worldwide

Available. Dispatched from the UK in 3 business days
When will my order arrive?


Real-time and embedded systems developers face unique challenges. The systems they design must use very limited processor and memory resources optimally to meet mission-critical and high reliability requirements. Developers working on these systems see the same common threads in problems again and again. The very best developers abstract these problems and their solutions into generalized approaches that prove consistently effective: design patterns. In this book, real-time programming guru Bruce Powel Douglass collects the best design patterns from this unique, and rapidly growing, area of programming, and presents them in an instructional format that teaches the reader the "what, when, and how" of leveraging the significant power of these proven design solutions.
show more

Product details

  • Paperback | 528 pages
  • 189 x 234 x 29mm | 890g
  • Addison Wesley
  • Boston, United States
  • English
  • m. Abb.
  • 0201699567
  • 9780201699562
  • 830,463

Back cover copy

When creating real-time and embedded (RTE) systems, there is no room for error. The nature of the final product demands that systems be powerful, efficient, and highly reliable. The constraints of processor and memory resources add to this challenge. Sophisticated developers rely on design patterns--proven solutions to recurrent design challenges--for building fail-safe RTE systems.

Real-Time Design Patterns is the foremost reference for developers seeking to employ this powerful technique. The text begins with a review of the Unified Modeling Language (UML) notation and semantics then introduces the Rapid Object-Oriented Process for Embedded Systems (ROPES) process and its key technologies. A catalog of design patterns and their applications follows.

Key topics covered in this book include:

Identifying large-scale strategic decisions that affect most software elementsCoordinating and organizing system components and subsystemsManaging memory and resourcesDefining how objects can be distributed across multiple systemsBuilding safe and reliable architecturesMapping subsystem and component architectures to underlying hardware

The book's extensive problem-solving templates, which draw on the author's years in the trenches, will help readers find faster, easier, and more effective design solutions.

The accompanying CD-ROM contains:

Related papers Object Management Group (OMG) specificationsRhapsody(TM)--a UML-compliant design automation tool that captures the analysis and design of systems and generates full behavioral code with intrinsic model-level debug capabilitiesRapidRMA(TM)--a tool that integrates with Rhapsody(TM) to perform schedulability and timeliness analysis of UML models 0201699567B08142002
show more

Table of contents

(NOTE: Each chapter, except Chapter 9, concludes with References.)


1. Introduction.

Basic Modeling Concepts of the UML.


Structural Elements and Diagrams.

Small Things: Objects, Classes and Interfaces.


Structural Diagrams.

Big Things: Subsystems, Components, and Packages.

Behavioral Elements and Diagrams.

Actions and Activities.

Operations and Methods.


Activity Charts.


Use Case and Requirements Models.

Capturing Black-Box Behavior without Revealing Internal Structure.

What is a Design Pattern?

2. Architecture and the UML.


Logical and Physical Architecture.

Logical Architecture.

Physical Architecture.

The Five Views of Architecture.

Subsystem and Component View.

Concurrency and Resource View

Distribution View.

Safety and Reliability View.

Deployment View.

Implementing Architectures.

Alphabet Soup: CORBA, UML and MDA Basics.

MDA to the Rescue.

Creating Architecture Elements-the Model Level.

Subsystem and Component View.

Concurrency and Resource View.

Distribution View.

Safety and Reliability View.

Deployment View.

3. The Role of Design Patterns.


The ROPES Development Process.

Why Process?

ROPES Process Overview.

The ROPES Microcycle in Detail.


Analysis with the ROPES Process.

Design with the ROPES Process.



Design Pattern Basics.

What is a Design Pattern?

Basic Structure of Design Patterns.

How to Read Design Patterns in this Book.

Using Design Patterns in Development.

Pattern Hatching-Locating the Right Patterns.

Pattern Mining-Rolling your own Patterns.

Pattern Instantiation-Applying Patterns in Your Designs.


4. Subsystem and Component Architectural Patterns.

Layered Pattern.

5-Layer Architecture Pattern.

Microkernel Architecture Pattern.

Channel Architecture Pattern.

Recursive Containment Pattern.

Hierarchical Control Pattern.

Virtual Machine Pattern.

Component-Based Architecture.

ROOM Pattern.

5. Concurrency Patterns.


Concurrency Patterns.

Message Queuing Pattern.

Interrupt Pattern.

Guarded Call Pattern.

Rendezvous Pattern.

Cyclic Executive Pattern.

Round Robin Pattern.

Static Priority Pattern.

Dynamic Priority Pattern.

6. Memory Patterns.

Memory Management Patterns.

Static Allocation Pattern.

Pool Allocation Pattern.

Fixed-Sized Buffer Pattern.

Smart Pointer Pattern.

Garbage Collection Pattern.

Garbage Compactor Pattern.

7. Resource Patterns.


Critical Section Pattern.

Priority Inheritance Pattern.

Highest Locker Pattern.

Priority Ceiling Pattern.

Simultaneous Locking Pattern.

Ordered Locking Pattern.

8. Distribution Patterns.


Shared Memory Pattern.

Remote Method Call Pattern.

Observer Pattern.

Data Bus Pattern.

Proxy Pattern.

Broker Pattern.

9. Safety and Reliability Patterns.


Handling Faults.

Protected Single Channel Pattern.

Homogeneous Redundancy Pattern.

Triple Modular Redundancy Pattern.

Heterogeneous Redundancy Pattern.

Monitor-Actuator Pattern.

Sanity Check Pattern.

Watchdog Pattern.

Safety Executive Pattern.

Appendix A: Notational Summary.
Appendix B: Pattern Index.
Index. 0201699567T08282002
show more

About Bruce Powel Douglass

Bruce Powel Douglass is the Chief Evangelist for i-Logix, a leading producer of tools for real-time systems development. He contributed to the original specification of the UML and to the UML 2.0 as one of the co-chairs of the Object Management Group's Real-Time Analysis and Design Working Group. Bruce consults for a number of companies and organizations, including NASA, on building large-scale, real-time, safety-critical systems. He is the author of seven other books, including Real-Time Design Patterns (Addison-Wesley, 2003) and Doing Hard Time (Addison-Wesley, 1999).
show more

Rating details

9 ratings
3.33 out of 5 stars
5 0% (0)
4 56% (5)
3 22% (2)
2 22% (2)
1 0% (0)
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X