Description:
How does your organization go about gathering and identifying
project requirements? How do project analysts proceed from the
first step of a concept or vision and scope document to delivering
a full-blown requirements document? Frequently clients provide
their requirements in disorganized fragments which may include
business rules, data definitions, solutions (be careful here!),
user interface examples, constraints, etc. This avalanche of
information must be collected and organized in a manner which
helps get to the essence of the business problem and systems
solution as quickly as possible.
Software requirements are the first step in project development,
and form the basis on which all the subsequent work is done.
Yet the individuals assigned to gathering and documenting requirements
are frequently untrained in the skills which contribute to complete
and correct requirements. Sadly, more than 50% of defects are
traceable to poor requirements. Understanding the skill set
needed to develop good requirements is vital for improving overall
project results. This is especially true with the ever-increasing
complexity of modern business applications. However, it can
be expensive to train everyone who might be involved with requirements
development, difficult to schedule team members to be away from
their responsibilities for several days, or wasteful to send
experienced people to full requirements training classes when
they may only need exposure to a few new but important ideas.
MODULE ONE: USE CASE METHODS
'Use cases' became widely known through Object-Oriented methodologies
in the early 90's. Yet the actual technique of documenting user
scenarios has been known to successful developers for decades.
Use Cases provides a structured method to elicit business requirements,
and is widely used in JAD (Joint Application Development) sessions
because it is both user- and task-centric. Understanding of
use case documentation speeds overall requirements development,
prevents defects at the earliest stages, provides traceability,
supports prioritization efforts, reduces test cycle time, identifies
opportunities for reuse, sets up successful outsourcing and
improves quality delivery.
Module I of this workshop improves requirements
documentation skills through exercises with use cases and
user class types. Students will learn how to use the Use Case
Methodology as a tool to drive requirements elicitation, documentation,
testing, and training. We will work examples to ensure students
are proficient in the methodology.
MODULE TWO: WRITING BETTER REQUIREMENTS
Module II of the workshop improves requirements writing skills
through lecture and examples focused on both content and technique.
Students will use quality checklists as tools to review and
improve their requirements writing skills. The focus is on understanding
the detail needed in a requirement and how to validate that
the requirement has covered what it should. The course delves
into practical ways to ensure that all stakeholders' interests
are represented. This is an interactive workshop, which gets
all class members involved, driving home the concepts in an
enjoyable way, and we'll use a number of examples to ensure
students are proficient in the methodology.
Prerequisites: Familiarity with software development