2008/03/25 Unified Modeling Lanauage 1 Introduction to Unified Modeling Language (UML) – Part One Ku-Yaw Chang Assistant Professor.

Slides:



Advertisements
Similar presentations
UML an overview.
Advertisements

UML (cont.) “The Unified Modeling Language User Guide” by G. Booch, J. Rumbaugh and I. Jacobson ● Classes ● Relationships ● Class diagrams ● Examples.
UML Diagrams Jung Woo. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems, business.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
UML: An Introduction.
Object-Oriented Analysis and Design
Chapter 15: System Modeling with UML
UML – Class Diagrams.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
© Copyright Eliyahu Brutman Programming Techniques Course.
Sharif University of Technology1 Design and Use-case Realization Software Engineering Laboratory Fall 2006.
Unified Modeling Language
UML Diagrams Computer Science I.
2005/05/25 Unified Modeling Lanauage 1 Introduction to Unified Modeling Language (UML) – Part One Ku-Yaw Chang Assistant Professor.
1.  Modeling the context of a system  Modeling the requirements of a system 2.
Software Engineering Design & Modelling
Unified Modeling Language, Version 2.0
Lecture 3: Visual Modeling & UML 1. 2 Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship via “ Modeling.
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Requirements Analysis Visual Modeling] Lab 02 Visual Modeling (from Visual Modeling with Rational Rose and UML) A way of thinking about problems using.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
CS3773 Software Engineering Lecture 04 UML Class Diagram.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 15 System Modeling with the UML.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
ניתוח מערכות מידע 1 Unified Modeling Language (UML) § § The Unified Modeling Language (UML) is the industry-standard language for: Specifying, Visualizing,
The Static Analysis Model Class Diagrams Prof. Hany H. Ammar, CSEE, WVU, and Dept. of Computer Science, Faculty of Computers and Information, Cairo University.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Fall 2010 CS4310 Requirements Engineering A Brief Review of UML & OO Dr. Guoqiang Hu Department of Computer Science UTEP 1.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
Copyright © 2013 Curt Hill UML Unified Modeling Language.
Introduction to Unified Modeling Language (UML) By Rick Mercer with help from The Unified Modeling Language User Guide, Grady Booch, James Rumbaugh, Ivar.
TAL7011 – Lecture 4 UML for Architecture Modeling.
1 The Unified Modeling Language. 2 The Unified Modeling Language (UML) is a standard language for writing software blueprints. The UML may be used to.
Design Jon Walker. More UML ● What is UML again?
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Design Model Lecture p6 T120B pavasario sem.
Unified Modeling Language User Guide Section 4 - Basic Behavioral Modeling Chapter 16 - Use Cases Chapter 17 - Use Case Diagrams.
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
Introduction to OOAD and the UML
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 15 The Unified Modeling Language: a Primer.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
 Building Block Building Block  Things in the UML Things in the UML  Structural Things Structural Things  Behavioral Things Behavioral Things  Grouping.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Introduction to UML Hazleen Aris Software Eng. Dept., College of IT, UNITEN. …Unified Modeling Language.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
Basic Characteristics of Object-Oriented Systems
Introduction to UML and Rational Rose UML - Unified Modeling Language Rational Rose 98 - a GUI tool to systematically develop software through the following.
Unified Modeling Language. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems,
Introduction to Unified Modeling Language (UML) By Rick Mercer with help from The Unified Modeling Language User Guide, Grady Booch, James Rumbaugh, Ivar.
UML (Unified Modeling Language)
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
UML Diagrams: Class Diagrams The Static Analysis Model
UML(Unified Modeling Language)
UML Diagrams By Daniel Damaris Novarianto S..
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
Systems Analysis and Design With UML 2
Unified Modeling Language
Introduction to Unified Modeling Language (UML)
Systems Analysis and Design With UML 2
UML Diagrams Jung Woo.
The Unified Modeling Language
Unified Modeling Language
Software Design Lecture : 15.
Copyright 2007 Oxford Consulting, Ltd
Presentation transcript:

2008/03/25 Unified Modeling Lanauage 1 Introduction to Unified Modeling Language (UML) – Part One Ku-Yaw Chang Assistant Professor Department of Computer Science and Information Engineering Da-Yeh University

22008/03/25Unified Modeling Lanauage Importance of modeling What is a model? A simplification of reality A simplification of reality Why do we model? Better understand the system we are developing Better understand the system we are developing

32008/03/25Unified Modeling Lanauage Four aims Models Help us to visualize a system as it is or as we want it to be Help us to visualize a system as it is or as we want it to be Permit us to specify the structure or behavior of a system Permit us to specify the structure or behavior of a system Give us a template that guides us in constructing a system Give us a template that guides us in constructing a system Document the decisions we have made Document the decisions we have made

42008/03/25Unified Modeling Lanauage Unified Modeling Language (UML) A standard language for Visualizing Visualizing Specifying Specifying Constructing Constructing Documenting Documenting the artifacts of a software-intensive system Official web site Current version: 2.1 Current version: 2.1

52008/03/25Unified Modeling Lanauage Diagrams in the UML A diagram Graphical presentation of a set of elements Graphical presentation of a set of elements Rendered as a connected graph of vertices (things) and arcs (relationships) A projection into a system A projection into a system Visualize a system from different perspectives

62008/03/25Unified Modeling Lanauage Diagrams in the UML UML 2.0 defines 13 diagrams, divided into two general sets: Structural modeling diagrams Structural modeling diagrams Define the static architecture of a model Classes, objects, interfaces and physical components Classes, objects, interfaces and physical components Model the relationships and dependencies between elements Behavioral modeling diagrams Behavioral modeling diagrams Capture the varieties of interaction and instantaneous state within a model as it 'executes' over time.

72008/03/25Unified Modeling Lanauage Structural diagrams (1/2) Package diagrams Divide the model into logical containers or 'packages' and describe the interactions between them at a high level Divide the model into logical containers or 'packages' and describe the interactions between them at a high level Class or Structural diagrams Define the basic building blocks of a model: the types, classes and general materials that are used to construct a full model Define the basic building blocks of a model: the types, classes and general materials that are used to construct a full model Object diagrams Show how instances of structural elements are related and used at run-time. Show how instances of structural elements are related and used at run-time.

82008/03/25Unified Modeling Lanauage Structural diagrams (2/2) Composite structure diagrams Provide a means of layering an element's structure and focusing on inner detail, construction and relationships Provide a means of layering an element's structure and focusing on inner detail, construction and relationships Component diagrams Model higher level or more complex structures, usually built up from one or more classes, and providing a well defined interface Model higher level or more complex structures, usually built up from one or more classes, and providing a well defined interface Deployment diagrams Show the physical disposition of significant artifacts within a real-world setting Show the physical disposition of significant artifacts within a real-world setting

92008/03/25Unified Modeling Lanauage Behavioral diagrams (1/2) Use case diagrams Model user/system interactions. Model user/system interactions. Define behavior, requirements and constraints in the form of scripts or scenarios Define behavior, requirements and constraints in the form of scripts or scenarios Activity diagrams Define basic program flow Define basic program flow Capture the decision points and actions within any generalized process Capture the decision points and actions within any generalized process State machine diagrams Understanding the instant condition or "run state" of a model when it executes Understanding the instant condition or "run state" of a model when it executes

102008/03/25Unified Modeling Lanauage Behavioral diagrams (2/2) Communication diagrams Show the network and sequence of messages or communications between objects at run-time during a collaboration instance Show the network and sequence of messages or communications between objects at run-time during a collaboration instance Sequence diagrams Show the sequence of messages passed between objects using a vertical timeline Show the sequence of messages passed between objects using a vertical timeline Timing diagrams Fuse Sequence and State diagrams to provide a view of an object's state over time and messages which modify that state Fuse Sequence and State diagrams to provide a view of an object's state over time and messages which modify that state Interaction overview diagrams Fuse Activity and Sequence diagrams to provide allow interaction fragments to be easily combined with decision points and flows Fuse Activity and Sequence diagrams to provide allow interaction fragments to be easily combined with decision points and flows

