SlideShare a Scribd company logo
1 of 110
Gunter Mussbacher, University of Ottawa
Based on material from:
Kotonya & Sommerville, Z. Zhang, IBM and Telelogic,
S. Somé 2008, and D. Amyot 2008-2009
Requirements Management
SEG3101 (Fall 2009)
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
2
Table of Contents
•Introduction to Requirements Management
•Traceability
•Baselines
•Change Management
•Requirements Management Tools
•A factor present in every successful project and absent in
every unsuccessful project is sufficient attention to
requirements.1
[1] Suzanne & James Robertson, “Requirements-Led Project Management”, Addison-Wesley, 2004
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
3
Introduction to Requirements
Management
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
5
Why Do Requirements Change?
•Change in software development: as inevitable as difficult to
control!
• Better understanding: new requirements become apparent
• Everything else is changing…
• Business
• Context
• Technologies
• Markets
• …
•Possible responses to change
• Add, modify, or remove requirements
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
6
Some Problems Due to Changing Requirements
•Requirements changing towards the end of development
without any impact assessment
•Unmatched/outdated requirements specifications causing
confusion and unnecessary rework
•Time spent coding, writing test cases or documentation for
requirements that no longer exist
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
7
Requirements Management
•A systematic approach to eliciting, organizing, and
documenting the requirement of the system, and a process
that establishes and maintains agreement between the
customer and the project team on the changing requirements
of the system.1
[1] Leffingwell & Widrig 1999, p.16
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
8
Requirements Management Activities (1)
•Requirements management includes all activities intended to
maintain the integrity and accuracy of expected requirements
• Manage changes to agreed requirements
• Manage changes to baseline (increments)
• Keep project plans synchronized with requirements
• Control versions of individual requirements and versions of
requirements documents
• Manage relationships between requirements
• Managing the dependencies between the requirements document and
other documents produced in the systems engineering process
• Track requirements status
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
9
Requirements Management Activities (2)
 Proposing
changes
 Analyzing impact
 Making decisions
 Updating
requirements
documents
 Updates plans
 Measuring
requirements
volatility
 Defining a version
identification
scheme
 Identifying
requirements
document
versions
 Identifying
individual
requirement
versions
 Defining a
possible
requirement
statuses
 Recording the
status of each
requirement
 Reporting the
status distribution
of all
requirements
 Defining links to
other
requirements
 Defining links to
other system
elements
Change control Version control Requirements
status tracking
Requirements
tracing
Requirements
Management
Source: Wiegers, 1999
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
10
Requirements Development (RD) and Management (RM)
Source: Wiegers, 1999
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
11
From Management to Tools
•Changes lead to a need for management
•There is no management without:
• Traceability
• Baselines enabling comparisons
•From a practical point of view, there is no traceability or
management without appropriate tools
In theory, practice and theory are similar…
But in practice they are different 
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
12
Requirements Change Factors (1)
•Requirements errors, conflicts, and inconsistencies
• May be detected at any phase (when requirements are analyzed,
specified, validated, or implemented)
•Evolving customer/user knowledge of the system
• When the requirements are developed, customers/users
simultaneously develop a better understanding of what they really
need
•Technical, schedule, or cost problems
• Difficult to plan and know everything in advance
• We may have to revisit the list of requirements and adapt it to the
current situation
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
13
Requirements Change Factors (2)
•Changing customer priorities, new needs
• May be caused by a change in the system environment (technological,
business, political...), i.e., the context
• Business and strategic goals may change
• May be caused by the arrival of a new competitor
• Laws and regulations may change
• Collaborating systems may change
• May also be caused by technology changes in the enterprise
(migration to a new operating system, DBMS…)
• May be caused by organizational changes (organizational structure,
business processes, employees…)
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
14
Requirements Volatility
•Requirements continuously change
• While the requirements are being elicited, analyzed, specified, and
validated and after the system has gone into service
•Some requirements are usually more subject to change than
others
• Stable requirements are concerned with the essence of a system and
its application domain
• Derived from the client’s principal business activities or the domain model
• They change more slowly than volatile requirements
• E.g., a hospital will always have doctors, nurses, patients…
• Volatile requirements are specific to the instantiation of the system in a
particular environment for a particular customer at a particular time
• E.g., in a hospital, we can think of requirements related to the policies of
the government health system
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
15
Types of Volatile Requirements
•Mutable requirements
• These are requirements which change because of changes to the
environment in which the system is operating
•Emergent requirements
• These are requirements which cannot be completely defined when the
system is specified but which emerge as the system is designed and
implemented
•Consequential requirements
• These are requirements which are based on assumptions about how
the system will be used
• Once the system is in place, some of these assumptions will be wrong
•Compatibility requirements
• These are requirements which depend on other equipment,
technology, or processes
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
16
Expectations of Requirements Management (1)
•Identification of individual requirements
•Traceability from highest level requirements to
implementation
• Established via links through a requirements database
• Links between requirements and design models, tests, code…
• Coverage and consistency analysis
• What are the traceability policies? What types of links? From where?
To where?
•Impact assessments of proposed changes
• Analysis tools let you see which other requirements (and other linked
artifacts) will be affected by a change
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
17
Expectations of Requirements Management (2)
•Controlled access to current project information
• A shared database ensures that all users are working with current data
(consistency, parallel access)
• A central repository allows all users to see the information that they
need to see (visibility)
•Change control
• Change proposal system implements controlled process for managing
change
• How do we collect, document, and address changes?
•Deployment of required tool support
• To help manage requirements change
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
18
Identification of Requirements
•It is essential for requirements management that every
requirement has a unique identification
• The most common approach is requirements numbering based on
chapter/section in the requirements document
•There are several problems with this approach
• Numbers cannot be unambiguously assigned until the document is
complete
• Assigning chapter/section numbers is an implicit classification of the
requirements  may mislead readers of the document into thinking
that the most important relationships are with requirements in the
same section
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
19
Requirements Identification Techniques
•Dynamic renumbering
• Some word processing systems allow for automatic renumbering of
paragraphs and the inclusion of cross references
• As you reorganise your document and add new requirements, the
system keeps track of the cross references and automatically
renumbers your requirements depending on its chapter, section, and
position within the section
•Database record identification
• When a requirement is identified, it is entered in a requirements
database and a database record identifier is assigned which is then
used for all subsequent references to the requirement
•Symbolic identification
• Requirements can be identified by giving them a symbolic name which
is associated with the requirement itself (e.g., SEC1, SEC2, SEC3…
may be used for requirements which relate to system security)
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
20
BTW, Requirements Have Attributes!
•Apart from an identifier, requirements should have attributes
that establish context and background, and go beyond the
requirement description
•For filtering, analysis, metrics…
• Creation date, Last update, Author, Stakeholders (Owners / Source)
• Version number
• Status, Priority, Importance, Stability
• Rationale, Comments
• Acceptance criteria
• Subsystem / Product release number
• …
•The more complex the project, the richer the attributes…
•Many attributes are predefined in RM tools, others are
defined by requirements engineers as required by the project
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
21
Requirements Attributes
•Classes and attributes of a requirements management
database
•Select only the necessary attributes!
REQUIREMENT
Identifier: TEXT
Statement: TEXT| GRAPHIC
Date_entered: DATE
Date_changed:DATE
Sources: SOURCE_LIST
Rationale: REQ_RATIONALE
Status: STATUS
Dependents: REQ_LIST
Is_dependent_on: REQ_LIST
Model_links: SYS_MODELS
Comments: TEXT
SOURCE_LIST
People: TEXT
Documents: TEXT
Reqs: REQ_LIST
REQ_RATIONALE
Rationale: TEXT
Diagrams: GRAPHIC
Photos: PICTURE
REQ_LIST
Req: REQUIREMENT
Description: TEXT
Next: REQUIREMENT
| NULL
SYS_MODELS
Model: MODEL
Description: TEXT
Next: MODEL | NULL
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
22
DOORS – Objects and Attributes
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
23
Requirements Statuses
•Help manage the requirement lifecycle
• Their number and nature depend on the process in place
•Example of a set of statuses:
• Proposed: by some stakeholder
• Approved: part of baseline, committed to implement
• Rejected: after evaluation
• Implemented: designed and implemented
• Verified: Relevant tests have passed
• Deleted: Removed from list
•RM includes amongst its tasks the tracking of the status of all
requirements during the project
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
24
Version Control
•Another essential aspect of requirements management
• Every version of a requirement needs to be uniquely identified
• The last version of a requirement must be available to all team
members
• Changes need to be documented and clearly communicated
• A version identifier must be updated with every change to the
requirement
•Requirements documents should include
• A revision history: changes, dates, by whom, why...
• Standard markers for revisions (e.g., strikethrough or underlined text,
coloring, line markers…)
•Version control tool may be used
• To store and manage the revision history
• To store justifications (to add, modify, delete, reject a requirement)
Introduction Traceability Baselines Change Management Requirements Management Tools
Traceability
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
26
Traceability?
•"Can I ask you some questions?"
•"By all means."
•"Okay. Well, for starters I'll have
who, what, when and where and
then wither, whence and
wherefore for a follow-up, and
then one bit side-order of why."
Source: Zaphod Beeblebrox & Zarniwoop, The Hitchhiker's Guide to the Galaxy
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
27
Traceability Quotes (1)
•Requirements traceability refers to the ability to describe and
follow the life of a requirement, in both forwards and
backwards direction (i.e., from its origins, through its
development and specification, to its subsequent deployment
and use, and through all periods of ongoing refinement and
iteration in any of these phases)”.1
•A software requirements specification is traceable if the origin
of each of its requirements is clear and if it facilitates the
referencing of each requirement in future development or
enhancement documentation.2
•Traceability gives essential assistance in understanding the
relationships that exist within and across software
requirements, design, and implementation.3
•A link or relationship defined between entities.4
[1] Gotel & Finkelstein, 1994; [2] IEEE Standard 830-1998; [3] Palmer, 2000; [4] Watkins and Neal, 1994
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
28
Traceability Quotes (2)
•Traceability is often mandated by contracts and standards.1
• E.g., military and aerospace
•One cannot manage what cannot be traced.2
•Traceability information helps assess the impact of changes
to requirements, connecting these requirements as well as
requirements for other representations of the system.3
•Traceability is a property of a system description technique
that allows changes in one of the three system descriptions –
requirements, specifications, implementation – to be traced to
the corresponding portions of the other descriptions. The
correspondence should be maintained through the lifetime of
the system.4
[1-2] Watkins and Neal, 1994; [3] Kotonya and Sommerville, 1998; [4] Greenspan, McGowan, 1978
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
29
Importance of Traceability (1)
•Requirements cannot be managed effectively without
requirements traceability
• A requirement is traceable if you can discover who suggested the
requirement, why the requirement exists, what requirements are
related to it, and how that requirement relates to other information
such as systems designs, implementations and user documentation
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
30
Importance of Traceability (2)
•Benefits of traceability
• Prevents losing knowledge
• Supports the verification process (certification, localization of defects)
• Impact analysis
• Change control
• Process monitoring (e.g., missing links indicate completion level)
• Improved software quality (make changes correctly and completely)
• Reengineering (define traceability links is a way to record reverse
engineering knowledge)
• Reuse (by identifying what goes with a requirement: design, code…)
• Risk reduction (e.g., if a team member with key knowledge leaves)
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
31
Traceability Difficulties
•Various stakeholders require different information
•Huge amount of requirements traceability information must
be tracked and maintained
•Manual creation of links is very demanding
• Likely the most annoying problem
•Specialized tools must be used
•Integrating heterogeneous models/information from/to
different sources (requirements, design, tests, code,
documentation, rationales…) is not trivial
•Requires organizational commitment (with an understanding
of the potential benefits)
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
32
Backward and Forward Traceability (1)
•Backward traceability
• To previous stages of development
• Depends upon each element explicitly referencing its source in earlier
documents
•Forward traceability
• To all documents spawned by a document
• Depends upon each element in the document having a unique name
or reference number
Business plan Design Specification
Requirements Document
Forward-to traceability Forward-fromtraceability
Backward-from traceability Backward-to traceability
Source of figure: Kotonya and Sommerville
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
33
Backward and Forward Traceability (2)
•Top to bottom from requirements’ point of view
• Forward-to traceability
• Links other documents (which may have preceded the requirements
document) to relevant requirements
• Help validation
• Help evaluate which requirements are affected by changes to users’ needs
• Forward-from traceability
• Links requirements to the design and implementation components
• Help assure that all requirements have been satisfied
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
34
Backward and Forward Traceability (3)
•Bottom to top from requirements’ point of view
• Backward-to traceability
• Links design and implementation components back to requirements
• Help determine why each item is designed/implemented
• Backward-from traceability
• Links requirements to their sources in other documents or people
• Help validation
• Help evaluate how changes to requirements impact stakeholders needs
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
35
Types of Traceability (1)
•Requirements – source traceability
• Links requirements with a person or document
•Requirements – rationale traceability
•Requirements – requirements traceability
• Links requirements with other requirements which are, in some way,
dependent on them
•Requirements – architecture traceability
• Links requirements with the subsystems where these requirements are
implemented (particularly important where subsystems are being
developed by different subcontractors)
•Requirements – design traceability
• Links requirements with specific hardware or software components in
the system which are used to implement the requirement
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
36
Types of Traceability (2)
•Requirements – interface traceability
• Links requirements with the interfaces of external systems which are
used in the provision of the requirements
•Requirements – feature traceability
•Requirements – tests traceability
• Links requirements with test cases verifying them (used to verify that
the requirement is implemented)
•Requirements – code traceability
• Generally not directly established, but can be inferred
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
37
Representation – Traceability Table
•Show the relationships between requirements or between
requirements and other artifacts
•Table can be set up to show links between several different
elements
•Backward and forward traceability
•Difficult to capture different types of links
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
38
Representation – Traceability Matrix
•Define links between pairs of elements
• E.g., requirements to requirement, use case to requirement,
requirement to test case…
•Can be used to defined relationships between pairs
• E.g., specifies/is specified by, depends on, is parent of, constrains…
•More amenable to automation than traceability table
Depends-on
R1 R2 R3 R4 R5 R6
R1 * *
R2 * *
R3 * *
R4 *
R5 *
R6
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
39
Representation – Traceability List
•Traceability matrices become more of a problem when there
are hundreds or thousands of requirements as the matrices
become large and are sparsely populated
•A simplified form of a traceability matrix may be used where,
along with each requirement description, one or more lists of
the identifiers of related requirements are maintained
Requirement Depends-on
R1 R3, R4
R2 R5, R6
R3 R4, R5
R4 R2
R5 R6
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
40
Example – DOORS Links
•A relationship between two objects in the DOORS database
is established using a link
• One source object and one destination object
•Links can be followed in either direction
•Possible to have many links between the same two objects
• Links also have types and attributes!
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
41
DOORS – Creating and Accessing Links
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
42
DOORS – Exploring Traceability Links
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
43
DOORS – Link Matrix View
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
44
DOORS – Hierarchical Link View
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
45
DOORS – Filtering View (Query on Attributes)
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
46
DOORS – Types of Analysis
•Impact Analysis
• Analyze out-links (which objects in other modules are affected when
this module is changed)
•Traceability Analysis
• Analyze in-links (changes in these objects will affect this module)
•May involve multiple levels of objects/documents
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
47
DOORS – Multi-Module Traceability
1. 820.30(b) Design and Development Planning
Each manufacturer shall establish and maintain plans that describe or reference the design and development
activities and define responsibility for implementation.
The plans shall identify and describe the interfaces with different groups or activities that provide, or result
in, input to the design and development process.
The plans shall be reviewed as design and development evolves.
The plans shall be updated as design and development evolves.
The plans shall be approved as design and development evolves.
2. 820.30(c) Design Input
2.1. Each manufacturer shall establish procedures to ensure that the design requirements relating to a
device are appropriate and address the intended use of the device, including the needs of the user
and patient.
2.2. Each manufacturer shall maintain procedures to ensure that the design requirements relating to a
device are appropriate and address the intended use of the device, including the needs of the user
and patient.
2.3. The procedures shall include a mechanism for addressing incomplete requirements.
2.4. The procedures shall include a mechanism for addressing ambiguous requirements.
2.5. The procedures shall include a mechanism for addressing conflicting requirements.
2.6. The design input requirements shall be documented by a designated individual(s).
2.7. The design input requirements shall be reviewed by a designated individual(s).
2.8. The design input requirements shall be approved by a designated individual(s).
2.9. The approval, including the date and signature of the individual(s) approving the requirements,
shall be documented.
2.10.Questions.
2.10.1. Summarize the manufacturer's written procedure(s) for identification and control of
design input.
2.10.2. From what sources are design inputs sought?
2.10.3. Do design input procedures cover the relevant aspects, such as: (Mark all that apply and
list additional aspects.)
2.10.3.1. intended use
2.10.3.2. user/patient/clinical
2.10.3.3. performance characteristics
2.10.3.4. safety
2.10.3.5. limits and tolerances
2.10.3.6. risk analysis
2.10.3.7. toxicity and biocompatibility
2.10.3.8. electromagnetic compatibility (EMC)
2.10.3.9. compatibility with accessories/auxiliary devices
2.10.3.10. compatibility with the environment of intended use
2.10.3.11. human factors
2.10.3.12. physical/chemical characteristics
2.10.3.13. labeling/packaging
2.10.3.14. reliability
2.10.3.15. statutory and regulatory requirements
2.10.3.16. voluntary standards
2.10.3.17. manufacturing processes
2.10.3.18. sterility
2.10.3.19. MDRs/complaints/failures and other historical data
2.10.3.20. design history files (DHFs)
2.10.4. For the specific design covered, how were the design input requirements identified?
2.10.5. For the specific design covered, how were the design input requirements reviewed for
adequacy?
Comply with FDA Design Control Guidance GMP Regulation
1. Capture design and related information
1.1. Input electronically formatted data
1.2. Reference external information sources
1.3. Reference external documentation
2. Store design and related information
2.1. Identify and tag design information as unique “design elements”
2.2. Organize design elements
2.2.1. Organize by Design Control Guidance Element
2.2.2. Organize by inter-relationships
2.3. Ensure all design elements are available
2.3.1. Store design elements by Design Control Guidance Element
2.3.2. Store design elements and their historical values
3. Manage all user needs
3.1. Identify the source of the user need
3.2. Identify all user types (groups)
3.3. Identify the customer (s)
3.4. Profile the expected patients
3.5. State the intended use of the product (family)
3.6. Capture the acceptance criteria for each user need
4. Manage design input requirements
4.1. Identify the source of the requirement
4.2. Identify the associated user need
4.3. Capture requirement description and attributes
4.4. Capture acceptance criteria
4.5. Assign responsibility for each requirement
4.6. Manage incomplete requirements
4.7. Manage ambiguous requirements
4.8. Manage conflicting requirements
4.9. Approve all requirements
5. Manage acceptance
5.1. Ensure the acceptance of every user need
5.2. Ensure the acceptance of every design input requirement
5.3. Document the results of every user need acceptance test
5.4. Document the results of every design input requirements test
5.5. Make acceptance results available
6. Manage change
6.1. Maintain history of design element changes
6.1.1. Make complete change history available
6.1.2. Maintain history within and across any organizational procedure
6.1.3. Maintain history within and across any project milestone
6.1.4. Maintain history within and across any Design Control Guidance Elements
6.2. Capture frequency and nature of element changes
6.2.1. Provide rationale for change
6.2.2. Describe decisions made
6.2.3. Identify approval authority for the change
6.2.4. Capture date, time, and signature of approving authority
6.3. Identify impacted elements due to a change in another element
6.3.1. Create backward traces to design elements within and across any organizational procedure
6.3.2. Create backward traces to design elements within and across any project milestone
1.1. Identify impacted elements due to a change in another element
 Traceability Reports: consistency with driving design elements
 Impact Reports: other design elements affected
 Links to impacted design elements
