Presentation is loading. Please wait.

Presentation is loading. Please wait.

Roberta Roth, Alan Dennis, and Barbara Haley Wixom

Similar presentations


Presentation on theme: "Roberta Roth, Alan Dennis, and Barbara Haley Wixom"— Presentation transcript:

1 Roberta Roth, Alan Dennis, and Barbara Haley Wixom
Systems Analysis and Design 5th Edition Chapter 13. The Movement To Objects Roberta Roth, Alan Dennis, and Barbara Haley Wixom © Copyright 2011 John Wiley & Sons, Inc.

2 © Copyright 2011 John Wiley & Sons, Inc.
Chapter 13 Outline Basic characteristics of object-oriented systems. Object-oriented systems analysis and design. Unified Modeling Language Version 2.0. Use case diagram. Class diagram. Sequence diagram. Behavioral state machine diagram. © Copyright 2011 John Wiley & Sons, Inc.

3 © Copyright 2011 John Wiley & Sons, Inc.
INTRODUCTION The object-oriented approach views a system as a collection of self-contained objects, including both data and processes. In this chapter, we discuss - the basic characteristics of an object-oriented system, - object-oriented systems analysis and design and the Unified Process, and - the Unified Modeling Language (UML Version 2.0). © Copyright 2011 John Wiley & Sons, Inc.

4 BASIC CHARACTERISTICS OF OBJECT-ORIENTED SYSTEMS
Object-oriented systems focus on capturing the structure and behavior of information systems in little modules (objects) that encompass both data and processes. © Copyright 2011 John Wiley & Sons, Inc.

5 © Copyright 2011 John Wiley & Sons, Inc.
Classes and Objects A class is the general template we use to define and create specific instances, or objects. An object is an instantiation of a class. An object is a person, place, event, or thing about which we want to capture information. Each object has attributes that describe information about the object. © Copyright 2011 John Wiley & Sons, Inc.

6 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Class and object © Copyright 2011 John Wiley & Sons, Inc.

7 © Copyright 2011 John Wiley & Sons, Inc.
Messages and Methods Methods implement an object’s behavior. A method is an action that an object can perform. Messages are information sent to objects to trigger methods. © Copyright 2011 John Wiley & Sons, Inc.

8 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Messages and methods © Copyright 2011 John Wiley & Sons, Inc.

9 Encapsulation and Information Hiding
Encapsulation is simply the combining of process and data into a single entity. The principle of information hiding suggests that only the information required to use a software module be published to the user of the module. © Copyright 2011 John Wiley & Sons, Inc.

10 © Copyright 2011 John Wiley & Sons, Inc.
Inheritance Inheritance is used to identify higher level, or more general, classes of objects. Common sets of attributes and methods can be organized into superclasses. Classes are arranged in a hierarchy whereby the superclasses, or general classes, are at the top, and subclasses, or specific classes, are at the bottom. © Copyright 2011 John Wiley & Sons, Inc.

11 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Class Hierarchy © Copyright 2011 John Wiley & Sons, Inc.

12 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Subclasses inherit the attributes and methods from the superclass above them. © Copyright 2011 John Wiley & Sons, Inc.

13 Polymorphism and Dynamic Binding
Polymorphism means that the same message can be interpreted differently by different classes of objects. Polymorphism is made possible through dynamic binding which is a technique that delays identifying the type of object until run-time. This is in contrast to static binding in which the type of object would be determined at compile time. © Copyright 2011 John Wiley & Sons, Inc.

14 (cont’d) Polymorphism and Encapsulation
© Copyright 2011 John Wiley & Sons, Inc.

15 OBJECT-ORIENTED SYSTEMS ANALYSIS AND DESIGN
The object-oriented approaches can use any of the traditional methodologies (e.g., waterfall development, parallel development, etc.), and are most associated with an iterative development RAD methodology. The Unified Modeling Language (UML) is a standard set of diagramming techniques for object-oriented systems analysis and design. © Copyright 2011 John Wiley & Sons, Inc.