112008/03/25Unified Modeling Lanauage Use case diagram A use case A description of a set of sequences of actions A description of a set of sequences of actions Rendered as an ellipse Rendered as an ellipseNames A simple name A simple name A path name A path name Prefixed by the name of the package Place order Validate user Sensors:: Calibrate location

122008/03/25Unified Modeling Lanauage Use case diagram An actor A coherent set of roles that users of use cases play when interacting with these use cases A coherent set of roles that users of use cases play when interacting with these use cases Represents a role Represents a role A human A hardware device Another system customer

132008/03/25Unified Modeling Lanauage Use case diagram Contents Use cases Use cases Actors Actors Dependency, generalization, and association relationship Dependency, generalization, and association relationship Common Uses To model the context of a system To model the context of a system All things on the outside that interact with the system constitute the system’s context To model the requirements of a system To model the requirements of a system

142008/03/25Unified Modeling Lanauage Credit Card Validation System Model the context of a system Process customer bill Perform card transaction Reconcile transactions Retail institution Manage customer account Sponsoring financial institution Customer Individual Customer Corporate Customer

152008/03/25Unified Modeling Lanauage Credit Card Validation System Model the requirements of a system Process customer bill Perform card transaction Reconcile transactions Retail institution Manage customer account Sponsoring financial institution Customer Report on account status Detect card fraud Manage network outage

162008/03/25Unified Modeling Lanauage Relationships A relationship A connection among things A connection among things The three most important relationships Dependencies Dependencies Generalizations Generalizations Associations Associations

172008/03/25Unified Modeling Lanauage Dependency A change in specification of one thing may affect another thing that uses it, but not necessarily the reverse Be rendered as a dashed directed line Directed to the thing being depended on Directed to the thing being depended on

182008/03/25Unified Modeling Lanauage Dependency To decompose use cases into reusable parts Two stereotypes Extend Extend Specify that the target use case extends the behavior of the source Include Include Specify that the source use case explicitly incorporates the behavior of another use case at a location specified by the source

192008/03/25Unified Modeling Lanauage Generalization A relationship between A general thing (called the superclass or parent) A general thing (called the superclass or parent) A more specific kind of that thing (called the subclass or child) A more specific kind of that thing (called the subclass or child) Also called an “is-a-kind-of” relationship Rendered as a solid directed line with a large open arrowhead, pointing to the parent.

202008/03/25Unified Modeling Lanauage Generalization, Include, and Extend Validate user Check password Retinal scan Place rush order Place order Track order >

212008/03/25Unified Modeling Lanauage Association A structural relationship Specify that objects of one thing are connected to objects of another Specify that objects of one thing are connected to objects of another Rendered as a solid line connecting the same or different classes Four adornments Name Name Role Role Multiplicity Multiplicity Aggregation Aggregation

222008/03/25Unified Modeling Lanauage Association Name Use the name to describe the nature of the relationship Use the name to describe the nature of the relationship Can provide a direction triangle that points in the direction you intend to read the name Can provide a direction triangle that points in the direction you intend to read the name PersonCompany Works for

232008/03/25Unified Modeling Lanauage Association Role A specific role that it plays in that relationship A specific role that it plays in that relationship PersonCompany employee employer

242008/03/25Unified Modeling Lanauage Association Multiplicity How many objects may be connected across an instance of an association How many objects may be connected across an instance of an association Exactly one (1) Exactly one (1) Zero or one (0..1) Zero or one (0..1) Many (0..*) Many (0..*) One or more (1..*) One or more (1..*) PersonCompany employee employer 1..* *

252008/03/25Unified Modeling Lanauage Association Aggregation A “whole/part” relationship A “whole/part” relationship The whole : a larger thing The parts : smaller things A special kind of association A special kind of association With an open diamond at the whole end CompanyDepartment 1 *