LO1 Describe and evaluate fundamental formal methods concepts
LO2 Analyse and critically review the role of formal methods in the software life cycle
LO3 Critically evaluate the role of tools and methods supporting formal software development
If for any reason this is not forthcoming by the due date your module leader will let you know why and when it can be expected. The Associate Professor Student Experience ([email protected]) should be informed of any issues relating to the return of marked coursework and feedback.
Note that you should normally receive feedback on your coursework by no later than 20 University working days after the formal hand-in date, provided that you met the submission deadline.
When completed you are required to submit your coursework via: Turnitin through an assignment submission portal on Blackboard If you need any support or advice on completing this coursework please visit the Student Matters tab on the Faculty of Computing, Engineering & Media Blackboard page
These include plagiarism, cheating, collusion, copying work and reuse of your own work, poor referencing or the passing off of somebody else’s ideas as your own. If you are in any doubt about what constitutes an academic offence or bad academic practice you must check with your tutor. Further information and details of how DSU can support you, if needed, is available at academic offences link and bad academic practice link.
The finite state machines produced The construction of combined machines Describe the meaning of a finite state machine
LO2 The simulation and test cases The definition of equivalence Transformation of one formal description to another one
LO3 Critical evaluation of formal methods and tools Use of Statecharts to formalise a real world example
a) Produce a model of each of the following machines together with an appropriate set of documentations which includes: the specification of the models, the models themselves, design decisions and their simulation and test cases (using JFLAP):
i) Machine N for dispensing a number of snacks.
ii) Machine M for dispensing a number of snacks.
iii) Machine P for dispensing a drink.
iv) A combined P-N machine in which a number of snacks are dispensed after the drink. Note: payment for machine P is separate from machine N.
v) A combined P-M machine in which a number of snacks are dispensed after the drink. Note: payment for machine P is separate from machine M.
vi) A combined M-P machine in which a drink is dispensed after a number of snacks. Note: payment for machine M is separate from machine P.
b) Explore the notion of equivalence between FSMs in general.
Critical evaluation of formal methods and tools Use of Statecharts to formalise a real world example
a) Critically analyse the limitations of finite state machines (FSM) in modelling reactive systems and discuss how these limitations are overcome in Statecharts.
The procedure for exiting the red room and entering the green room is as follows:
• Enter the right orange corridor via door D2.
• If infrared sensor IR1 detects somebody then door D2 will close.
• If D2 is closed then the right corridor is decontaminated. This procedure takes 1 minute.
• If the decontamination procedure has completed then the door D3 will open.
• If infrared sensor IR1 does not detect somebody then door D3 will close.
• If door D3 is closed then door D2 will open.
• The two decontamination procedures are different in that the left one is lethal to humans. The right one is human friendly.
• As experiments in the red room are potential dangerous doors D2 and D3 should not be open at the same time. Similarly doors D0 and D1. Specify the above AREA-42 system using Statecharts.
Check your answer by simulating that a staff member first enters the left orange corridor and then enters the red room. After a while the staff members returns to the green room via the right orange corridor.