The Movement To Objects Chapter 15 15 - 1 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Key Definitions Object-oriented techniques view a system as a collection of self-contained objects which include both data and processes. The Unified Modeling Language (UML) the object modeling standard adds a variety of techniques to the field of system development. 15 - 2 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. THE OBJECT APPROACH AND UML 15 - 3 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Object Concepts An object is a person, place, event, or thing about which we want to capture information. Each object has properties (or attributes). The state of an object is defined by the value of its properties and relations with other objects at a point in time. Objects have behaviors -- things that they can do -- which are described by methods (or operations). Objects do not use primary or foreign keys, instead each instance is assigned a unique identifier (UID) when it is created. 15 - 4 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. An Object and Object Instances 15 - 5 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Class A class is a general template we use to define and create specific instances or objects. 15 - 6 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Classes and Objects 15 - 7 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Class Hierarchy 15 - 8 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Messages Messages are information sent to objects to trigger methods 15 - 9 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Encapsulation The message is sent without considering how it will be implemented The object can be treated as a “blackbox” 15 - 10 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Inheritance Classes are arranged in a hierarchy Superclasses or general classes are at the top Subclasses or specific classes are at the bottom Subclasses inherit attributes and methods from the superclasses above them Classes with instances are concrete classes Abstract classes only produce templates for more specific classes 15 - 11 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Inheritance 15 - 12 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Polymorphism 15 - 13 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Benefits of an Object Approach Benefits of an Object Approach An Object A class Inheritance Polymorphism Encapsulation 15 - 14 What Do the Concepts Support and Lead To? PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Unified Modeling Language - UML Defines a set of nine object diagramming techniques The key building block is the use case Diagrams are tightly integrated syntactically and conceptually to represent an integrated whole Application of UML can vary among organizations 15 - 15 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Adaptation of the Phased Development Method 15 - 16 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. USE-CASE DIAGRAM 15 - 17 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Use-Case Diagram Concepts Summarizes all use cases (for the part of the system being modeled) together in one picture Typically drawn early in the SDLC Shows the associations between actors and use cases 15 - 18 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Integration of four UML Diagrams 15 - 19 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Use Case Diagram for Appointment System 15 - 20 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Syntax for Use-Case Diagram 15 - 21 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Use-Case Diagram for Specialized Actor 15 - 22 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Extends or Uses Associations 15 - 23 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Steps in Creating the Use Case Diagram 1. Identify use cases 2. Draw the system boundary 3. Place use cases on the diagram Group use cases into packages Add special use case associations 4. Identify the actors 5. Add associations 15 - 24 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. CLASS DIAGRAM 15 - 25 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Class Diagram Concepts A static model that shows the classes and relationships among classes that remain constant in the system over time Resembles the ERD, but depicts classes which include both behaviors and states, while entities in the ERD include only attributes Scope not system wide, but pertaining to a single use-case 15 - 26 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Class Diagram for Manage Appointment 15 - 27 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Class Diagram Syntax 15 - 28 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Method Types Constructor methods create new instances of a class Query methods determine the state of an object and make information about that state available to the system Update methods will change the value of some or all of the object’s attributes, resulting in a change of state 15 - 29 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Multiplicity 15 - 30 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Association Class 15 - 31 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Aggregation and Generalization Associations 15 - 32 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Steps in Creating a Class Diagram 1. Identify classes 2. Identify attributes and operations 3. Draw relationships between classes 15 - 33 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Class Diagram for Customer Places Order (1) 15 - 34 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Class Diagram for Customer Places Order (2) 15 - 35 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Class Diagram for Customer Places Order (3) 15 - 36 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. SEQUENCE DIAGRAM 15 - 37 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Sequence Diagram Concepts Illustrates the classes that participate in a use case Shows the messages that pass between classes over time for one use case Can be a generic sequence diagram, but more frequently one is drawn for a single scenario within the use case Design diagrams are implementation specific -database objects or specific GUI components serve as classes 15 - 38 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Use Diagram for CD Selections Internet Sales System 15 - 39 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Sequence Diagram 15 - 40 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Steps in Creating a Sequence Diagram 1. Identify classes 2. Add messages 3. Place lifeline and focus of control 15 - 41 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Syntax for Sequence Diagram 15 - 42 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Steps of the Customer Places Order Scenario 15 - 43 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Sequence Diagram for Customer Places Order Scenario 15 - 44 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. STATECHART DIAGRAM 15 - 45 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Statechart Concepts A dynamic model showing changes of state of a single class over time in response to events along with its responses and actions Typically not used for all classes, but just to help simplify the design of algorithms for methods of complex classes 15 - 46 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Statechart Diagram for a Hospital Patient 15 - 47 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Syntax for Statechart Diagram 15 - 48 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. The Life of an Order 15 - 49 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Steps for Creating a Statechart Diagram 1. Identify the states 2. Identify the transitions 15 - 50 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Statechart Diagram for an Order 15 - 51 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Summary Many organizations are moving to the use of object-oriented techniques Objects are grouped into classes that share common properties and methods and arranged in a hierarchy Objects communicate by sending messages which trigger methods 15 - 52 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Summary Major object-oriented modeling techniques include: Use case diagrams Class diagrams Sequence diagrams Statechart diagrams 15 - 53 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved. Copyright © 2003 John Wiley & Sons, Inc. All rights reserved. Reproduction or translation of this work beyond that permitted in Section 117 of the 1976 United States Copyright Act without the express written permission of the copyright owner is unlawful. Request for further information should be addressed to the Permissions Department, John Wiley & Sons, Inc. The purchaser may make back-up copies for his/her own use only and not for redistribution or resale. The Publisher assumes no responsibility for errors, omissions, or damages, caused by the use of these programs or from the use of the information contained herein. 15 - 54 PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.