Emulink: Simulink environment for PVS

download Emulink: Simulink environment for PVS

If you can't read please download the document

description

Emulink: Simulink environment for PVS

Transcript of Emulink: Simulink environment for PVS

  • 1. Enrico D'Urso Work in collaboration with: Dr. Paolo Masci, Prof. Paul Curzon and Prof. Cinzia Bernardeschi

2. Outline Background on PVS and PVSio-Web Emulink: a new extension of PVSio Web ( formal specifications for software engineers ) Graphical specification editorAutomatic generation of PVS specificationsVisualisation of PVS specifications 3. PVS: A brief introduction The Prototype Verification System (PVS) is a specification language integrated with support tools and an automated theorem prover. PVS is a mechanized environment for formal specification and verification. 4. PVSio-Web: rapid prototyping of safety-critical device user interfaces A graphical environment to demonstrate the behaviour of user interface models.It is divided in two parts: Client side (front-end), where pvs functions are invoked Server side (back-end), where pvs functions are executed and the new pvs state is sent back to the client 5. PVSio-Web: technologies PVSio-web uses web-tecnologies: supported by all major OSssupported by mobile devices 6. Prototyping of medical device user interfaces with PVSio-web To prototype a medical user interface the designer performs the following steps in the UI builder of PVSio-web: A picture of the device user interface is uploaded in the PVSio-web front-end, and the associated PVS specification needs to be developed After defining interactive areas with the UI builder, the UI simulator of PVSio-web is used for exploring the behaviour of the device user interface 7. PVSio-web original version 8. New functionalities Management of files (e.g.,open/close/rename )Display widget (e.g., gauge)Emulink: a Simulink environment for PVS 9. Emulink: motivation PVSio-web reaches two classes of users: 1) Domain experts (e.g., medical devices experts, human factors experts ) 2) PVS experts We want to reach a third class: Software engineers/Computer scientists 10. Emulink: motivation Engineers generally develop system models using state machine-based diagrams. 11. Emulink: Simulink environment for PVSNow, we are going to show a first feature of Emulink: Creation of PVS specification starting from a state machine-based diagram. 12. Emulink: Simulink environment for PVS 13. Emulink: Simulink environment for PVS 14. From PVS specification to state machine diagram Users can obtain a state machine diagram starting from a specification. Of course, they can extend the specification using our tool. 15. Engaging with Engineers/CSs 16. Using Emulink to illustrate a bug found in a medical device user interface 1. We demonstrate the bug using a simulation (e.g., useful when engaging with medical device experts) 2. We explain the bug using a state machine diagram (e.g., useful when engaging with engineers/computer scientists) 17. Device specification (data entry) Max rate: 1200 Rate values greater or equal to 100 shall not have decimal points (e.g.,100.1 is not permitted) 18. Demonstration of the bug using the Prototype builder 19. Illustration of the bug using Emulink 20. Conclusions We have presented Emulink It allows to create PVS specification using state machine diagrams (and viceversa) It makes PVS specifications accessible to developers who are not familiar with the PVS languageFuture work includes extending Emulink to support advanced Simulink language constructs 21. Download PVSio-web Download link: http://thehogfather.github.io/pvsio-web/ 22. Join Us If you are interested in developing Pvsio Web, please get in touch with us! Contacts: [email protected] [email protected] [email protected]