1.1.1.Create backward traces to design elements within and across any organizational
procedure
 Traceability Reports: Procedure Attribute
1.1.2.Create backward traces to design elements within and across any project milestone
 Traceability Reports: Milestone Attribute
1.1.3.Create backward traces to design elements within and across Design Control
Guidance Elements
 Traceability Reports: Linked design elements
1.1.4.Create forward impacts to design elements within and across any organizational
procedure
 Impact Reports: Procedure Attribute
1.1.5.Create forward impacts to design elements within and across any project milestone
 Impact Reports: Milestone Attribute
1.1.6.Create forward impacts to design elements within and across Design Control
Guidance Elements
 Impact Reports: Linked design elements
1.2. Associate changed design elements with related elements
 Link Change Design Object with affected design element(s)
 Traceability Links and Reports from affected design element(s)
 Impact Links and Reports from affected design element(s)
1.2.1.Associate design element changes with decisions, rationale, and approval authority
information
 Change Decision Objects with following Attributes:
 Disposition Attribute
 Decision Attribute
 Rationale Attribute
 Owner Attribute
 Management Approval Attribute
1.2.2.Provide associations within and across any organizational procedure
 Change Design Object Traceability Link on Procedure Attribute
 Change Design Object Impacts Link on Procedure Attribute
1.2.3.Provide associations within and across any project milestone
 Change Design Object Traceability Link on Milestone Attribute
 Change Design Object Impacts Link on Milestone Attribute
1.2.4.Provide associations within and across Design Control Guidance Elements
 Change Design Object Traceability Link to traced design elements
 Change Design Object Impacts Link to linked design elements
1.3. Mange the change process
 Design Change Module
 Design Change Reports
 Object History
 Object History Reports
 Versions
 Baselines
1. 820.30(b) Design and Development Planning
Each manufacturer shall establish and maintain plans that describe or reference the design and development
activities and define responsibility for implementation.
The plans shall identify and describe the interfaces with different groups or activities that provide, or result
in, input to the design and development process.
The plans shall be reviewed as design and development evolves.
The plans shall be updated as design and development evolves.
The plans shall be approved as design and development evolves.
2. 820.30(c) Design Input
2.1. Each manufacturer shall establish procedures to ensure that the design requirements relating to a
device are appropriate and address the intended use of the device, including the needs of the user
and patient.
2.2. Each manufacturer shall maintain procedures to ensure that the design requirements relating to a
device are appropriate and address the intended use of the device, including the needs of the user
and patient.
2.3. The procedures shall include a mechanism for addressing incomplete requirements.
2.4. The procedures shall include a mechanism for addressing ambiguous requirements.
2.5. The procedures shall include a mechanism for addressing conflicting requirements.
2.6. The design input requirements shall be documented by a designated individual(s).
2.7. The design input requirements shall be reviewed by a designated individual(s).
2.8. The design input requirements shall be approved by a designated individual(s).
2.9. The approval, including the date and signature of the individual(s) approving the requirements,
shall be documented.
2.10.Questions.
2.10.1. Summarize the manufacturer's written procedure(s) for identification and control of
design input.
2.10.2. From what sources are design inputs sought?
2.10.3. Do design input procedures cover the relevant aspects, such as: (Mark all that apply and
list additional aspects.)
2.10.3.1. intended use
2.10.3.2. user/patient/clinical
2.10.3.3. performance characteristics
2.10.3.4. safety
2.10.3.5. limits and tolerances
2.10.3.6. risk analysis
2.10.3.7. toxicity and biocompatibility
2.10.3.8. electromagnetic compatibility (EMC)
2.10.3.9. compatibility with accessories/auxiliary devices
2.10.3.10. compatibility with the environment of intended use
2.10.3.11. human factors
2.10.3.12. physical/chemical characteristics
2.10.3.13. labeling/packaging
2.10.3.14. reliability
2.10.3.15. statutory and regulatory requirements
2.10.3.16. voluntary standards
2.10.3.17. manufacturing processes
2.10.3.18. sterility
2.10.3.19. MDRs/complaints/failures and other historical data
2.10.3.20. design history files (DHFs)
2.10.4. For the specific design covered, how were the design input requirements identified?
2.10.5. For the specific design covered, how were the design input requirements reviewed for
adequacy?
Comply with FDA Design Control Guidance GMP Regulation
1. Capture design and related information
1.1. Input electronically formatted data
1.2. Reference external information sources
1.3. Reference external documentation
2. Store design and related information
2.1. Identify and tag design information as unique “design elements”
2.2. Organize design elements
2.2.1. Organize by Design Control Guidance Element
2.2.2. Organize by inter-relationships
2.3. Ensure all design elements are available
2.3.1. Store design elements by Design Control Guidance Element
2.3.2. Store design elements and their historical values
3. Manage all user needs
3.1. Identify the source of the user need
3.2. Identify all user types (groups)
3.3. Identify the customer (s)
3.4. Profile the expected patients
3.5. State the intended use of the product (family)
3.6. Capture the acceptance criteria for each user need
4. Manage design input requirements
4.1. Identify the source of the requirement
4.2. Identify the associated user need
4.3. Capture requirement description and attributes
4.4. Capture acceptance criteria
4.5. Assign responsibility for each requirement
4.6. Manage incomplete requirements
4.7. Manage ambiguous requirements
4.8. Manage conflicting requirements
4.9. Approve all requirements
5. Manage acceptance
5.1. Ensure the acceptance of every user need
5.2. Ensure the acceptance of every design input requirement
5.3. Document the results of every user need acceptance test
5.4. Document the results of every design input requirements test
5.5. Make acceptance results available
6. Manage change
6.1. Maintain history of design element changes
6.1.1. Make complete change history available
6.1.2. Maintain history within and across any organizational procedure
6.1.3. Maintain history within and across any project milestone
6.1.4. Maintain history within and across any Design Control Guidance Elements
6.2. Capture frequency and nature of element changes
6.2.1. Provide rationale for change
6.2.2. Describe decisions made
6.2.3. Identify approval authority for the change
6.2.4. Capture date, time, and signature of approving authority
6.3. Identify impacted elements due to a change in another element
6.3.1. Create backward traces to design elements within and across any organizational procedure
6.3.2. Create backward traces to design elements within and across any project milestone
1.1. Identify impacted elements due to a change in another element
 Traceability Reports: consistency with driving design elements
 Impact Reports: other design elements affected
 Links to impacted design elements
1.1.1.Create backward traces to design elements within and across any organizational
procedure
 Traceability Reports: Procedure Attribute
1.1.2.Create backward traces to design elements within and across any project milestone
 Traceability Reports: Milestone Attribute
1.1.3.Create backward traces to design elements within and across Design Control
Guidance Elements
 Traceability Reports: Linked design elements
1.1.4.Create forward impacts to design elements within and across any organizational
procedure
 Impact Reports: Procedure Attribute
1.1.5.Create forward impacts to design elements within and across any project milestone
 Impact Reports: Milestone Attribute
1.1.6.Create forward impacts to design elements within and across Design Control
Guidance Elements
 Impact Reports: Linked design elements
1.2. Associate changed design elements with related elements
 Link Change Design Object with affected design element(s)
 Traceability Links and Reports from affected design element(s)
 Impact Links and Reports from affected design element(s)
1.2.1.Associate design element changes with decisions, rationale, and approval authority
information
 Change Decision Objects with following Attributes:
 Disposition Attribute
 Decision Attribute
 Rationale Attribute
 Owner Attribute
 Management Approval Attribute
1.2.2.Provide associations within and across any organizational procedure
 Change Design Object Traceability Link on Procedure Attribute
 Change Design Object Impacts Link on Procedure Attribute
1.2.3.Provide associations within and across any project milestone
 Change Design Object Traceability Link on Milestone Attribute
 Change Design Object Impacts Link on Milestone Attribute
1.2.4.Provide associations within and across Design Control Guidance Elements
 Change Design Object Traceability Link to traced design elements
 Change Design Object Impacts Link to linked design elements
1.3. Mange the change process
 Design Change Module
 Design Change Reports
 Object History
 Object History Reports
 Versions
 Baselines
User Reqts Technical Reqts Test Cases
Design
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
48
SYNERGY/Change:
Work Orders SYNERGY/CM:
Engineering Tasks
ActiveCM:
Controlled Code Modules
DOORS:
Requirements Management & Traceability
TAU/Architect & TAU/Developer:
System Modeling & Code Generation
DOORS – Traceability and Software Artefacts
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
49
DOORS – Analysis with Wizard
Orphans
indicate missing
links
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
50
What are Suspect Links?
•Proactively know when changes effect your requirements
•Suspect link indicates that element may have been affected
by a change
•Help ensure ripple effects of changes are considered
… a change by
this user here…
… shows up as a
warning flag to
this user here.
If documents are linked …
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
51
Suspect Links
•Visible as indicators or with change notes (added/deleted)
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
52
Traceability Planning
•Planning traceability? Yes, just like any other project!
• Who are the stakeholders?
• What are the needs (analysis, reports…)?
• Useful, measurable, feasible objectives
• Definition of links and attributes
• Can some be inferred automatically?
• Process (who collects and when to collect traceability information)
• Roles, access
• Data/link input and updates
• Exceptional situations (e.g., lack of time)
• Representations, queries, tools
• …
• Traceability policies define what and how traceability information
should be maintained
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
53
Factors to Consider during Planning (1)
•Number of requirements
• The greater the number of requirements, the more the need for formal
traceability policies
•Expected system lifetime
• More comprehensive traceability policies should be defined for
systems which have a long lifetime
•Maturity level of organization
• Detailed traceability policies are more likely to be implemented and
used properly in a cost-effective way in organizations which have a
higher level of process maturity
•Size of project and team
• The larger the project or team, the greater the need for formal
traceability policies
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
54
Factors to Consider during Planning (2)
•Type of system
• Critical systems such as hard real-time control systems or safety-
critical systems need more comprehensive traceability policies than
non-critical systems
•Additional constraints from customer
• E.g., compliance to military standard
•Traceability links should be defined by whoever has the
appropriate information available
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
55
Modeling Traceability
•The types of links to use (and their attributes) must be
defined for different types of requirements
• It is a design problem!
•May be modeled with a UML class diagram (metamodel)
• Object types (classes)
• Object attributes (attributes)
• Structure of folders, modules, objects
• Stereotypes, composition…
• Link types (associations)
• Satisfies, tests, refines, contains, contributes to, threatens, justifies…
• Link attributes (association classes)
• …
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
56
Example – UCM Models Imported in DOORS
•Associations describe internal links
Scenarios
<<Module>>
Responsibilities
<<Module>>
UCMDesignName.ucm
<<Folder>>
Components
<<Module>>
Devices
<<Module>>
Device
<<Object>>
0..*
0..*
Condition
<<Object>>
DoElement
<<Object>>
Responsibility
<<Object>>
0..*
0..*
0..*
0..*
+requests
0..*
0..*
Par
<<Object>>
Seq
<<Object>>
0..1
0..*
+parentID
0..1
0..*
0..1
0..*
+parentID
0..1
0..*
0..*
+parentID
0..*
0..*
+parentID
0..*
ScenarioGroup
<<Object>>
0..*
0..*
Scenario
<<Object>>
0..1 0..1
+parentID
0..1 0..1
0..1
0..1
+parentID 0..1
0..1
0..*
0..*
Maps
<<Module>>
Stub
<<Object>>
Map
<<Object>>
0..*
0..*
0..*
0..*
0..*
0..*
+refines
0..*
0..*
Component
<<Object>>
0..*
0..*
0..1
0..* +hosts
0..1
0..*
ResponsibilityReference
<<Object>>
0..*
+references
0..*
0..*
0..*
Resp
<<Object>>
0..* +traced by
0..*
ComponentReference
<<Object>>
0..1
0..*
+bound to
0..1
0..*
0..1 0..*
+bound to
0..1 0..*
0..*
0..*
0..*
+references
0..*
0..*
+traced by
0..*
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
57
User
Requirements
(Use Cases)
System
Requirements
Software
Requirements
(Subsystem)
UCMs
(User Level)
UCMs
(System Level)
Satisfies
Satisfies
Satisfies
Satisfies
Example – UCM External Links in DOORS
Acceptance
Tests
Functional
Tests
Tests Tests Tests Tests
…
Satisfies Satisfies
external UCM links
conventional links
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
58
User
Level
Example – Automatic Link Generation (1)
•Important to minimize the manual effort for link creation
•From system requirements to user-level UCMs to user reqs.
References
References
Traced By
Refines
UCMs
(Resp.)
UCMs
(Comp.)
UCMs
(Scenarios)
Scenario.
Resp
User
Requirements
(Use Cases)
System
Requirements
UCMs (Maps)
Bound
To
Bound To
Refines
Map
* Map.Stub
* Map.Resp
* Map.Comp
manual & generated links
generated links
manual links
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
59
Example – Automatic Link Generation (2)
•From tests to system-level UCMs to system requirements
manual & generated links
System
Requirements
System
Level
References
References
Traced By
Refines
UCMs
(Resp.)
UCMs
(Comp.)
UCMs
(Scenarios)
Scenario.
Resp
Functional
Tests
UCMs (Maps)
Bound
To
Bound To
Refines
Map
* Map.Stub
* Map.Resp
* Map.Comp
generated links
(incomplete)
generated links
manual links
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
60
Types of Traceability Links
•Note the types of links in the previous examples, as well as
the types of objects they relate
• Satisfies, Tests
• Refines, References, Contains...
•Others could be created
• Contributes, Contradicts, Justifies, Depends on...
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
61
Other Example of Traceability Links
Business
requirement
System requirements,
use case, external
interface, quality attribute
Software functional
requirement
Architectrue,
user interface, or
functional design
System test
Project plan
task
Integration test Code
Unit test
Change
request
Business rule
modifies
modifies
modifies
modifies
Drives specification of
influences
Is origin of Is origin of
Depends on another
Is satisfied by
Is verified by Lead to creation of
Is verified by Is implemented in
Is verified by
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
62
Cardinality of Traceability Links
•Depending on the traceability information, the cardinality of
traceability links may be
• One-to-one
• E.g., one design element to one code module
• One-to-many
• E.g., one functional requirement verified by multiple test cases
• Many-to-many
• E.g., a use case may lead to multiple functional requirement, and a
functional requirement may be common to several use cases
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
63
Advice for DOORS Links
•Direction of links
• From the most concrete to the most abstract
• To avoid access rights issues
• To make use of the integrated analysis routines of DOORS
•Link Modules
• One module per type of link
• NEVER use default module (should not even be offered)
• To avoid maintenance problems
• Specific types facilitate analysis and filtering
Introduction Traceability Baselines Change Management Requirements Management Tools
Baselines
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
65
Baseline
•Non-modifiable (read-only) version of a document
• Describes a moment in time
• May include multiple documents at the same time
•Enables document comparison and management
•Comes with a change history for the document
• Information on objects, attributes, and links created, deleted, or edited
since the creation of the baseline
• Often also contains information on user sessions (when the document
was opened, by whom…)
•Requires access control
•It is advisable to establish a baseline for a new document that
is imported into the document management system
• In order not to lose any changes
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
66
Baseline for Requirements
•Represents the set of functional and non-functional
requirements that the development team has committed to
implement in a specific release
•Before going into the baseline, the requirements should be
reviewed and approved by stakeholders
•Once in the baseline, all changes should follow a defined
change control process
Baseline
 Shared understanding
 Configuration management
 Change management
 Different viewpoints
 No formal documents
 Always changing
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
67
Baseline Usage
•Baselines may be
• Created
• Complete image of requirements state at a given time
• Deleted
• Visualized
• Possibility to go back
• Compared
• To see changes since a certain time
• Copied
• Signed
• For authorization, contract
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
68
DOORS – Baseline Compare
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
69
DOORS – Module Compare
•Change analysis between versions
Introduction Traceability Baselines Change Management Requirements Management Tools
Change Management
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
71
Introduction Traceability Baselines Change Management Requirements Management Tools
Change Management (1)
•The more things change…
•If you see change not as
an enemy, but as a
welcome friend, you will
secure the most valuable
prize of all – the future…
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
72
Change Management (2)
•Concerned with the procedures, processes, and standards
which are used to manage changes to a system requirements
•Change management policies may cover
• The change request process and the information required to process
each change request
• The process used to analyse the impact and costs of change and the
associated traceability information
• The membership of the body that formally considers change requests
• Software support (if any) for the change control process
•A change request may have a status as well as requirements
• E.g., proposed, rejected, accepted, included...
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
73
Change Management Process
•Some requirements problem is identified
• Could come from an analysis of the requirements, new customer
needs, or operational problems with the system
• The requirements are analysed using problem information and
requirements changes are proposed
•The proposed changes are analysed
• How many requirements (and, if necessary, system components) are
affected? Roughly how much would cost, in both time and money?
•The change is implemented
• A set of amendments to the requirements document or a new
document version is produced (of course this should be validated with
whatever normal quality checking procedures are in place)
Change
implementation
Change analysis
and costing
Problem analysis and
change specification
Identified
problem
Revised
requirements
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
74
Change Request Form
•Proposed changes are usually recorded on a change request
form which is then passed to all of the people involved in the
analysis of the change
•Change request forms may include
• Date, Customer, Requester, Product including version
• Description of change request including rationale
• Fields to document the change analysis
• Signature fields
• Status
• Comments
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
75
Check request
validity
Find directly
affected
requirements
Find dependent
requirements
Propose
requirements
changes
Assess costs
of change
Assess cost
acceptability
Accepted
change
Change
request
Rejected request
Valid
request
Req. list
Requirements change list
Requirements
changes
Customer
information
Cost
information
Rejected request
Rejected request
Customer
information
Rejected request
Change Analysis and Costing – Example
Introduction Traceability Baselines Change Management Requirements Management Tools
Source of figure: Kotonya and Sommerville
customers may misunderstand requirements and
their context and suggest unnecessary changes
with the help of traceability information
negotiations with customers
consequential changes may be
unacceptable to user/customer cost/time required for the implementation
of change is too high/long
risk is too high
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
76
Different Management Aspects
•Change Management
• How does a customer submit change requests?
• How is this request being monitored, prioritized, and implemented?
•Configuration Management
• Versioning, labelling, and tracking code and other components during
the development cycle of software
•Release Management
• Defines how and when different hardware and software will be made
available together as a product
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
77
•May be provided through requirements management tools or
through configuration management tools
• Tool facilities may include
• Electronic change request forms which are filled in by different
participants in the process
• A database to store and manage requests
• A change model which may be instantiated so that people responsible
for one stage of the process know who is responsible for the next
process activity
• Electronic transfer of forms between people with different
responsibilities and electronic mail notification when activities have
been completed
• Electronic signatures
• Discussion forums
• In some cases, direct links to a requirements database
Tool Support for Change Management
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
78
Example – DOORS Change Proposal System (1)
•The Change Proposal System (CPS) allows people to access
DOORS modules and to propose changes (without
immediately changing the modules)
•This allows for feedback and the application of changes in a
controlled manner
•An administrator controls the visibility of data as well as who
is allowed to propose change requests
•DOORS can also be integrated with SYNERGY
• Version/change management system
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
79
•Manage change;
no surprises
Changes from all
users including
DOORSnet
Read-only
user submits
“Change Proposal”
Changes reviewed
on-line
E-mail
Example – DOORS Change Proposal System (2)
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
80
Change Management with DOORS/SYNERGY (1)
•Standard DOORS module
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
81
•Select a SYNERGY change request
Change Management with DOORS/SYNERGY (2)
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
82
Change Management with DOORS/SYNERGY (3)
•Perform appropriate changes
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
83
Change Management with DOORS/SYNERGY (4)
•Changes managed by SYNERGY/Change
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
84
Change Management with DOORS/SYNERGY (5)
•Once approved, the change request can be applied to
DOORS
Introduction Traceability Baselines Change Management Requirements Management Tools
Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
86
What Kind of Tool Do We Need?
•Different companies will use different tools, which may or may
not be tailored to the requirements management task
• Word processor (Microsoft Word with templates…)
• Spreadsheet (Microsoft Excel…)
• Industrial-strength, commercial RM tools
• IBM/Telelogic DOORS, IBM Requisite Pro, Borland CaliberRM…
• Internal tools
• GenSpec (Hydro-Quebec)…
• Open source RM tools
• OSRMT: http://sourceforge.net/projects/osrmt
• Bug tracking tools (free or not)
• Bugzilla…
• Collaboration tools (free or not)
• TWiki…
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
87
What Should We Look For in a Tool?
•Types/attributes for
requirements and links
•Specifications and models
•Version and change
management
•Database repository
•Traceability
•Analysis (impact,
completeness, style,
differences…)
•Automatic inspection of
requirements (according to
rules)
•Visualization and reports
•Requirements document
generation
•Monitoring of requirements
statuses
•Access control
•Import/export
•Communication with
stakeholders
•Scripting language (for
automation)
•Reuse of requirements,
models, projects
•…
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
88
RM Tool Architecture – Example
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
89
Requirements Management Implies Integration!
Project-tracking
tool
Requirements
management
tool
Project
estimation tool
Version control
tool
Design
modeling tool
Test
management
tool
Change-
request tool
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
90
Approaches – Document or Database? (1)
•Requirements have to be stored in such a way that they can
be accessed easily and related to other requirements
•Document (e.g., Word)
• Easy to use, easy to access, simple training
• Requirements are all stored in the requirements document
• It is easy to produce the final requirements document
• But: Traceability? Status reports? Granularity of requirements? Search
and navigation facilities? Change management? Version control?
Analysis? Simultaneous access control?...
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
91
Approaches – Document or Database? (2)
•Database (e.g., DOORS)
• Good for management, controlled access, links, analysis, reports
• Good query and navigation facilities
• Support for change and version management
• But: hard (and costly) to configure, manage, and use; link between the
database and the requirements document must be maintained (final
requirements document must be generated)
•Ideally: Target the benefits of both
• E.g., DOORS and RequisitePro offer integrations with Word
(import/export) as well as document-oriented views (for the “look and
feel”…)
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
92
How About Evolving the Process Itself?
•Evolution of requirements types
• Adding / modifying / deleting
• Attributes
• Link types
• Requirements status
• …
•Evolution of change management
• Adding / modifying / deleting
• Attributes
• Lifecycle status
• Forms
• …
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
93
Thinking About Getting a RM Tool?
•The list of potential criteria and the list of products can be
rather long…
• See the INCOSE study:
http://www.incose.org/ProductsPubs/Products/rmsurvey.aspx
• About 25 tools and 80 criteria, with explanations
•Which are relevant to you, in your context (project,
organization…)?
• Need a goal model to define criteria and for assessment!
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
94
DOORS – Database View
Deleted Folder
Link modules
Folders
Projects
Formal Modules
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
95
Column
Heading
Current
Object
Object
Identifier
“No change since baseline”
change-bar (green / blue)
“Changed this session”
change-bar, unsaved (red)
Object or
Section
Number
“Changed since baseline”
change-bar, saved (yellow)
Object
Heading
Object
Text
Use in
Graphical view
Use as
DataTip
Link
Indicator
DOORS – Displayed Information
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
96
DOORS – Multi-User Editing
•Make required edits, and unlock to allow others access
Mode
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
97
DOORS – Integration with UML 2.0
• Linkable UML 2.0 diagrams and
element objects, via the Analyst
plug-in (Tau G2 UML 2.0 editor)
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
98
DOORS – Integration with URN
• Linkable URN diagrams and
element objects, via the DXL
export plug-in for jUCMNav
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
99
TWiki Overview
•A generic Wiki tool (TWiki.org)
• Promotes collaboration
• Database-driven
• Access and version control
• Forms and queries
• State-based workflows (processes)
• Text and graphics
• Lightweight, extensible (plug-in architecture)
•Example of Forms and Queries
• Requirements:
http://cserg0.site.uottawa.ca/twiki/bin/view/ProjetSEG/UCMNavRequirements
• Library: http://cserg0.site.uottawa.ca/twiki/bin/view/UCM/UCMVirtualLibrary
• Use Cases: http://cserg0.site.uottawa.ca/seg/bin/view/CSI4900/UseCases
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
100
TWiki for Requirements Management
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
101
Twiki – Requirement Example
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
102
TWiki – Requirement Form Example
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
103
Using TWiki…
•We have:
• Requirement types description with configurable statuses & attributes
• Bidirectional links (WikiWords)
• Configurable requests, filtering, reports
• Access control and version management (showing differences)
• Change management (again with forms, process, etc.)
• Discussions, attachment of documents/images
• Export (HTML)
• Scripting language (Perl)
•But do we really have:
• Graphical view of traceability?
• Editable tables (à la Excel/Word)?
• Baselines? Tool integration? Imports? Analysis?
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
104
Keep your team on track
3 interfaces - work the way you
want
Document centric or database
centric - your choice
Microsoft Word
Database
IBM Requisite Pro
Web
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
105
 User defined requirement
