Presentation is loading. Please wait.

Presentation is loading. Please wait.

UML Diagrams A tool for presentation of Architecture.

Similar presentations


Presentation on theme: "UML Diagrams A tool for presentation of Architecture."— Presentation transcript:

1 UML Diagrams A tool for presentation of Architecture

2 UML origins 80’s and early 90’s – explosion of modeling methods and notations Not to mention competition among methods people The “three amigos” (Booch, Jacobson, Rumbaugh) were working on the UML by 1996 OMG issued UML 1.3 in March, 2000

3 UML is Language Good for communication Standardization is essential Mostly graphical Example: used everywhere in Fowler NOT method You can use any design method you like to create UML diagrams Standardization can be helpful, but is not so important

4 More precise, less precise … Precision Usefulness in design Natural language Code UML

5 UML diagram types Static diagrams Use case Class Dynamic diagrams Object State Activity Collaboration Sequence Implementation diagrams Component Deployment

6 Use Case Diagram Elements Order Book Enter Credit Card Order Merchandise > consumer Check Order Status Remember: the ovals are use cases, NOT use case steps Use case names should be: Action-verb + object-phrase

7 Use Case Diagram

8 O-O Diagrams Class – static relationships Inheritance, composition, association,dependency Object – dynamic snapshot Object relationships at runtime, processes,threads

9 Classes Class name Attributes Operations Interface

10 Relationships dependency association generalization realization

11 Class Diagram

12 Stereotypes Text in > are stereotypes Stereotypes should be defined in the project’s glossary. Examples: > Runnable + run( ) : void > BankMessage + balance : Money + account : long

13 Behavioral Diagrams Sequence Interaction (for one use case) viewed by time Collaboration Interaction (for one use case) viewed by structure State Chart Internal state of an object (or class) across multiple use cases Activity Interaction of multiple objects across multiple use cases (includes concurrent activity)

14 Sequence diagram

15 System Sequence diagram (a way to draw use case steps) :Customer:Amazon.com:creditCardSvc Add book to cart Confirm cart contents Request checkout Request authentication Provide credentials Present options Provide credit card info, shipping options Validate card Confirm order See Larman, Chpt 9 (2 nd edition)

16 Summing up UML is responsibility-oriented UML diagrams are a means to an end OOAD allows many benefits, but does not guarantee them

17 UML Usage Guide Use the diagrams to communicate Don’t become a slave to the diagrams What you leave out is as important as what you put into the diagram! Highlight important details; leave the rest out Rule of thumb: when in doubt, leave it out.

18 Review question Why are there so many types of diagrams?

19 Bonus material

20 Three levels of class diagrams Conceptual view Boxes are concepts, associations are associations :-) Concepts may or may not correspond to classes Specification view Boxes are interfaces Associations imply responsibilities Implementation view Boxes are classes Associations imply navigability Following Fowler, UML Distilled

21 Behavioral Things message state Alice:Employee object asynch message

22 Components and Nodes componentnode

23 System Packaging Component Diagrams Modules and Packaging of software Deployment Physical Layout Hardware


Download ppt "UML Diagrams A tool for presentation of Architecture."

Similar presentations


Ads by Google