NSERC Summer Research 26 August 2004 Domain-Specific Visual Modelling Denis Dub´ e School of Computer Science, McGill University, Montr´ eal, Canada Modelling, Simulation & Design Lab (MSDL) NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 1/25
� � � Domain-Specific Visual Modelling Enables working directly with domain concepts High level of abstraction Some Examples: DCharts, StateCharts, Petri-Nets, GPSS, Timed Automata, Reachability Graphs, Causal Block Diagrams NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 2/25
Causal Block Diagram Harmonic Oscillator 0.0 x0 K 0.0 1.0 x IC − OUT I y0 1.0 PLOT y IC NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 3/25
GPSS Telephone Simulation Function: 1 LNKS 10 12 FN1 V2 2 R PH1 0 1 V1 PH 1 LNKS LR PH1 PH2 LR R PH1 LNKS 2 V1 H S PH2 P1 NE P2 120 FN1 1 S PH1 NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 4/25
Petri-Nets Power Window Controller in_control.Neutral_32x31 in_control.Neutral_33x32 1 control.Neutral in_control.MovingDown_33x in_control.MovingDown_32x 0 0 0 Low_Top Med_Top Hi_Top in_control.MovingUp_31x32 in_control.MovingUp_32x33 startMovingDown StopMovingDown in_plant.Hi_Top in_plant.Hi_Bot StopMovingUp startMovingUp in_control.movingDown_31x in_control.movingUp_and_o in_control.Neutral_22x21 in_control.Neutral_23x22 0 0 cmdUp cmdDown control.movingUp control.movingDown in_control.MovingDown_22x in_control.MovingDown_23x 0 0 0 Low_Mid Med_Mid unconditional Hi_Mid in_object.Present_and_con in_object.Present_and_con in_control.movingDown_21x in_control.movingUp 0 control.Emergency in_control.Neutral_13x12 in_control.Neutral_12x11 in_control.MovingDown_13x in_control.MovingDown_12x 1 0 0 Low_Bot Med_Bot Hi_Bot in_control.MovingUp_11x12 in_control.MovingUp_12x13 1 removeObject 0 0 0 cmdUp cmdStop cmdDown 0 object.Present removeObject insertObject gen_cmdDown gen_cmdUp gen_cmdStop 1 object.Absent 1 insertObject 1 cmd NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 5/25
� � � Domain-Specific Modelling Environment Meta-modelling specifies the syntax of domain specific modelling formalisms explicitly, in the form of a model Thus a meta-modelling tool allows domain experts to build a meta-model and synthesize a domain-specific modelling environment from it. One such tool is AToM 3 (A Tool for Multi-formalism Meta-Modelling), developed by the Modelling, Simulation and Design Lab NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 6/25
� � � � Visually Modelling The Syntax Enables intuitive creation of meta-models Visual entities are connected to denote relationships Dynamic visual attributes such as names can be set Dynamic pre/post conditions can be set to alter model behaviour NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 7/25
Annotation Meta-Model TextAnnotationBox TextAnnotation text type=Text init.value= text type=Text init.value=T charHeight type=Float init.value=18.0 autoOptimizeArrow type=Boolean init.value=True charWidth type=Float init.value=7.5 autoResize type=Boolean init.value=True autoOptimizeArrow type=Boolean init.value=True TextAnnotationRound TextAnnotationRoundedBox text type=Text init.value= text type=Text init.value= charWidth type=Float init.value=7.5 charWidth type=Float init.value=7.5 charHeight type=Float init.value=18.0 charHeight type=Float init.value=18.0 autoResize type=Boolean init.value=True autoResize type=Boolean init.value=True autoOptimizeArrow type=Boolean init.value=True autoOptimizeArrow type=Boolean init.value=True AnnotationArrow Anchor autoOptimizeArrow type=Boolean init.value=True showAnchor type=Boolean init.value=True NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 8/25
Icon-Editor Francois Plamondon NSERC USRA, Summer 2003 http://moncs.cs.mcgill.ca/people/fplamo/summerwork.dtml NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 9/25
Annotation Model MSDL Philosphy: Everything is a model. Even annotations are modeled This particular model sports instead of hardcoded. many pre/post conditions which can be controlled by editing the attributes of individual nodes. The above text containers can dyanmically re−size to fit the text, and the arrows are automatically adjusted to a smooth gentle curve. NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 10/25
Visual Modelling Environment Thus far, the visual meta-modeling process is described from a static point of view Some of the key components of an interactive visual modelling environment are: 1. Visual environment behaviour 2. Layout in static models, unchanging 3. Layout in dynamic models, undergoing graph transformations NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 11/25
Visual Environment Behaviour Philosphy: ”Everything is modelled explicitly” 1. The behaviour was modeled as a DChart, a form of StateCharts, that is in turn a form of finite state automata 2. The model was then simulated with SVM to ensure correct behaviour 3. Python code was generated from the model using SCC DCharts, SVM, and SCC were developed in Thomas Feng ’s M.Sc. thesis. NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 12/25
DCharts GUI Behaviour NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 13/25
DCharts GUI Behaviour NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 14/25
� � � � Static Layout An extensive review of the existing litterature and tools was conducted In particular, one tool, yED, proved very powerful yet free to download Thus the ability to export AToM 3 models to several common graph languages was implemented The ability to export and import from yED, to preserve the AToM 3 model appearence, was also implemented NSERC summer research, 26 August 2004 d3n14@yahoo.com Domain-Specific Visual Modelling 15/25
Recommend
More recommend