types
 User defined attributes
 User defined filters (views)
 Saved views
IBM Requisite Pro – Types, Attributes, and Views
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
106
IBM Requisite Pro – Traceability
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
107
IBM Requisite Pro – Change Management
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
108
 IBM Rational TestManager
 Testers view current state
of requirements from their tool
 IBM Rational XDE and IBM Rational
Rose, Rational Software Architect and
Rational Software Modeler
 Developers view current state of
requirements from their tool
IBM Requisite Pro – Integration
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
109
Genspec
Introduction Traceability Baselines Change Management Requirements Management Tools
SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher
110
Genspec – Automated Inspection of Specification
Introduction Traceability Baselines Change Management Requirements Management Tools

More Related Content

Similar to SEG3101-ch5 - Management.ppt dynamic object oriented requirements managements system

sfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.ppt
sfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.pptsfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.ppt
sfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.pptssuser2d043c
 
Requirements change - requirements engineering
Requirements change - requirements engineeringRequirements change - requirements engineering
Requirements change - requirements engineeringRa'Fat Al-Msie'deen
 
SRE Week-14.pptx
SRE Week-14.pptxSRE Week-14.pptx
SRE Week-14.pptxazhar imran
 
Ch 6 - Requirement Management.pptx
Ch 6 - Requirement Management.pptxCh 6 - Requirement Management.pptx
Ch 6 - Requirement Management.pptxbalewayalew
 
SE Unit 2(1).pptx
SE Unit 2(1).pptxSE Unit 2(1).pptx
SE Unit 2(1).pptxaryan631999
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineeringSutha31
 
015 changes-process model
015 changes-process model015 changes-process model
015 changes-process modeldrdej19
 
2018-10-17 J1 4C - WEBCON prez - Practical results of managing a company with...
2018-10-17 J1 4C - WEBCON prez - Practical results of managing a company with...2018-10-17 J1 4C - WEBCON prez - Practical results of managing a company with...
2018-10-17 J1 4C - WEBCON prez - Practical results of managing a company with...Modern Workplace Conference Paris
 
Requirement engineering in S/W Engineering
Requirement engineering in S/W EngineeringRequirement engineering in S/W Engineering
Requirement engineering in S/W EngineeringMikel Raj
 
04 fse understandingrequirements
04 fse understandingrequirements04 fse understandingrequirements
04 fse understandingrequirementsMohesh Chandran
 
Stevenson_14e_Chap001_PPT_Accessible.pptx
Stevenson_14e_Chap001_PPT_Accessible.pptxStevenson_14e_Chap001_PPT_Accessible.pptx
Stevenson_14e_Chap001_PPT_Accessible.pptxssusere256cb1
 
Documented Requirements are not Useless After All!
Documented Requirements are not Useless After All!Documented Requirements are not Useless After All!
Documented Requirements are not Useless After All!Lionel Briand
 

Similar to SEG3101-ch5 - Management.ppt dynamic object oriented requirements managements system (20)

sfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.ppt
sfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.pptsfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.ppt
sfdgdfgfgfdgvsdfdsfedrfewsfdsfsfterfdcm.ppt
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
 
Software maintenance
Software maintenanceSoftware maintenance
Software maintenance
 
Requirements change - requirements engineering
Requirements change - requirements engineeringRequirements change - requirements engineering
Requirements change - requirements engineering
 
Software Configuration Management
Software Configuration ManagementSoftware Configuration Management
Software Configuration Management
 
SRE Week-14.pptx
SRE Week-14.pptxSRE Week-14.pptx
SRE Week-14.pptx
 
Ch 6 - Requirement Management.pptx
Ch 6 - Requirement Management.pptxCh 6 - Requirement Management.pptx
Ch 6 - Requirement Management.pptx
 
SE Unit 2(1).pptx
SE Unit 2(1).pptxSE Unit 2(1).pptx
SE Unit 2(1).pptx
 
015 changes-process model
015 changes-process model015 changes-process model
015 changes-process model
 
SRE.pptx
SRE.pptxSRE.pptx
SRE.pptx
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
Scm
ScmScm
Scm
 
015 changes-process model
015 changes-process model015 changes-process model
015 changes-process model
 
015 changes-process model
015 changes-process model015 changes-process model
015 changes-process model
 
015 changes-process model
015 changes-process model015 changes-process model
015 changes-process model
 
2018-10-17 J1 4C - WEBCON prez - Practical results of managing a company with...
2018-10-17 J1 4C - WEBCON prez - Practical results of managing a company with...2018-10-17 J1 4C - WEBCON prez - Practical results of managing a company with...
2018-10-17 J1 4C - WEBCON prez - Practical results of managing a company with...
 
Requirement engineering in S/W Engineering
Requirement engineering in S/W EngineeringRequirement engineering in S/W Engineering
Requirement engineering in S/W Engineering
 
04 fse understandingrequirements
04 fse understandingrequirements04 fse understandingrequirements
04 fse understandingrequirements
 
Stevenson_14e_Chap001_PPT_Accessible.pptx
Stevenson_14e_Chap001_PPT_Accessible.pptxStevenson_14e_Chap001_PPT_Accessible.pptx
Stevenson_14e_Chap001_PPT_Accessible.pptx
 
Documented Requirements are not Useless After All!
Documented Requirements are not Useless After All!Documented Requirements are not Useless After All!
Documented Requirements are not Useless After All!
 

Recently uploaded

Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfFIDO Alliance
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsLeah Henrickson
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FIDO Alliance
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfFIDO Alliance
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxFIDO Alliance
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfFIDO Alliance
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...ScyllaDB
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctBrainSell Technologies
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe中 央社
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...panagenda
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxFIDO Alliance
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfFIDO Alliance
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?Mark Billinghurst
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftshyamraj55
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...FIDO Alliance
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!Memoori
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxFIDO Alliance
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceSamy Fodil
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGDSC PJATK
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераMark Opanasiuk
 

Recently uploaded (20)

Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptxHarnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
Harnessing Passkeys in the Battle Against AI-Powered Cyber Threats.pptx
 
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdfIntroduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
Introduction to FDO and How It works Applications _ Richard at FIDO Alliance.pdf
 
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
Event-Driven Architecture Masterclass: Integrating Distributed Data Stores Ac...
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
Easier, Faster, and More Powerful – Alles Neu macht der Mai -Wir durchleuchte...
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptx
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptx
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 Warsaw
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджера
 

SEG3101-ch5 - Management.ppt dynamic object oriented requirements managements system

  • 1. Gunter Mussbacher, University of Ottawa Based on material from: Kotonya & Sommerville, Z. Zhang, IBM and Telelogic, S. Somé 2008, and D. Amyot 2008-2009 Requirements Management SEG3101 (Fall 2009)
  • 2. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 2 Table of Contents •Introduction to Requirements Management •Traceability •Baselines •Change Management •Requirements Management Tools •A factor present in every successful project and absent in every unsuccessful project is sufficient attention to requirements.1 [1] Suzanne & James Robertson, “Requirements-Led Project Management”, Addison-Wesley, 2004
  • 3. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 3
  • 5. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 5 Why Do Requirements Change? •Change in software development: as inevitable as difficult to control! • Better understanding: new requirements become apparent • Everything else is changing… • Business • Context • Technologies • Markets • … •Possible responses to change • Add, modify, or remove requirements Introduction Traceability Baselines Change Management Requirements Management Tools
  • 6. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 6 Some Problems Due to Changing Requirements •Requirements changing towards the end of development without any impact assessment •Unmatched/outdated requirements specifications causing confusion and unnecessary rework •Time spent coding, writing test cases or documentation for requirements that no longer exist Introduction Traceability Baselines Change Management Requirements Management Tools
  • 7. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 7 Requirements Management •A systematic approach to eliciting, organizing, and documenting the requirement of the system, and a process that establishes and maintains agreement between the customer and the project team on the changing requirements of the system.1 [1] Leffingwell & Widrig 1999, p.16 Introduction Traceability Baselines Change Management Requirements Management Tools
  • 8. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 8 Requirements Management Activities (1) •Requirements management includes all activities intended to maintain the integrity and accuracy of expected requirements • Manage changes to agreed requirements • Manage changes to baseline (increments) • Keep project plans synchronized with requirements • Control versions of individual requirements and versions of requirements documents • Manage relationships between requirements • Managing the dependencies between the requirements document and other documents produced in the systems engineering process • Track requirements status Introduction Traceability Baselines Change Management Requirements Management Tools
  • 9. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 9 Requirements Management Activities (2)  Proposing changes  Analyzing impact  Making decisions  Updating requirements documents  Updates plans  Measuring requirements volatility  Defining a version identification scheme  Identifying requirements document versions  Identifying individual requirement versions  Defining a possible requirement statuses  Recording the status of each requirement  Reporting the status distribution of all requirements  Defining links to other requirements  Defining links to other system elements Change control Version control Requirements status tracking Requirements tracing Requirements Management Source: Wiegers, 1999 Introduction Traceability Baselines Change Management Requirements Management Tools
  • 10. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 10 Requirements Development (RD) and Management (RM) Source: Wiegers, 1999 Introduction Traceability Baselines Change Management Requirements Management Tools
  • 11. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 11 From Management to Tools •Changes lead to a need for management •There is no management without: • Traceability • Baselines enabling comparisons •From a practical point of view, there is no traceability or management without appropriate tools In theory, practice and theory are similar… But in practice they are different  Introduction Traceability Baselines Change Management Requirements Management Tools
  • 12. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 12 Requirements Change Factors (1) •Requirements errors, conflicts, and inconsistencies • May be detected at any phase (when requirements are analyzed, specified, validated, or implemented) •Evolving customer/user knowledge of the system • When the requirements are developed, customers/users simultaneously develop a better understanding of what they really need •Technical, schedule, or cost problems • Difficult to plan and know everything in advance • We may have to revisit the list of requirements and adapt it to the current situation Introduction Traceability Baselines Change Management Requirements Management Tools
  • 13. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 13 Requirements Change Factors (2) •Changing customer priorities, new needs • May be caused by a change in the system environment (technological, business, political...), i.e., the context • Business and strategic goals may change • May be caused by the arrival of a new competitor • Laws and regulations may change • Collaborating systems may change • May also be caused by technology changes in the enterprise (migration to a new operating system, DBMS…) • May be caused by organizational changes (organizational structure, business processes, employees…) Introduction Traceability Baselines Change Management Requirements Management Tools
  • 14. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 14 Requirements Volatility •Requirements continuously change • While the requirements are being elicited, analyzed, specified, and validated and after the system has gone into service •Some requirements are usually more subject to change than others • Stable requirements are concerned with the essence of a system and its application domain • Derived from the client’s principal business activities or the domain model • They change more slowly than volatile requirements • E.g., a hospital will always have doctors, nurses, patients… • Volatile requirements are specific to the instantiation of the system in a particular environment for a particular customer at a particular time • E.g., in a hospital, we can think of requirements related to the policies of the government health system Introduction Traceability Baselines Change Management Requirements Management Tools
  • 15. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 15 Types of Volatile Requirements •Mutable requirements • These are requirements which change because of changes to the environment in which the system is operating •Emergent requirements • These are requirements which cannot be completely defined when the system is specified but which emerge as the system is designed and implemented •Consequential requirements • These are requirements which are based on assumptions about how the system will be used • Once the system is in place, some of these assumptions will be wrong •Compatibility requirements • These are requirements which depend on other equipment, technology, or processes Introduction Traceability Baselines Change Management Requirements Management Tools
  • 16. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 16 Expectations of Requirements Management (1) •Identification of individual requirements •Traceability from highest level requirements to implementation • Established via links through a requirements database • Links between requirements and design models, tests, code… • Coverage and consistency analysis • What are the traceability policies? What types of links? From where? To where? •Impact assessments of proposed changes • Analysis tools let you see which other requirements (and other linked artifacts) will be affected by a change Introduction Traceability Baselines Change Management Requirements Management Tools
  • 17. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 17 Expectations of Requirements Management (2) •Controlled access to current project information • A shared database ensures that all users are working with current data (consistency, parallel access) • A central repository allows all users to see the information that they need to see (visibility) •Change control • Change proposal system implements controlled process for managing change • How do we collect, document, and address changes? •Deployment of required tool support • To help manage requirements change Introduction Traceability Baselines Change Management Requirements Management Tools
  • 18. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 18 Identification of Requirements •It is essential for requirements management that every requirement has a unique identification • The most common approach is requirements numbering based on chapter/section in the requirements document •There are several problems with this approach • Numbers cannot be unambiguously assigned until the document is complete • Assigning chapter/section numbers is an implicit classification of the requirements  may mislead readers of the document into thinking that the most important relationships are with requirements in the same section Introduction Traceability Baselines Change Management Requirements Management Tools
  • 19. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 19 Requirements Identification Techniques •Dynamic renumbering • Some word processing systems allow for automatic renumbering of paragraphs and the inclusion of cross references • As you reorganise your document and add new requirements, the system keeps track of the cross references and automatically renumbers your requirements depending on its chapter, section, and position within the section •Database record identification • When a requirement is identified, it is entered in a requirements database and a database record identifier is assigned which is then used for all subsequent references to the requirement •Symbolic identification • Requirements can be identified by giving them a symbolic name which is associated with the requirement itself (e.g., SEC1, SEC2, SEC3… may be used for requirements which relate to system security) Introduction Traceability Baselines Change Management Requirements Management Tools
  • 20. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 20 BTW, Requirements Have Attributes! •Apart from an identifier, requirements should have attributes that establish context and background, and go beyond the requirement description •For filtering, analysis, metrics… • Creation date, Last update, Author, Stakeholders (Owners / Source) • Version number • Status, Priority, Importance, Stability • Rationale, Comments • Acceptance criteria • Subsystem / Product release number • … •The more complex the project, the richer the attributes… •Many attributes are predefined in RM tools, others are defined by requirements engineers as required by the project Introduction Traceability Baselines Change Management Requirements Management Tools
  • 21. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 21 Requirements Attributes •Classes and attributes of a requirements management database •Select only the necessary attributes! REQUIREMENT Identifier: TEXT Statement: TEXT| GRAPHIC Date_entered: DATE Date_changed:DATE Sources: SOURCE_LIST Rationale: REQ_RATIONALE Status: STATUS Dependents: REQ_LIST Is_dependent_on: REQ_LIST Model_links: SYS_MODELS Comments: TEXT SOURCE_LIST People: TEXT Documents: TEXT Reqs: REQ_LIST REQ_RATIONALE Rationale: TEXT Diagrams: GRAPHIC Photos: PICTURE REQ_LIST Req: REQUIREMENT Description: TEXT Next: REQUIREMENT | NULL SYS_MODELS Model: MODEL Description: TEXT Next: MODEL | NULL Introduction Traceability Baselines Change Management Requirements Management Tools
  • 22. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 22 DOORS – Objects and Attributes Introduction Traceability Baselines Change Management Requirements Management Tools
  • 23. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 23 Requirements Statuses •Help manage the requirement lifecycle • Their number and nature depend on the process in place •Example of a set of statuses: • Proposed: by some stakeholder • Approved: part of baseline, committed to implement • Rejected: after evaluation • Implemented: designed and implemented • Verified: Relevant tests have passed • Deleted: Removed from list •RM includes amongst its tasks the tracking of the status of all requirements during the project Introduction Traceability Baselines Change Management Requirements Management Tools
  • 24. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 24 Version Control •Another essential aspect of requirements management • Every version of a requirement needs to be uniquely identified • The last version of a requirement must be available to all team members • Changes need to be documented and clearly communicated • A version identifier must be updated with every change to the requirement •Requirements documents should include • A revision history: changes, dates, by whom, why... • Standard markers for revisions (e.g., strikethrough or underlined text, coloring, line markers…) •Version control tool may be used • To store and manage the revision history • To store justifications (to add, modify, delete, reject a requirement) Introduction Traceability Baselines Change Management Requirements Management Tools
  • 26. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 26 Traceability? •"Can I ask you some questions?" •"By all means." •"Okay. Well, for starters I'll have who, what, when and where and then wither, whence and wherefore for a follow-up, and then one bit side-order of why." Source: Zaphod Beeblebrox & Zarniwoop, The Hitchhiker's Guide to the Galaxy Introduction Traceability Baselines Change Management Requirements Management Tools
  • 27. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 27 Traceability Quotes (1) •Requirements traceability refers to the ability to describe and follow the life of a requirement, in both forwards and backwards direction (i.e., from its origins, through its development and specification, to its subsequent deployment and use, and through all periods of ongoing refinement and iteration in any of these phases)”.1 •A software requirements specification is traceable if the origin of each of its requirements is clear and if it facilitates the referencing of each requirement in future development or enhancement documentation.2 •Traceability gives essential assistance in understanding the relationships that exist within and across software requirements, design, and implementation.3 •A link or relationship defined between entities.4 [1] Gotel & Finkelstein, 1994; [2] IEEE Standard 830-1998; [3] Palmer, 2000; [4] Watkins and Neal, 1994 Introduction Traceability Baselines Change Management Requirements Management Tools
  • 28. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 28 Traceability Quotes (2) •Traceability is often mandated by contracts and standards.1 • E.g., military and aerospace •One cannot manage what cannot be traced.2 •Traceability information helps assess the impact of changes to requirements, connecting these requirements as well as requirements for other representations of the system.3 •Traceability is a property of a system description technique that allows changes in one of the three system descriptions – requirements, specifications, implementation – to be traced to the corresponding portions of the other descriptions. The correspondence should be maintained through the lifetime of the system.4 [1-2] Watkins and Neal, 1994; [3] Kotonya and Sommerville, 1998; [4] Greenspan, McGowan, 1978 Introduction Traceability Baselines Change Management Requirements Management Tools
  • 29. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 29 Importance of Traceability (1) •Requirements cannot be managed effectively without requirements traceability • A requirement is traceable if you can discover who suggested the requirement, why the requirement exists, what requirements are related to it, and how that requirement relates to other information such as systems designs, implementations and user documentation Introduction Traceability Baselines Change Management Requirements Management Tools
  • 30. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 30 Importance of Traceability (2) •Benefits of traceability • Prevents losing knowledge • Supports the verification process (certification, localization of defects) • Impact analysis • Change control • Process monitoring (e.g., missing links indicate completion level) • Improved software quality (make changes correctly and completely) • Reengineering (define traceability links is a way to record reverse engineering knowledge) • Reuse (by identifying what goes with a requirement: design, code…) • Risk reduction (e.g., if a team member with key knowledge leaves) Introduction Traceability Baselines Change Management Requirements Management Tools
  • 31. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 31 Traceability Difficulties •Various stakeholders require different information •Huge amount of requirements traceability information must be tracked and maintained •Manual creation of links is very demanding • Likely the most annoying problem •Specialized tools must be used •Integrating heterogeneous models/information from/to different sources (requirements, design, tests, code, documentation, rationales…) is not trivial •Requires organizational commitment (with an understanding of the potential benefits) Introduction Traceability Baselines Change Management Requirements Management Tools
  • 32. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 32 Backward and Forward Traceability (1) •Backward traceability • To previous stages of development • Depends upon each element explicitly referencing its source in earlier documents •Forward traceability • To all documents spawned by a document • Depends upon each element in the document having a unique name or reference number Business plan Design Specification Requirements Document Forward-to traceability Forward-fromtraceability Backward-from traceability Backward-to traceability Source of figure: Kotonya and Sommerville Introduction Traceability Baselines Change Management Requirements Management Tools
  • 33. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 33 Backward and Forward Traceability (2) •Top to bottom from requirements’ point of view • Forward-to traceability • Links other documents (which may have preceded the requirements document) to relevant requirements • Help validation • Help evaluate which requirements are affected by changes to users’ needs • Forward-from traceability • Links requirements to the design and implementation components • Help assure that all requirements have been satisfied Introduction Traceability Baselines Change Management Requirements Management Tools
  • 34. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 34 Backward and Forward Traceability (3) •Bottom to top from requirements’ point of view • Backward-to traceability • Links design and implementation components back to requirements • Help determine why each item is designed/implemented • Backward-from traceability • Links requirements to their sources in other documents or people • Help validation • Help evaluate how changes to requirements impact stakeholders needs Introduction Traceability Baselines Change Management Requirements Management Tools
  • 35. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 35 Types of Traceability (1) •Requirements – source traceability • Links requirements with a person or document •Requirements – rationale traceability •Requirements – requirements traceability • Links requirements with other requirements which are, in some way, dependent on them •Requirements – architecture traceability • Links requirements with the subsystems where these requirements are implemented (particularly important where subsystems are being developed by different subcontractors) •Requirements – design traceability • Links requirements with specific hardware or software components in the system which are used to implement the requirement Introduction Traceability Baselines Change Management Requirements Management Tools
  • 36. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 36 Types of Traceability (2) •Requirements – interface traceability • Links requirements with the interfaces of external systems which are used in the provision of the requirements •Requirements – feature traceability •Requirements – tests traceability • Links requirements with test cases verifying them (used to verify that the requirement is implemented) •Requirements – code traceability • Generally not directly established, but can be inferred Introduction Traceability Baselines Change Management Requirements Management Tools
  • 37. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 37 Representation – Traceability Table •Show the relationships between requirements or between requirements and other artifacts •Table can be set up to show links between several different elements •Backward and forward traceability •Difficult to capture different types of links Introduction Traceability Baselines Change Management Requirements Management Tools
  • 38. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 38 Representation – Traceability Matrix •Define links between pairs of elements • E.g., requirements to requirement, use case to requirement, requirement to test case… •Can be used to defined relationships between pairs • E.g., specifies/is specified by, depends on, is parent of, constrains… •More amenable to automation than traceability table Depends-on R1 R2 R3 R4 R5 R6 R1 * * R2 * * R3 * * R4 * R5 * R6 Introduction Traceability Baselines Change Management Requirements Management Tools
  • 39. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 39 Representation – Traceability List •Traceability matrices become more of a problem when there are hundreds or thousands of requirements as the matrices become large and are sparsely populated •A simplified form of a traceability matrix may be used where, along with each requirement description, one or more lists of the identifiers of related requirements are maintained Requirement Depends-on R1 R3, R4 R2 R5, R6 R3 R4, R5 R4 R2 R5 R6 Introduction Traceability Baselines Change Management Requirements Management Tools
  • 40. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 40 Example – DOORS Links •A relationship between two objects in the DOORS database is established using a link • One source object and one destination object •Links can be followed in either direction •Possible to have many links between the same two objects • Links also have types and attributes! Introduction Traceability Baselines Change Management Requirements Management Tools
  • 41. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 41 DOORS – Creating and Accessing Links Introduction Traceability Baselines Change Management Requirements Management Tools
  • 42. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 42 DOORS – Exploring Traceability Links Introduction Traceability Baselines Change Management Requirements Management Tools
  • 43. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 43 DOORS – Link Matrix View Introduction Traceability Baselines Change Management Requirements Management Tools
  • 44. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 44 DOORS – Hierarchical Link View Introduction Traceability Baselines Change Management Requirements Management Tools
  • 45. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 45 DOORS – Filtering View (Query on Attributes) Introduction Traceability Baselines Change Management Requirements Management Tools
  • 46. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 46 DOORS – Types of Analysis •Impact Analysis • Analyze out-links (which objects in other modules are affected when this module is changed) •Traceability Analysis • Analyze in-links (changes in these objects will affect this module) •May involve multiple levels of objects/documents Introduction Traceability Baselines Change Management Requirements Management Tools
  • 47. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 47 DOORS – Multi-Module Traceability 1. 820.30(b) Design and Development Planning Each manufacturer shall establish and maintain plans that describe or reference the design and development activities and define responsibility for implementation. The plans shall identify and describe the interfaces with different groups or activities that provide, or result in, input to the design and development process. The plans shall be reviewed as design and development evolves. The plans shall be updated as design and development evolves. The plans shall be approved as design and development evolves. 2. 820.30(c) Design Input 2.1. Each manufacturer shall establish procedures to ensure that the design requirements relating to a device are appropriate and address the intended use of the device, including the needs of the user and patient. 2.2. Each manufacturer shall maintain procedures to ensure that the design requirements relating to a device are appropriate and address the intended use of the device, including the needs of the user and patient. 2.3. The procedures shall include a mechanism for addressing incomplete requirements. 2.4. The procedures shall include a mechanism for addressing ambiguous requirements. 2.5. The procedures shall include a mechanism for addressing conflicting requirements. 2.6. The design input requirements shall be documented by a designated individual(s). 2.7. The design input requirements shall be reviewed by a designated individual(s). 2.8. The design input requirements shall be approved by a designated individual(s). 2.9. The approval, including the date and signature of the individual(s) approving the requirements, shall be documented. 2.10.Questions. 2.10.1. Summarize the manufacturer's written procedure(s) for identification and control of design input. 2.10.2. From what sources are design inputs sought? 2.10.3. Do design input procedures cover the relevant aspects, such as: (Mark all that apply and list additional aspects.) 2.10.3.1. intended use 2.10.3.2. user/patient/clinical 2.10.3.3. performance characteristics 2.10.3.4. safety 2.10.3.5. limits and tolerances 2.10.3.6. risk analysis 2.10.3.7. toxicity and biocompatibility 2.10.3.8. electromagnetic compatibility (EMC) 2.10.3.9. compatibility with accessories/auxiliary devices 2.10.3.10. compatibility with the environment of intended use 2.10.3.11. human factors 2.10.3.12. physical/chemical characteristics 2.10.3.13. labeling/packaging 2.10.3.14. reliability 2.10.3.15. statutory and regulatory requirements 2.10.3.16. voluntary standards 2.10.3.17. manufacturing processes 2.10.3.18. sterility 2.10.3.19. MDRs/complaints/failures and other historical data 2.10.3.20. design history files (DHFs) 2.10.4. For the specific design covered, how were the design input requirements identified? 2.10.5. For the specific design covered, how were the design input requirements reviewed for adequacy? Comply with FDA Design Control Guidance GMP Regulation 1. Capture design and related information 1.1. Input electronically formatted data 1.2. Reference external information sources 1.3. Reference external documentation 2. Store design and related information 2.1. Identify and tag design information as unique “design elements” 2.2. Organize design elements 2.2.1. Organize by Design Control Guidance Element 2.2.2. Organize by inter-relationships 2.3. Ensure all design elements are available 2.3.1. Store design elements by Design Control Guidance Element 2.3.2. Store design elements and their historical values 3. Manage all user needs 3.1. Identify the source of the user need 3.2. Identify all user types (groups) 3.3. Identify the customer (s) 3.4. Profile the expected patients 3.5. State the intended use of the product (family) 3.6. Capture the acceptance criteria for each user need 4. Manage design input requirements 4.1. Identify the source of the requirement 4.2. Identify the associated user need 4.3. Capture requirement description and attributes 4.4. Capture acceptance criteria 4.5. Assign responsibility for each requirement 4.6. Manage incomplete requirements 4.7. Manage ambiguous requirements 4.8. Manage conflicting requirements 4.9. Approve all requirements 5. Manage acceptance 5.1. Ensure the acceptance of every user need 5.2. Ensure the acceptance of every design input requirement 5.3. Document the results of every user need acceptance test 5.4. Document the results of every design input requirements test 5.5. Make acceptance results available 6. Manage change 6.1. Maintain history of design element changes 6.1.1. Make complete change history available 6.1.2. Maintain history within and across any organizational procedure 6.1.3. Maintain history within and across any project milestone 6.1.4. Maintain history within and across any Design Control Guidance Elements 6.2. Capture frequency and nature of element changes 6.2.1. Provide rationale for change 6.2.2. Describe decisions made 6.2.3. Identify approval authority for the change 6.2.4. Capture date, time, and signature of approving authority 6.3. Identify impacted elements due to a change in another element 6.3.1. Create backward traces to design elements within and across any organizational procedure 6.3.2. Create backward traces to design elements within and across any project milestone 1.1. Identify impacted elements due to a change in another element  Traceability Reports: consistency with driving design elements  Impact Reports: other design elements affected  Links to impacted design elements 1.1.1.Create backward traces to design elements within and across any organizational procedure  Traceability Reports: Procedure Attribute 1.1.2.Create backward traces to design elements within and across any project milestone  Traceability Reports: Milestone Attribute 1.1.3.Create backward traces to design elements within and across Design Control Guidance Elements  Traceability Reports: Linked design elements 1.1.4.Create forward impacts to design elements within and across any organizational procedure  Impact Reports: Procedure Attribute 1.1.5.Create forward impacts to design elements within and across any project milestone  Impact Reports: Milestone Attribute 1.1.6.Create forward impacts to design elements within and across Design Control Guidance Elements  Impact Reports: Linked design elements 1.2. Associate changed design elements with related elements  Link Change Design Object with affected design element(s)  Traceability Links and Reports from affected design element(s)  Impact Links and Reports from affected design element(s) 1.2.1.Associate design element changes with decisions, rationale, and approval authority information  Change Decision Objects with following Attributes:  Disposition Attribute  Decision Attribute  Rationale Attribute  Owner Attribute  Management Approval Attribute 1.2.2.Provide associations within and across any organizational procedure  Change Design Object Traceability Link on Procedure Attribute  Change Design Object Impacts Link on Procedure Attribute 1.2.3.Provide associations within and across any project milestone  Change Design Object Traceability Link on Milestone Attribute  Change Design Object Impacts Link on Milestone Attribute 1.2.4.Provide associations within and across Design Control Guidance Elements  Change Design Object Traceability Link to traced design elements  Change Design Object Impacts Link to linked design elements 1.3. Mange the change process  Design Change Module  Design Change Reports  Object History  Object History Reports  Versions  Baselines 1. 820.30(b) Design and Development Planning Each manufacturer shall establish and maintain plans that describe or reference the design and development activities and define responsibility for implementation. The plans shall identify and describe the interfaces with different groups or activities that provide, or result in, input to the design and development process. The plans shall be reviewed as design and development evolves. The plans shall be updated as design and development evolves. The plans shall be approved as design and development evolves. 2. 820.30(c) Design Input 2.1. Each manufacturer shall establish procedures to ensure that the design requirements relating to a device are appropriate and address the intended use of the device, including the needs of the user and patient. 2.2. Each manufacturer shall maintain procedures to ensure that the design requirements relating to a device are appropriate and address the intended use of the device, including the needs of the user and patient. 2.3. The procedures shall include a mechanism for addressing incomplete requirements. 2.4. The procedures shall include a mechanism for addressing ambiguous requirements. 2.5. The procedures shall include a mechanism for addressing conflicting requirements. 2.6. The design input requirements shall be documented by a designated individual(s). 2.7. The design input requirements shall be reviewed by a designated individual(s). 2.8. The design input requirements shall be approved by a designated individual(s). 2.9. The approval, including the date and signature of the individual(s) approving the requirements, shall be documented. 2.10.Questions. 2.10.1. Summarize the manufacturer's written procedure(s) for identification and control of design input. 2.10.2. From what sources are design inputs sought? 2.10.3. Do design input procedures cover the relevant aspects, such as: (Mark all that apply and list additional aspects.) 2.10.3.1. intended use 2.10.3.2. user/patient/clinical 2.10.3.3. performance characteristics 2.10.3.4. safety 2.10.3.5. limits and tolerances 2.10.3.6. risk analysis 2.10.3.7. toxicity and biocompatibility 2.10.3.8. electromagnetic compatibility (EMC) 2.10.3.9. compatibility with accessories/auxiliary devices 2.10.3.10. compatibility with the environment of intended use 2.10.3.11. human factors 2.10.3.12. physical/chemical characteristics 2.10.3.13. labeling/packaging 2.10.3.14. reliability 2.10.3.15. statutory and regulatory requirements 2.10.3.16. voluntary standards 2.10.3.17. manufacturing processes 2.10.3.18. sterility 2.10.3.19. MDRs/complaints/failures and other historical data 2.10.3.20. design history files (DHFs) 2.10.4. For the specific design covered, how were the design input requirements identified? 2.10.5. For the specific design covered, how were the design input requirements reviewed for adequacy? Comply with FDA Design Control Guidance GMP Regulation 1. Capture design and related information 1.1. Input electronically formatted data 1.2. Reference external information sources 1.3. Reference external documentation 2. Store design and related information 2.1. Identify and tag design information as unique “design elements” 2.2. Organize design elements 2.2.1. Organize by Design Control Guidance Element 2.2.2. Organize by inter-relationships 2.3. Ensure all design elements are available 2.3.1. Store design elements by Design Control Guidance Element 2.3.2. Store design elements and their historical values 3. Manage all user needs 3.1. Identify the source of the user need 3.2. Identify all user types (groups) 3.3. Identify the customer (s) 3.4. Profile the expected patients 3.5. State the intended use of the product (family) 3.6. Capture the acceptance criteria for each user need 4. Manage design input requirements 4.1. Identify the source of the requirement 4.2. Identify the associated user need 4.3. Capture requirement description and attributes 4.4. Capture acceptance criteria 4.5. Assign responsibility for each requirement 4.6. Manage incomplete requirements 4.7. Manage ambiguous requirements 4.8. Manage conflicting requirements 4.9. Approve all requirements 5. Manage acceptance 5.1. Ensure the acceptance of every user need 5.2. Ensure the acceptance of every design input requirement 5.3. Document the results of every user need acceptance test 5.4. Document the results of every design input requirements test 5.5. Make acceptance results available 6. Manage change 6.1. Maintain history of design element changes 6.1.1. Make complete change history available 6.1.2. Maintain history within and across any organizational procedure 6.1.3. Maintain history within and across any project milestone 6.1.4. Maintain history within and across any Design Control Guidance Elements 6.2. Capture frequency and nature of element changes 6.2.1. Provide rationale for change 6.2.2. Describe decisions made 6.2.3. Identify approval authority for the change 6.2.4. Capture date, time, and signature of approving authority 6.3. Identify impacted elements due to a change in another element 6.3.1. Create backward traces to design elements within and across any organizational procedure 6.3.2. Create backward traces to design elements within and across any project milestone 1.1. Identify impacted elements due to a change in another element  Traceability Reports: consistency with driving design elements  Impact Reports: other design elements affected  Links to impacted design elements 1.1.1.Create backward traces to design elements within and across any organizational procedure  Traceability Reports: Procedure Attribute 1.1.2.Create backward traces to design elements within and across any project milestone  Traceability Reports: Milestone Attribute 1.1.3.Create backward traces to design elements within and across Design Control Guidance Elements  Traceability Reports: Linked design elements 1.1.4.Create forward impacts to design elements within and across any organizational procedure  Impact Reports: Procedure Attribute 1.1.5.Create forward impacts to design elements within and across any project milestone  Impact Reports: Milestone Attribute 1.1.6.Create forward impacts to design elements within and across Design Control Guidance Elements  Impact Reports: Linked design elements 1.2. Associate changed design elements with related elements  Link Change Design Object with affected design element(s)  Traceability Links and Reports from affected design element(s)  Impact Links and Reports from affected design element(s) 1.2.1.Associate design element changes with decisions, rationale, and approval authority information  Change Decision Objects with following Attributes:  Disposition Attribute  Decision Attribute  Rationale Attribute  Owner Attribute  Management Approval Attribute 1.2.2.Provide associations within and across any organizational procedure  Change Design Object Traceability Link on Procedure Attribute  Change Design Object Impacts Link on Procedure Attribute 1.2.3.Provide associations within and across any project milestone  Change Design Object Traceability Link on Milestone Attribute  Change Design Object Impacts Link on Milestone Attribute 1.2.4.Provide associations within and across Design Control Guidance Elements  Change Design Object Traceability Link to traced design elements  Change Design Object Impacts Link to linked design elements 1.3. Mange the change process  Design Change Module  Design Change Reports  Object History  Object History Reports  Versions  Baselines User Reqts Technical Reqts Test Cases Design Introduction Traceability Baselines Change Management Requirements Management Tools
  • 48. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 48 SYNERGY/Change: Work Orders SYNERGY/CM: Engineering Tasks ActiveCM: Controlled Code Modules DOORS: Requirements Management & Traceability TAU/Architect & TAU/Developer: System Modeling & Code Generation DOORS – Traceability and Software Artefacts Introduction Traceability Baselines Change Management Requirements Management Tools
  • 49. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 49 DOORS – Analysis with Wizard Orphans indicate missing links Introduction Traceability Baselines Change Management Requirements Management Tools
  • 50. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 50 What are Suspect Links? •Proactively know when changes effect your requirements •Suspect link indicates that element may have been affected by a change •Help ensure ripple effects of changes are considered … a change by this user here… … shows up as a warning flag to this user here. If documents are linked … Introduction Traceability Baselines Change Management Requirements Management Tools
  • 51. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 51 Suspect Links •Visible as indicators or with change notes (added/deleted) Introduction Traceability Baselines Change Management Requirements Management Tools
  • 52. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 52 Traceability Planning •Planning traceability? Yes, just like any other project! • Who are the stakeholders? • What are the needs (analysis, reports…)? • Useful, measurable, feasible objectives • Definition of links and attributes • Can some be inferred automatically? • Process (who collects and when to collect traceability information) • Roles, access • Data/link input and updates • Exceptional situations (e.g., lack of time) • Representations, queries, tools • … • Traceability policies define what and how traceability information should be maintained Introduction Traceability Baselines Change Management Requirements Management Tools
  • 53. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 53 Factors to Consider during Planning (1) •Number of requirements • The greater the number of requirements, the more the need for formal traceability policies •Expected system lifetime • More comprehensive traceability policies should be defined for systems which have a long lifetime •Maturity level of organization • Detailed traceability policies are more likely to be implemented and used properly in a cost-effective way in organizations which have a higher level of process maturity •Size of project and team • The larger the project or team, the greater the need for formal traceability policies Introduction Traceability Baselines Change Management Requirements Management Tools
  • 54. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 54 Factors to Consider during Planning (2) •Type of system • Critical systems such as hard real-time control systems or safety- critical systems need more comprehensive traceability policies than non-critical systems •Additional constraints from customer • E.g., compliance to military standard •Traceability links should be defined by whoever has the appropriate information available Introduction Traceability Baselines Change Management Requirements Management Tools
  • 55. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 55 Modeling Traceability •The types of links to use (and their attributes) must be defined for different types of requirements • It is a design problem! •May be modeled with a UML class diagram (metamodel) • Object types (classes) • Object attributes (attributes) • Structure of folders, modules, objects • Stereotypes, composition… • Link types (associations) • Satisfies, tests, refines, contains, contributes to, threatens, justifies… • Link attributes (association classes) • … Introduction Traceability Baselines Change Management Requirements Management Tools
  • 56. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 56 Example – UCM Models Imported in DOORS •Associations describe internal links Scenarios <<Module>> Responsibilities <<Module>> UCMDesignName.ucm <<Folder>> Components <<Module>> Devices <<Module>> Device <<Object>> 0..* 0..* Condition <<Object>> DoElement <<Object>> Responsibility <<Object>> 0..* 0..* 0..* 0..* +requests 0..* 0..* Par <<Object>> Seq <<Object>> 0..1 0..* +parentID 0..1 0..* 0..1 0..* +parentID 0..1 0..* 0..* +parentID 0..* 0..* +parentID 0..* ScenarioGroup <<Object>> 0..* 0..* Scenario <<Object>> 0..1 0..1 +parentID 0..1 0..1 0..1 0..1 +parentID 0..1 0..1 0..* 0..* Maps <<Module>> Stub <<Object>> Map <<Object>> 0..* 0..* 0..* 0..* 0..* 0..* +refines 0..* 0..* Component <<Object>> 0..* 0..* 0..1 0..* +hosts 0..1 0..* ResponsibilityReference <<Object>> 0..* +references 0..* 0..* 0..* Resp <<Object>> 0..* +traced by 0..* ComponentReference <<Object>> 0..1 0..* +bound to 0..1 0..* 0..1 0..* +bound to 0..1 0..* 0..* 0..* 0..* +references 0..* 0..* +traced by 0..* Introduction Traceability Baselines Change Management Requirements Management Tools
  • 57. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 57 User Requirements (Use Cases) System Requirements Software Requirements (Subsystem) UCMs (User Level) UCMs (System Level) Satisfies Satisfies Satisfies Satisfies Example – UCM External Links in DOORS Acceptance Tests Functional Tests Tests Tests Tests Tests … Satisfies Satisfies external UCM links conventional links Introduction Traceability Baselines Change Management Requirements Management Tools
  • 58. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 58 User Level Example – Automatic Link Generation (1) •Important to minimize the manual effort for link creation •From system requirements to user-level UCMs to user reqs. References References Traced By Refines UCMs (Resp.) UCMs (Comp.) UCMs (Scenarios) Scenario. Resp User Requirements (Use Cases) System Requirements UCMs (Maps) Bound To Bound To Refines Map * Map.Stub * Map.Resp * Map.Comp manual & generated links generated links manual links Introduction Traceability Baselines Change Management Requirements Management Tools
  • 59. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 59 Example – Automatic Link Generation (2) •From tests to system-level UCMs to system requirements manual & generated links System Requirements System Level References References Traced By Refines UCMs (Resp.) UCMs (Comp.) UCMs (Scenarios) Scenario. Resp Functional Tests UCMs (Maps) Bound To Bound To Refines Map * Map.Stub * Map.Resp * Map.Comp generated links (incomplete) generated links manual links Introduction Traceability Baselines Change Management Requirements Management Tools
  • 60. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 60 Types of Traceability Links •Note the types of links in the previous examples, as well as the types of objects they relate • Satisfies, Tests • Refines, References, Contains... •Others could be created • Contributes, Contradicts, Justifies, Depends on... Introduction Traceability Baselines Change Management Requirements Management Tools
  • 61. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 61 Other Example of Traceability Links Business requirement System requirements, use case, external interface, quality attribute Software functional requirement Architectrue, user interface, or functional design System test Project plan task Integration test Code Unit test Change request Business rule modifies modifies modifies modifies Drives specification of influences Is origin of Is origin of Depends on another Is satisfied by Is verified by Lead to creation of Is verified by Is implemented in Is verified by Introduction Traceability Baselines Change Management Requirements Management Tools
  • 62. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 62 Cardinality of Traceability Links •Depending on the traceability information, the cardinality of traceability links may be • One-to-one • E.g., one design element to one code module • One-to-many • E.g., one functional requirement verified by multiple test cases • Many-to-many • E.g., a use case may lead to multiple functional requirement, and a functional requirement may be common to several use cases Introduction Traceability Baselines Change Management Requirements Management Tools
  • 63. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 63 Advice for DOORS Links •Direction of links • From the most concrete to the most abstract • To avoid access rights issues • To make use of the integrated analysis routines of DOORS •Link Modules • One module per type of link • NEVER use default module (should not even be offered) • To avoid maintenance problems • Specific types facilitate analysis and filtering Introduction Traceability Baselines Change Management Requirements Management Tools
  • 65. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 65 Baseline •Non-modifiable (read-only) version of a document • Describes a moment in time • May include multiple documents at the same time •Enables document comparison and management •Comes with a change history for the document • Information on objects, attributes, and links created, deleted, or edited since the creation of the baseline • Often also contains information on user sessions (when the document was opened, by whom…) •Requires access control •It is advisable to establish a baseline for a new document that is imported into the document management system • In order not to lose any changes Introduction Traceability Baselines Change Management Requirements Management Tools
  • 66. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 66 Baseline for Requirements •Represents the set of functional and non-functional requirements that the development team has committed to implement in a specific release •Before going into the baseline, the requirements should be reviewed and approved by stakeholders •Once in the baseline, all changes should follow a defined change control process Baseline  Shared understanding  Configuration management  Change management  Different viewpoints  No formal documents  Always changing Introduction Traceability Baselines Change Management Requirements Management Tools
  • 67. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 67 Baseline Usage •Baselines may be • Created • Complete image of requirements state at a given time • Deleted • Visualized • Possibility to go back • Compared • To see changes since a certain time • Copied • Signed • For authorization, contract Introduction Traceability Baselines Change Management Requirements Management Tools
  • 68. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 68 DOORS – Baseline Compare Introduction Traceability Baselines Change Management Requirements Management Tools
  • 69. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 69 DOORS – Module Compare •Change analysis between versions Introduction Traceability Baselines Change Management Requirements Management Tools
  • 71. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 71 Introduction Traceability Baselines Change Management Requirements Management Tools Change Management (1) •The more things change… •If you see change not as an enemy, but as a welcome friend, you will secure the most valuable prize of all – the future…
  • 72. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 72 Change Management (2) •Concerned with the procedures, processes, and standards which are used to manage changes to a system requirements •Change management policies may cover • The change request process and the information required to process each change request • The process used to analyse the impact and costs of change and the associated traceability information • The membership of the body that formally considers change requests • Software support (if any) for the change control process •A change request may have a status as well as requirements • E.g., proposed, rejected, accepted, included... Introduction Traceability Baselines Change Management Requirements Management Tools
  • 73. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 73 Change Management Process •Some requirements problem is identified • Could come from an analysis of the requirements, new customer needs, or operational problems with the system • The requirements are analysed using problem information and requirements changes are proposed •The proposed changes are analysed • How many requirements (and, if necessary, system components) are affected? Roughly how much would cost, in both time and money? •The change is implemented • A set of amendments to the requirements document or a new document version is produced (of course this should be validated with whatever normal quality checking procedures are in place) Change implementation Change analysis and costing Problem analysis and change specification Identified problem Revised requirements Introduction Traceability Baselines Change Management Requirements Management Tools
  • 74. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 74 Change Request Form •Proposed changes are usually recorded on a change request form which is then passed to all of the people involved in the analysis of the change •Change request forms may include • Date, Customer, Requester, Product including version • Description of change request including rationale • Fields to document the change analysis • Signature fields • Status • Comments Introduction Traceability Baselines Change Management Requirements Management Tools
  • 75. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 75 Check request validity Find directly affected requirements Find dependent requirements Propose requirements changes Assess costs of change Assess cost acceptability Accepted change Change request Rejected request Valid request Req. list Requirements change list Requirements changes Customer information Cost information Rejected request Rejected request Customer information Rejected request Change Analysis and Costing – Example Introduction Traceability Baselines Change Management Requirements Management Tools Source of figure: Kotonya and Sommerville customers may misunderstand requirements and their context and suggest unnecessary changes with the help of traceability information negotiations with customers consequential changes may be unacceptable to user/customer cost/time required for the implementation of change is too high/long risk is too high
  • 76. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 76 Different Management Aspects •Change Management • How does a customer submit change requests? • How is this request being monitored, prioritized, and implemented? •Configuration Management • Versioning, labelling, and tracking code and other components during the development cycle of software •Release Management • Defines how and when different hardware and software will be made available together as a product Introduction Traceability Baselines Change Management Requirements Management Tools
  • 77. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 77 •May be provided through requirements management tools or through configuration management tools • Tool facilities may include • Electronic change request forms which are filled in by different participants in the process • A database to store and manage requests • A change model which may be instantiated so that people responsible for one stage of the process know who is responsible for the next process activity • Electronic transfer of forms between people with different responsibilities and electronic mail notification when activities have been completed • Electronic signatures • Discussion forums • In some cases, direct links to a requirements database Tool Support for Change Management Introduction Traceability Baselines Change Management Requirements Management Tools
  • 78. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 78 Example – DOORS Change Proposal System (1) •The Change Proposal System (CPS) allows people to access DOORS modules and to propose changes (without immediately changing the modules) •This allows for feedback and the application of changes in a controlled manner •An administrator controls the visibility of data as well as who is allowed to propose change requests •DOORS can also be integrated with SYNERGY • Version/change management system Introduction Traceability Baselines Change Management Requirements Management Tools
  • 79. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 79 •Manage change; no surprises Changes from all users including DOORSnet Read-only user submits “Change Proposal” Changes reviewed on-line E-mail Example – DOORS Change Proposal System (2) Introduction Traceability Baselines Change Management Requirements Management Tools
  • 80. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 80 Change Management with DOORS/SYNERGY (1) •Standard DOORS module Introduction Traceability Baselines Change Management Requirements Management Tools
  • 81. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 81 •Select a SYNERGY change request Change Management with DOORS/SYNERGY (2) Introduction Traceability Baselines Change Management Requirements Management Tools
  • 82. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 82 Change Management with DOORS/SYNERGY (3) •Perform appropriate changes Introduction Traceability Baselines Change Management Requirements Management Tools
  • 83. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 83 Change Management with DOORS/SYNERGY (4) •Changes managed by SYNERGY/Change Introduction Traceability Baselines Change Management Requirements Management Tools
  • 84. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 84 Change Management with DOORS/SYNERGY (5) •Once approved, the change request can be applied to DOORS Introduction Traceability Baselines Change Management Requirements Management Tools
  • 86. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 86 What Kind of Tool Do We Need? •Different companies will use different tools, which may or may not be tailored to the requirements management task • Word processor (Microsoft Word with templates…) • Spreadsheet (Microsoft Excel…) • Industrial-strength, commercial RM tools • IBM/Telelogic DOORS, IBM Requisite Pro, Borland CaliberRM… • Internal tools • GenSpec (Hydro-Quebec)… • Open source RM tools • OSRMT: http://sourceforge.net/projects/osrmt • Bug tracking tools (free or not) • Bugzilla… • Collaboration tools (free or not) • TWiki… Introduction Traceability Baselines Change Management Requirements Management Tools
  • 87. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 87 What Should We Look For in a Tool? •Types/attributes for requirements and links •Specifications and models •Version and change management •Database repository •Traceability •Analysis (impact, completeness, style, differences…) •Automatic inspection of requirements (according to rules) •Visualization and reports •Requirements document generation •Monitoring of requirements statuses •Access control •Import/export •Communication with stakeholders •Scripting language (for automation) •Reuse of requirements, models, projects •… Introduction Traceability Baselines Change Management Requirements Management Tools
  • 88. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 88 RM Tool Architecture – Example Introduction Traceability Baselines Change Management Requirements Management Tools
  • 89. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 89 Requirements Management Implies Integration! Project-tracking tool Requirements management tool Project estimation tool Version control tool Design modeling tool Test management tool Change- request tool Introduction Traceability Baselines Change Management Requirements Management Tools
  • 90. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 90 Approaches – Document or Database? (1) •Requirements have to be stored in such a way that they can be accessed easily and related to other requirements •Document (e.g., Word) • Easy to use, easy to access, simple training • Requirements are all stored in the requirements document • It is easy to produce the final requirements document • But: Traceability? Status reports? Granularity of requirements? Search and navigation facilities? Change management? Version control? Analysis? Simultaneous access control?... Introduction Traceability Baselines Change Management Requirements Management Tools
  • 91. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 91 Approaches – Document or Database? (2) •Database (e.g., DOORS) • Good for management, controlled access, links, analysis, reports • Good query and navigation facilities • Support for change and version management • But: hard (and costly) to configure, manage, and use; link between the database and the requirements document must be maintained (final requirements document must be generated) •Ideally: Target the benefits of both • E.g., DOORS and RequisitePro offer integrations with Word (import/export) as well as document-oriented views (for the “look and feel”…) Introduction Traceability Baselines Change Management Requirements Management Tools
  • 92. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 92 How About Evolving the Process Itself? •Evolution of requirements types • Adding / modifying / deleting • Attributes • Link types • Requirements status • … •Evolution of change management • Adding / modifying / deleting • Attributes • Lifecycle status • Forms • … Introduction Traceability Baselines Change Management Requirements Management Tools
  • 93. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 93 Thinking About Getting a RM Tool? •The list of potential criteria and the list of products can be rather long… • See the INCOSE study: http://www.incose.org/ProductsPubs/Products/rmsurvey.aspx • About 25 tools and 80 criteria, with explanations •Which are relevant to you, in your context (project, organization…)? • Need a goal model to define criteria and for assessment! Introduction Traceability Baselines Change Management Requirements Management Tools
  • 94. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 94 DOORS – Database View Deleted Folder Link modules Folders Projects Formal Modules Introduction Traceability Baselines Change Management Requirements Management Tools
  • 95. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 95 Column Heading Current Object Object Identifier “No change since baseline” change-bar (green / blue) “Changed this session” change-bar, unsaved (red) Object or Section Number “Changed since baseline” change-bar, saved (yellow) Object Heading Object Text Use in Graphical view Use as DataTip Link Indicator DOORS – Displayed Information Introduction Traceability Baselines Change Management Requirements Management Tools
  • 96. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 96 DOORS – Multi-User Editing •Make required edits, and unlock to allow others access Mode Introduction Traceability Baselines Change Management Requirements Management Tools
  • 97. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 97 DOORS – Integration with UML 2.0 • Linkable UML 2.0 diagrams and element objects, via the Analyst plug-in (Tau G2 UML 2.0 editor) Introduction Traceability Baselines Change Management Requirements Management Tools
  • 98. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 98 DOORS – Integration with URN • Linkable URN diagrams and element objects, via the DXL export plug-in for jUCMNav Introduction Traceability Baselines Change Management Requirements Management Tools
  • 99. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 99 TWiki Overview •A generic Wiki tool (TWiki.org) • Promotes collaboration • Database-driven • Access and version control • Forms and queries • State-based workflows (processes) • Text and graphics • Lightweight, extensible (plug-in architecture) •Example of Forms and Queries • Requirements: http://cserg0.site.uottawa.ca/twiki/bin/view/ProjetSEG/UCMNavRequirements • Library: http://cserg0.site.uottawa.ca/twiki/bin/view/UCM/UCMVirtualLibrary • Use Cases: http://cserg0.site.uottawa.ca/seg/bin/view/CSI4900/UseCases Introduction Traceability Baselines Change Management Requirements Management Tools
  • 100. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 100 TWiki for Requirements Management Introduction Traceability Baselines Change Management Requirements Management Tools
  • 101. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 101 Twiki – Requirement Example Introduction Traceability Baselines Change Management Requirements Management Tools
  • 102. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 102 TWiki – Requirement Form Example Introduction Traceability Baselines Change Management Requirements Management Tools
  • 103. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 103 Using TWiki… •We have: • Requirement types description with configurable statuses & attributes • Bidirectional links (WikiWords) • Configurable requests, filtering, reports • Access control and version management (showing differences) • Change management (again with forms, process, etc.) • Discussions, attachment of documents/images • Export (HTML) • Scripting language (Perl) •But do we really have: • Graphical view of traceability? • Editable tables (à la Excel/Word)? • Baselines? Tool integration? Imports? Analysis? Introduction Traceability Baselines Change Management Requirements Management Tools
  • 104. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 104 Keep your team on track 3 interfaces - work the way you want Document centric or database centric - your choice Microsoft Word Database IBM Requisite Pro Web Introduction Traceability Baselines Change Management Requirements Management Tools
  • 105. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 105  User defined requirement types  User defined attributes  User defined filters (views)  Saved views IBM Requisite Pro – Types, Attributes, and Views Introduction Traceability Baselines Change Management Requirements Management Tools
  • 106. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 106 IBM Requisite Pro – Traceability Introduction Traceability Baselines Change Management Requirements Management Tools
  • 107. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 107 IBM Requisite Pro – Change Management Introduction Traceability Baselines Change Management Requirements Management Tools
  • 108. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 108  IBM Rational TestManager  Testers view current state of requirements from their tool  IBM Rational XDE and IBM Rational Rose, Rational Software Architect and Rational Software Modeler  Developers view current state of requirements from their tool IBM Requisite Pro – Integration Introduction Traceability Baselines Change Management Requirements Management Tools
  • 109. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 109 Genspec Introduction Traceability Baselines Change Management Requirements Management Tools
  • 110. SEG3101 (Fall 2009). Requirements Management. © 2009 Gunter Mussbacher 110 Genspec – Automated Inspection of Specification Introduction Traceability Baselines Change Management Requirements Management Tools

Editor's Notes

  1. Shouldn’t do work unless there is a requirement to do it Generate traceability from requirements to design and code! Scenario: Requirements captured and validated Requirements flowed down to analysis and design via TAU/DOORS integration Systems Engineers define architecture in TAU Software engineers
  2. Shouldn’t do work unless there is a requirement to do it Generate traceability from requirements to design and code! Scenario: Requirements captured and validated Requirements flowed down to analysis and design via TAU/DOORS integration Systems Engineers define architecture in TAU Software engineers
  3. With systems becoming more complex and development teams becoming more dispersed, manual communication processes break down. How does an analysis team in the US know that the customer in the UK just changed the user requirements? How does a development team in India know that the system specification just changed in the US? The answer is suspect information or “suspect links”
  4. IBM's solution for managing requirements is IBM Rational RequisitePro. Most organization use either a document centric or a database centric approach to managing requirements. And many tools force you to choose one or the other. With RequisitePro you can work either way. With it's three interfaces it let you work the way you want. Many people like the Word interfaces because there’s little or no learning curve to start using RequisitePro. Other's prefer the more structured views available in the database interface. And others like the web interface because of it's easy accessibility.