Boost logo

Boost :

Subject: [boost] Meta State Machine library review starts Monday
From: Christophe Henry (christophe.j.henry_at_[hidden])
Date: 2009-11-23 04:25:33


>I remember hearing alot about UML years ago, but I have not heard very
>much about it lately (last 5 years).

>Any sense who popular UML is these days. It seems to me it was once
>greatly touted as the cure to most of project management and
>prototyping needs.

>Does anyone have any experience using it?
>Where is it primarily used, what kind of projects can benefit from it?

I personally try to design my projects with UML, eventhough I mostly
use only a few diagrams. It helps quite a bit for documentation and
Model-Driven development.
But I wouldn't want to start a big discussion about UML. Msm is
implementing only a small part of it, the state machine chapter. There
were state machines long before UML. The biggest advantage of
following the standard whenever possible is that at least there is a
standard and it is formally defined, so that you know what you get.
If your question was about where to use state machines, this would
need a longer answer. Common cases include GUI development,
implementation of communication protocols or whenever you might be
tempted to define some flags to define the state of a given class
(those who never defined a dirty flag, raise your hand ;-) ). In these
cases, state machines help you abstract away implementation details
and allow someone else understand your code more easily. I also found
them a huge help during development as thinking in terms of a model
made a problem much easier to solve.

HTH,
Christophe


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk