A Brief Overview on the Scene Structure and Integration Modelling Language (SSIML)
A Visual Language to Specify the Integration of 3D Content into Applications
Focus
- Development support for software systems with integrated interactive 3D scenes, e. g. product configurators, virtual galleries, (distributed ) VR-applications, …
- Future research: AR-applications
Parts of software systems with integrated 3D content
- Domain specific base application: Application logic
- 3D scene: 3D world structure and objects
Interrelations between parts
- Base application handles events fired by the scene and modifies 3D scene
Integrating 3D Content into Applications: The Situation
Critical Points
- Communication between developer groups
- Lack of concepts & tools for a (semi-)formal abstract scene specification
- Scene integration by programming is an error prone and time consuming process
Solution Approach: The Scene Structure and Integration Modelling Language (SSIML)
- Visual modeling language
- Semi-formal specification of the scene and the relations between scene and base application
- UML extension
- Integration into UML tools
- Code generation for different developer groups
SSIML Development Process
Features of SSIML
- Platform independent scene description
- Scene graph based notation
- Small number of elements
- Compact and simple notation
- Division of complex scenes into subgraphs
- Reuse of subgraphs
- Namespaces for scene elements
- Declaration of cardinalities for nodes (copies and references)
- Comments for scene elements
- Several relation types for scene-application interrelations
Extensions of SSIML
- SSIML/Behaviour: Description of 3D object behaviour using UML2 statecharts
- SSIML/Components: Description of 3D components
- SSIML/AR: Modelling support for Augmented Reality applications
Example: The Car Configurator
Example: Behaviour Description
Example: Description of an Augmented Reality User Interface (PC Maintenance Instructor)
Results
The main results are concepts and a visual modeling language for the (semi-)formal specification of 3D scenes and their integration into applications.
Benefits of the abstract visual models are: The pre-implementation design, an aid to overcome communication problems, a documentation for improved maintainability and a contract between the developer groups.
Benefits of the generated code are: Error reduction, consistency between source codes of the different developer groups, the possibility to validate development results against models, method checks at compile time, decreased implementation costs and increased implementation efficiency.

