In Search of Excellent Requirements

Delivery: 2-day workshop or onsite coaching


Requirements form the foundation for all the software work that follows. Arriving at a shared vision of the product to be developed is one of the greatest challenges facing the software project team, and customer involvement is among the most critical factors in software quality. The objective of this workshop is to give attendees a tool kit of practices, reinforced with practice sessions and group discussions, that they can begin applying to improve the quality of the requirements development and requirements management processes in their organization. (See testimonials).

This two-day workshop* describes tested methods that can help any organization improve the way it elicits, analyzes, documents, verifies, and manages software requirements. Characteristics of excellent requirements statements and requirements specifications are presented and used to evaluate some sample functional requirements. The workshop emphasizes several practical techniques:

  • creating an effective customer-developer partnership
  • customer involvement through a "product champion" model
  • defining three levels of software requirements: business, user, and functional
  • the application of use cases for defining user needs and system functions
  • a model for prioritizing requirements
  • writing software requirements specifications using a standard template
  • constructing dialog maps to model user interfaces, as well as other analysis models
  • the use of prototypes to clarify and refine user needs
  • the use of technical reviews and inspections to find requirements errors
  • the use of NASA's ARM freeware tool to find requirements errors
  • use of a requirements traceability matrix to connect requirements to design elements, code, and tests


The basic concepts of requirements management are described, including practical methods for managing changes to requirements. These techniques can reduce project risk by improving the quality and control of the software requirements, thereby increasing the likelihood of a successfully completed project.

Audience: This workshop will be useful to software engineers, managers, requirements analysts, user representatives, and anyone else engaged in gathering, documenting, analyzing, or managing customer requirements for software applications and IT solutions.

Format: A blend of lecture, class discussion, group discussions on requirements problems and solutions, and practice sessions on current project work. Practice sessions give attendees some experience in working with use cases, drawing a dialog map, reviewing a requirements specification, writing good requirements, and writing an action plan to improve their group's requirements practices.

This workshop provides the implementation details for the Requirements Management and Requirements Development Process Area in CMMI.

*Licensed from Karl Wiegers, and based on his book, Software Requirements (Microsoft Press, Edition 2, 2003, ISBN 0-7356-1879-8).

WORKSHOP AGENDA

 


THE PROCESS GROUP

The Process Group principals have experience in conducting workshops for companies in the U.S., U.K., Switzerland, Canada, India, Germany, France, Czech Republic, Singapore and Japan. We are authorized SEI appraisal leaders and provide consulting services that enable you to operate your organization more efficiently and profitably. We also offer public speaking engagements that help management and employees understand the various techniques for--and benefits of--improving the development process.



© The Process Group