16 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Any object-oriented approach to developing information systems must be: (1) use case driven – use cases are the primary modeling tool; (2) architecture centric – the underlying architecture of the evolving system drives the specification, construction, and documentation of the system; and (3) iterative and incremental – the development undergoes continuous testing throughout the life of the project. © Copyright 2011 John Wiley & Sons, Inc.

17 Benefits of an Object Approach
© Copyright 2011 John Wiley & Sons, Inc.

18 UNIFIED MODELING LANGUAGE VERSION 2.0
The objective of the Unified Modeling Language is to provide a common vocabulary of object-oriented terms and diagramming techniques. The diagrams are broken into two major groupings: - Structure diagrams - for representing data and static relationships; - Behavior diagrams - for representing dynamic relationships among the objects. © Copyright 2011 John Wiley & Sons, Inc.

19 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) UML 2.0 Diagram Summary © Copyright 2011 John Wiley & Sons, Inc.

20 The Rational Unified Process (RUP)
Rational Software Corporation has created a methodology called the Rational Unified Process (RUP) that define how to apply UML. RUP emphasizes iterative, incremental development, and prototyping. © Copyright 2011 John Wiley & Sons, Inc.

21 (cont’d) An Adaptation of the Unified Process Phased Development Methodology © Copyright 2011 John Wiley & Sons, Inc.

22 Four Fundamental UML Diagrams
Four UML diagramming techniques dominate the object-oriented projects: - Use case diagrams, - Class diagrams, - Sequence diagrams, and - Behavior state machine diagrams. © Copyright 2011 John Wiley & Sons, Inc.

23 (cont’d) The Integration of Four UML Diagrams
© Copyright 2011 John Wiley & Sons, Inc.

24 © Copyright 2011 John Wiley & Sons, Inc.
USE CASE DIAGRAM A use case diagram summarizes all of the use cases (for the part of the system being modeled) together in one picture Typically, the use case diagram is drawn early on in the SDLC. © Copyright 2011 John Wiley & Sons, Inc.

25 Elements of a Use Case Diagram
Syntax for Use Case Diagram © Copyright 2011 John Wiley & Sons, Inc.

26 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Example of Use Case Diagram © Copyright 2011 John Wiley & Sons, Inc.

27 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Use case with specialized actor © Copyright 2011 John Wiley & Sons, Inc.

28 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Extends and Includes Associations © Copyright 2011 John Wiley & Sons, Inc.

29 Creating a Use Case Diagram
Steps in creating a use case diagram 1. Identify use cases. 2. Draw the system boundary. 3. Place the use cases on the diagram. 4. Identify the actors. 5. Add association relationships. © Copyright 2011 John Wiley & Sons, Inc.

30 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Tune Source Digital Music Download System Use Case Diagram © Copyright 2011 John Wiley & Sons, Inc.

31 © Copyright 2011 John Wiley & Sons, Inc.
CLASS DIAGRAM The class diagram is a static model that supports the static view of the evolving system. It shows the classes and the relationships among the classes. © Copyright 2011 John Wiley & Sons, Inc.

32 Elements of a Class Diagram
Example of class diagram © Copyright 2011 John Wiley & Sons, Inc.

33 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Class diagram syntax © Copyright 2011 John Wiley & Sons, Inc.

34 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Class is the main building block of a class diagram, which stores and manages information in the system. Operations are actions or functions that a class can perform. There are three kinds of operations: constructor, query, and update. © Copyright 2011 John Wiley & Sons, Inc.

35 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Associations represent the relationships that classes have with one another. Associations also have multiplicity, which shows how an instance of an object can be associated with other instances. © Copyright 2011 John Wiley & Sons, Inc.

36 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Multiplicity © Copyright 2011 John Wiley & Sons, Inc.

37 Generalization and Aggregation
Generalization shows that one class (subclass) inherits from another class (superclass). Aggregation is used when classes actually comprise other classes. © Copyright 2011 John Wiley & Sons, Inc.

