Implementing Hierarchical Features in a Graphically Based Formal Modelling Language Peter Henderson, Robert John Walters and Stephen Crouch Department of Electronics and Computer Science, University of Southampton, Southampton, UK.
Outline Visual Formal Models? The problem A solution (in RDT) Conclusion
Formal models An aid to building distributed systems Execution Rigorous analysis Appeal of visual interface
RDT Visual Modelling Language Processes Communication via channels Tools for: Model Creation Execution Translation to Promela
What goes wrong Diagrams become cluttered Simple solution: Hide low level details within processes RDT does this by showing only the name/type of processes and their channels in model diagrams But this is not the whole solution
The Problem: What we would like to draw:
What we actually do: The Problem
A process for the election algorithm
Using processes to build a model
Executing the model
Building the same model with connectors
The Connector in RDT
Issues: Need to distinguish which end of a connector is which Dangling ends: What if about channels in the process not in the connector? What about channels in the connector not known to the process? What about channels which connect at just one end?
Conclusion Visual Formal Models can be useful Single level diagrams get cluttered Addressing this requires attention to channels as well as processes, but it can be done