UML-B is a graphical formal modelling notation that relies on Event-B for its underlying semantics and is closely integrated with the `Rodin', Event-B verification tools. UML-B is similar to UML but has its own meta-model. UML-B provides tool support, including drawing tools and a translator to generate Event-B models. When a UML-B drawing is saved the translator automatically generates the corresponding Event-B model. The Event-B verification tools (syntax checker and prover) then run automatically providing an immediate display of problems which are indicated on the relevant UML-B diagram.The UML-B modelling environment consists of a UML-B project containing a UML-B model. Four interlinked diagram types (package, context, class and statemachine) are available. Package Diagrams are used to describe the `refines' and `sees' relationships between top level components (machines and contexts) of a UML-B project. UML-B mirrors the Event-B approach where static data (sets and constants) are modelled in a separate package called a `context'. The context diagram is similar to a class diagram but has only constant data represented by ClassTypes, Attributes and Associations.ClassTypes define `carrier' sets or constant subsets of other ClassTypes.
[1]
Colin F. Snook,et al.
UML-B: Formal modeling and design aided by UML
,
2006,
TSEM.
[2]
Michael Butler,et al.
UML-B and Event-B: an integration of languages and tools
,
2008,
ICSE 2008.
[3]
Jeanine Souquières,et al.
Integrating UML and B Specification Techniques
,
2001,
GI Jahrestagung.
[4]
David Clark,et al.
UML to B: Formal Verification of Object-Oriented Models
,
2004,
IFM.
[5]
Sherry Shavor,et al.
The Java Developer's Guide to Eclipse
,
2003
.
[6]
Colin F. Snook,et al.
Rigorous engineering of product-line requirements: A case study in failure management
,
2008,
Inf. Softw. Technol..
[7]
Ivar Jacobson,et al.
The unified modeling language reference manual
,
2010
.