• No results found

Case Study: Agile Request For Proposal (RFP) Process

N/A
N/A
Protected

Academic year: 2021

Share "Case Study: Agile Request For Proposal (RFP) Process"

Copied!
14
0
0

Loading.... (view fulltext now)

Full text

(1)

Agile RFP-1

2003+ Jennitta Andrea

Case Study:

Agile Request For

Proposal (RFP)

Process

Agile Requirements Process Agile Principles FTDD Context Driven Adaptation Retrospectives Iterations Practices Stories Where do Stories Come from? Functional Tests Effective Specification Domain Language Tools Reduce Waste Reduce Risk

Feedback Just Enough

(2)

Agile RFP-3 2003+ Jennitta Andrea

RFP Process

Specify Requirements Evaluate Proposals Develop Proposal Implement Solution Develop

Proposal ProposalDevelop

Vendor 3 Vendor 2 Vendor 1 Company The focus is on this process

Typical RFP Specification Process –

Identify UC

identity

(3)

Agile RFP-5

2003+ Jennitta Andrea

Typical RFP Specification Process –

Complete Requirements

identity

detail

Can we make this any more agile?

Typical XP vs Typical RFP

All up front

Just in time

When are

requirements

described?

Typical RFP

Requirements Phase

Typical XP

Requirements Phase

Documents

Face to face

communication

How are

requirements

communicated?

Use cases

Stories and

acceptance tests

What techniques are

used?

Variable: sometimes

too much, sometimes

too little

Promise for

conversation -->

acceptance tests

How detailed are the

(4)

Agile RFP-7

2003+ Jennitta Andrea

How Agile Can RFP Be?

All up front

Just in time

When are

requirements

described?

Typical RFP

Requirements Phase

Typical XP

Requirements Phase

Documents

Face to face

communication

How are

requirements

communicated?

Use cases

Stories and

acceptance tests

What techniques are

used?

Variable: just enough

Promise for

conversation -->

acceptance tests

How detailed are the

requirements?

How do we ...

Variable: just enough

sometimes too much,

sometimes too little

Promise for

conversation -->

acceptance tests

How detailed are the

requirements?

Use cases

Stories and

acceptance tests

What techniques are

used?

Documents

Face to face

communication

How are

requirements

communicated?

All up front

Just in time

When are

requirements

described?

Typical RFP

Requirements Phase

Typical XP

Requirements Phase

How do we merge these together? How do we decide how much

(5)

Agile RFP-9

2003+ Jennitta Andrea

Stories vs Use Cases

User Goal

Business Value

Represents

Use Cases

Stories

All scenarios related to

the user goal

A chunk of the system

that has business

value

Describes

Yes

No

Provides ‘big

picture’?

No, both too big and

too small.

Yes

Good for Planning?

Best of Both Worlds

User Goal

Business Value

Represents

Use Cases

Stories

All scenarios related to

the user goal

A chunk of the system

that has business

value

Describes

Yes

No

Provides ‘big

picture’?

No, both too big and

too small.

Yes

Good for Planning?

Package info together as

use cases Break the info

up into stories for planning

(6)

Agile RFP-11

2003+ Jennitta Andrea

Typical Use Case Template

<use case name> : <overview of user goal>

Pre-Condition <list of preconditions>

Success <list of success end conditions>

Failure <list of failure end conditions>

Main Scenario

1. <main step> 2. <main step> 3. …

[<main step #>] <alternate name>

a) <alternate step> b) …

c) use case resumes at <main step#>

[<main step #>] <alternate name>

a) <alternate step> b) …

c) use case terminates

Stories Embedded In Use Case

<use case name> : <overview of user goal>

Pre-Condition <list of preconditions>

Success <list of success end conditions>

Failure <list of failure end conditions>

Story Description <story #>.Basic Functionality 1. <main step>

2. <main step> 3. …

[<main step #>] <alternate name> a) <alternate step>

b) …

c) use case resumes at <main step#>

<story #>. <story name>

[<main step #>] <alternate name> a) <alternate step>

b) …

(7)

Agile RFP-13

2003+ Jennitta Andrea

Identity Level

Create Volume

: A Volume is entered into the system for the first

time. The user is prevented from creating a duplicate volume. If the

box and/or chart specified by the user do not already exist, the system

will create them as a side effect.

Pre-Condition

nothing

Success

Volume created (archived state) and associated

with the specified Box, and Chart.

Box / Chart is created if it did not exist

previously.

User name and date of action placed in audit log.

Failure

nothing

Outline Level

Create Volume: …

Pre-Condition

Success

Failure

Story

Description

S1.Basic

Functionality

1. User enters volume information.

2. User requests that the information be saved.

3. System validates information. [F2. User Input Validation]

4. System saves information in a new Volume and places

Volume in archived state.

5. System adds the Volume to the designated Box.

6. System adds the Volume to the designated Chart.

7. System records the transaction in the audit log [G1. Audit]

[3] Duplicate Volume

S2. User Input

(8)

Agile RFP-15 2003+ Jennitta Andrea

Detail Level

Create Volume: …

Pre-Condition

Success

Failure

Story

Description

S1.Basic Functionality

...

[3] Duplicate Volume

a) System detects another Volume with the same

chart number, volume number and site.

b) System informs the user of the error.

