Unified Modeling Language Tutorial

Slides:



Advertisements
Similar presentations
© 2005 by Prentice Hall Appendix 3 Object-Oriented Analysis and Design Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
Advertisements

UML an overview.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall A.1.
Systems Analysis and Design 8th Edition
Unified Modeling Language
Object-Oriented Analysis and Design
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Systems Analysis and Design in a Changing World, Fourth Edition
Essentials of interaction diagrams Lecture Outline Collaborations Interaction on collaboration diagrams Sequence diagrams Messages from an object.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Unified Modeling Language
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
CS3773 Software Engineering Lecture 04 UML Class Diagram.
Systems Analysis & Design 7 th Edition Chapter 5.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 15 System Modeling with the UML.
Systems Analysis and Design 8 th Edition Chapter 6 Object Modeling.
The Static Analysis Model Class Diagrams Prof. Hany H. Ammar, CSEE, WVU, and Dept. of Computer Science, Faculty of Computers and Information, Cairo University.
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Design Jon Walker. More UML ● What is UML again?
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
 Building Block Building Block  Things in the UML Things in the UML  Structural Things Structural Things  Behavioral Things Behavioral Things  Grouping.
Chapter 3: Introducing the UML
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
1 IS 0020 Program Design and Software Tools Unified Modeling Language Lecture 13 April 13, 2005.
1 IS 0020 Program Design and Software Tools Unified Modeling Language Lecture 13 November 30, 2004.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
CompSci 280 S Introduction to Software Development
Appendix 3 Object-Oriented Analysis and Design
CHAPTER
UML Diagrams: Class Diagrams The Static Analysis Model
UML(Unified Modeling Language)
UML Diagrams By Daniel Damaris Novarianto S..
Unified Modeling Language (UML)
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
Unified Modeling Language—UML A Very Brief Introduction
Systems Analysis and Design With UML 2
Unified Modeling Language
Introduction to Unified Modeling Language (UML)
UML Diagrams Jung Woo.
UML PPt by: Hong Qing Yu.
CH#3 Software Designing (Object Oriented Design)
Business System Development
UML dynamic Modeling (Behavior Diagram)
A tool for presentation of Architecture
A tool for presentation of Architecture
Software Engineering Lecture #11.
IMPORTANT NOTICE TO STUDENTS:
Unified Modeling Language
Systems Analysis and Design With UML 2
Week 12: Activity & Sequence Diagrams
Chapter 20 Object-Oriented Analysis and Design
CIS 375 Bruce R. Maxim UM-Dearborn
Appendix A Object-Oriented Analysis and Design
Design and Implementation
Analysis models and design models
Software Design Lecture : 15.
Copyright 2007 Oxford Consulting, Ltd
Sylnovie Merchant, Ph.D. MIS 161 Spring 2005
Chapter 5.
CIS 375 Bruce R. Maxim UM-Dearborn
Appendix A Object-Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
Appendix 3 Object-Oriented Analysis and Design
UML & Together 2006 tutorial
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Presentation transcript:

Unified Modeling Language Tutorial Zhengxing Chen Feb 11th, 2015

What is UML? Unified Modeling Language Standard way to visualize the design of a system UML 1.0 was submitted in 1997. 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.

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..

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

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

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

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

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

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.

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.

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

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.

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.

References & Materials Pressman, R. S. (2005). Software engineering: a practitioner's approach. Palgrave Macmillan. Appendix A. http://www.tutorialspoint.com/uml/uml_tutorial.pdf Post the slides on piazza and canvas. You can read more materials