forward engineering UML models into Smalltalk code

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

forward engineering UML models into Smalltalk code

Ben Coman
greetings all,

What tools exist to assist with the forward engineering of UML diagrams into Smalltalk code? 
I have been searching for some time but my results are swamped by tools that:
    - reverse engineer Smalltalk code into UML diagrams
    - implement new techniques moving beyond UML and MOF

I am implementing the [electric power system] Common Information Model of IEC 61970 in Smalltalk.  This is defined as a UML Class Diagram (part of which I have attached) maintained using Enterprise Architect, which can export into XMI format.  I hoped there might be a way to load the XMI directly into Smalltalk classes.  Manually implementing the inheritance structure is straight forward, and I've developed a template for the aggregate relationships but an automated function would help to assure correctness, consistency and to track changes in the model. 



Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] forward engineering UML models into Smalltalk code

hernanmd

2011/8/9 <[hidden email]>
greetings all,

What tools exist to assist with the forward engineering of UML diagrams into Smalltalk code? 
I have been searching for some time but my results are swamped by tools that:
    - reverse engineer Smalltalk code into UML diagrams


For example to draw UML of the Url hierarchy you may download the Moose environment (http://www.moosetechnology.org/) and evaluate
| view |

view := MOViewRenderer new.
view shape: UMLClassDiagram new umlShape.

view interaction popupText.
view nodes:  Url withAllSubclasses asArray.
	
view shape: (MOArrowedOrthoVerticalLineShape new).
view edgesFrom: #superclass.

view layout: MOTreeLayout new.
view open
there are more examples in the Moose Easel window.

 
    - implement new techniques moving beyond UML and MOF

I am implementing the [electric power system] Common Information Model of IEC 61970 in Smalltalk.  This is defined as a UML Class Diagram (part of which I have attached) maintained using Enterprise Architect, which can export into XMI format.  I hoped there might be a way to load the XMI directly into Smalltalk classes.  Manually implementing the inheritance structure is straight forward, and I've developed a template for the aggregate relationships but an automated function would help to assure correctness, consistency and to track changes in the model. 









--
Hernán Morales
Information Technology Manager,
Institute of Veterinary Genetics.
National Scientific and Technical Research Council (CONICET).
La Plata (1900), Buenos Aires, Argentina.
Telephone: +54 (0221) 421-1799.
Internal: 422
Fax: 425-7980 or 421-1799.

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] forward engineering UML models into Smalltalk code

Ben Coman
Hernán Morales Durand wrote:

2011/8/9 <[hidden email]>
greetings all,

What tools exist to assist with the forward engineering of UML diagrams into Smalltalk code? 
I have been searching for some time but my results are swamped by tools that:
    - reverse engineer Smalltalk code into UML diagrams


For example to draw UML of the Url hierarchy you may download the Moose environment (http://www.moosetechnology.org/) and evaluate
| view |

view := MOViewRenderer new.
view shape: UMLClassDiagram new umlShape.

view interaction popupText.
view nodes:  Url withAllSubclasses asArray.
	
view shape: (MOArrowedOrthoVerticalLineShape new).
view edgesFrom: #superclass.

view layout: MOTreeLayout new.
view open
there are more examples in the Moose Easel window.
 
    - implement new techniques moving beyond UML and MOF

--
Hernán Morales
Thanks for your response Hernan.  Apologies for my late follow-up.  Since then I've been burnt out doing a 60-70hr work week on a project and haven't had the energy at home to do much.  That is definitely interesting and will be of use, but actually what I was looking for was way to move forward a UML model into code, rather than reverse engineering code into a UML model.