c) Use case terminates.

S2. User Input

Validation

[3] Missing information

a) System informs the user of the missing fields.

Use case terminates.

Acceptance Test Level

S1. Basic Functionality: Basic Success Test Pre conditions

Box1 Exists, contains Volume1 Chart1 Exists, contains Volume1 Volume2 Does not exist

Process Parameters

Box # 1

Chart # 1 Volume # 2

Patient Name <unique string> Year Last

Contact

<ten years ago> Archive Date <today>

Post conditions

Volume2 Exists with appropriate patient name, yr of last contact, archive date Box1 Contains Volume1 and Volume2

(9)

Agile RFP-17 2003+ Jennitta Andrea Test Case Test Case Test Case

Effort vs. Ambiguity

identity outline Detail scenario Detail Scenario Detail scenario Test Case Test Case Effort Increases Ambiguity Decreases

Estimate Accuracy Increases (for Complex Req’s only)

Decision Tree Forces

Choose target level of detail based on:

Familiarity of the team with the domain

Uniqueness of the requirement

Complexity of the concepts

Business criticality of the system /

requirement

Life / safety criticality of the system /

requirement

(10)

Agile RFP-19

2003+ Jennitta Andrea

Decision Tree – Custom Dev’t

a . e n o u g h d e t a i l ? I d e n t i t y L e v e l b . c o m p l e x ? y e s n o c . l i f e / m i s s i o n c r i t i c a l ? A c c e p t a n c e T e s t s L e v e l O u t l i n e L e v e l D e t a i l L e v e l y e s y e s n o n o

Decision Tree – Package Software

a . V e n d o r s u p p o r t e d ? b . I n d u s t r y S t a n d a r d ? I d e n t i t y L e v e l c . D e v e l o p e d B y ? y e s d . C a n w e e s t i m a t e ? e . C r i t i c a l / c o m p l e x ? O u t l i n e L e v e l D e t a i l L e v e l A c c e p t a n c e T e s t s L e v e l n o yes n o v e n d o r n o n o , ( m u s t d e v e l o p ) i n h o u s e y e s

(11)

Agile RFP-21

2003+ Jennitta Andrea

Agile RFP Specification Process –

UC Identification

identity

detail outline

tests

Agile RFP Specification Process –

UC Prioritization

identity

detail outline

(12)

Agile RFP-23

2003+ Jennitta Andrea

Agile RFP Specification Process –

Target UC Detail

identity detail outline tests

Agile RFP Specification Process –

Story Identification

identity detail outline tests

(13)

Agile RFP-25

2003+ Jennitta Andrea

Agile RFP Specification Process –

Story Prioritization

identity detail outline tests

Agile RFP Specification Process –

Target Story Detail

identity detail outline tests

(14)

Agile RFP-27

2003+ Jennitta Andrea

Before vs. After

Original RFP Specification Process

1. Sketch the system

a) Find all user-goal use cases

2. Complete the requirements

a) Write all use cases to full level

of detail (main scenario and all alternate scenarios)

Agile RFP Specification Process

1. Sketch the system

a) Find all user-goal use cases b) Write use cases to Identity Level

2. Prioritize requirements 3. Assign target level of detail

a) Develop decision tree b) Assign levels to use cases c) Anything > Identity Level taken to

Outline Level

d) Assign levels to stories

4. Complete the requirements

a) Planning game

i. Assign work to iterations

ii. Prioritize stories if necessary iii. Velocity, yesterday’s weather,

spike

b) Customer on-site c) Pair development

Goal: Increase the Agility of the RFP

Process

• Business value

•Planning game

– Iterative, incremental development – Velocity

– Yesterday’s weather – Spike

Develop requirements

just in time

• Pair Development

• On-site customer

Improve the quality of the

requirements

• Levels of detail

– Stories embedded in use cases – Acceptance tests

• Decision tree

Develop requirements to

just

enough

detail

Accomplished By

Sub-Goal

References

Related documents

Bruce Springsteen Hungry heart 1980 Bruce Springsteen I'm on fire 1985 Bruce Springsteen My hometown 1986 Bruce Springsteen Save my love 2010 Bruce Springsteen Secret garden 1995

The experimental process was achieved through the following steps: a) Preprocessing, where the final fea- tures were selected among the extracted ones, using either ANOVA or

The District Court, in this example, will have the power to enter the order, but will not have the power, generally, to change the custody, visitation, or child support orders

See Editorial, All parents need to actively monitor their children's Internet, cell- phone behaviors to avoid sexting, STUART NEWS (Fla.), May 13, 2009, at A6 (writing

Question: On page 5 under APPROVAL, AWARD &amp; EXECUTION OF CONTRACT it states “The Loss Control &amp; Safety Services Consultant shall serve as a full-time Consultant to the

After examining these contextual features, the Cybergenics majority concluded that &#34;the most natural reading of the Code is that Congress recognized and approved

Bullet Powder Starting Load Maximum Load Weight Type Mfg.. BOLD TEXT INDICATES MAXIMUM LOAD - USE WITH CAUTION!. Bullet Powder Starting Load Maximum Load Weight Type Mfg.. BOLD

The educational work of the Bavarian Forest National Park is not just confined to the aims and objectives of national parks; it should also encourage a general understanding of