UML-B notes for 0.5.8
Using notes or text boxes on diagrams causes Rodin to crash
Problem - When more than one character is typed in a Note or Text box on a UML-B diagram Rodin exits due to a memory violation error. This appears to be a GMF problem because it also happens in other GMF diagram editors such as the EMF ecore diagram. The problem may be restricted to Mac computers.
Workaround - Do not use Notes or Text Boxes
Associations and Attributes on Class or Context diagrams are not automatically removed when the model element changes
Problem - When the underlying model element (UML-B Attribute) changes the diagram is not updated to remove a no longer applicable association arrow and/or attribute. For example, when an association arrow is deleted, the corresponding attribute in the source class or classType should be deleted and visa versa. If the type of an association is altered in the properties view, a new association arrow will be drawn to the new target class but the old association arrow is not removed. In some cases the remaining incorrect diagram view can be annotated inappropriately
Workaround - Manually delete the incorrect association or attribute. In general, it appears better to delete the association arrow first and then the attribute. If problems persist in the diagram, close the diagram, delete it and re-create it from the parent diagram (using the pop-up menu or properties button, 'open diagram').
Machine level diagram elements can be dragged into Classes
Problem - Machine level variables, events, statemachines can be dragged into the corresponding compartment of a Class. Once there it is difficult to remove them again.
Workaround - Avoid doing it in the first place. If necessary delete the element and recreate it.
Inverse function ~ doesn't work with dot notation. Use normal event-B notation instead.
Diagram and Event-B file names are not changed/deleted if model is altered directly from EMF editors or model tab of properties view
Supertype links cannot be drawn to Refined Class or Extended Class Type
Machine variables cannot be retained in refinement without repeating their type invariant