Skip to content

BeyondTest - Focusing Quality Everywhere

Sections
Personal tools
You are here: Home » Software Engineering » Requirement » Requirements Engineering Good Practices

Requirements Engineering Good Practices

Document Actions

Table 3-1 lists nearly 50 practices, grouped into seven categories, that can help most development teams do a better job on their requirements activities. Several of the practices contribute to more than one category, but each practice appears only once in the table. These practices aren't suitable for every situation, so use good judgment, common sense, and experience instead of ritualistically following a script. Note that not all of these items have been endorsed as industry best practices, which is why I've titled this chapter "Good Practices for Requirements Engineering," not "Best Practices." I doubt whether all of these practices will ever be systematically evaluated for this purpose. Nonetheless, many other practitioners and I have found these techniques to be effective (Sommerville and Sawyer 1997; Hofmann and Lehner 2001). Each practice is described briefly in this chapter, and references are provided to other chapters in this book or to other sources where you can learn more about the technique. The last section of this chapter suggests a requirements development process—a sequence of activities—that is suitable for most software projects.

Table 3-1: Requirements Engineering Good Practices

Knowledge

Requirements Management

Project Management

  • Train requirements analysts

  • Educate user reps and managers about requirements

  • Train developers in application domain

  • Create a glossary

  • Define change-control process

  • Establish change control board

  • Perform change impact analysis

  • Baseline and control versions of requirements

  • Maintain change history

  • Track requirements status

  • Measure requirements volatility

  • Use a requirements management tool

  • Create requirements traceability matrix

  • Select appropriate life cycle

  • Base plans on requirements

  • Renegotiate commitments

  • Manage requirements risks

  • Track requirements effort

  • Review past lessons learned

Requirements Development

Elicitation

Analysis

Specification

Validation

  • Define requirements development process

  • Define vision and scope

  • Identify user classes

  • Select product champions

  • Establish focus groups

  • Identify use cases

  • Identify system events and responses

  • Hold facilitated elicitation workshops

  • Observe users performing their jobs

  • Examine problem reports

  • Reuse requirements

  • Draw context diagram

  • Create prototypes

  • Analyze feasibility

  • Prioritize requirements

  • Model the requirements

  • Create a data dictionary

  • Allocate requirements to subsystems

  • Apply Quality Function Deployment

  • Adopt SRS template

  • Identify sources of requirements

  • Uniquely label each requirement

  • Record business rules

  • Specify quality attributes

  • Inspect requirements documents

  • Test the requirements

  • Define acceptance criteria


Created by beyondtest
Last modified 2005-07-22 10:49 AM
« January 2009 »
Su Mo Tu We Th Fr Sa
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

 
 

Powered by Plone

This site conforms to the following standards: