Home   :   Other Stuff   :   xUML in Second Life   :   xUML Prototype


The 3D Executable UML Model Prototype


To fully evaluate the opportunities that virtual environments present a very simple Executable UML model demonstration was constructed.  Scripts were written for all parts of the model to visually show how the various dynamic modeling constructs in xUML interact to specify functionality.


The xUML model and its workings are described in gruesome detail here.  Descriptions of Executable UML semantics actually operating in a simulated model are few and far between, yet this is an excellent way to gain an appreciation of the power and simplicity of the method.


The Software Architecture chosen allows any number of state actions to be executing concurrently, but of course only one state action per state machine may execute at the same time.


It should be noted that this is just one implementation architecture out of the many possible that is shown here and is perhaps a little more sophisticated that the usual novice software architecture where only one state across the model is allowed to execute at one time.


Some changes to the usual UML notation were necessary for its adaption to the 3D world.  The xUML diagrams (Class Diagram and State Charts) were combined and a few liberties taken with the modeling formalism but the essential semantics were preserved.


The model chosen was based on a very old test model known as the Ping Pong model.  It was mainly used to provide a quick check that a newly installed Model Compiler was working correctly.


Kennedy Carter's Action Specification Language (ASL) which is a Platform Independent Language is used to describe what happens in the states.  ASL is not an implementation language (like C++, Java or Ada) but is always translated to an implementation language using a Model Compiler, thereby maintaining model and language independence.


The model produces a sound whenever something significant happens.  For example, when a signal is sent or a state is entered.  However, instead of the hoped for sweet music of clunk, clunk, click of state machines, an irritating random noise was generated.


Also, just for fun a token 3D token Domain Specific Language (DSL) model was built and this was located between the two classes next to the blue pyramid.

Copyright 2017 Dark Matter Systems Ltd. All Rights Reserved.