You are on page 1of 6

942134_Text:Aug2004.

qxd 6/12/09 3:21 PM Page 14

Why Software Requirements


Traceability Remains a Challenge
Andrew Kannenberg Dr. Hossein Saiedian
Garmin International The University of Kansas

Why do so many challenges exist in traceability practices today? While many of these challenges can be overcome through
organizational policy and procedure changes, quality requirements traceability tool support remains an open problem. After
discussing the basics of software requirements traceability, this article shows why neither manual traceability methods nor
existing COTS traceability tools are adequate for the current needs of the software engineering industry.

S oftware products are increasingly being


deployed in complex, potentially dan-
gerous products such as weapons systems,
cent of software projects failed outright
with another 46 percent challenged by
budget overruns. The improvement since
ment, such as the CMMI and ISO
9001:2000. Important benefits from trace-
ability can be realized in the following
aircraft, and medical devices. Software 1994 is clearly shown in Table 1 (see page areas: project management, process visi-
products are critical because failure in 16); however, room for growth remains. bility, verification and validation (V&V),
these areas could result in loss of life, sig- Although the importance of traceabil- and maintenance [6].
nificant environmental damage, and major ity seems to be well-accepted in the soft-
financial loss. This might lead one to ware engineering industry, research sug- Project Management
believe that care would be taken to imple- gests that many organizations still do not Traceability makes project management
ment these software products using understand the principles of traceability easier by simplifying project estimates. By
proven, reproducible methods. Unfortu- following traceability links, a project man-
nately, this is not always the case. ager can quickly see how many artifacts will
In 1994, a Standish Group study [1]
found that 53 percent of software projects
Through traceability, be affected by a proposed change and can
make an informed decision about the costs
failed outright and another 31 percent each project engineer and risks associated with that change.
were challenged by extreme budget over- Project managers can also utilize traceabili-
runs. Since that time, many responses to has access to contextual ty to assist in measuring project progress.
the high rate of software project failures As requirements are traced to code and
have been proposed. Examples include information that can later to test cases, management can estimate
the SEIs CMMI, the ISOs 9001:2000 for the project completion status based on how
software development, and the IEEEs J- assist them in many requirements have been traced to
STD-016. artifacts created later in the development
One feature that these software devel- determining where a cycle. This information can be used to esti-
opment standards have in common is that mate the schedule for a project during
they all impose requirements traceability requirement came from, development and can be used to assess risk.
practices on the software development
process. Requirements traceability can be its importance, how it Process Visibility
defined as the ability to describe and fol- Traceability offers improved process visi-
low the life of a requirement, in both a
was implemented, and bility to both project engineers and cus-
forward and backward direction [2]. This how it was tested. tomers. Through traceability, each project
concept is shown in Figure 1. engineer has access to contextual informa-
Although many facets of a software tion that can assist them in determining
project can be traced, the focus of this and are struggling with implementing where a requirement came from, its
article is on requirements traceability; traceability practices in the software devel- importance, how it was implemented, and
therefore, the term traceability is used to opment life cycle [5]. Perhaps the biggest how it was tested. Traceability can also be
refer to requirements traceability through- need is for a better understanding of why viewed as a customer satisfaction issue. If
out. See Figure 2, which provides an alter- traceability is important and the challenges a project is audited or in the case of a law-
native view to Figure 1. facing its implementation. This article suit, traceability can be used to prove that
Research has shown that inadequate attempts to address this need by studying particular requirements were implemented
traceability is an important contributing the factors that make traceability impor- and tested. The availability of this infor-
factor to software project failures and tant and discusses the challenges facing mation also increases customer confi-
budget overruns [3]. As a response, there traceability practices in industry. dence and satisfaction because it reassures
has been an outpouring of research and customers that they will receive the prod-
literature on the subject of traceability, The Importance of uct that they requested.
and many organizations have been striving Traceability
to improve their traceability practices. Requirements traceability has been Verification and Validation
These efforts have not been in vain. In demonstrated to provide many benefits to The most significant benefits provided by
2006, The Standish Group updated their organizations that make proper use of traceability can be realized during the V&V
1994 study [4], showing that only 19 per- traceability techniques. This is why trace- stages of a software project. Traceability
CMMI is registered in the U.S. Patent and Trademark ability is an important component of offers the ability to assess system function-
Office by Carnegie Mellon University. many standards for software develop- ality on a per-requirement basis, from the

