Beruflich Dokumente
Kultur Dokumente
HOME
ABOUT
JOIN PMI
CONTACT
LOG IN
REGISTER
myPMI
Certifications
Membership
Learning
Events
Business & Government
PMBOK® Guide & Standards
Store
1. Learning
2. Library
Requirements
management –
planning for success!
techniques to get it right when planning
requirements
Share
CONFERENCE PAPER Requirements Management, Business Analysis 11 May 2015
Coventry, Tim
How to cite this article:
Coventry, T. (2015). Requirements management – planning for success!: techniques to get
it right when planning requirements. Paper presented at PMI® Global Congress
2015—EMEA, London, England. Newtown Square, PA: Project Management
Institute.
Tim Coventry
What is a Requirement?
Requirements exist within all organizations; all organizations exist to
delivery products and/or services to customers, which are always delivered
through business processes that are decomposed into individual
requirements. Requirements are simply a capability needed by a
stakeholder (person) to deliver a product and/or service.
Reducing cost
Improvings quality
Decreasing time taken
Decreasings risks
Enabling effective scope management
In 2009, IAG Consulting conducted a Business Analysis Benchmark
survey, 68% of companies surveyed used poor requirements practices and
reported that while having estimated a project at US$3 million, it will be on
budget less than 20% of the time. On average, these companies with poor
requirements practices will pay US$5.87 million per project, a significant
increase over estimation.
According to the 2004 CHAOS Report, three of the top five reasons
projects fail are related to requirements:
RMP Contents
The contents of a typical RMP contain the following sections:
Requirements Types
Requirement types are a mechanism to enable a cascading hierarchy of
requirements. This allows the initial broad coverage of requirements with a
business focus to be traced to detailed requirements with a technical focus.
Requirements Artifacts
Requirement artifacts are the documents produced that contain
requirements and other supplementary information for the stakeholders.
Figure 3: Requirement artifacts
One of things we need to do early on is to work out what artifacts are to be
produced. Figure 3 shows examples of some artifacts that have been
produced on a project. The terminology used is general terminology. Often,
organizations will call these artifacts different things, and it is important to
identify what artifacts are going to be produced on a project. The RMP
should include these artifacts and identify them right at the start of a
project.
The project approach is going to influence the different levels of artifacts.
Likewise, we need to identify what types of requirements are going to be
used on the project. Have you worked on a project where you have only
had solution and nonfunctional requirements? If so, you've gone straight
into solution requirements without understanding the business benefits.
By identifying higher level requirement types, we create linkages to
strategy.-What are the business goals and objectives? What are they trying
to achieve? What is the need? We need to make sure that, as we move
through the requirement types, we distill them down into lower level
requirements. It is important that we understand where those requirements
came from and what their main purpose was.
To put this in context, at the top we are looking at a high-level need, the
next level down is business requirements, and still further down, we get a
technical focus. I've seen organizations talk about a systems agnostic
approach. This is where you use business process to flush out where those
business requirements sit, and then drop down into the nonfunctional and
functional requirements. The levels evolve from a business focus drawing
down into a more technical focus. You can see a direct correlation between
the requirements types and the interest of the different stakeholders.
Requirements types are specifically targeted toward different types of
stakeholders.
Remember that different organizations use different names for their
artifacts (this is an example only). The first hurdle is understanding what
different types of requirements exist within your organization and who uses
them. In this article, I've use industry standards with requirements types to
reduce confusion.
Requirement Attributes
The following requirement attributes should be captured for all
requirements:
Requirement identifier (unique)
Requirement name
Requirement description
Requirement version number
Requirement type
Requirement change history
Requirement status
Requirement priority
Requirement owner
Requirement trace information
Requirement process/activity reference
Every requirement needs a unique identifier and a meaningful name. The
requirement needs a brief description that is understandable to the
business. I've seen some implementations where descriptions can be some
kind of a graphic that you attach (a screen shot or something that you might
put on the web with your requirements). The version number of the
requirement (e.g. we are now at version 1.3 of this business requirement) is
important to track changes which are inevitable through a project.
Requirement types and change history are a little more subtle in that
typically, if you're managing your requirements in a text document, it is the
document that is versioned and not the individual requirement. That is
probably not too bad in a simple project, but when you have different
stakeholders interested in different sets of requirements, you may actually
want to publish a particular version of requirements to subgroups of people.
Requirements status is an important input to your project metrics. An
example of this is when a draft requirement waiting approval has been
approved, has been deferred, and has been removed. An analysis of status
metrics can help you understand why things in a project might be taking
longer than expected. At a point in time, you might want to say, “give me all
of the requirements that were actually created at this point in time, but still
have to be approved two months later.” This leads to questions such as:
What is going on? What is the issue? What is the problem? Why have I got
50 requirements that have been removed, suspended, or deferred? What is
the cause of that? Why is that not going to go ahead?
Requirements priority is particularly important for stakeholders. Questions
that may be asked are: What are my mandatory requirements? Which ones
are not mandatory, but are desirable so that if I have time constraints, I
canlook at deferring implementation of those requirements?
The requirements owner needs to be identified, so that if a requirement is
not understood, more information can be obtained. If the developer comes
back and says that something is a good idea, but it will cause grief in terms
of implementation, you can also go back and ask the owner if there is
something else that can be done with thatrequirement. Going back and
talking to the business stakeholder helps ensure that he/sheis aware of this
and gainstheir truast and approval. You may also have a stakeholder that is
going on leave and his script of requirements may go to someone else who
can manage those requirements temporarily and then update the
stakeholder on changes when they return.
Just a word of caution, do not put in too many attributes the requirements
management plan to start with. There is a real temptation to put in lots of
attributes, but then you end up being a slave to your requirements
management plan. Start with the simple ones and expand out as you have
some different projects and different company needs.
Requirements Traceability
One of the most important components of requirements management is
traceability. Tracing allows us to understand why the requirement exists,
the impact of change, if the set of requirements is complete, and helps
prioritize requirements.
Requirements Versioning
Requirements versioning is the process of documenting and maintaining a
history of all changes to a specific requirement. The primary purpose of
versioning an individual requirement is to help ensure that the project team
is working from the exact same requirement.
Versioning is important to increment changes to a requirement. Unless you
are using a requirements management tool, this is probably something that
you are not going to continually do. Important requirements may change a
number of times-10, 20, 50 times, and this may occur through the whole
lifecycle of the project. It is important to track what version of that
requirement and what the specifics of the changes to that requirement are.
This allows you to link it to the owner, who is the one who performed the
change.
Other purposes for versioning include:
Enable the project team to determine how and why a requirement has
changed over time
Help ensure that a review of requirements is being conducted on the correct
version of requirements, and not an old version
Requirements Baseline
A baseline is a basis for comparison between requirements (all or subset)
over a period of time; it is a “snapshot” of requirements (not a one-time
event). Each project should define a baseline strategy that includes
defining the baseline in terms of creation, frequency, content, and
publishing. A baseline is the vehicle for communicating changes in the
detail of requirements to interested parties.
Baselining is a mechanism to package a set of requirements at a particular
point in time and pass that off to the next group in the project team.
It is important in your RMP to specify when to create a baseline and how
frequently they are going to be tied to formal project milestones. The
content of the baseline and how it is going to be published also need to be
specified. Is the baseline published into a document? Is it published using a
tool that will actually take a set of requirements and then send them to the
development environment, so that the developers can code against those
requirements? There are a number of ways this can be performed.
The important thing is that the requirements management plan is all about
this upfront planning. We are trying to make sure that we have planned
these activities and as we move through the application lifecycle of the
project, we don't want to have to make these decisions as we are getting to
critical delivery points.
A baseline can be formal or informal.
Communication of Requirements
Changes
The communication strategy for changes to requirements should be linked
to a change control process.
References
IAG Consulting. (2009). Business analysis benchmark : The path to
success (2nd ed.). New Castle, DE: Author.
The Standish Group International, Incorporated. (2004). CHAOS report.
The Standish Group International, Incorporated. (2009). CHAOS summary
report.
This material has been reproduced with the permission of the copyright owner.
Unauthorized reproduction of this material is strictly prohibited. For permission to
reproduce this material, please contact PMI or any listed author.
© 2015, Tim Coventry
Originally published as a part of the 2015 PMI Global Congress
Proceedings – London, UK