Implementing hierarchical features in a graphically based formal modelling language

Many developers who could benefit from building and analysing formal models of their systems are deterred from doing so by the process algebra style input languages of formal modelling languages which they find difficult to read and understand. This barrier to the adoption of formal modelling techniques can be significantly reduced if the process algebra is replaced with a graphical notation supported by a model generation tool. However, whilst having a diagrammatic base for the language appeals to the novice modeller, the diagrams can become cluttered for larger models. In this paper we address the issues of how to add hierarchical features to a graphical language without losing the fundamental benefits and appeal of having the graphical interface to the language. We illustrate these ideas using an existing formal modelling language

[1]  Robin Milner,et al.  Communication and concurrency , 1989, PHI Series in computer science.

[2]  William F. Gilreath,et al.  Concurrency State Models and Java Programs , 2000, Parallel Distributed Comput. Pract..

[3]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[4]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[5]  Robin Milner,et al.  Elements of interaction: Turing award lecture , 1993, CACM.

[6]  Gerard J. Holzmann,et al.  The SPIN Model Checker - primer and reference manual , 2003 .

[7]  Robert John Walters,et al.  A graphically based language for constructing, executing and analysing models of software systems , 2002, Proceedings 26th Annual International Computer Software and Applications.

[8]  Robin Milner,et al.  The Polyadic π-Calculus: a Tutorial , 1993 .

[9]  Gerard J. Holzmann,et al.  v-Promela: a visual, object-oriented language for SPIN , 1999, Proceedings 2nd IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'99) (Cat. No.99-61702).

[10]  John M. Wilson,et al.  Business Processes: Modelling and Analysis for Re-engineering and Improvement , 1995 .

[11]  Peter Henderson,et al.  POSD-a notation for presenting complex systems of processes , 1995, Proceedings of First IEEE International Conference on Engineering of Complex Computer Systems. ICECCS'95.

[12]  David N. Turner,et al.  The polymorphic Pi-calculus : theory and implementation , 1996 .

[13]  Robert John Walters,et al.  Automating checking of models built using a graphically based formal modeling language , 2003, Proceedings 27th Annual International Computer Software and Applications Conference. COMPAC 2003.

[14]  M. M. Kamal Hashmi,et al.  Design and use of a system-level specification and verification methodology , 1995, Proceedings of EURO-DAC. European Design Automation Conference.

[15]  G. H. Hilderink,et al.  Graphical modelling language for specifying concurrency based on CSP , 2003, IEE Proc. Softw..