Unified Modeling Language

Slides:



Advertisements
Similar presentations
Object-Oriented Analysis and Design CHAPTERS 15: UML INTERACTION DIAGRAMS 1.
Advertisements

Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall A.1.
UML Class and Sequence Diagrams Violet Slides adapted from Marty Stepp, CSE 403, Winter 2012 CSE 403 Spring 2012 Anton Osobov.
 Kia Manoochehri ◦  Office Hours: 2:30-4:00 M/W ◦ HEC 308 (The Cave)
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
What is UML? A modeling language standardized by the OMG (Object Management Group), and widely used in OO analysis and design A modeling language is a.
IMSE 11 - UML Class Diagrams
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
SENG 403 SENG 403 – Winter  Brief introduction to SSD  Example (A sales systems (Cashier))  Example (Monopoly game) SENG 403 – Winter 2012.
Karolina Muszyńska Based on: S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”
UML Unified Modeling Language. What is UML? Unified Modeling Language (UML) is a standardized, general-purpose modeling language in the field of software.
UML Collaboration Diagram. Recap System Sequence Diagrams (SSD) UML for SSD Examples.
Department of Electrical Engineering and Computer Science University of Central Florida Fall 2014.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Introduction to Interaction Diagrams Used to illustrate the dynamic behaviour of a community of objects that collaborate by passing messages in order to.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 4 - Domain Classes.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
CS3773 Software Engineering Lecture 04 UML Class Diagram.
(Reference: Jason Roff – UML Beginner’s Guide).  Box  Top section is class name  Second section is class attributes (data members)  Third section.
BCS 2143 Object Oriented Design Using UML. Objectives Objects Interactions Finding Classes Relationship Between Classes Attribute and Operation Class.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour UML Sequence Diagram.
Design Jon Walker. More UML ● What is UML again?
Object Oriented Analysis and Design Sequence Diagrams.
Object Oriented Analysis and Design Class and Object Diagrams.
Karolina Muszyńska Based on: S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”
Chapter 3: Introducing the UML
Class Diagram Lecture # 1. Class diagram A Class Diagram is a diagram describing the structure of a system shows the system's classes Attributes operations.
Department of Electrical Engineering and Computer Science University of Central Florida Fall 2014.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix A Object-Oriented Analysis and Design A.1.
Basics of RSA Rational Software Architect. What is RSA? Comprehensive Modeling and Development environment that leverages the Unified Modeling Language.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Appendix 3 Object-Oriented Analysis and Design
Unified Modeling Language (UML)
Unified Modeling Language
Object-Oriented Systems Analysis and Design Using UML
Sequence Diagram.
Communication DIAGRAM
Prepared By Sidra Noureen
Sequence Diagram.
UML PPt by: Hong Qing Yu.
Introduction to UML Introduction to UML Shiyuan Jin September,23,2002
COP 4331 Recitation #2 University of Central Florida
Object Oriented Analysis and Design
Princess Nourah bint Abdulrahman University
Domain Class Diagram Chapter 4 Part 2 pp
Software Engineering Lecture #11.
IMAT5205 Systems Analysis and Design
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4th edition, Prentice Hall, Hans Van Vliet, Software Engineering:
Software Engineering Lecture 10.
COP 4331 Recitation #1 University of Central Florida
Unified Modeling Language
COP 4331 Recitation #1 University of Central Florida
Chapter 20 Object-Oriented Analysis and Design
CIS 375 Bruce R. Maxim UM-Dearborn
Appendix A Object-Oriented Analysis and Design
Software Engineering System Modeling Extra examples Dr.Doaa Sami
UML Interaction diagrams
Communication DIAGRAM
Class Diagrams Class diagram is basically a graphical representation of the static view of the system and represents different aspects of the application.
CIS 375 Bruce R. Maxim UM-Dearborn
Object Oriented System Design Class Diagrams
COP 4331 Recitation #1.
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
From Class Diagram to Contract Diagram
Presentation transcript:

Unified Modeling Language Class & Sequence Diagrams

Class Diagram Each class is divided into three components:

Class Diagram Each class is divided into three components: Class Name

Class Diagram Each class is divided into three components: Class Name Attributes

Class Diagram Each class is divided into three components: Class Name Attributes Attributes can be: + Public - Private # Protected

Class Diagram Each class is divided into three components: Class Name Attributes Operations

Class Diagram example:

Class Diagram example: Patron

Class Diagram example: Patron # ID_Number : integer +Name : String - Fines : double

Class Diagram example: Patron # ID_Number : integer +Name : String - Fines : double checkFines() payFines()

Class Diagram Class diagrams also contain information regarding the relationship between them Association Dependency Generalization

Class Diagram Association: A link indicating that two classes need to communicate with one another Student Professor

Class Diagram Association: A link indicating that two classes need to communicate with one another Multiplicity: Every professor has 1 or more students Student Professor [1…*]

Class Diagram Association: A link indicating that two classes need to communicate with one another Multiplicity: Every professor has 1 or more students Role Names: Students learn from Professors teaches learns from Student Professor

Class Diagram Aggregation: “has a” association. Each part exists outside of the whole Shown by using an empty diamond Car Wheel Engine The head of arrow should point something bigger than the bottom

Car Wheel Engine public class Engine { . . . } public class Car { private Engine engineV6; private Wheel[] wheels; public Car(Engine engine, Wheel[] wheels){ engineV6 = engine; this.wheels=wheels; Car does not manage lifetime of Engine. If car gets destroyed, wheel still stays active.

Class Diagram Composition: demonstrates strong ownership, the part cannot exist without the whole and vice versa Shown by using a filled diamond Person Arm Leg The head of arrow should point something bigger than the bottom

Person manages the lifetime of Arm. Arm is created in Person Class. Leg public class Arm { . . . } public class Person { Arm leftarm = new Arm(); ....... } Person manages the lifetime of Arm. Arm is created in Person Class.

Class Diagram Dependency relationship: Is a semantic relationship between classes because the functionality of one depends on the other Calendar addEvent(p: Party) Party

Class Diagram Generalization: connection between a subclass and a superclass People Student Professor

Sequence Diagram Sequence diagrams emphasis the time ordering of messages Objects create the “object life line” Active objects are shown in a time period

SSD vs SD System Sequence Diagrams interaction between System and the actors whereas Sequence Diagram shows interaction between components of the system

Sequence Diagram lifeline Messages Guards Combined fragments (alternatives, options, and loops)

Sequence Diagram Messages are shown by a horizontal line between life lines May include a condition Customer Bank withdraw money

Sequence Diagram A return message is a response from the object Customer Bank withdraw money money

Sequence Diagram Arrow with open head: Asynchronous message The sender does not wait for the receiver to finish processing the message, it continues immediately. Customer Bank withdraw money money ThankYou

Sequence Diagram The end of an object life line is demonstrated by an X. That means the object is destroyed. Bank

Unknown or unrelated source is Returned Value

Guards when a condition must be met for a message to be sent to the object (sometime the object name is underlined which refers to a specific instance of that object) http://www.ibm.com/developerworks/rational/library/3101.html

If condition Condition Above the message line http://www.ibm.com/developerworks/rational/library/3101.html

Nesting of Frames http://www.ibm.com/developerworks/rational/library/3101.html

References Shari Lawrence Pfleeger and Joanne M. Atlee, "Software Engineering: Theory and Practice", 4th Edition, Prentice Hall, 2010. Prepared/modified by Kia Manoochehri kiam@knights.ucf.edu Gurkan Solmaz gsolmaz@knights.ucf.edu Salih Safa Bacanli bacanli@knights.ucf.edu Neda Hajikahoond hajiakhoond@knights.ucf.edu