Abstract. Requirements continue to be a major problem area for most organizations. According to industry reports, the leading causes of quality, cost, and schedule problems are lack of understanding of the customer’s needs, incomplete requirement specifications, and managing changing requirements. In fact, requirements are so important that one of the definitions of quality is, “conformance to requirements”. If requirements are not good, the costs of poor quality will be high and the resulting products and services will not be good either. So what can an organization focus on now to measurably improve their requirements? This article will describe some practical strategies that organizations can use to measurably improve their requirements.
Why Focus on Requirements?
“The hardest single part of building a… system is deciding what to build... No other part of the work so cripples the resulting system if done wrong. No other part is more difficult to rectify later.” [Brooks, Fredrick P., Jr. “No Silver Bullet”. IEEE Computer, 10-19, April 1987]. Many studies that are conducted to determine the top problems with projects come up with requirements at the top. Many studies also estimate that about 60-70% of defects discovered during testing are due to inadequate requirements and design. Many reports on quality and delivery problems identify three leading requirements causes:
-
Lack of customer input
-
Incomplete requirements
-
Changing requirements
These requirement problems have been around a long time, and although things have improved a little over the years, these top requirement problems haven’t changed very much. Requirements continue to be in the top 5 problems of most organizations. So what can an organization focus on now to measurably improve their requirements?
Measurably Improving Requirements
Requirement Metrics
This section describes some example successful metrics used at real organizations for measurably improving requirements:
-
Average effort per requirement (e.g., a productivity metric)
-
Average cost per requirement
-
Requirement cycle time
-
Requirement quality (e.g., requirement defects)
-
Requirement priority (e.g., can be set by customer)
-
Requirement volatility (e.g., a measure of the changing nature of the requirement)
-
Requirement stability (i.e., what is the probability of the requirement changing?)
-
Requirement risk (e.g., has the requirement been implemented before?)
-
Total number of requirements (e.g., a size metric)
Requirements are so important that they need to be measured, analyzed, and improved. Requirements can be thought of as having “attributes” (e.g., priority, quality, risk, testable, etc). Many of the attributes are measurable. The requirement metrics and attributes can be tracked in a requirements tool or in a spreadsheet. The requirement metrics are tracked over time so measurable improvement can be demonstrated.
LSI even uses requirements as a “size” and “productivity” metric in some leading edge organizations that has achieved measurable results. Even “lean metrics” can be applied to requirements. For example, cycle time for releasing requirements can be measured and improved.
Requirements also data needs to be analyzed for quality, productivity, and performance. For example, scatter diagrams, histograms, run charts, Pareto charts, statistical process control charts (e.g., on defect density), etc., are a few of the data analysis tools that are useful for measurably improving requirements.
Requirement Defect Data
Interestingly enough, some of the most important improvement data comes from requirement defects. If an organization does a good job of removing defects from requirements (very few organizations do a good job of this), they learn a lot about their requirements process from the types of requirement defects. For example, one the most common defects types in requirements is “clarity”. A Clarity defect means that a requirement is ambiguous (i.e., has more than one meaning) or it is vague (i.e., not clear). One of the root causes of clarity defects is the English language itself. The English language has many definitions for each word (causing ambiguity and vagueness). Advanced solutions such as “operational definitions” can solve this problem.
Summary
Measurably improving requirements is not easy. Because requirements are primarily an intellectual activity, disciplined processes and metrics are necessary along with product knowledge and good people skills. The author hopes that some of the practical metrics in this article will help your organization manage requirements more successfully, and make your requirements more measurable. Lean Solutions Institute, Inc. (LSI) provides requirements training and consulting, and helps organizations to measurably improve their requirements.
Author: Mr. Timothy G. Olson is Founder and President of Lean Solutions Institute, Inc (LSI).
While performing quality consulting, Mr. Olson has helped numerous organizations measurably improve quality and productivity, define lean processes and procedures, save millions of dollars in costs of poor quality, and has helped organizations reach higher Software Engineering Institute (SEI) levels. Mr. Olson has been formally trained in Baldrige, Crosby, Deming, Juran, ISO, CMMI® and Six Sigma quality approaches. Mr. Olson holds a Masters Degree in Computer Science from the University of Massachusetts, and was a lead-author of a Software Quality Course for the University of Minnesota Masters Degree Program in Computer Science. He is a Juran Institute Associate, a senior member of ASQ, and a member of IEEE and NDIA.
Timothy G. Olson
Lean Solutions Institute, Inc. (LSI)
(760) 804-1405 (Office)
[email protected]
Copyright © 2010 Process Assets, LLC (PAL).