Top Banner
Visual Formal Methods R J Walters
27

Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

Dec 20, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

Visual Formal Methods

R J Walters

Page 2: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

Introduction

Motivation The Language The tools An example Conclusion

Page 3: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

Issues in large systems

Connecting the parts

Getting the result to make sense

Page 4: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

RDT

Draw your processes (components) Draw how they are connected Run the model in the execution tool Use a model checker on it - SPIN * Limitations are accepted in exchange

for ease of use

Page 5: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

RDT: Processes

Process has state Displayed as a picture Built using system of dialogue boxes 3 types of event

– Receive– Send– Create

Page 6: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

RDT: Events, Receive

State 1

State 2

ReceiveEvent Value Channel

Page 7: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

RDT: Events, Send

State 1

State 2

SendEvent Value Channel

Page 8: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

RDT: Events, Create

State 1

State 2

CreateEvent NewValue Channel

Page 9: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

An example process

Page 10: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

An example process

Page 11: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

RDT: Models

Add instances of processes to your model

Describe how these instances are (initially) connected

Page 12: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

Models: Process Instances

Inst1: ProcTypeCh2

Ch1

Inst2: ProcTypeCh2

Ch1

Page 13: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

Models: Connections

Inst1: ProcTypeCh2

Ch1

Inst2: ProcTypeCh2

Ch1

Page 14: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

Example model

Page 15: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

Example model

Page 16: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

What next?

Execute the model

Use a model checker on it

Page 17: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

Channels:

Communication in RDT is founded on the pi-calculus

Similar identity between values and channels

RDT also permits asynchronous communication

– Need channels in the execution tool

Page 18: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

Executing the model

Each Process instance has a window which shows:– Name and type– State– List of available actions– List of local channel names mapping these

to instances of channels

Page 19: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

Executing the model

Each Channel (instance) has a window which shows:– Name– List of values held in the channel

Page 20: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

The Execution tool

Page 21: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

The Execution tool

Page 22: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.

RDT: Conclusion

Language, model construction tool, execution tool, translation tool

Builds formal models using “informal” methods

Page 23: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.
Page 24: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.
Page 25: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.
Page 26: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.
Page 27: Visual Formal Methods R J Walters. Introduction Motivation The Language The tools An example Conclusion.