when requirements change
TRANSCRIPT
© 2011 Seapine Software, Inc. All rights reserved.
When Requirements Change: Continuing to Meet User Expectations with
Requirements Traceability
A Seapine Software Webinar
Peter Varhol
Solutions Evangelist, Seapine Software
© 2011 Seapine Software, Inc. All rights reserved.
Agenda
• What is requirements traceability?
• Why we care about traceability
• Traceability and changing requirements
• Approaches to traceability
• Summary and questions
© 2011 Seapine Software, Inc. All rights reserved.
What Is Requirements Traceability?
• Requirements traceability refers to the ability to
describe and follow the life of a requirement, from
conception to deployment
• Documents relationships between artifacts
• Document the transformation of a requirement into
design, development and testing artifacts
© 2011 Seapine Software, Inc. All rights reserved.
Why is Traceability Important?
• Traceability helps us:
• Determine the overall quality of the application
under development
• Understand product under development and its
artifacts
• Manage and communicate change
• Learn from our mistakes
© 2011 Seapine Software, Inc. All rights reserved.
Why is Traceability Important?
• Makes sure we deliver the product defined by the
requirements
• Requirements can get lost in day-to-day software
development and test
© 2011 Seapine Software, Inc. All rights reserved.
Why is Traceability Important?
• Provides an audit trail for accountability
• Identify where information can be lost
• Satisfy regulatory requirements
© 2011 Seapine Software, Inc. All rights reserved.
Traceability and Change
• Design and development efforts can take a year or
longer
• Unrealistic to expect that user needs don’t change
over time
• What happens to these changes?
• What happens to the schedule?
© 2011 Seapine Software, Inc. All rights reserved.
Traceability and Change
• Changes have to propagate in several directions
• Functional descriptions
• Design specifications
• Test plans and test cases
• Code
• Acceptance criteria
© 2011 Seapine Software, Inc. All rights reserved.
Traceability and Change
• Changes have to trace forward and backward
• From requirement to final acceptance test
• From final acceptance test back to requirements
© 2011 Seapine Software, Inc. All rights reserved.
Traceability and Change
• Why trace backward?
• Helps ensure that the evolving product remains on
the right track with regards to evolving requirements
© 2011 Seapine Software, Inc. All rights reserved.
Traceability and Change
• Requirements and related artifacts often reside in
isolated silos
• Design/UML software
• Requirements management software
• Test management software
• Source code control software
• Defect tracking software
© 2011 Seapine Software, Inc. All rights reserved.
Traceability and Change
• Best solution
• Integrated tool solution – requirements, test
management, defect tracking, source code control
• Good solution
• A robust interfaces between different tools
• Poor solution
• Trying to trace manually
© 2011 Seapine Software, Inc. All rights reserved.
Approaches to Traceability
• Traceability begins with requirements
• Product success based on fulfilling requirements
• Requirements must be documented
• Changes must be formally requested and documented
• Change requests and change orders
© 2011 Seapine Software, Inc. All rights reserved.
Approaches to Traceability
• Ideally, change orders identify downstream artifacts
• Team members know what must be changed
• In reality, team doesn’t usually know what else needs to
be changed
• Artifact tree or matrix is needed
© 2011 Seapine Software, Inc. All rights reserved.
Approaches to Traceability
• The traceability matrix
• Correlates requirements with development and
testing artifacts
• Provides a visual connection between requirements
and other artifacts
• Enables validation that project requirements are
being met
© 2011 Seapine Software, Inc. All rights reserved.
Approaches to Traceability
© 2011 Seapine Software, Inc. All rights reserved.
Approaches to Traceability
• Traceability is not rocket science
• It doesn’t have to be complex and difficult to
maintain
• Automation can make traceability almost
automatic
© 2011 Seapine Software, Inc. All rights reserved.
Steps to Change and Traceability
© 2011 Seapine Software, Inc. All rights reserved.
Steps to Change and Traceability
• Link requirements to related artifacts
• Test cases
• Spec paragraphs
• Code modules
• Defects
• Also create backward links
© 2011 Seapine Software, Inc. All rights reserved.
Steps to Change and Traceability
• Use change requests/change orders
• Change requirements first, then look at artifacts
• Use traceability to identify potential changes to artifacts
• Work with artifact owners to ensure requirement
changes are reflected in artifacts
• Changed requirement changed test case
© 2011 Seapine Software, Inc. All rights reserved.
Steps to Change and Traceability
• Make sure changed requirements and artifacts are
appropriately labeled
• Team members using these artifacts need to know
they have changed, and what the changes are
© 2011 Seapine Software, Inc. All rights reserved.
Steps to Change and Traceability
• Use a traceability matrix or tree for easy reference
• These can be generated using automation
© 2011 Seapine Software, Inc. All rights reserved.
Summary
• There is a need to relate business requirements to the
delivered product
• Traceability provides the ability to define and maintain
that relationship
• Traceability doesn’t have to be difficult or time-
consuming
• Automation with integrated tools do the best job
© 2011 Seapine Software, Inc. All rights reserved.
Thank You
Seapine Software – www.seapine.com
The Seapine View - http://blogs.seapine.com/