REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

32
REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371 .

Transcript of REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Page 1: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

REQUIREMENTS - WHY WHAT AND HOW?

Sriram Mohan/Steve Chenoweth371

.

Page 2: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Outline

Why ? What ? How ?

Page 3: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

WHY REQUIREMENTS

Page 4: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Some facts4

250 billion dollar industry 31% projects cancelled(money lost 81

billion dollars) 52.7% cost 189% of their original

estimates

Page 5: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Biggest Reasons forProject Success and Failure

Page 6: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Project Failure

Lack of user input (13%) Incomplete requirements (12%) Changing requirements (12%)

Page 7: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Project Success

User involvement (16%) Executive management support (14%) Clear statement of requirements (12%)

Page 8: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

8

Page 9: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Defects by Development Phase Requirements – 31% Design – 25% Coding – 12% Documentation – 16% Bad fixes – 16%

Page 10: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Cost to Fix Errors10

RequirementsDesignCodingUnit TestAcceptance TestMaintenance

1 5 25 50125500

Page 11: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Why ?11

Requirements errors are likely to be the most common class of error

Requirements errors are likely to be the most expensive to fix

Page 12: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

WHAT IS A SOFTWARE REQUIREMENT?

Page 13: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

What is a Software Requirement?

13

1. A software capability needed by the user to solve a problem to achieve an objective

2. A software capability that must be met or possessed by a system or system component to satisfy a contract, standard, specification or other formally imposed documentation

Page 14: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

WHAT IS SOFTWARE REQUIREMENTS MGMT?

Page 15: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

What is Software Requirements Management?

15

The process of systematically, eliciting, organizing and documenting requirements for the software system, and a process that establishes and maintains agreement between the customer and the project team on the changing requirements of the system.

Page 16: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

16

Page 17: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

What does it involve?17

Understand the need - the problem to be solved

Propose features - how the need will be resolved

Requirements are the specific conditions that are imposed on the solution

Page 18: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

18

Needs

Features

Requirements

Problem

Domain

SolutionDomain

Page 19: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

SOFTWARE LIFECYCLE PROCESS MODELS

Page 20: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

20

Page 21: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Waterfall Model

Manufacturing life cycle model Assumes

multi-stage development cycle completely separate stages output of one stage is input for next each stage complete before next is begun

Page 22: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Waterfall Stages

Requirements

Design

Coding

Testing

Maintenance

Page 23: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Advantages

Much better than chaos! Clearly defined stages help with

planning, scheduling management, organization accountability, control

Page 24: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Disadvantages

Not very practical (do not know requirements in the beginning)

Customer sees nothing until last step

Change is Anathema

Page 25: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Spiral Model25

Incremental more feedback from customer

Risk analysis more rigorous analysis of risk at

each stage

Page 26: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Spiral Model

Page 27: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Iterative (or Incremental) Approach27

Four phases Inception Elaboration Construction Transition

Page 28: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Iterative(or Incremental) Approach

28

An iteration is a sequence of activities with an established plan and evaluation criteria, resulting in an executable of some type

Each phase goes under a # of iterations

Page 29: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Management

Environment

Business Modeling

Implementation

Test

Analysis & Design

Preliminary Iteration(s)

Iter.#1

Phases

Iterations

Iter.#2

Iter.#n

Iter.#n+1

Iter.#n+2

Iter.#m

Iter.#m+1

Deployment

Configuration Mgmt

Requirements

Elaboration TransitionInception Construction

Workflows group activities logically

In an iteration, you walk through all activities

Process Workflow

Support Workflow

Rational Unified Process Model

Page 30: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Team Project Process30

Modified Waterfall model will be used in 371/2

You may choose any model you desire during implementation in 375

Page 31: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Software Development31

Is this a team activity? Why?

Page 32: REQUIREMENTS - WHY WHAT AND HOW? Sriram Mohan/Steve Chenoweth 371.

Requirements Team Skills

1. Analyzing the Problem2. Understanding User and Stakeholder

Needs3. Defining the System4. Managing Scope5. Refining the System Definition6. Building the Right System