Collective Wisdom from the Experts 17
repeated on the diagram until each requirement is crystal-clear. Software
mind-mapping tools could be used to document the requirements using
this approach. Once even a small set of requirements is crystallized,
development can begin.
• Follow agile development processes. As soon as a small set of require-
ments is identified, the development team can start prototyping immedi-
ately. Once the prototype is available, stakeholders can test and provide
feedback. Customer feedback ensures that requirements are accurate and
also helps identify any gaps that developed in the requirements as they
were relayed from the actual customer, through the business analysts, to
the project team. Allowing the customer to see the prototype also checks
that the corresponding solution imagined by the developers is, indeed,
what the customer envisioned.
Gaps are translated into new requirements, developers re-prototype, and
the cycle continues. Each cycle should be as short as possible—typically,
not more than two to three weeks.
This cycle of defining a small set of requirements, producing a prototype
of the stated requirements, and obtaining feedback ensures that all project
stakeholders are always on the same page and everyone is comfortable
with what is going on. By religiously following these simple techniques,
every software project can reach a successful conclusion. Especially if suc-
cess is defined as a happy customer and working software that provides
the useful business function for which it was created.