On 14.02.2008 02:42, David Zmick wrote:
How do you make a UML model for smalltalk code?
-- David Zmick
UML is a modeling language and doesn't care about code. So you can model Smalltalk or Java programs or whatever. UML has static typing, and a large part of it collapses if you ignore type.
UML is a large language designed to cater for a multitude of requirements. The intention is that you select the parts you need and disregard the rest (which will be the larger part). The key for you is to decide why you want to model your program. This boils boils down to deciding why you are not satisfied by just writing and reading the code.
IMO Smalltalk (like Java) lacks facilities for describing systems and particularly system behavior. UML 2.x has very powerful facilities for such modeling and could prove useful both for design and for documentation.
There are many UML tools. I have only tried one or two and found them extremely heavy to use. I have found they are generally not worth the added complexity and hassle. (I recently tried to get an understanding of Traits by drawing its class diagram. It did not help me at all.)
Many UML tools provide code generation. The ones I have seen were very incomplete even for Java. For Smalltalk, you would have to provide the translation algorithms yourself.
I suggest you select a few UML diagram types and use them for informal (back-of-envelope) design purposes. Any other use would be contrary to the spirit of Smalltalk.
Cheers --Trygve