<div dir="ltr">Torben & et. al...<br><br>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.<br>
<br>This link is what may be called the Use Case Maps home of sorts.<br><br><a href="http://jucmnav.softwareengineering.ca/twiki/bin/view/UCM/WebHome">http://jucmnav.softwareengineering.ca/twiki/bin/view/UCM/WebHome</a><br>
<br>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.<br>
<br><a href="http://jucmnav.softwareengineering.ca/twiki/bin/view/UCM/UCMVirtualLibraryAllPubs">http://jucmnav.softwareengineering.ca/twiki/bin/view/UCM/UCMVirtualLibraryAllPubs</a><br><br>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.<br>
<br>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.<br>
<br>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 "<font size="2"><span id="btAsinTitle" style="">The Persona Lifecycle : Keeping People in Mind Throughout Product Design" by John Pruitt and Tamara Adlin.<br>
<br>It would be interesting to ask if programs, agents, swarms, equipment, etc could have Personas.  <br><br>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.<br>
<br>Here's a paper by Selic about ROOM<br><a href="http://www.ibm.com/developerworks/rational/library/content/03July/1000/1155/1155_umlmodeling.pdf">http://www.ibm.com/developerworks/rational/library/content/03July/1000/1155/1155_umlmodeling.pdf</a><br>
<br>Here's a software package that uses ROOM and actors ideas..<br><a href="http://www.smartdraw.com/tutorials/software/room/tutorial_01.htm">http://www.smartdraw.com/tutorials/software/room/tutorial_01.htm</a><br><br>
Bruce Douglass, yep two 's's, "Doing Hard Time" and "Realtime UML 3d edition" .  The last has some ROOM feature discussions.<br><br>Here's Wikipedia's take on OPM and has a link section at the bottom that will take you to UCM sites.....<br>
<br><a href="http://en.wikipedia.org/wiki/Object_Process_Methodology">http://en.wikipedia.org/wiki/Object_Process_Methodology</a><br><br>Not to be left out the the design of processes is </span></font><span class="large">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.<br>
<br>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.</span><br>
<font size="2"><span id="btAsinTitle" style=""><br><a href="http://www.opfro.org/index.html?Components/WorkProducts/DiagramSet/Requirements/ContextDiagram/ContextDiagram.html~Contents">http://www.opfro.org/index.html?Components/WorkProducts/DiagramSet/Requirements/ContextDiagram/ContextDiagram.html~Contents</a><br>
</span></font><br>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.<br><br><div class="gmail_quote">2008/7/20 Torben Hoffmann <span dir="ltr"><<a href="mailto:torben.lehoff@googlemail.com">torben.lehoff@googlemail.com</a>></span><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div dir="ltr"><div class="Ih2E3d">On Thu, Jul 17, 2008 at 9:27 PM, Maxim Treskin <<a href="mailto:zerthurd@gmail.com" target="_blank">zerthurd@gmail.com</a>> wrote:<br>
</div><div class="Ih2E3d"><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hello<br>
<br>
Is there any design tool spesial for erlang software, escept paper<br>
sheet and pen?<br>
UML-designers, like umbrello, is comfortable for object-oriented code,<br>
not for process-oriented (yes, I know, it is possible).<br>
So, are you use some designer tools special for erlang code?<br>
</blockquote></div><br></div>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.<br>

<br>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.<br><br>A design tool that looks promising for Erlang is Object-Process Methodology (<a href="http://www.objectprocess.org/" target="_blank">http://www.objectprocess.org/</a>)<br>

 I have read the book and after my summer vacation I will start experimenting with OPM for design of Erlang/OTP systems.<br><br>Cheers,<br>Torben<br></div>
<br>_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
<a href="http://www.erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://www.erlang.org/mailman/listinfo/erlang-questions</a><br></blockquote></div><br><br clear="all"><br>-- <br>John S. Wolter President<br>
Wolter Works<br>Mailto:<a href="mailto:johnswolter@wolterworks.com">johnswolter@wolterworks.com</a><br>Desk 1-734-665-1263<br>Cell: 1-734-904-8433<br>
</div>