14 CrossTalk The Journal of Defense Software Engineering July/August 2009


942134_Text:Aug2004.qxd 6/12/09 3:21 PM Page 15

Why Software Requirements Traceability Remains a Challenge

Figure 1: A View of Software Requirements Traceability


origin through the testing of each require- the maintenance phase of a software pro- try, its practice faces many challenges.
ment. Properly implemented, traceability ject for many of the same reasons that it is These challenges can be identified under
can be used to prove that a system complies valuable for project management. Initially the areas of cost in terms of time and
with its requirements and that they have defined requirements for a software pro- effort, the difficulty of maintaining trace-
been implemented correctly. If a require- ject often change even after the project is ability through change, different view-
ment can be traced forward to a design arti- completed, and it is important to be able points on traceability held by various pro-
fact, it validates that the requirement has to assess the potential impact of these ject stakeholders, organizational problems
been designed into the system. Likewise, if changes. Traceability makes it easy to and politics, and poor tool support.
a requirement can be traced forward to the determine what requirements, design,
code, it validates that the requirement was code, and test cases need to be updated to Cost
implemented. Similarly, if a requirement fulfill a change request made during the One major challenge facing the imple-
can be traced to a test case, it demonstrates software projects maintenance phase. mentation of traceability is simply the
that the requirement has been verified This allows for estimates of the time and costs involved. As a system grows in size
through testing. Without traceability, it is cost required to make a change. and complexity, capturing the requirement
impossible to demonstrate that a system traces quickly becomes complex and
has been fully verified and validated. Challenges in Requirement expensive [7]. Because of this, the budget
Traceability for a project implementing traceability
Maintenance In spite of the benefits that traceability must be greater than that of a project
Traceability is also a valuable tool during offers to the software engineering indus- without it. However, a project implement-
Figure 2: An Alternative View of Software Requirements Traceability

July/August 2009 www.stsc.hill.af.mil 15


942134_Text:Aug2004.qxd 6/12/09 3:21 PM Page 16

Process Replication

traceability may be the fact that many dif-


