Presentation is loading. Please wait.

Presentation is loading. Please wait.

Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the.

Similar presentations


Presentation on theme: "Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the."— Presentation transcript:

1 Defects of UML Yang Yichuan

2 For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the case itself.

3 UML Abstract syntax: give key concepts of UML, consists of a class diagrams and natural language discriptions. Well-Formedness rules: construction rules. (OCL language). Semantics: Interpretation of the concepts and rules. (mainly are natural languages)

4 First type: Specification Some characteristics are specified in UML specification but not prescribed how to denote or interpret

5 A Case… A client-server system : The server-side provide an specific QOS level based on the number of clients. => a lot of SDs for complete behavior description.

6 Sequence Diagram Built at two different levels of abstraction: (1). Classifier layer (2). Instance layer Multiplicity attribute: specification of the range of allowable cardinalities that a set may assume. (Frequently used in class diagram).

7

8

9 Solution MSC: Message Sequence Charts. Inline expression: simultaneous, conditional, iterative, message exchanging.

10

11

12

13 Sequence Diagram[1]

14

15

16 Multiplicity(1,n)

17 Multiplicity(1,n…m)

18

19 Other factors Some characteristics are not supported but required by the practice. For example: Agent domain modeling

20 Formalism Problem Rigorous automated analysis or to execute a UML model in order to test its behavior

21 Methodology 1. Transformational approach in which certain UML diagrams are translated to an existing formalism, such as Z, B, VDM, CSP, Petri-Nets, PVS, etc. 2. Directly provide formal semantic models for the UML models and then provide the combination of the different models for consistency checking.

22 One Case The sequence diagram again Consistent problem.

23 Solution in Ref[2] Abstract syntax form, a well-formed sequence diagram corresponds to an ordered hierarchical structure tree. Static semantics of a sequence diagram is to check whether it is consistent with the class diagram declaration and the well-formed tree structure. Dynamic semantics is defined in terms of the state transitions that are carried out by the method invocations in the diagram. When a message is executed, it must be consistent with system state, i.e., object diagram and the state diagrams of its related objects.

24 Model for Class Diagram Notation of the Class Diagrams: CN: the finite set of classes identified in the diagram. attr(C): the set of {,..., } attributes of C, where Ti stands for the type of attribute ai of class C. AN: the finite set of associations names captured in the diagram and the set Ass of associations that is a subset of CN × AN × CN. method(C) is the set of all methods of class C in the diagram.

25

26

27 Model for the SD msg = (obj : Ci, obj : Cj, action, order) Tree structure : And the execution of messages (i.e. execution of the method represented by the message) in the sequence diagram must follow the traversing rule of first root then son trees from left to right.

28

29

30 Computational Model Combine the class diagram model and the SD model to model a design of a system. A transition or action system.

31 Four Tuple

32

33 Formal semantic (static)

34 Formal semantic (Dynamic) Some consistency tested: 1.An invocation of a method of an object by another object is not allowed when there is no link between the two objects. [82 percent or more people make mistakes]. 2. An object can create a new object only when it has already existed and the new object must not exist in the current state.

35 UML tools and practices

36 Existing tool support CASE (Computer aided software engineering) No support for OCL, no syntax error checking Some research on the tools for the UML

37 Multiplicities in UML CSD Sequence Diagram, Classifier Sequence Diagram Instance level and Class level, multiplicities in Class level No clear specification, and tool support.

38 Check UML consistency 1) UML diagrams are stored in relational databases. 2) Rules corresponding to a diagram are used as triggers defined over these schema that stores the diagram. 3) On addition/modification of a diagram, triggers are evaluated and on violation of a rule, corresponding trigger is fired.

39

40 1) Function body is missing for function get marks(Integer marks) of the concrete class Student. 2) Association ends are not uniquely labeled for association dened between Student and Student Record. 3) Association end name register for is also used as a feature in association class Registration. 4) Navigation from interface class Student Record is not possible. 5) The class Student has more than one association end navigable from it with the same name. 6) The interface Student Record has variables marks, StudentID. 7) Again the same interface has private members get marks.

41 Check tool 1) a method to store UML diagrams in relational database. Even though, UML diagrams are being represented in XML for ease in portability and transmission, we have taken a conscious decision of choosing relational database as a repository to make use of facilities available with RDBMS. For example, we have made use of trigger mechanism to check consistency in UML diagrams. 2) a method of translation of OCL statements to SQL statements. 3) the use of active tables to report inconsistency in a UML diagram.

42 Analysis beyond UML UML is semi-formal at best, what’s the best practice to analysis? What does typical analysis documents contain? Which part of UML are really used? What kind of non-UML documentation is used?

43 Overview of analysis modules For large information system Functional Requirements: business plan Data, UI, Environment: Interface to other layer Essentials: Technical Architecture Miscellaneous: Reading instructions

44 17 modules for a typical analysis documentation ONLY 3 use UML at all.

45 Details of a analysis document Function requirements, only UML user case diagrams are used. Do not use activity diagram for business process: different part of the organization and crossing software boundaries

46 Details of a analysis document The UML provide methods inside objects, function maybe more suitable for describe requirements. UML does not provide special elements for data types, so plain text could save you time

47 Details of a analysis document UML only has interaction diagram related to UI design. There are still things like layout can not be addressed of.

48 Conclusions We have to meet the challenge of managing large semi-formal documents.

49 Thank you Questions?


Download ppt "Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the."

Similar presentations


Ads by Google