[erlang-questions] UML or other modeling tools

Alain O'Dea <>
Sun Jan 9 22:30:29 CET 2011

On 2011-01-09, at 10:36, Ulf Wiger <> wrote:

> I am quite sceptical towards using UML for modeling Erlang
> programs, for a number of reasons.
> - I mainly subscribe to Fred Brooks' "The Flow Chart Curse" in "The Mythical
>  Man-Month": visual modeling provides very little extra information when
>  used to illustrate a very high-level programming language. In the case of
>  UML and Erlang, Erlang is at roughly the same abstraction level as the 
>  various versions of Executable UML. 
> - The things most interesting to model in an Erlang program are the 
>  state machines and the interaction between processes, but UML 
>  state machines have very complex - and most importantly, *different*
>  - semantics, making it quite probable that the design becomes subject
>  to compromises forced by the modeling tool, rather than reflecting the
>  power of the programming language.
> - The main purpose of a standard notation is that everyone should be
>  able to agree on what it means. I assert that very few people can claim
>  to understand the subtleties of UML's state machine semantics, and 
>  even if they do, so much the worse, since Erlang's semantics are 
>  different. Better to choose a simple notation and explain what it means
>  in the relation to Erlang's building blocks. Taking a ubiquitous symbol
>  and defining it to mean something different is counter-productive.
> - The FMC (http://fmc-modeling.org/) notation seems to complement 
>  Erlang fairly well, describing roughly the things that are most interesting
>  to describe visually in an Erlang program.

Hi Ulf:

What success stories can you share about using FMC?

I have been looking for a lightweight and comprehensive form of design documentation.  I like the idea of using CRC/MRC (Class/Module Responsibilities and Collaborators) cards, but they have limitations.  I imagine CRC/MRC cards effectively describe the parts of the system, but cannot effectively describe how the entire system of parts moves together.

Is FMC worth serious investigation?

Thank you,

> BR,
> Ulf W
> On 9 Jan 2011, at 08:56, Alessandro Sivieri wrote:
>> Hi all,
>> has anyone of you ever used any modeling tool for describing a system
>> written in Erlang (or any other functional language)?
>> I have to describe the architecture of an application, in terms of processes
>> structure/tree and/or modules, and I was wondering if there is some UML
>> diagram that could be used, or any "standard" format for doing it; I have
>> already created several sequence diagrams, and usually in my other projects
>> I have used (more or less detailed) diagram classes, but for functional
>> languages I don't know precisely what tools there exist...
>> -- 
>> Sivieri Alessandro
>> http://www.chimera-bellerofonte.eu/
>> http://www.poul.org/
> Ulf Wiger, CTO, Erlang Solutions, Ltd.
> http://erlang-solutions.com
> ________________________________________________________________
> erlang-questions (at) erlang.org mailing list.
> See http://www.erlang.org/faq.html
> To unsubscribe; mailto:

More information about the erlang-questions mailing list