ferent viewpoints regarding traceability
exist, even among different project stake-
holders. These different viewpoints exist
primarily because current software engi-
Table 1: Comparison of the Standish Groups 1994 and 2006 Results neering standards typically require trace-
ing traceability is far less likely to incur Unfortunately, strong discipline in main- ability to be implemented but provide lit-
major budget overruns because traceabili- taining the accuracy of traceability is tle guidance as to why and how it should
ty can detect project problems early in the uncommon, leading to a practice of disre- be performed [5].
development process when they are easier garding traceability information in many Project sponsors and upper manage-
and cheaper to correct. organizations [10]. ment often view traceability as something
One method of dealing with the high Dealing with change and its impact on that needs to be implemented merely to
cost of traceability is to practice value- traceability is a difficult prospect. Some comply with standards [12]. This leads to
based requirement tracing instead of full COTS tools offer assistance with identify- a desire to spend as little time as possible
tracing. Value-based requirement tracing ing the impact of change on existing on traceability because the benefits out-
prioritizes all of the requirements in the traceability data; however, a lot of manual side of standards compliance are not well
system, with the amount of time and time and effort is still required to update understood. This viewpoint will likely
effort expended on tracing each require- conflict with that of project engineers
ment depending on the priority of that familiar with the importance of traceabili-
requirement [7]. This can save a significant
amount of effort by focusing traceability
If an organization ty who will want to ensure that the trace-
ability performed is complete and correct.
activities on the most important require- has clear Perhaps the best way to deal with the
ments. However, value-based tracing problem of different stakeholder view-
requires a clear understanding of the traceability policies in points on traceability is to create an orga-
importance of each requirement in the nizational policy on traceability to apply
system; it may not be an option if full trac- place and uniformly to all projects. Because the stan-
ing is a requirement of the customer or dards requiring traceability are vague,
the development process standards used provides training on organizations have a lot of leeway in get-
for the project. ting their own procedures in place for
Alternatively, the high costs of trace- how to comply implementing traceability. This can reduce
ability can be approached with the attitude the amount of confusion about traceabili-
that the costs incurred will save much with these ty and leads to more consistent viewpoints
greater costs further along in the develop- among the stakeholders involved.
ment process due to the benefits that policies, it is likely that
traceability offers to software projects. Organizational Problems
This method does not solve the problem traceability will be Organizational problems also provide a
of the high costs of traceability imple- significant challenge to the implementa-
mentation, but it promotes a healthy atti-
implemented in a tion of traceability. Many organizations
tude towards managing costs for the entire view traceability as a mandate from spon-
duration of a project instead of merely
thorough manner sors or a tool for standard compliance
looking at the short term. consistent with policy. [12]. Typically, these organizations do not
have a commitment to comprehensive
Managing Change traceability practices. This leads to an ad-
Maintaining traceability through changes the traceability data [11]. Alternatively, hoc practice of traceability, where trace-
to the system is another significant chal- training can help users understand the ability data is created and maintained hap-
lenge. Studies have shown that change can importance of discipline in maintaining hazardly.
be expected throughout the life cycle of traceability data when changes occur. Lack of training poses another chal-
nearly every software project [8, 9]. Focusing on the long-term benefits of lenge [2]. Many organizations do not train
Whenever such changes occur, it is neces- traceability instead of the short-term costs their employees regarding the importance
sary to update the traceability data to can help an organization sustain a healthy of traceability and traceability is not
reflect these changes. This requires disci- attitude toward the costs of maintaining emphasized in undergraduate education.
pline on the part of those making the traceability data amidst change. This can lead to resentment on the part of
change to update the traceability data, those tasked with creating and maintaining
which can be costly in terms of time and Different Stakeholder Viewpoints traceability information. They may view
effort when the changes are extensive. A contributing factor to poor support for the added workload as impacting their
Table 2: Example Traceability Matrix productivity due to a staff s insufficient
understanding of why traceability is
important.
Politics can also play a role. Individuals
may be concerned that traceability data
will be used against them in performance
reviews or as a threat to their job security
[13]. This issue can arise because the indi-
vidual who captures a piece of traceability

16 CrossTalk The Journal of Defense Software Engineering July/August 2009


942134_Text:Aug2004.qxd 6/12/09 3:21 PM Page 17

Why Software Requirements Traceability Remains a Challenge

