The Instrument Control and Simulation Modelling Language (ICSML)

The Instrument Control and Simulation Modelling Language (ICSML) - which is a domain specific language hybrid of Unified Modeling Language™ (UML™) and Systems Modeling Language (SysML) was proposed by Dr Darren Kelly and Webel in 2006, and presented at the Object Management Group Technical Meeting, Washington DC 2008 (download presentation). The aims include:

  • modelling of scientific instruments - such as radio-telescopes, beam instruments, and synchrotrons - in SysML, extended with hybrid support for software using UML.
  • direct control of instruments from SysML and UML diagrams and model elements via tool plugins.
  • simulation and animation for instruments direct from SysML and UML diagrams, including 3D/4D descriptor extensions.
  • automated generation of Java™ and Pure Data "patches" for real-time synthesis of sound (or music) and video (or light shows) from signals of controlled instruments.

One key to the proposal is the development of custom Java™ forward-engineering facilities for navigating SysML models (including recognition of flows and flowports, as well as ICSML extensions with control indicators) to extract and generate Java code that immediately expresses these concepts (such as ports) in Java, and makes SysML and ICSML concepts (such as Blocks, part Properties, shared/reference Properties, flows, FlowPorts) available to clients of a distributed ModelServer,

Another key is the use of UML™ Parsing Analysis to bind technical documentation such as design manuals sentence-by-sentence to navigable UML and SysML models (and also to forward and reverse engineering Java and Javadocs).

Visit also