Monday,
February 9, 2004 |
|
Book
Review |
|
Learn the six team
skills
Review by Sarabjeet Singh Kanwal
Managing Software Requirements by Dean Leffingwell and Don Widrig; Pearson Education Asia; Pages 491; Price Rs 350
THE
goal of a software development project is to make a product, which is
practically helpful to end-users in their work. Many projects fail
simply because developers are unable to understand the needs of
end-users. A small misunderstanding may result in a big flaw. The
development teams seldom get a clear requirement specification from the
clients for the system they are going to build.
So, the team has to strive
to get the information about its actual goal. The term
"requirements elicitation" describes this process.
This book has ‘six team
skills’ that teach us a solid methodology to understand the user
requirements and effective requirement management techniques at a very
early stage of development.
Team skill one teaches the
way to understand the real world problem using various problem analysis
techniques. It teaches how to analyse boundaries of a system and various
constraints imposed on it. Some interesting illustrations drive home the
concepts clearly. The book also provides case studies to make things
clearer.
Team skill two describes
number of techniques used to collect and understand the needs of the
system. We will be able to predict the potential features of the system
that will fulfil these needs. Though no single technique is perfect in
every case yet regular use and their study provide the user the skill to
pick the most appropriate one from them.
Team skill three defines
the system. Now, the developer moves from problem space to solution
space. Information collected about requirements must be organised in a
database or model. Requirements organisation techniques vary from system
to system. Each subsystem in a large system has its own specifications.
Team skill four helps
manage the project scope. It is a combination of product functionality,
project resources and the time available. Here, one gets to know the
scope management and the most common software development process model.
Team skill five is about
refining the system definition. A complete set of inputs, outputs and
attributes define software requirements. Authors specify nine measures
of quality that the requirements specification must meet. You will learn
the technical way to write these specifications.
Team skill six is about
building the right system. You have to continually confirm that
development is on track. The entire model has to satisfy many tests,
verifications and validations.
|