Upload
wyatt-berry
View
22
Download
2
Embed Size (px)
DESCRIPTION
Increasing the Flexibility of Modelling Tools via Constraint-Based Specification. Philip Gray & Ray Welland Computing Science Dept University of Glasgow, Scotland {pdg, ray}@dcs.gla.ac.uk www.dcs.gla.ac.uk/{~pdg, ~ray}. What this presentation is about. - PowerPoint PPT Presentation
Citation preview
Increasing the Flexibility of Modelling Tools via Constraint-Based Specification
Philip Gray & Ray WellandComputing Science DeptUniversity of Glasgow, Scotland{pdg, ray}@dcs.gla.ac.ukwww.dcs.gla.ac.uk/{~pdg, ~ray}
What this presentation is about
degree of configuration of most CASE tools is limited ad hoc (or at least not principled)
metaCASE offers the possibility of principled and systematic development of new or evolving tools customisation of existing (metaCASE
generated) tools
What this presentation is about
we are developing a generic constraint-based approach to tool specification in a metaCASE environment that offers wide range of modelling techniques configuration
of the modelling techniqueof editing toolof design support
Intrinsic vs Extrinsic Constraints
Intrinsic Constraint - “v2 must be = v1 * 2”
Extrinsic Constraint - “v2 should be = v1 * 2”
2
2
v1
v2
?v2
v2 = v1 * 2
checked byconstraint manager; different actions possible
v1 * 2v1 value updated when v1 changes
the constraint
Varieties of specification constraints
Design-Time Constraints
Core System
Constraints
Constraint Manager
Run-Time System
EmbeddedConstraints
Run-TimeConstraints
in tool specification language
in designer’s head
Tool Builder
Tool Specification
Varieties of specification constraints
Design-Time Constraints
Core System
Constraints
Constraint Manager
Run-Time System
EmbeddedConstraints
Run-TimeConstraints
in tool specification language
in designer’s head
Tool Builder
Tool Specification
Hard vs soft constraints
hard constraint - prohibits all actions that would violate the constraint
soft constraint - actions that violate constraints are possible during diagram construction
Levels of specification in a modelling tool
relationship levelboxes and lines (an uninterpreted graph)
representation levelthe semantics of the graph augmented to represent a software model
presentation levelthe appearance and interactive behaviour of the augmented graph
Using constraints to specify a modelling technique
examples of constraints to create a DFD modelling tool relationship:
must be fully connected graph representation:
must have a least one external source presentation:
external entities are displayed as ellipses
Other things we can do with constraints
style rulescritiquing - like Argo UML editor
guidelines automated “to do” list
automated or semi-automated proof of assertions over constraint set “Are the constraints consistent?”
DECS
Design Editor Constraint Systembased on
Napier 88-based prototype (Serrano 97) Representer System (Gray 96)
consists of model editing tools tool builder constraint specification language
DECS: the (target) modelling tool
AugmentedGraph
GraphView
Target Tool
AugmentedGraph
GraphView
Target Tool
DECS: the (target) modelling tool
ConstraintManager
ConstraintsBlah blah
Blah blah
Blah blah
Blah blah
Tool Generator
DECS: the modelling tool generator
AugmentedGraph
GraphView
Target Tool
ConstraintManager
Constraints Blah blahBlah blahBlah blah
Blah blah
AugmentedGraph
GraphView
Target Tool
ConstraintManager
Constraints
Tool Generatortool
specification( in VCt )
modellingtechnique
classes
DECS: the modelling tool generator
Blah blahBlah blahBlah blah
Blah blah
Constraint specification
conditionscopeaction parameters
critiquing message optionally
default valuecorrective action parameters
VCt : the DECS specification language
declarative language for describing modelling techniques
“There must be a least one external entity which provides input to the system”
e: ExternalEntity e Externals (dfd)
f: DataFlow f DataFlows(dfd)
(source(f) = e)
State of our work
Prototype DECS run-time system implemented in Java based on GEF limited techniques constraints semi-automatically
generated from XML specification limited run-time constraint editor
State of our work
current work VCt Java translator VPBE system for constraint generation addition of configurable augmented
graph for run-time technique configuration
enhancement of presentation level
Future developments
investigate specification methods VCt : is it usable? dynamic specification
support abstraction/explosion design history automatic verification
enhance range of corrective & supportive actions
The missing bit (Section 2.3)
Typically, design-time constraints are used to generate code that will prescribe the way in which the user can interact with the generated tool.