Object Diagram Notation Lecture Oo11 Object Visibility.

Slides:



Advertisements
Similar presentations
2. Processes and Interactions 2.1 The Process Notion 2.2 Defining and Instantiating Processes –Precedence Relations –Implicit Process Creation –Dynamic.
Advertisements

©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Unified Modeling Language
2 Object-Oriented Analysis and Design with the Unified Process Objectives  Explain how statecharts can be used to describe system behaviors  Use statecharts.
Introduction To System Analysis and Design
1 Software Testing and Quality Assurance Lecture 12 - The Testing Perspective (Chapter 2, A Practical Guide to Testing Object-Oriented Software)
7M701 1 Software Engineering Object-oriented Design Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 12 )
1 SWE Introduction to Software Engineering Lecture 23 – Architectural Design (Chapter 13)
OO Development Process. UML and Process UML standardizes notation, not process –Increase likelihood of widespread acceptance There is significant variability.
Lecture 11: Chapter 22 Topics –Object Oriented Modeling –UML –Use case.
Copyright W. Howden1 Lecture 4: Sequence Interaction Diagrams.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
Unified Modeling Language (UML)
Satzinger, Jackson, and Burd Object-Orieneted Analysis & Design
Requirements (recap)‏
© Copyright Eliyahu Brutman Programming Techniques Course.
Developed by Reneta Barneva, SUNY Fredonia Component Level Design.
The Unified Modeling Language (UML) Class Diagrams.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Introduction To System Analysis and design
Principles of Object Technology Module 1: Principles of Modeling.
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
INTRODUCTION TO PROGRAMMING STRUCTURE Chapter 4 1.
1 SAD2 - UML 4 th Lecture Class Diagram in Construction Phase Patterns Case Study Lecturer: Dr Dimitrios Makris
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
Lecture 3: Visual Modeling & UML 1. 2 Copyright © 1997 by Rational Software Corporation Computer System Business Process Order Item Ship via “ Modeling.
CS4273: Distributed System Technologies and Programming Lecture 13: Review.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
Introduction To System Analysis and Design
Class Relationships Lecture Oo10 Dependencies. References n Booch, et al, The Unified Modeling Language User Guide, Chapt 5 p.69, Chapt 9 130, Chapt 10.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
Accelerating Java Development with the UML Greg Schottland General Manager, Application Development Tools Embarcadero Technologies,Inc.
Chapter 16 Applying UML and Patterns Craig Larman
Introduction to Server-Side Web Development Introduction to Server-Side Web Development using JSP and Web Services JSP and Web Services 18 th March 2005.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
Collaboration Diagrams CSIS3600. What is a Collaboration Diagram Collaboration diagrams illustrate interactions between objects The collaboration diagram.
TAL7011 – Lecture 4 UML for Architecture Modeling.
Lecture OO05 Object Scenarios Object Interaction Diagrams
1/26 On-demand Learning Series Software Engineering of Web Application - Object-Oriented Development & UML Hunan University, Software School.
OBJECT ORIENTED AND FUNCTION ORIENTED DESIGN 1 Chapter 6.
12 Chapter 12: Advanced Topics in Object-Oriented Design Systems Analysis and Design in a Changing World, 3 rd Edition.
(14-2) UML Instructor - Andrew O’Fallon CptS 122 (December 2, 2015) Washington State University.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Systems Analysis and Design in a Changing World, Thursday, Feb 15.
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
INFO 620Lecture #71 Information Systems Analysis and Design Design Class Diagrams and others INFO 620 Glenn Booker.
Use Case Diagrams Lecture Oo14 Use Cases. References n Booch, et al, The Unified modeling Language User’s Guide, AWL, 1999, Chapt 16 & 17 n Fowler & Scott,
Class Relationships Lecture Oo07 Generalization Relationships.
Class Relationships Lecture Oo08 Polymorphism. References n Booch, et al, The Unified Modeling Language User Guide, Chapt 10 p.125 n Fowler & Scott, UML.
A Survey of Object-Oriented Concept Oscar Nierstrasz.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
1 SYS366 Week 2 - Lecture 2 Visual Modeling & UML.
TTCN-3 Testing and Test Control Notation Version 3.
Object Oriented Analysis & Design By Rashid Mahmood.
SWE 214 (071) Introduction to UML Slide 1 Introduction to UML.
1 An Overview of UML. 2 The Unified Modeling Language UML is a graphical language used by software engineers to model software systems during development.
Design Model: Determining Visibility CH-18. Objectives Identify four kinds of visibility. Design to establish visibility. Illustrate kinds of visibility.
Week 11: UML Overview IFS410: UML Models Spring 2007
Distributed Shared Memory
Object-Oriented Analysis and Design
GRASP: Visibility and Design
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
Unified Modeling Language
Introduction to Unified Modeling Language (UML)
Requirements To Design In This Iteration
Introduction To System Analysis and Design PART 2
CS223: Software Engineering
Lecture 4: Sequence Interaction Diagrams
Presentation transcript:

Object Diagram Notation Lecture Oo11 Object Visibility

References n Booch, et al, The Unified Modeling Language User Guide, Chapt 18.

Teaching Points n Object visibility n Message Synchronization

Review n Why/when would we use parameterized classes n Parameterized classes vs. Generalization

Analysis/Design Method n Notation –The language for expressing each model n Process –The activities leading to the orderly construction of the system’s models n Tools –The artifacts that eliminate the tedium of modeling building and enforcing rules about the models themselves, so that errors and inconsistencies can be exposed

Object Interaction Diagrams n We will look at some additional concepts that can be expressed on object interaction diagrams

Object Visibility n It is often not apparent to when first studied that the design of object visibility is complex and fundamental n The design of the web of object visibility's is critical to a project solution n It is this web of visibility that provides the vehicle for the object communication which provides the solution to the problem

Object Visibility n Associated with the understanding of object visibility for a system, is object creation n Initially only an object’s creator has visibility, any other object which needs access to this newly created object must get the visibility from the creator either directly or indirectly n visibility can flow through object references or environment scope rules

Object Visibility n The supplier object provides services through its interface n The client object uses services of the supplier –this means the client initiates a message to the supplier –this means the client must have visibility to the supplier –the supplier need not have visibility to the client

Four Kinds of Visibility n Global –The supplier object is in a global scope to the client n Field –The supplier object is a part of the client

Four Kinds of Visibility n Parametric –The supplier object is a parameter to some operation of the client –The client gains visibility of the supplier through some exchange message with another object n Local –The supplier object is a locally declared object in the scope of the object diagram

Visibility Notation

Examples in Java

Message Synchronization Notation n The message synchronization we have seen so far has represented simple sequential message passing n In the presence of multiple threads of control we must specify other forms of synchronization

Message Synchronization Notation

Teaching Points n Object visibility n Message Synchronization