UML an overview Compiled by:Dr. Avi Rosenfeld Based on: http://my.ilstu.edu/~asharm4/432/432.ppt http://www.sts.tu-harburg.de/teaching/ws-97.98/OOA+D/4-4-Class-Advanced.ps חומר מד"ר דיין http://www3.interscience.wiley.com:8100/legacy/college/dennis/0471073229/ppt/ch15.ppt
UML Topics 1. The general picture 2. Use Cases 3. Class Diagrams 4. Sequence Diagram 5. State Chart Diagram
General Picture: 4+1 view Use Case view Understandability Logical View Functionality Process View Performance Scalable Throughput Implementation View Software management Deployment View System topology Delivery Installation
UML Diagrams UML includes diagrams for use cases static structures (class and object diagrams) behavior (state-chart, activity, sequence and collaboration diagrams) implementation (component and deployment diagrams). For data modeling purposes UML uses class diagrams, to which constraints in a textual language may be added
Diagrams in UML A Diagram is the graphical presentation of a set of elements, most often rendered as a connected graph of things and relationships. UML includes 9 such diagrams. 1. Class Diagram. V 2. Object Diagram. V 3. Use Case Diagram. V 4. Sequence Diagram. V 5. Collaboration Diagram. 6. State Chart Diagram. V 7. Activity Diagram. 9. Deployment Diagram.
Class Diagrams Class Diagrams describe the static structure of a system, or how it is structured rather than how it behaves. These diagrams contain the following elements. Classes, which represent entities with common characteristics or features. These features include attributes, operations and associations. Associations, which represent relationships that relate two or more other classes where the relationships have common characteristics or features. These attributes and operations.
Class Diagram Skill Name: String Desc: String Create(): Skill setName(): (Name:String) getName(): String setDesc(): (Desc:String) getDesc(): String destroy()
An Object and Object Instances PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Classes and Objects PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Class Hierarchy PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Object Diagrams Object Diagrams describe the static structure of a system at a particular time. Whereas a class model describes all possible situations, an object model describes a particular situation. Object diagrams contain the following elements: Objects, which represent particular entities. These are instances of classes. Links, which represent particular relationships between objects. These are instances of associations. .
דוגמא של כספומט
Class Diagram for Manage Appointment PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
תלות בין אובייקטים טרמינולוגיה של יחס יחס בשם Association אפשר לתת שם ל-association. כאשר נותנים שם ל-association, יש גם כיוון: ראה את השם Executes. אפשר גם לציין תפקיד role name . דוגמא
סוגים יש יחס מושג Multiplicity ערכים שמופיעים בקצוות הקו המקשר שתי מחלקות. כל ערך אומר כמה אובייקטים מכל מחלקה משתתפים ב- association .
Multiplicity PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Composition יחס בשם Aggregation רשימת היחסים יחס זה הוא יחס חלש. הוא ממודל בעזרת hollow diamond (יהלום חלול). רשימת היחסים היחס One-to-One relationship היחס One-to-Many relationship היחס Many-to-One relationship
Aggregation
Aggregation and Generalization Associations PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Composition
Use case diagrams Use Case Diagrams Use Case Diagrams describe the functionality of a system and users of the system. These diagrams contain the following elements: Actors, which represent users of a system, including human users and other systems. Use Cases, which represent functionality or services provided by a system to users.
High Level Use Case Diagram Manage Resources Resource Manager Manage Projects Project Manager System Admin System Administrator
Unassign Skill from Resource Assign Skill from Resource Managing Resources Use Case Diagram Add Skill Remove Skill Find Skill Update Skill Resource Manager Add Resource Find Resource Remove Resource Update Resource Unassign Skill from Resource Assign Skill from Resource
Actors
Use Case PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Use-Case Diagram for Specialized Actor PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Extends or Uses Associations PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Steps in Creating the Use Case Diagram 1. Identify use cases 2. Draw the system boundary 3. Place use cases on the diagram Group use cases into packages Add special use case associations 4. Identify the actors 5. Add associations PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Sequence Diagrams Sequence Diagrams describe interactions among classes. These interactions are modeled as exchange of messages. These diagrams focus on classes and the messages they exchange to accomplish some desired behavior. Sequence diagrams are a type of interaction diagrams. Sequence diagrams contain the following elements: Class roles, which represent roles that objects may play within the interaction. Lifelines, which represent the existence of an object over a period of time. Activations, which represent the time during which an object is performing an operation. Messages, which represent communication between objects.
Sequence Diagram
Sequence Diagram PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Steps in Creating a Sequence Diagram 1. Identify classes 2. Add actions 3. Place lifeline and focus of control PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Syntax for Sequence Diagram PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Statechart Diagrams Statechart (or state) diagrams describe the states and responses of a class. Statechart diagrams describe the behavior of a class in response to external stimuli. These diagrams contain the following elements: States, which represent the situations during the life of an object in which it satisfies some condition, performs some activity, or waits for some occurrence. Transitions, which represent relationships between the different states of an object.
Sequence Diagram PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
State Chart Diagram
Statechart Concepts A dynamic model showing changes of state of a single class over time in response to events along with its responses and actions Typically not used for all classes, but just to help simplify the design of algorithms for methods of complex classes PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Statechart Diagram for a Hospital Patient PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Syntax for Statechart Diagram PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
The Life of an Order PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Steps for Creating a Statechart Diagram 1. Identify the states 2. Identify the transitions PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
Statechart Diagram for an Order PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.