We may earn an affiliate commission when you visit our partners.

Practical UML Statecharts in C/C++

Miro Samek

Practical UML Statecharts in C/C++ Second Edition bridges the gap between high-level abstract concepts of the Unified Modeling Language (UML) and the actual programming aspects of modern hierarchical state machines (UML statecharts). The book describes a lightweight, open source, active object (actor) framework, called QP that enables direct manual coding UML statecharts and concurrent event-driven applications in C or C++.

This book is presented in two parts. In Part I, you get a practical description of the relevant state machine concepts starting from traditional finite state automata to modern UML state machines followed by state machine coding techniques and state-machine design patterns, all illustrated with executable examples. In Part II, you find a detailed design study of a generic real-time framework indispensable for combining concurrent, event-driven state machines into robust applications. Part II begins with a clear explanation of the key event-driven programming concepts such as inversion of control (”Hollywood Principle”), blocking versus non-blocking code, run-to-completion (RTC) execution semantics, the importance of event queues, dealing with time, and the role of state machines to maintain the context from one event to the next. This background is designed to help software developers in making the transition from the traditional sequential to the modern event-driven programming, which can be one of the trickiest paradigm shifts.

The lightweight QP active object framework goes several steps beyond the traditional real-time operating system (RTOS). In the simplest configuration, QP runs on bare-metal microcontroller completely replacing the RTOS. QP can also work with almost any OS/RTOS to take advantage of the existing device drivers, communication stacks, and other middleware.

The accompanying website to this book (state-machine.com/psicc2) contains complete open source code for QP and the free QM graphical modeling tool for QP, ports to popular processors, including ARM Cortex-M, ARM7/9, MSP430, AVR/AVR32, PIC24, RX, etc., as well as QP ports to operating systems, such as Linux, Windows, and Android.

Read on Amazon
Read this for free with Kindle Unlimited

Save this book

Create your own learning path. Save this book to your list so you can find it easily later.
Save

Share

Help others find this book page by sharing it with your friends and followers:

Amazon Buyer Protections & Purchase Guarantee

Protected by Amazon A-to-z Guarantee & generous return policies

Amazon A-to-z Guarantee
Buyer Protection

Amazon A-to-z Guarantee

Every book purchase is protected by the Amazon A-to-z Guarantee. This guarantee covers both the condition of your book and its timely delivery, providing full buyer protection whether you purchase directly from Amazon or from third-party marketplace sellers.

Return Policy

Generous 30-Day Returns & Free Shipping

Generous 30-day return policy on physical books. Amazon makes returns effortless with self-service return labels, drop-off at thousands of local locations (Kohl's, Whole Foods, UPS Stores), and free return shipping on eligible book purchases.

Savings & Discounts

Great Savings & Member Discounts

Maximize your savings with competitive pricing, deep discounts on new and used marketplace copies, bundled textbook rentals, and exclusive member savings through Amazon Prime with free fast delivery.

Formats & Programs

Kindle, Audible & Physical Formats

Read your way across versatile digital and physical formats: instant delivery via Kindle eBooks, unlimited reading with a Kindle Unlimited subscription, audiobook listening with Audible (often featuring a 30-day free trial), or traditional paperback and hardcover editions.

Amazon Purchase Protections & Benefits
Amazon A-to-z Guarantee covering third-party & direct purchases
Generous 30-day return policy with hassle-free drop-off options
Kindle eBook editions with instant delivery on any device
Kindle Unlimited program with access to over 4 million titles
Audible audiobooks with free trial eligibility
Competitive discounts across new, used, and rental copies
Amazon Affiliate Partner Protections Policy details last reviewed: 2026-10-22
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser