Presentation is loading. Please wait.

Presentation is loading. Please wait.

Unified Modeling Language Tutorial

Similar presentations


Presentation on theme: "Unified Modeling Language Tutorial"— Presentation transcript:

1 Unified Modeling Language Tutorial
Zhengxing Chen Feb 11th, 2015

2 What is UML? Unified Modeling Language
Standard way to visualize the design of a system UML 1.0 was submitted in UML 2.x is the current standard. Imagine different people from different departments want to design and maintain a system together. They should use a formal standard to communicate with each other to avoid any ambiguity UML is invented around the booming of object-oriented language.

3 UML diagrams 13 different diagrams in UML 2.0 for use in software modeling. Each has different purposes and visual elements. We will cover: class, deployment, use case and sequence diagrams. Basically uml formalize the way to draw diagrams of differnet purposed when you design a system..

4 Class Diagram Purpose: provides a static view of a system.
Widely used at the time of construction in object oriented languages. The top section is used to name the class.  The second one is used to show the attributes of the class. Minus is private. Hashtag is for protected field. Plus sign is public visible field.  The third section is used to describe the operations performed by the class.  The fourth section is optional to show any additional components. You can always add extra notes to describe this class. A class diagram showing a Student class

5 Class Diagram (cont.) Realization: implementation of interface. Dashed line shaft and a triangular hollow arrowhead. Generalization: from subclass to superclass. Solid line for shaft and a triangular hollow arrowhead. I take it from the textbook. The system describes a stable where you have different species of horse. Realization indicates implementation of an interface. Generalization inheritance A class diagram showing relationships between classes

6 Class Diagram (cont.) Association: structural relationships between classes. Solid line with optional labels, arrows and stars. Dependency: association indicates dependency. Use dashed line for transient dependency relationship. In this case, a person can have ownedobject and ownedobject has a method to query its owner * Indicates one to many relationship because a person could have multiple ownedobject A class diagram showing relationships between classes

7 Deployment Diagram Purpose: Help system engineers understand:
Visualize hardware topology of a system Describe the hardware components used to deploy software components. Help system engineers understand: Performance Scalability Maintainability Portability

8 Deployment Diagram (cont.)
Add messages, labels or environments flexibly. Here we show a concrete example of web rendering system. Clients use browser to request webserver to render something. After receiving the request from client, Web server will request the render engine to do the real job, get result and return to client. You can specify what exactly is running on that device.(artifact) What’s the environment of that device. You can add notations in the box as you want. A deployment diagram showing relationships between devices

9 Sequence Diagram Purpose: display interactions among the components of a system Used to visualize the sequence of calls and messages in a system to perform a specific functionality It is hard for you to draw all interactions of different functionalities all at once in a single sequence diagram.

10 Sequence Diagram (cont.)
Object proceeded by a colon. Vertical dashed line is the lifeline of the object. The vertical axis corresponds to time. A white bar represents the time during which the object is executing a function.

11 Use-Case Diagram Purpose: provides an overview of functionalities which a system is required to have by presenting all use cases A use case describes how a user interacts with the system by defining the steps required to accomplish a specific goal. Do not need to include details of use cases in Use-Case Diagram

12 Use-Case Diagram (cont.)
Use cases displayed as ovals. Use cases are connected to the actor who carry out the use cases. Here is the example of a music player software. Usually all user case ovals are bound by a rectangle showing the boundary of the system. Helfpul for ensuring you have covered all the functionality of the system.

13 Take-away UML is a standard which aids to visualize the design of a system. Class Diagram: a static view of relationships among classes. Deployment Diagram: hardware structure of a system. Sequence Diagram: interactions among objects for a specific task Use Case Diagram: exhaust all use cases to provide high level functionality requirements Use case diagram you can refer to them as a highlevel requirement manifest.

14 References & Materials
Pressman, R. S. (2005). Software engineering: a practitioner's approach. Palgrave Macmillan. Appendix A. Post the slides on piazza and canvas. You can read more materials


Download ppt "Unified Modeling Language Tutorial"

Similar presentations


Ads by Google