REVIEW - Practical Statecharts in C/C++ - Quantum Programming for Embedded Systems

Title:

Practical Statecharts in C/C++ - Quantum Programming for Embedded Systems

Author:

Miro Samek

ISBN:

1578201101

Publisher:

CRC Press (2002)

Pages:

416pp

Reviewer:

Chris Hills

Reviewed:

December 2003

Rating:

★★★☆☆

If you think QP is for you then definitely buy the book.

This is not so much a book as a way of life. The book is part of the Quantum Programming way of life. It is based on UML state charts and active objects for multithreading.

The best way to discover if this is for you is to spend a few minutes browsing

http://www.quantum-leaps.com
where you will discover lots of information on Quantum Programming, resources and cook books, other books and magazine articles on QP, the QP community and discussion forum. They really have gone to town on this. The CD with the book is no exception. It is a joy to behold. One day all CDs with books will be of this standard! This is for both content and execution. It auto starts with a virtual web site logically arranged with links to all the software and resources with notes, links to other resources etc. So this is not 'just a book' on someone's wild ideas. The other important point is that the web site is (almost) complete. Sometimes many authors promise a web site that never materialises, this one was there before the book.

By the time you have looked at the web site it makes my review of the book superfluous, as it contains much of the subject on the website. The good news is that whilst this system will work with most (they list eight) UML CASE tools it is designed to be a lightweight system that does not need a CASE tool. There is even a set of MS Visio Templates and a coding standard both downloadable so you could 'start with it on Monday' as they say in the book, without a major investment in tools.

For those interested in QP this book will be ideal as a reference. I know many have broadband Internet and could download the source and the information on the website but a book is still better than printouts (even when bound up) and does contain a lot of additional information.

The book itself is in two parts. The first covers UML state charts, real-time, etc. The second part introduces the Quantum methods and ideas. This is an event-message type system.

The examples in the book are designed to work on x86 (under Win9x-2K, DOS or RTOS-32) with VC++ and Borland compilers (all code is on the CD). The evaluation version of RTOS-32 is provided though it is claimed that the QF source has been 'carefully designed to work with nearly any RTOS'.

By coincidence, whilst writing this review there was a brief flurry of messages on

comp.arch.embedded
where someone asked about QP. There were only a few replies but everyone liked the method and had used it on at least one real world project.

The method works for both C and C++ though personally I have always had reservations about using UML for C. As for the book itself; I like it. It is logical, clearly written and the exercises use the code on the CD and work to a practical example. They are not designed as exercises for students where only the lecturer has the answers. If you are using or looking at UML then look at the QP web site first. If you think QP is for you then definitely buy the book. This book is recommended to all interested in QP.


Book cover image courtesy of Open Library.