Object-oriented methodology object models use case modeling unified modeling language the data...

28
object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems Analysis and Design for the Small Enterprise section II Analysis

Transcript of Object-oriented methodology object models use case modeling unified modeling language the data...

Page 1: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

object-oriented methodologyobject modelsuse case modelingunified modeling languagethe data dictionarythe cornucopia caseportfolio project

Sys

tem

s A

nal

ysis

an

d D

esig

nfo

r th

e S

mal

l E

nte

rpri

se

section IIAnalysis

Page 2: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Chapter Objectives

When you complete this chapter you will be able to:• Differentiate between object-oriented and

traditional methodologies• Identify objects and construct an elementary

object model• Identify the elements in a use case model• Identify the elements in four of the most common

UML models• Define, construct, and maintain data dictionaries

2

Page 3: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Object-Oriented Methodology

• Object-oriented systems analysis and design (OOSAD) evolved to accommodate the increasing popularity of object-oriented programming languages

• If you plan to implement your design with object-oriented development tools, you should seriously consider using OOSAD

• As the name implies, OOSAD revolves around objects

3

Page 4: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Object-Oriented Methodology

• Information system objects derive their definition from our understanding of real-world objects

• Just as real-world objects are organized into classifications, enterprise objects are members of a class

• While a specific object is distinguished by its particulars, it inherits its general makeup from its class

4

Page 5: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Object-Oriented Methodology

• By definition, a class embodies two important information processing concepts:– Data attributes– Behaviors

• After enterprise objects are created from their class blueprint, their data attributes are assigned values and their behaviors are tailored to fit their specific circumstance

• Objects interact with one another through a messaging system

5

Page 6: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Object-Oriented Methodology

• The object-oriented methodology involves familiar phases: analysis, design, and implementation– Analysis: Identify the classes from which enterprise

objects are created and the interactions between these classes

– Design: Refine class definitions and interactions based on the requirements of the new information system

– Implementation: Create a working information system using object-oriented languages and tools

6

Page 7: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Object Models

• In the OOSAD methodology, the object model serves the same purpose as do the DFD and ERD in the traditional SDLC methodology

• The object model is focused on data and software, showing classes and class interactions

7

Page 8: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

The Object Model and the Six CIS Components

8

PeopleProceduresDataHardwareSoftwareNetworks

Object

Class

Attributes

Methods

Page 9: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Object Models

Object Identification:

• Use case modeling is the preferred technique for identifying enterprise objects

• Another way to identify classes is to use the DFD and ERD models as a springboard, where each of the DFD’s data stores and ERD’s entities are potential classes

9

Page 10: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Anatomy of an Object

10

•Class: a two-part abstraction (attributes and methods) of a real-world person, place, thing, or activity

•Instance: a specific object created from the class blueprint

•Encapsulation: describes the enveloping, membrane-like environment in which an object exists

•Messages: means by which objects communicate with each other

•Polymorphism: allows a method to behave differently when encapsulated in different classes

•Inheritance: imprints class definitions on new generations of the class

•Class relationships: describes the way classes interact with one another

TECHNOTE 5-1

Page 11: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

11

Object Model Symbols

Reference Figure 5-2: Silhouette Sea Charter’s Object Model

Page 12: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

12

Silhouette Sea Charter’s Object Model

This aggregate relationship allows for one or more customers to signup for the same charter

This specialization relationship indicates that there are two subsets of the Boat class

Page 13: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

13

Comparing Silhouette’s Object Model and Data Model

Object Model

Data Model

Page 14: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Use Case Modeling

• Use case modeling provides a systematic way to identify objects

• A use case is a detailed description of what happens when someone or something interacts with the information system

• The nouns used to title the use case scenarios provide a basis for object identification

• The interactions between use cases provide the basis for defining the relationship between the objects underlying class

14

Page 15: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Unified Modeling Language

• The Unified Modeling Language (UML) has emerged as the generally accepted modeling standard for object-oriented methodologies and techniques

• Four of the numerous UML diagrams serve the same function as the traditional DFD, ERD, and walk-through models:– Use case diagram– Class diagram– Interaction diagrams– Statechart diagrams

15

Page 16: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

16

Nine UML Modeling Diagrams

Class Diagram

Object Diagram

Use Case Diagram

Interactive (Sequence) Diagram

Interactive Collaborative Diagram

Statechart Diagram

Activity Diagram

Component Diagram

Deployment Diagram

Page 17: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

17

Silhouette’s UML Use Case Diagram

Page 18: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Silhouette’s UML Class Diagram

18

Page 19: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Silhouette’s UML Interactive sequence Diagram

19

Page 20: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Silhouette’s UML Statechart Diagram

20

Page 21: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Inflatable Labor Charges

21

ThinkingCritically

What action would you recommend if you discovered that your most talented analyst had consistently inflated the labor hours charged to a project?

Page 22: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

The Data Dictionary

A data dictionary is an ordered catalog of data elements and their definitive characteristics

22

Form Symbols

multiple entries { } permitted

optional entry [ ]

key field underline

data structure =composition

attribute +separator

Page 23: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Illustrated Data Dictionary Form and Symbols

23

Type: data store

Element Name: customer

Description: customer master file

Contents: customer = custid+ name+

address+ phone

Usage Cross-Reference: DFD, USD, ERD, system flowchart

Storage reference: customer.dbf

Page 24: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

The analysts do not intend to use an object-oriented programming language to implement the new system. Even the objectlike features of 4Gl software do not require object identification or use case modeling.

Cornucopia’s object model is derived from the ERD.

24

THE CORNUCOPIA CASE

Page 25: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

25

Cornucopia Existing System Object Model

Page 26: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Chapter Summary (1/3)

26

• The object model is an alternative to the traditional SAD methodology

• It is important to understand the object model, even if the analyst does not intend to use object-oriented development tools

• Objects are created from a class blueprint

Page 27: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Chapter Summary (2/3)

27

• Objects are characterized by their attributes and behaviors

• Objects communicate with one another through messaging

Page 28: Object-oriented methodology object models use case modeling unified modeling language the data dictionary the cornucopia case portfolio project Systems.

Chapter Summary (3/3)

28

• The Unified Modeling Language (UML) provides a collection of modeling tools for OOSAD – Use case diagram– Class diagram– Interaction diagrams– Statechart diagram

• The data dictionary provides a systematic procedure to keep track of the names, definitions, associates, and existing or proposed uses of data