[erlang-questions] Design tool for erlang software
john s wolter
johnswolter@REDACTED
Sat Aug 2 18:50:14 CEST 2008
Torben & et. al...
This design issue digs into the runtimes for object like systems. We always
are creating runtimes that are more traditional designs for the purpose of
simulating the necessary object runtime environment. It just keeps buzzing
around my head. You have stumbled upon an incomplete area of O-O.
Determinate systems are not easy with most current O-O runtimes. UML
modeling techniques do not appear to be sufficient for modeling those
systems.
This link is what may be called the Use Case Maps home of sorts.
http://jucmnav.softwareengineering.ca/twiki/bin/view/UCM/WebHome
Here's a publications list that dates back to Buhr, Casselman, and Amyot's
starting work in the 1990's. The first two having published a book "Use
CASE Maps for Object Oriented Systems", with a forward by Ivar Jacobson the
creator of Use Cases. This list should give a good historical background on
this subject.
http://jucmnav.softwareengineering.ca/twiki/bin/view/UCM/UCMVirtualLibraryAllPubs
In general I've come to the point of view that Jacobson's Use Case idea
appeared to me to be more like a flow chart then object based. Use Case
Maps are different in coverage and technique. I have not yet decided where
or if they fit the runtime or realtime area.
Use Cases have another fork with Larry L. Constantine & Lucy A. D. Lockwood
book "Software for Use". This covers more Usage-Centered design issue then
system. It does take a look at the issues of Use Cases in design. The
usage issue has highlighted problems with Use Cases, namely the flow chart
like features.
Going a little farther on the usage side of things is Alan Cooper in his
book, "the inmates are running the asylum". Its about computerized
technology failures and he introduces the idea of Personas. Personas
replace the idea of use cases in profiling users from which user
interactions designed. An extensive book on this is "The Persona Lifecycle
: Keeping People in Mind Throughout Product Design" by John Pruitt and
Tamara Adlin.
It would be interesting to ask if programs, agents, swarms, equipment, etc
could have Personas.
A UML approach adapted the work of Brian Selic called Realtime Object
Oriented Method, ROOM. This was then commercially surfaced by ObjectTime
which was purchased by Rational Software. The ideas and some notation has
worked its way into UML.
Here's a paper by Selic about ROOM
http://www.ibm.com/developerworks/rational/library/content/03July/1000/1155/1155_umlmodeling.pdf
Here's a software package that uses ROOM and actors ideas..
http://www.smartdraw.com/tutorials/software/room/tutorial_01.htm
Bruce Douglass, yep two 's's, "Doing Hard Time" and "Realtime UML 3d
edition" . The last has some ROOM feature discussions.
Here's Wikipedia's take on OPM and has a link section at the bottom that
will take you to UCM sites.....
http://en.wikipedia.org/wiki/Object_Process_Methodology
Not to be left out the the design of processes is OPEN Process Framework
(OPF) which allows you to construct process rather then using the
predesigned Rational Process. OPF was pushed aside in the rush to UML by
Microsoft, IBM, et. al., the usual suspects.
Ian Gramham's " Requirements Engineering and Rapid Development" book looks
into distributed systems modeling. The UCM people know of this work. Also
look for Don Firesmith's work in this area.
http://www.opfro.org/index.html?Components/WorkProducts/DiagramSet/Requirements/ContextDiagram/ContextDiagram.html~Contents
I have not yet spoken to the work done for agents, swarms, and actors which
remains important to runtime and realtime distributed system design and
implementation.
2008/7/20 Torben Hoffmann <torben.lehoff@REDACTED>
> On Thu, Jul 17, 2008 at 9:27 PM, Maxim Treskin <zerthurd@REDACTED> wrote:
>
>> Hello
>>
>> Is there any design tool spesial for erlang software, escept paper
>> sheet and pen?
>> UML-designers, like umbrello, is comfortable for object-oriented code,
>> not for process-oriented (yes, I know, it is possible).
>> So, are you use some designer tools special for erlang code?
>>
>
> As I and others uttered at the Erlang Exchange 2008 the most important
> thing to get right is the protocols between the entities of your system so
> your first step should be to draw up an architecture diagram and focus on
> what the protocols between the entities should be.
>
> This does not require anything but pen and paper, but a drawing program and
> a wiki has worked wonders in my team - makes it easier to share knowledge.
>
> A design tool that looks promising for Erlang is Object-Process Methodology
> (http://www.objectprocess.org/)
> I have read the book and after my summer vacation I will start
> experimenting with OPM for design of Erlang/OTP systems.
>
> Cheers,
> Torben
>
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@REDACTED
> http://www.erlang.org/mailman/listinfo/erlang-questions
>
--
John S. Wolter President
Wolter Works
Mailto:johnswolter@REDACTED
Desk 1-734-665-1263
Cell: 1-734-904-8433
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20080802/ede76651/attachment.htm>
More information about the erlang-questions
mailing list