® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 02. Objects,

Slides:



Advertisements
Similar presentations
Informática II Prof. Dr. Gustavo Patiño MJ
Advertisements

Mastering Object-Oriented Analysis and Design with UML Module 2: Concepts of Object Orientation.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
1 © Wolfgang Pelz UML2 UML Part Two. 2 © Wolfgang Pelz UML2 Chapters Four & Twelve Interaction Diagrams.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
Page 1  Copyright © 1997 by Rational Software Corporation Class Diagrams A class diagram shows the existence of classes and their relationships in the.
© Copyright Eliyahu Brutman Programming Techniques Course.
SE-565 Software System Requirements More UML Diagrams.
An Introduction to Rational Rose Real-Time
Unified Modeling Language
Object-Oriented Analysis and Design
Shanghai Jiao Tong University 上海交通大学软件工程中心 Object Oriented Analysis and Design Introduction to Object Technology.
Systems Analysis and Design in a Changing World, Fifth Edition
UML Collaboration Diagram. Recap System Sequence Diagrams (SSD) UML for SSD Examples.
An Object-Oriented Approach to Programming Logic and Design
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 18. Review User interface Design principles Design Guidelines.
Scis.regis.edu ● CS-432: Modern Software Engineering Week 2 Dr. Jesús Borrego Lead Faculty, COS Regis University 1.
Copyright © Hsiao-Lan Wei All Rights Reserved Design Model Interaction diagram.
Behavioral Modeling Chapter 8.
NI ©UNITEN 2000/01 1 Faculty of Applied Engineering and Urban Planning Software Engineering Department Class Diagram Faculty of Information system Technology.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 03. Classes,
© 2005 Prentice Hall9-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Fall 2010 CS4310 Requirements Engineering A Brief Review of UML & OO Dr. Guoqiang Hu Department of Computer Science UTEP 1.
UML Class Diagram Trisha Cummings. What we will be covering What is a Class Diagram? Essential Elements of a UML Class Diagram UML Packages Logical Distribution.
Collaboration Diagrams CSIS3600. What is a Collaboration Diagram Collaboration diagrams illustrate interactions between objects The collaboration diagram.
BCS 2143 Object Oriented Design Using UML. Objectives Objects Interactions Finding Classes Relationship Between Classes Attribute and Operation Class.
Object Oriented Analysis & Design Using UML (CS-512) M-Tech CSE (Ist & 3rd Sem) Part Time Mr. Pawan Luthra Assistant Professor (CSE Deptt.) SBSSTC, Ferozepur.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
ITEC 3220A Using and Designing Database Systems Instructor: Prof Z. Yang Course Website: 3220a.htm
Relationships Relationships between objects and between classes.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 15 The Unified Modeling Language: a Primer.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
1 IBM Software Group ® Essentials of Visual Modeling with UML 2.0 Module 5: Interaction Diagrams.
CS212: Object Oriented Analysis and Design Lecture 33: Class and Sequence Diagram.
1 IBM Software Group ® Essentials of Visual Modeling with UML 2.0 Module 7: Other UML Diagrams.
Page 1  Copyright © 1997 by Rational Software Corporation Putting the UML to Work The ESU University wants to computerize their registration system –
Chapter 16 UML Class Diagrams 1CS6359 Fall 2012 John Cole.
Chapter 3: Introducing the UML
1 IBM Software Group ® Essentials of Visual Modeling with UML 2.0 Module 3: Concepts of Object Orientation.
Identifying classes, Packages and drawing class Diagrams, Object Diagrams and composite structure diagrams Week 07 1.
Communication Diagrams Lecture 8. Introduction  Interaction Diagrams are used to model system dynamics  How do objects change state?  How do objects.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
UML Fundamental Elements. Structural Elements Represent abstractions in our system. Elements that encapsulate the system's set of behaviors. Structural.
Appendix Object-Oriented Analysis and Design: Use Cases and Sequence Diagrams Modern Systems Analysis and Design Fifth Edition Jeffrey A. Hoffer Joey F.
Concepts of Object Orientation lecture 1 –b. Objectives: Concepts of Object Orientation OOAD 2  Explain the basic principles of object orientation 
CS 501: Software Engineering Fall 1999 Lecture 15 Object-Oriented Design I.
Modeling Your Application, Data or Service Creating Your UML Model.
Course Number: 1080 Session Length:60 Minutes Target Audience:caDSR Users and Metadata Consumers Trainer: Jennifer Brush NCICB Liaison.
ITEC1301 Object-Oriented Systems Construction Lecture Notes #4 1.
UML (Unified Modeling Language)
11 Systems Analysis and Design in a Changing World, Fifth Edition.
UML Diagrams By Daniel Damaris Novarianto S..
Collaboration Diagrams
The Movement To Objects
Object-Oriented Analysis and Design
Concepts of Object Orientation
Sequence Diagram.
Today’s Objectives Define the Problem Domain
University of Central Florida COP 3330 Object Oriented Programming
UML Diagrams Jung Woo.
The Object Oriented Approach to Design
Object Oriented Analysis and Design Using the UML
Interactions.
UML Interaction diagrams
ITEC 3220A Using and Designing Database Systems
Presentation transcript:

® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 02. Objects, Classes and Interactions

IBM Software Group | Rational software Where Are We?  What is an Object?  What is a Class?  Interaction Diagrams  Sequence Diagrams  Communication Diagrams

IBM Software Group | Rational software What Is an Object?  Informally, an object represents an entity, either physical, conceptual, or software  Physical entity  Conceptual entity  Software entity Truck Chemical Process Linked List