38 Simplifying Class Diagram
When the class diagram become very complex, it is sometimes necessary to simplify the diagram by using a view to limit the amount of information displayed. Another approach to simplifying class diagram is through the use of package (i.e., logical groups of classes). © Copyright 2011 John Wiley & Sons, Inc.

39 Creating a Class Diagram
Steps in creating a class diagram: 1. Identify classes. 2. Identify attributes and operations. 3. Draw associations between the classes, © Copyright 2011 John Wiley & Sons, Inc.

40 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Guidelines for identifying classes © Copyright 2011 John Wiley & Sons, Inc.

41 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Example of initial attributes for class diagrams © Copyright 2011 John Wiley & Sons, Inc.

42 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Example of Revised Attributes and Associations © Copyright 2011 John Wiley & Sons, Inc.

43 © Copyright 2011 John Wiley & Sons, Inc.
SEQUENCE DIAGRAM A sequence diagram Illustrates the objects that participate in a use case and the messages that pass between them over time for one use case. A sequence diagram an be a generic sequence diagram that shows all possible scenarios of a use case, but a set of instance sequence diagrams are usually developed, each of which depicts a single scenario within the use case. © Copyright 2011 John Wiley & Sons, Inc.

44 Elements of Sequence Diagram
Example of instance sequence diagram © Copyright 2011 John Wiley & Sons, Inc.

45 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Syntax for Sequence Diagram © Copyright 2011 John Wiley & Sons, Inc.

46 Creating a Sequence Diagram
Steps in creating a sequence diagram 1. Identify objects. 2. Add messages. 3. Place lifeline and execution occurrences. © Copyright 2011 John Wiley & Sons, Inc.

47 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Steps of the Customer Buys Tune scenario © Copyright 2011 John Wiley & Sons, Inc.

48 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Sequence Diagram for Purchase Tunes Scenario © Copyright 2011 John Wiley & Sons, Inc.

49 BEHAVIORAL STATE MACHINE DIAGRAM
A behavioral state machine diagram is a dynamic model that shows the different states that a single class passes through during its life in response to events, along with its responses and actions. Typically, behavioral state machine diagrams are not used for all classes, but just to further define complex classes to help simplify the design of algorithms for their methods. © Copyright 2011 John Wiley & Sons, Inc.

50 Elements of a Behavioral State Machine Diagram
Example of behavioral state machine diagram © Copyright 2011 John Wiley & Sons, Inc.

51 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Behavioral State Machine Syntax © Copyright 2011 John Wiley & Sons, Inc.

52 Creating a Behavioral State Machine Diagram
Steps in creating a behavioral state machine diagram: 1. Identify the states. 2. Identify the transitions. © Copyright 2011 John Wiley & Sons, Inc.

53 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Example of States: The Life of an Order © Copyright 2011 John Wiley & Sons, Inc.

54 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) Behavioral State Machine Diagram for a Customer Purchase © Copyright 2011 John Wiley & Sons, Inc.

55 © Copyright 2011 John Wiley & Sons, Inc.
SUMMARY Object-oriented techniques view a system as a collection of self-contained objects that have both data and processes. Objects are grouped into classes, which are collection of objects that share common properties and methods. The classes can be arranged in a hierarchical structure. Objects communicate with each other by sending messages, which trigger methods. © Copyright 2011 John Wiley & Sons, Inc.

56 © Copyright 2011 John Wiley & Sons, Inc.
(cont’d) UML is a standard set of diagramming techniques for object-oriented systems analysis and design. Major UML diagramming techniques include: Use case diagrams, Class diagrams, Sequence diagrams, and Behavioral state machine diagrams. © Copyright 2011 John Wiley & Sons, Inc.

57 Copyright 2011 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. © Copyright 2011 John Wiley & Sons, Inc.


Download ppt "Roberta Roth, Alan Dennis, and Barbara Haley Wixom"

Similar presentations


Ads by Google