1 an introduction to object-oriented analysis objects and uml in plain english. chapter 6: the...

25
1 An Introduction to An Introduction to Object-Oriented Object-Oriented Analysis Analysis Objects and UML in plain English. Objects and UML in plain English. Chapter 6: The Object- Chapter 6: The Object- Oriented Development Life Oriented Development Life Cycle Cycle Srividya Srinivasan

Upload: roderick-hines

Post on 17-Jan-2016

226 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

1

An Introduction toAn Introduction to

Object-Oriented Object-Oriented AnalysisAnalysis

Objects and UML in plain English.Objects and UML in plain English.

Chapter 6: The Object-Oriented Chapter 6: The Object-Oriented Development Life CycleDevelopment Life Cycle

Srividya Srinivasan

Page 2: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

2

Chapter 6: The Object-Oriented Chapter 6: The Object-Oriented Development Life CycleDevelopment Life Cycle

(OODLC)(OODLC)6.1. The Life Cycle

6.2. The Object-Oriented Analysis Phase

6.3. The Object-Oriented Design Phase

6.4. The Construction Phase

6.5. The Object-Oriented Testing Phase

6.6. The Maintenance Phase

Page 3: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

3

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.1. The Life Cycle

The OODLC is an update of the older SDLC In this chapter we will overview the OODLC Beginning in Chapter 7 we will look at

detailed step-by-step methods for doing the Analysis Phase.

The aim in this chapter is to see how all the pieces fit together.

We examine the Analysis Phase in detail since it is the focus of this course.

Page 4: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

4

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.1. The Life Cycle

Phase

Analysis

Design

Construction

Testing

Maintenance

Activity

OOA

OOD

OOP

O-O Testing

All of the above

ModelsProduced

RequirementsModel

Design versions ofthe OO models

Actual system

Working system

All of the above

Components

Project scope

Feasibility study

Context diagram

Class diagram:

Entity classes

Interface classes

Control classes

Behavior diagrams:

Statechart diagrams

Collaborations and CRC cards

Sequence diagrams

Activity diagrams

Page 5: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

5

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.1. The Life Cycle

6.2. The Object-Oriented Analysis Phase6.2. The Object-Oriented Analysis Phase

6.3. The Object-Oriented Design Phase

6.4. The Construction Phase

6.5. The Object-Oriented Testing Phase

6.6. The Maintenance Phase

Page 6: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

6

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.2. The Object-Oriented Analysis Phase

In Analysis we model the users’ requirements

For what the eventual system must

DODO..Output of this process is a conceptual conceptual

modelmodelConsisting of 2 deliverables:deliverables:

Requirements Model Object Model

Page 7: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

7

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.2. The Object-Oriented Analysis Phase Requirements Model

Now let’s look at these in detail. . .Now let’s look at these in detail. . .

The Requirements model has 5 components:

Project ScopeContext Diagram Use Case Model Interface Descriptions Feasibility study

Page 8: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

8

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.2. The Object-Oriented Analysis Phase Requirements Model

The Project ScopeProject Scope is a statement of what our project is to produce.what our project is to produce.

States in general terms what the system will do for the users.

May be a paragraph or two,Or many pages, depending on the

size of the project. There is much variation in size and format

among companies and methodologies.

Page 9: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

9

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.2. The Object-Oriented Analysis Phase Requirements Model

It is also important that the Scope say what the system will will

notnot do,do,Otherwise the users will try to

“push the scope”“push the scope”Which causes “Scope Creep.”“Scope Creep.”

Page 10: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

10

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.2. The Object-Oriented Analysis Phase Requirements Model

The Context Diagram:Context Diagram:Shows our system as a large box,Surrounded by smaller boxes,Representing External Entities:External Entities:

ie., People, organizations, systems and other things outside our system outside our system that either provide data to it or draw data from it.

Page 11: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

11

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.2. The Object-Oriented Analysis Phase Requirements Model