information is usually not the one who changes occur to any elements captured in developing tiny projects? This is highly
makes use of it later. Those involved with the traceability data, the affected portions unlikely. In 1994, Orlena Gotel and
creating and maintaining traceability data of the traceability data must be updated Anthony Finkelstein [2] found that manu-
may feel that they are helping others to manually. This requires discipline and a al traceability methods were preferred in
look good while reducing their own pro- significant amount of time and effort the industry due to shortcomings in avail-
ductivity. spent on link-checking throughout the able traceability tools. It is apparent that
The easiest way to correct organiza- traceability data. Because of this, it is easy this problem still exists today because
tional problems related to traceability is for manually created traceability data to manual traceability methods are still pre-
through the use of policy and training. If become out-of-sync with the current set ferred by a significant percentage of soft-
an organization has clear traceability poli- of requirements, design, code, and test ware organizations.
cies in place and provides training on cases.
how to comply with these policies, it is Manual traceability methods are also Problems With COTS Traceability
likely that traceability will be implement- prone to errors that are not easy to catch. Tools
ed in a thorough manner consistent with Errors can arise from simple typographic Regrettably, currently existing COTS
policy [12]. mistakes, from inadvertently overlooking a traceability tools are not adequate for the
portion of the traceability data (such as an needs of the software engineering indus-
Poor Tool Support individual requirement), or from careless- try. Studies have shown that existing com-
Poor tool support is perhaps the biggest mercial traceability tools provide only sim-
challenge to the implementation of trace- plistic support for traceability [5].
ability. Even though the International
Council on Systems Engineering (INCOSE)
... the number of Surprisingly, the tools that are available do
not fully automate the entire traceability
has a survey (see [14]) that lists 31 differ- traceability links that process; instead, they require users to
ent tools claiming to provide full traceabil- manually update many aspects of the
ity support, traceability tool penetration need to be captured traceability data. This has led some
throughout the software engineering researchers to conclude that poor tool
industry is surprisingly low. Multiple stud- grows exponentially with support is the root cause for the lack of
ies have found the level of commercial traceability implementation [19].
traceability tool adoption to be around 50 the size and complexity COTS tools are typically marketed as
percent throughout industry [15, 16]. The complete requirements management
majority of the remaining companies uti- of the software system. packages, meaning that traceability is only
lize manual methods (such as manually one added feature. The traceability fea-
created traceability matrices for imple- This means that tures usually only work if the project
menting traceability), and a small percent- methodology is based around the tool
age develop their own in-house traceabili- manually capturing itself. Unless the project is developed
ty tools. from the ground up using a particular
traceability data for large tool, the tool is unable to provide much
Problems With Manual Traceability benefit without significant rework.
Methods
software projects Support for heterogeneous computing
Traceability information can be captured environments is also lacking.
manually through utilizing techniques requires an extreme Although most tools support the iden-
such as traceability matrices. A traceability tification of impacted artifacts when
matrix can be defined as a table that illus-
amount of time changes occur, they typically do not pro-
trates logical links between individual vide assistance with updating the traceabil-
functional requirements and other system
and effort. ity links or ensuring that the links and
artifacts [8]. Since traceability matrices affected artifacts are updated in a timely
are in tabular form, they are typically cre- ness by the individual capturing the data. manner [17]. This means that even when
ated using a spreadsheet or a word pro- Because traceability artifacts for large pro- tools are used, the traceability information
cessing applications table function and are jects are often hundreds or even thou- is not always maintained, nor can it always
independent of the artifacts from which sands of pages in length, such errors are be trusted to be up-to-date and accurate.
theyve captured traceability information. difficult to detect when depending on This problem is exacerbated by the fact
An example traceability matrix is shown in manual methods for error checking. that tools typically only allow primitive
Table 2. Because of these disadvantages, manu- actions to be taken (in regards to trace-
Unfortunately, manual traceability al traceability methods are not suitable for ability).
methods are not suitable for the needs of anything other than small software pro- Another issue with tools is that they
the software engineering industry. In [17], jects. Ralph R. Young stated: in my judg- often suffer problems with poor integra-
the authors found that the number of ment, an automated requirements tool is tion and inflexibility. This has led at least
traceability links that need to be captured required for any project except tiny ones one researcher to conclude that existing
grows exponentially with the size and [18]. Similarly, Balasubramaniam Ramesh traceability tools have been developed
complexity of the software system. This (in [12]) found that traceability is error- mostly for research purposes, and that
means that manually capturing traceability prone, time-consuming, and impossible to many projects are still waiting for tools
data for large software projects requires an maintain without the use of automated that do not require a particular develop-
extreme amount of time and effort. tools. Then why would nearly 50 percent ment or testing methodology [15].
Manual traceability methods are also of software companies use manual trace- Cost is another major disadvantage.
vulnerable to changes in the system. If ability methods? Is it because they are all Although the licensing fees vary per tool,

July/August 2009 www.stsc.hill.af.mil 17


942134_Text:Aug2004.qxd 6/12/09 3:21 PM Page 18

Process Replication

the price tends to be thousands of dollars Conclusions