IBM Software Group | Rational software A More Formal Definition  An object is an entity with a well-defined boundary and identity that encapsulates state and behavior  State is represented by attributes and relationships  Behavior is represented by operations, methods, and state machines Subm itFinalGrades() AcceptCourseOffering() TakeSabbatical() Object “Professor Clark” SetMaxLoad() Name: J Clark Employee ID: HireDate: 07/25/1991 Status: Tenured Discipline: Finance MaxLoad: 3 Operations Attributes

IBM Software Group | Rational software Objects and Encapsulation  Encapsulation:  Protects the supplier object from incorrect use by clients  Protects the clients from implementation changes in the supplier SubmitFinalGrades() AcceptCourseOffering() TakeSabbatical() Professor Clark SetMaxLoad() Name: J Clark Employee ID: HireDate: 07/25/1991 Status: Tenured Discipline: Finance MaxLoad:4 SetMaxLoad(4)

IBM Software Group | Rational software Where Are We?  What is an Object?  What is a Class?  Interaction Diagrams  Sequence Diagrams  Communication Diagrams

IBM Software Group | Rational software What Is a Class?  A class is a description of a set of objects that share the same attributes, operations, relationships, and semantics  An object is an instance of a class  A class is an abstraction in that it  Emphasizes relevant characteristics  Suppresses other characteristics

IBM Software Group | Rational software A Sample Class Class Course Attributes Name Location Days offered Credit hours Start time End time Behavior Add a student Delete a student Get course roster Determine if it is full

IBM Software Group | Rational software Representing Classes in UML  A class is represented using a rectangle often with three compartments:  The class name  The structure (attributes)  The behavior (operations) Visibility + = public - = private

IBM Software Group | Rational software Representing Classes in UML (cont’d)  Style Guidelines  Capitalize the first letter of class names  Begin attribute and operation names with a lowercase letter  Compartments  Only the name compartment is mandatory  Additional compartments may be supplied to show other properties Representation with the attribute compartment suppressed, operation visibility shown as “decoration”, and the operation compartment filtered to show only two operations

IBM Software Group | Rational software The Relationship between Classes and Objects  A class is an abstract definition of an object  It defines the structure and behavior of each object in the class  It serves as a template for creating objects.  Classes are not collections of objects Slot compartment

IBM Software Group | Rational software Where Are We?  What is an Object?  What is a Class?  Interaction Diagrams  Sequence Diagrams  Communication Diagrams

IBM Software Group | Rational software UML Diagrams  UML diagrams contain graphical elements (nodes connected by paths) that represent elements in the UML model  Each diagram has a contents area  As an option, it may have a frame and a heading as shown on the right  Two main types  Structure Diagrams show the static structure of the objects in a system  Behavior Diagrams show the dynamic behavior of the objects  A complete taxonomy of UML diagrams is provided in chapter 4

IBM Software Group | Rational software What is an Interaction Diagram?  Generic term that applies to several behavior-type diagrams that emphasize object interactions  Sequence Diagram (the most common variant)  Communication Diagram  Specialized Variants  Timing Diagram  Interaction Overview Diagram

IBM Software Group | Rational software Objects Need to Collaborate  Objects are useless unless they can collaborate to solve a problem  Each object is responsible for its own behavior and status  No one object can carry out every responsibility on its own  How do objects interact with each other?  They interact through messages  A client object sends a message to a supplier object to perform some activity

IBM Software Group | Rational software Interaction Diagrams  Sequence Diagram  Time oriented view of object interaction  Communication Diagram  Structural view of messaging objects Communication Diagrams Sequence Diagrams

IBM Software Group | Rational software Interaction Diagrams  Timing Diagram  Time constraint view of messages involved in an interaction  Interaction Overview Diagram  High level view of interaction sets combined into logic sequence Timing Diagrams Interaction Overview Diagrams

IBM Software Group | Rational software Where Are We?  What is an Object?  What is a Class?  Interaction Diagrams  Sequence Diagrams  Communication Diagrams

IBM Software Group | Rational software What Is a Sequence Diagram?  A sequence diagram is an interaction diagram that emphasizes the time ordering of messages  The diagram shows:  The objects participating in the interaction  The sequence of messages exchanged Sequence Diagrams

IBM Software Group | Rational software Example Lifeline Unnamed (anonymous) object Message Reflexive message Return message Execution specification

IBM Software Group | Rational software Message Types  Synchronous message  Call to an operation  Asynchronous message  Asynchronous call to an operation  Asynchronous send action of a signal  Create Message  Delete Message  Reply message to an operation call

IBM Software Group | Rational software Interaction Use Interaction use (see next slide) New in UML2

IBM Software Group | Rational software Interaction Use and Combined Fragments Combined fragments New in UML2

IBM Software Group | Rational software Where Are We?  What is an Object?  What is a Class?  Interaction Diagrams  Sequence Diagrams  Communication Diagrams

IBM Software Group | Rational software What Is a Communication Diagram?  A communication diagram emphasizes the organization of the objects that participate in an interaction The communication diagram shows:  The objects participating in the interaction  Links between the objects  Messages passed between the objects Communication Diagrams

IBM Software Group | Rational software Example Link

IBM Software Group | Rational software Discussion: Communication vs. Sequence Diagrams  In UML 1.x, collaboration diagrams (as they were called) and sequence diagrams were completely equivalent  The major difference, which is retained in UML 2.x, is the ability to explicitly show links in collaboration/communication diagrams  In UML 2.x, communication diagrams are much less expressive and precise than sequence diagrams  Communication diagrams have lost some expressiveness while sequence diagrams were significantly improved  UML 2.1 define communication diagrams as “simple Sequence Diagrams that use none of the structuring mechanisms such as InteractionUses and CombinedFragments”  It is possible that communication diagrams will eventually fall out of use

IBM Software Group | Rational software Exercise  Perform the exercise provided by the instructor