11
1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. [email protected] (703) 556-1030 DOORS USER GROUP DOORS USER GROUP CONFERENCE CONFERENCE Reston, VA Reston, VA September 17, 2001 September 17, 2001 Effective Requirements Practices Effective Requirements Practices http://ralphyoung.net http://ralphyoung.net

1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. [email protected] (703) 556-1030 DOORS USER GROUP CONFERENCE Reston, VA September 17,

Embed Size (px)

Citation preview

Page 1: 1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. young_ralph@prc.com (703) 556-1030 DOORS USER GROUP CONFERENCE Reston, VA September 17,

1

Dr. Ralph R. Young

Director of Software Engineering

PRC, Inc.

[email protected]

(703) 556-1030

DOORS USER GROUP DOORS USER GROUP CONFERENCECONFERENCE

Reston, VAReston, VA

September 17, 2001September 17, 2001

Effective Requirements PracticesEffective Requirements Practices

http://ralphyoung.nethttp://ralphyoung.net

Page 2: 1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. young_ralph@prc.com (703) 556-1030 DOORS USER GROUP CONFERENCE Reston, VA September 17,

2

Major Industry ProblemsMajor Industry Problems

• We fail to identify the real requirements before we start development efforts.

• We don’t manage changes to requirements and new requirements well.

• We lack a disciplined project management approach.—Management’s “expectations” are not clear.

• We need to invest more in formal training.

Page 3: 1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. young_ralph@prc.com (703) 556-1030 DOORS USER GROUP CONFERENCE Reston, VA September 17,

3

Effective Requirements Effective Requirements PracticesPractices• Obtain commitment.

— Consider “Partnering Workshops.”— Have and use a “Requirements Policy.”

• Define the real customer needs and the real requirements.— Industry experience shows that the “stated requirements”

are never adequate.— Consider utilizing a “Joint Team” to be responsible for the

requirements.

• Use and continually improve a requirements process.

• Iterate the system requirements and architecture repeatedly.

Page 4: 1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. young_ralph@prc.com (703) 556-1030 DOORS USER GROUP CONFERENCE Reston, VA September 17,

4

Effective Requirements Effective Requirements Practices Practices (continued)(continued)

• Control changes to requirements and new requirements.

• Select familiar methods.• Maintain effective project

communication.• Maintain a set of work products that

together describe the requirements.• Perform requirements verification and

validation.• Use proven development practices.

Page 5: 1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. young_ralph@prc.com (703) 556-1030 DOORS USER GROUP CONFERENCE Reston, VA September 17,

5

Actions We Should ConsiderActions We Should Consider

• Invest more in the requirements process.

• Keep our customers involved.• Provide a mechanism to manage

requirements changes.• Reduce rework.• Invest in training and effective

tools and practices.

Page 6: 1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. young_ralph@prc.com (703) 556-1030 DOORS USER GROUP CONFERENCE Reston, VA September 17,

6

Page 7: 1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. young_ralph@prc.com (703) 556-1030 DOORS USER GROUP CONFERENCE Reston, VA September 17,

7

Maintaining Customer Maintaining Customer InvolvementInvolvement

Am

ou

nt

of

effo

rtA

mo

un

t o

f ef

fort

Userrequirements

Systemrequirements

Architecturaldesign

Detaileddesign &componentdevelopment

Definingresults

for users

Optimizingthe cost-benefits

Defining whatthe system

must do

Decidingon potential

changes

Customer work

Developerwork

Provisional& finalacceptance

Acceptance,integration &verification

Qualifying the

design

Verifying& validatingthe product

Linkingdeliverables

to requirements

Storing and using knowledge from

previous projects

Informing theenterprise

Page 8: 1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. young_ralph@prc.com (703) 556-1030 DOORS USER GROUP CONFERENCE Reston, VA September 17,

8

Managing Changes to Managing Changes to RequirementsRequirements• Implement a mechanism to control changes.

— “Joint Team” • Provides a single channel• Allows “responsibility” for the requirements• Facilitates communication of impacts

— Control requirements “leakage.”— Focus on product benefits rather than features.— A 1/3 change in requirements equates to a doubling

of project costs.— Use product releases and versions and an

incremental development approach.— Incorporate technology change management.

Page 9: 1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. young_ralph@prc.com (703) 556-1030 DOORS USER GROUP CONFERENCE Reston, VA September 17,

9

Avoiding ReworkAvoiding Rework

• Perform the development effort using known familiar proven industry, organizational, and project best practices.

• Calculate the ROI from using effective requirements practices and use the data to encourage the use of better practices.

• Reduce requirements errors—the single most effective action developers can take to improve project outcomes.

Page 10: 1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. young_ralph@prc.com (703) 556-1030 DOORS USER GROUP CONFERENCE Reston, VA September 17,

10

Training for Requirements Training for Requirements Analysts/EngineersAnalysts/Engineers• Have and use a requirements process.• Use an effective requirements tool.• Write good requirements (use criteria).• Document the rationale for each requirement.• Prioritize requirements.• Don’t make requirements decisions.• Do not “gold plate.”• How to address the most common sources of

requirements errors:— Incorrect facts (49%)— Omitted requirements (29%)— Inconsistencies (13%)

Page 11: 1 Dr. Ralph R. Young Director of Software Engineering PRC, Inc. young_ralph@prc.com (703) 556-1030 DOORS USER GROUP CONFERENCE Reston, VA September 17,

11

Where To Go From HereWhere To Go From Here• We must improve!• Each of us can have a positive impact on our

industry by doing things a bit differently.• Take three ideas home from this Conference

and apply them.• Consider having an organizational or project

requirements working group.• Leverage industry, organization, and project

experience.• Advise project managers.• Share successes.