COMING EVENTS up front, per license, in addition to yearly This article has presented an introduction
maintenance fees. Because of this, the to the benefits offered by traceability and
August 24-28 cost of using COTS tools is often prohib- the challenges faced by the practice of
13 International Software Product Line
th itive, even for fairly small teams. Such traceability in software projects today.
tools are also decoupled from the devel- Traceability offers benefits to organiza-
Conference opment environment, meaning that tions in the areas of project management,
San Francisco, CA important traceability informationsuch process visibility, V&V, and maintenance.
www.sei.cmu.edu/activities/splc2009 as code modules that implement require- Traceability needs to be hardcoded into a
mentsmay not be available [20]. For this process to be replicated iteratively on
August 31-September 4 reason, Ramesh concluded that COTS each and every project. Unfortunately,
17th IEEE International tools have very limited utility in capturing many organizations struggle to under-
dynamic traceability information [12]. stand the importance of traceability,
Requirements Engineering Conference
Few solutions are available for the meaning that these benefits often go
Atlanta, GA problem of poor tool support for trace- unrealized.
www.re09.org ability. Many organizations shun COTS In spite of the benefits offered by
tools altogether due to their high cost and traceability, its implementation still faces
September 8-10 inflexibility, instead making use of manual many challenges, especially in the areas of
2009 Unique Identification Forum methods such as traceability matrices. cost, change management, organizational
Another approachcommon among problems, and poor tool support. The
Orlando, FL
organizations concerned with high-quality lack of quality COTS traceability tools is
www.uidforum.com traceability informationis to develop a significant challenge facing the imple-
elaborate in-house tools and utilities to mentation of traceability in the software
September 21-24 implement traceability [5]. Unfortunately, engineering industry today. These chal-
4 Annual Team Software Process
th
this approach is not always feasible since lenges lead many organizations to imple-
Symposium many organizations do not have the man- ment only as much traceability as is
New Orleans, LA power or the knowledge necessary to required by their customers.
develop such tools. Therefore, poor tool The challenges faced by traceability
www.sei.cmu.edu/tsp/symposium support for traceability currently remains are not new. Many of these challenges
an open problem. can be mitigated by process and organi-
October 4-9
ACM/IEEE 12th International
Conference on Model Driven
Engineering Languages and Systems
Denver, CO
www.modelsconference.org

October 18-21
MILCOM 2009
Boston, MA
www.milcom.org

October 19-23
International Conference on Software
Process Improvement 2009
Washington, D.C.
www.icspi.com

2010
22nd Annual Systems and Software
Technology Conference

www.sstc-online.org
COMING EVENTS: Please submit coming events that
are of interest to our readers at least 90 days
before registration. E-mail announcements to:
nicole.kentta@hill.af.mil.

18 CrossTalk The Journal of Defense Software Engineering July/August 2009


942134_Text:Aug2004.qxd 6/12/09 3:21 PM Page 19

Why Software Requirements Traceability Remains a Challenge