Context DiagramContext Diagram

Radio CHQT Advertisers Database

SystemAdvertisers

RegulatoryAuthorities

RevenueCanada

Shareholders

Listeners BetterBusinessBureau

Requests

Billing

Statistics &Reports

ProgramInfo

CreditRatings

QuarterlyReports

FinancialReports

Page 12: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

12

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.2. The Object-Oriented Analysis Phase Use Case Model

A Use CaseUse Case is a script,A step-by-step description of how a

user might make use of the systemTo do a task. It is a “case of the usage of the system.”“case of the usage of the system.”

See Ch 7 for details.

Page 13: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

13

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.2. The Object-Oriented Analysis Phase

Interface DescriptionsInterface Descriptions

GUIOther I.S. SystemsReal-World systems that we

controlCommunications interfacesetc.

Page 14: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

14

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.2. The Object-Oriented Analysis Phase

Feasibility AnalysisFeasibility Analysis

Can we do this project?ShouldShould we?Can we make it work? Is the cost worth it?etc.

Page 15: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

15

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.2. The Object-Oriented Analysis Phase

Feasibility AnalysisFeasibility Analysis Six Factors of Feasibility

Economic Feasibility – Costs and Benefits Technical Feasibility – Whether

technically feasible Operational Feasibility – Schedule Feasibility – time availability Legal Feasibility – Legal issues Political Feasibility – Stockholders’ issues

Page 16: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

16

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.1. The Life Cycle

6.2. The Object-Oriented Analysis Phase

6.3. The Object-Oriented Design Phase 6.3. The Object-Oriented Design Phase

6.4. The Construction Phase

6.5. The Object-Oriented Testing Phase

6.6. The Maintenance Phase

Page 17: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

17

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

Modify Analysis model to reflect design decisions,

Mostly by adding information to the existing model.

Add some new classes that do not directly model things in the real world.

Result is a planplan of howhow the system will do what the Requirements Analysis asks for

6.3. The Object-Oriented Design Phase6.3. The Object-Oriented Design Phase

Page 18: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

18

AnalysisAnalysis is is whatwhat the system the system

must do,must do,

DesignDesign is is howhow the system the system

will do it.will do it.

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

Page 19: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

19

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.1. The Life Cycle

6.2. The Object-Oriented Analysis Phase

6.3. The Object-Oriented Design Phase

6.4. The Construction Phase 6.4. The Construction Phase 6.5. The Object-Oriented Testing Phase

6.6. The Maintenance Phase

Page 20: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

20

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

Coding and testing Should be done with an O-O language or database.

Deployment and user training.

6.4. The Construction Phase

Page 21: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

21

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.1. The Life Cycle

6.2. The Object-Oriented Analysis Phase

6.3. The Object-Oriented Design Phase

6.4. The Construction Phase

6.5. The Object-Oriented Testing Phase6.5. The Object-Oriented Testing Phase

6.6. The Maintenance Phase

Page 22: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

22

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

Complete the unit testing of individual classes and programs

Then system testing. Testing must be thorough and complete,

And automatedautomated.

6.5 The Object-Oriented Testing Phase

Page 23: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

23

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

6.1. The Life Cycle

6.2. The Object-Oriented Analysis Phase

6.3. The Object-Oriented Design Phase

6.4. The Construction Phase

6.5. The Object-Oriented Testing Phase

6.6. The Maintenance Phase 6.6. The Maintenance Phase

Page 24: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

24

Chapter 6: The Object-Oriented Development Life Cycle (OODLC)

Bug fixes Enhancements Viruses End-user computing Backups and restores

3 levels + offsite. Disaster preparedness and recovery

The World Trade Center bombing.Murphy’s Law

6.6. The Maintenance Phase

Page 25: 1 An Introduction to Object-Oriented Analysis Objects and UML in plain English. Chapter 6: The Object-Oriented Development Life Cycle Srividya Srinivasan

25

End of Chapter 6.