Figure 7 - uploaded by James Amor
Content may be subject to copyright.
1: Two Sequence Diagrams showing a restaurant scenario with a Customer, Waiter and Chef. In a UML-B Sequence Diagram these two diagrams would produce the same animation script, but are different in meaning. Diagram (a) shows a model where the originating Class of an event is determined by the last Class to accept an event, which produces the meaning that the Chef is ordering a drink. Diagram (b) shows the real meaning that was required in this diagram, where it is a Customer who orders a drink. 

1: Two Sequence Diagrams showing a restaurant scenario with a Customer, Waiter and Chef. In a UML-B Sequence Diagram these two diagrams would produce the same animation script, but are different in meaning. Diagram (a) shows a model where the originating Class of an event is determined by the last Class to accept an event, which produces the meaning that the Chef is ordering a drink. Diagram (b) shows the real meaning that was required in this diagram, where it is a Customer who orders a drink. 

Source publication
Article
Full-text available
The UML-B notation has been created as an attempt to combine the success and ease of use of UML, with the verification and rigorous development capabilities of formal methods. However, the notation currently only supports a basic diagram set. To address this we have, in this project, designed and implemented a set of extensions to the UML-B notatio...

Similar publications

Chapter
Full-text available
Software systems have failed in the recent past. This is most often attributed to wrong requirements often caught very late in the program or escapes from the rigorous process leading to failures. There is a necessity to ensure that the requirements are correct up front before the design and verification process start. Formal methods have become po...

Citations

... sed for model oriented specification through special features of the language provided for this reason and called "schemas". Schemas are used to describe both static and dynamic perspectives of There are several Z editing tools, such as CADIZ [25]; ProofPower [18]; B-Tool, [4]; the Type Checker ZTC, and Z/EVES [22]. Each one of those tools has its own properties, and features despite the fact that all of them use Z on the background. ...
Article
Full-text available
methods are used to provide formal and systematic models that can be used in software development to improve the correctness in those models. Formal methods are crucial, particularly, in critical systems where even minor mistakes can be pricey. I formal method tool: ZEVES is used to describe requirements for two systems formally. Formal requirements are then used as an input for a tool used to automatically generate, execute and verify test cases. Path coverage algorithms are used t o evaluate the effectiveness of the generated test cases and the ability of the formal model to describe all or most of the system functional requirements. Formal methods are used to provide formal and systematic models that can be used in software development to improve the correctness in those models. Formal methods are crucial, particularly, in critical systems where even minor mistakes can be pricey. I n this paper, a formal method tool: ZEVES is used to describe requirements for two systems formally. Formal requirements are then used as an input for a tool used to automatically generate, execute and verify test cases. Path o evaluate the effectiveness of the generated test cases and the ability of the formal model to describe all Software testing is an expensive stage in software development. is stage has been the main subject for software testing researchers. The main approaches for such cost reduction includes: automation, and using formal methods to improve coverage and accuracy with a small number or subset of test cases. rocess aims to ensure to both the customer and developer that the software meets the business and technical requirements and find defects or faults in the software that show deviation from users expectations, logical, semantic errors, etc. (23). hows a general model for the testing process activities. The oval icon represents a testing sub stage or activity while the rectangle represents an activity output or deliverable. For example the output of test case generation) is a set of test cases. Those are used as an input for the test execution process by defining input test cases along with expected results. Once test cases are executed and results are gathered actual outputs are