zational changes by groups interested in Oriented Programming, Systems, 16. Lempia, David L., and Steven P. Miller.
improving their traceability practices. Languages, and Applications. Dallas, Requirements Engineering Manage-
Poor tool support for traceability remains TX: 325-329. ment. Proc. of the National Software
an exception; this is an area that is still an 11. Cleland-Huang, Jane, Carl K. Chang, and Complex Electronic Hardware
open problem. Existing tools are costly and Yujia Ge. Supporting Event Based
Standardization Conference. Atlanta,
and provide only partial traceability sup- Traceability Through High-Level
port. This means that implementing Recognition of Change Events. Proc. 2006.
traceability is often tedious, requiring a of the 26th Annual International 17. Cleland-Huang, Jane, Carl K. Chang,
large amount of manual effort. Computer Software and Applications and Mark J. Christensen. Event-
The lack of quality tools for imple- Conference on Prolonging Software Based Traceability for Managing
menting traceability is not a technically Life: Development and Redevelop- Evolutionary Change. IEEE Trans-
insurmountable problem. The solution ment. Oxford, England, 2002: 595- actions on Software Engineering 29.9
simply involves creating cost-effective 602. (2003): 796-810.
traceability tools that improve upon the 12. Ramesh, Balasubramaniam. Factors
design and feature set of currently avail- 18. Young, Ralph R. Twelve Requirement
Influencing Requirements Traceability
able tools. Such tools would serve to Practice. Communications of the Basics for Project Success. Cross-
greatly improve the practice of traceabil- ACM 41.12 (1998): 37-44. Talk Dec. 2006.
ity in the software engineering industry. 13. Jarke, Matthias. Requirements 19. Spanoudakis, George, et al. Rule-
Tracing. Communications of the Based Generation of Requirements
References ACM 41.12 (1998): 32-36. Traceability Relations. Journal of
1. The Standish Group. The Chaos 14. INCOSE. INCOSE Requirements Systems and Software 72.2 (2004):
Report. 1994 <www.ibv.liu.se/content Management Tools Survey. 2008 105-127.
/1/c6/04/12/28/The%20CHAOS <www.paper-review.com/tools/rms/
%20Report.pdf>. 20. Naslavsky, Leila, et al. Using Scenarios
read.php>.
2. Gotel, Orlena, and Anthony Finkel- to Support Traceability. Proc. of the
15. Gills, Martins. Software Testing and
stein. An Analysis of the Require- Traceability. University of Latvia. Third International Workshop on
ments Traceability Problem. Proc. of 2005 <http://www3.acadlib.lv/grey Traceability in Emerging Forms of
the First International Conference on doc/Gilla_disertacija/MGills_ang. Software Engineering. Long Beach,
Requirements Engineering. Colorado doc>. CA, 2005: 25-30.
Springs, 1994: 94-101.
3. Dmges, Ralf, and Klaus Pohl.
Adapting Traceability Environments
About the Authors
to Project Specific Needs. Communi- Andrew Kannenberg is Hossein Saiedian,
cations of the ACM 41.12 (2008): 55-
62. a software engineer at Ph.D., is currently a pro-
4. The Standish Group. The Chaos Garmin International in fessor of software engi-
Report. 2006. Olathe, Kansas, and is neering at the University
5. Ramesh, Balasubramaniam, and currently working on his of Kansas. Saiedians pri-
Matthias Jarke. Toward Reference doctorate in computer mary area of research is
Models for Requirements Traceabili- engineering at the University of Kansas. software engineering and in particular
ty. IEEE Transactions on Software He received a bachelors degree in com- technical and managerial models for
Engineering 27.1 (2001): 58-93. puter science from the South Dakota quality software development. His past
6. Palmer, J.D. Traceability. Software
School of Mines and Technology and research has been supported by the
Requirements Engineering. Richard H.
Thayer and Merlin Dorfman, eds. New his masters degree in computer science National Science Foundation as well as
York: IEEE Computer Society Press, from the University of Kansas. regional organizations. He has more
1997. than 100 publications on a variety of
7. Heindl, Matthias, and Stefan Biffl. A Garmin International, Inc. topics in software engineering and com-
Case Study on Value-Based Require- 1200 E 151st ST puter science and is a senior member of
ments Tracing. Proc. of the 10th Olathe, KS 66062 the IEEE. Saiedian received his doctor-
European Software Engineering Phone: (913) 397-8200 ate in computing and information sci-
Conference. Lisbon, Portugal, 2005: E-mail: andy.kannenberg ences from Kansas State University.
60-69. @gmail.com
8. Wiegers, Karl. Software Requirements.
2nd ed. Redmond, WA: Microsoft The University of Kansas
Press, 2003. Electrical Engineering and
9. Boehm, Barry. Value Based Software Computer Science
Engineering. ACM SIGSOFT Soft- University of Kansas
ware Engineering Notes 28.2 (2003). 12600 Quivira RD
10. Clarke, Siobhn, et al. Subject- Overland Park, KS 66213
Oriented Design: Towards Improved Phone: (913) 897-8515
Alignment of Requirements, Design, Fax: (913) 897-8682
and Code. Proc. of the 1999 ACM E-mail: saiedian@ku.edu
SIGPLAN Conference on Object-

July/August 2009 www.stsc.hill.af.mil 19

You might also like