req eng mgmt

Shared by: aG52zz
Categories
Tags
-
Stats
views:
2
posted:
7/3/2012
language:
pages:
100
Document Sample
scope of work template
							Software Requirements, 2nd Edition:
by Karl E. Wiegers
Chp 18: Requirements Management Principles and Practices
Chp 19: Change Happens
Chp 20: Links in the Requirements Chain
Chp 22: Improving Your Requirements
Chp 23: Software Requirements and Risk

  Gregory (Greg) Maltby, PMP, BSCS
  April 13, 2010

  EECS 812


                                1
Software Requirements:

Chp 18: Requirements Management
Principles and Practices




                   2
Requirements Development
• Requirements development involves eliciting, analyzing,
  specifying, and validating a software project's requirements.

• Typical requirements development deliverables, for a
  software project, include:
   –   a vision and scope document
   –   use-case documents
   –   a software requirements specification
   –   a data dictionary
   –   associated analysis models

• Once reviewed and approved, these artifacts define the
  requirements baseline.

                                         3
Requirements Management

• The requirements agreement is the bridge
  between requirements development and
  requirements management.

• Requirements management includes all
  activities that maintain the integrity, accuracy,
  and currency of the requirements agreement
  as the project progresses.


                           4
Requirements Management Activities




                    5
Requirements Management Activities
• Change Control
  – Proposing changes
  – Analyzing impact
  – Making decisions
  – Updating requirements documents
  – Updating plans
  – Measuring requirements volatility



                           6
Requirements Management Activities
• Version Control
  – Defining a version identification scheme
  – Identifying requirements document versions
  – Identifying individual requirement versions




                           7
Requirements Management Activities
• Requirements Status Tracking
  – Defining possible requirements statuses
  – Recording the status of each requirement
  – Reporting the status distribution of all
    requirements




                           8
Requirements Management Activities
• Requirements Tracing
  – Defining links to other requirements
  – Defining links to other system elements




                            9
Requirements Change Control
• Accepting newly proposed requirements changes
  (modifications to existing requirements or additional
  requirements) may impact existing schedule and
  quality commitments.
• The project can respond to new or changed
  requirements in various ways:
   – Defer lower-priority requirements
   – Obtain additional staff
   – Mandate overtime work, preferably with pay, for a short
     time
   – Slip the schedule to accommodate the new functionality
   – Let quality suffer in the press to ship by the original date


                                   10
Requirements Change Control
• Accept the reality of adjusting expectations
  and commitments.

• Prior to baselining, the requirements are still
  evolving, so there's no point in imposing
  unnecessary process overhead on those
  modifications



                          11
Requirements Baseline
• The requirements baseline is the set of functional and
  nonfunctional requirements that the development team has
  committed to implement in a specific release.
• The baseline gives the project stakeholders a shared
  understanding of the capabilities and properties they can
  expect to see in the release.

• At the time the requirements are baselined —typically
  following formal review and approval — they are placed
  under configuration management.

• Subsequent changes can be made only through the project's
  defined change-control process.


                                 12
Requirements Version Control

• Begin practicing version control as soon as
  you create a preliminary draft of a document.

• Uniquely identify different versions of each
  requirements document.
  – Unique ID or Name / Date-Stamp




                          13
Requirements Version Control

• Version control is an essential aspect of
  managing requirements specifications and
  other project documents.

• Changes must be clearly documented and
  communicated to everyone affected.




                        14
Requirements Version Control
It's Not a Bug; It's a Feature!
A contract development team received a flood of defect reports from the
people testing the latest release of a system they had just delivered to a
client. The contract team was perplexed—the system had passed all their
own tests. After considerable investigation, it turned out that the client had
been testing the new software against an obsolete version of the software
requirements specification. What the testers were reporting as bugs truly
were features.

Much of the testing effort was wasted because the testers were looking for
the wrong system behaviors. The testers spent considerable time rewriting
the tests against the correct version of the SRS and retesting the software, all
because of a version control problem.




                                          15
Requirements Version Control

• Each circulated version of the requirements
  documents should include:
  – revision history identifying the changes made
  – date of each change
  – name of individual who made the change
  – reason for each change




                            16
Requirements Management Procedures
• Tools, techniques, and conventions for
  controlling versions of the various
  requirements documents and of individual
  requirements
• How the requirements are baselined
• The requirement statuses that you will use
  and who may change them
• Requirement status-tracking procedures


                         17
Requirements Management Procedures
(continued)
• The ways that new requirements, and changes
  to existing ones, are proposed, processed,
  negotiated, and communicated to all affected
  stakeholders
• How to analyze the impact of a proposed
  change
• How the project's plans and commitments will
  reflect requirements changes

                        18
Requirements Attributes

• Think of each requirement as an object with
  properties that distinguish it from other
  requirements.
  – Textual description
  – Several supporting pieces of information or
    attributes associated with it




                            19
Requirements Attributes - Examples
• Date the requirement was created
• Its current version number
• Author who wrote the requirement
• Person who is responsible for ensuring that the
  requirement is satisfied
• Owner of the requirement or a list of stakeholders
  (to make decisions about proposed changes)
• Requirement status
• Origin or source of the requirement


                             20
Requirements Attributes – Examples
(continued)
• The rationale behind the requirement
• Subsystem (or subsystems) to which the
  requirement is allocated
• Product release number to which the requirement is
  allocated
• Verification method to be used or acceptance test
  criteria
• Implementation priority
• Stability (an indicator of how likely it is that the
  requirement will change in the future)

                            21
 Tracking Requirements Status
Status        Definition
Proposed      The requirement has been requested by an authorized source.
Approved      The requirement has been analyzed, its impact on the project has been estimated,
              and it has been allocated to the baseline for a specific release. The key stakeholders
              have agreed to incorporate the requirement, and the software development group
              has committed to implement it.
Implemented   The code that implements the requirement has been designed, written, and unit
              tested. The requirement has been traced to the pertinent design and code
              elements.
Verified      The correct functioning of the implemented requirement has been confirmed in the
              integrated product. The requirement has been traced to pertinent test cases. The
              requirement is now considered complete.
Deleted       An approved requirement has been removed from the baseline. Include an
              explanation of why and by whom the decision was made to delete it.
Rejected      The requirement was proposed but is not planned for implementation in any
              upcoming release. Include an explanation of why and by whom the decision was
              made to reject it.



                                                    22
Requirements Management Effort
• As with requirements development, your
  project plan should include tasks and
  resources for the requirements management
  activities.
• Requirements Management helps to ensure
  that the effort you invest in gathering,
  analyzing, and documenting requirements
  isn't squandered.


                       23
Requirements Management Effort
• Requirements Management Activities /Effort
  – Submitting requirements changes and proposing
    new requirements
  – Evaluating proposed changes, including
    performing impact analysis
  – Change control board activities




                          24
Requirements Management Effort
• Requirements Management Activities /Effort
 (continued)
  – Updating the requirements documents or
    database
  – Communicating requirements changes to affected
    groups and individuals
  – Tracking and reporting requirements status
  – Collecting requirements traceability information



                           25
Requirements Management Principles
and Practices - Summary (1)
• Requirements Management includes all
  activities that maintain the integrity, accuracy,
  and currency of the requirements agreement
  as the project progresses.
  – Change Control
  – Version Control
  – Requirements Status Tracking
  – Requirements Tracing


                           26
Requirements Management Principles
and Practices - Summary (2)
• Requirements Baseline is the set of functional and
  nonfunctional requirements that the development
  team has committed to implement in a specific
  release.
• Think of each requirement as an object with
  properties that distinguish it from other
  requirements
• As with requirements development, your project
  plan should include tasks and resources for the
  requirements management activities.

                            27
Software Requirements:

Chp 19: Change Happens




                    28
Change Happens
• It's virtually impossible to define all of a product's
  requirements up front, and the world changes as
  development progresses.
• An organization that's serious about managing its
  software projects must ensure that
   – Proposed requirements changes are carefully evaluated
     before being committed to.
   – The appropriate individuals make informed business
     decisions about requested changes.
   – Approved changes are communicated to all affected
     participants.
   – The project incorporates requirements changes in a
     consistent fashion.

                                29
Managing Scope Creep
• Creeping requirements include new functionality and
  significant modifications that are presented after the
  project requirements have been baselined.
• Late changes have a big impact on work already
  performed.
• Some requirements evolution is legitimate,
  unavoidable, and even advantageous.
• Uncontrolled scope creep, in which the project
  continuously incorporates new functionality without
  adjusting resources, schedules, or quality goals, is
  more dangerous.


                             30
Ways to Manage Scope Creep
• Document the vision, scope, and limitations of the
  new system as part of the business requirements.
• Evaluate every proposed requirement or feature
  against the business objectives, product vision, and
  project scope.
• Engaging customers in elicitation reduces the
  number of requirements that are overlooked.
• Effective techniques for controlling scope creep.
   – Prototyping
   – Using short development cycles.


                                31
Ways to Manage Scope Creep
• The most effective technique for controlling
  scope creep is being able to say “no”.
• Nice way to say no – say “not now”.

• Including every feature that customers,
  marketing, product management, and
  developers request leads to missed
  commitments, slipshod quality, burned-out
  developers, and bloatware.

                         32
The Change Control Process

• A change-control process lets the project's
  leaders:
  – make informed business decisions that will
    provide the greatest customer and business value
  – control the product's life cycle costs
  – track the status of all proposed changes
  – (helps) ensure that suggested changes aren't lost
    or overlooked


                           33
The Change Control Process

• The key to a successful Change Control
  Process –
  – well documented
  – as simple as possible
  – above all — effective.




                             34
The Change Control Policy (Statements)
• All requirements changes shall follow the process. If
  a change request is not submitted in accordance
  with this process, it won't be considered.
• No design or implementation work other than
  feasibility exploration shall be performed on
  unapproved changes.
• Simply requesting a change doesn't guarantee that it
  will be made. The project's Change Control Board
  (CCB) will decide which changes to implement.


                             35
The Change Control Policy (Statements)
• The contents of the change database shall be visible
  to all project stakeholders.
• The original text of a change request shall not be
  modified or deleted.
• Impact analysis shall be performed for every change.
• Every incorporated requirement change shall be
  traceable to an approved change request.
• The rationale behind every approval or rejection of a
  change request shall be recorded.


                             36
The Change Control Description
1. Introduction
  – 1.1 Purpose
  – 1.2 Scope
  – 1.3 Definitions
2. Roles and Responsibilities
3. Change-Request Status
4. Entry Criteria



                          37
The Change Control Description
5. Tasks
   –   5.1 Evaluate Request
   –   5.2 Make Decision
   –   5.3 Make Change
   –   5.4 Notify All Affected Parties
6. Verification
   – 6.1 Verify Change
   – 6.2 Install Product
7. Exit Criteria
8. Change-Control Status Reporting
Appendix: Data Items Stored for Each Request

                                    38
The Change Request Lifecycle




                     39
Suggested Change Data Request Items
Item          Description
Change        Functional area that requested the change; possible groups include marketing,
Origin        management, customer, software engineering, hardware engineering, and testing
Change-       Identification tag or sequence number assigned to the request
Request ID
Change        Type of change request, such as a requirement change, a proposed enhancement,
Type          or a defect report
Date          Date the originator submitted the change request
Submitted
Date          Date the change request was most recently modified
Updated
Description   Free-form text description of the change being requested

Implementa The relative importance of making the change as determined by the CCB: low,
-tion Priority medium, or high
Modifier      Name of the person who is primarily responsible for implementing the change



                                                  40
Suggested Change Data Request Items
Item         Description
Originator   Name of the person who submitted this change request; consider
             including the originator's contact information
Originator   The relative importance of making the change from the originator's point
Priority     of view: low, medium, or high
Planned      Product release or build number for which an approved change is
Release      scheduled
Project      Name of the project in which a change is being requested
Response     Free-form text of responses made to the change request; multiple
             responses can be made over time; do not change existing responses
             when entering a new one
Status       The current status of the change request
Title        One-line summary of the proposed change
Verifier     Name of the person who is responsible for determining whether the
             change was made correctly


                                              41
The Change Control Board
• The Change Control Board (also known as the
  Configuration Control Board) has been identified as a
  best practice for software development.
• The CCB is the body of people (one person or a
  group), who decides which proposed requirement
  changes and newly suggested features to accept for
  inclusion in the product.
• The CCB also decides which reported defects to
  correct and when to correct them.
• A CCB reviews and approves changes to any
  baselined work product on a project, of which the
  requirements documents are only one example.

                             42
Change Control Board - Participants

•   Project or program management
•   Product management or requirements analyst
•   Development
•   Testing or quality assurance
•   Marketing or customer representatives
•   User documentation
•   Technical support or help desk
•   Configuration management




                            43
The Change Control Board –
Roles and Responsibilities
Role        Description and Responsibilities
CCB Chair   Chair Chairperson of the change control board;
            generally has final decision-making authority if the
            CCB does not reach agreement.
CCB         The group that decides to approve or reject
            proposed changes for a specific project.
Evaluator   The person whom is asked to analyze the impact
            of a proposed change; could be a technical person,
            a customer, a marketing person, or a combination



                               44
The Change Control Board –
Roles and Responsibilities (continued)
Role         Description and Responsibilities
Modifier     The person responsible for making changes in a
             work product in response to an approved change
             request.
Originator   Someone who submits a new change request.
Request      The person to whom new change requests are
Receiver     submitted
Verifier     The person who determines whether the change
             was made correctly


                               45
Change Control Tool Features
• Define the data items included in a change request
• Define a state-transition model for the change-
  request life cycle
• Enforce the state-transition model, allowing only
  authorized users to make status changes
• Record the date of every status change and the
  identity of the person who made it
• Define who receives automatic e-mail notification
  when an originator submits a new request or when a
  request's status is updated
• Produce Reports and Charts


                           46
Change Isn’t Free – Impact Analysis
• Impact analysis - key aspect of requirements
  management

• Provides an understanding of the implications
  of a proposed change

• Helps the team make informed business
  decisions about which proposals to approve



                          47
Impact Analysis
• Impact analysis has three aspects:

   1. Understand the possible implications of making the change.

   2. Identify all the files, models, and documents that might have
      to be modified if the team incorporates the requested
      change.

   3. Identify the tasks required to implement the change, and
      estimate the effort needed to complete those tasks.




                                   48
Impact Analysis – Questions / Checklists

• A checklist of questions designed to help the
  impact analyst understand the implications of
  accepting a proposed change. (handout)

• A checklist of possible software elements
  affected by a proposed change (handout)

• Change Effort Estimate worksheet (handout)


                         49
Impact Analysis Procedure
1. Work through the Impact Analysis Checklist.

2. Work through the Possible Software Elements Affected
   Checklist, using available traceability information.

3. Use the Change Effort Estimate worksheet to estimate the
   effort required for the anticipated tasks.

4. Total the effort estimates.

5. Identify the sequence in which the tasks must be performed
    and how they can be interleaved with currently planned
    tasks.


                                 50
Impact Analysis Procedure
6. Determine whether the change is on the project's critical
   path.

7. Estimate the impact of the proposed change on the project's
   schedule and cost.

8. Evaluate the change's priority by estimating the relative
   benefit, penalty, cost, and technical risk compared to other
   discretionary requirements.

9. Report the impact analysis results to the CCB so that they can
   use the information to help them decide whether to approve
   or reject the change request.


                                  51
Chp 19: Change Happens – Summary (1)
• It's virtually impossible to define all of a
  product's requirements up front, and the
  world changes as development progresses.
• Some requirements evolution is legitimate,
  unavoidable, and even advantageous.
• The most effective technique for controlling
  scope creep is being able to say “no”.
  – Nice way to say no – say “not now”.


                           52
Chp 19: Change Happens – Summary (2)
• Effective techniques for controlling scope creep.
   – Prototyping
   – Using short development cycles
• A change-control process lets the project's leaders:
   – make informed business decisions that will provide the
     greatest customer and business value
   – control the product's life cycle costs
   – track the status of all proposed changes
   – it helps ensure that suggested changes aren't lost or
     overlooked


                                 53
Chp 19: Change Happens – Summary (3)
• The key to a successful Change Control Process
   – well documented
   – as simple as possible
   – above all — effective
• The Change Control Board is the body of people (one
  person or a group), who decides which proposed
  requirement changes and newly suggested features
  to accept for inclusion in the product.



                             54
Chp 19: Change Happens – Summary (4)
• (Requested Change) Impact analysis - key aspect of
  requirements management
   1. Understand the possible implications of making the
      change.
   2. Identify all the files, models, and documents that might
      have to be modified if the team incorporates the requested
      change.
   3. Identify the tasks required to implement the change, and
      estimate the effort needed to complete those tasks.




                                 55
Software Requirements:

Chp 20: Links in the Requirements Chain




                      56
Tracing Requirements
• Requirements tracing documents the dependencies and
  logical links between individual requirements and other
  system elements.

• System elements include other requirements of various types:
   –   Business Rules
   –   Architecture and other design components
   –   Source Code Modules
   –   Test cases
   –   Help files

• Traceability information facilitates impact analysis by helping
  identify all the work products you might have to modify, to
  implement a proposed requirement change.


                                      57
Tracing Requirements (continued)
• To permit traceability, each requirement must
  be uniquely and persistently labeled so that it
  can be (uniquely ) identified.

• Write the requirements in a fine-grained
  fashion, rather than creating large paragraphs
  containing many individual functional
  requirements that lead to an explosion of
  design and code elements.


                          58
Four Types Requirements Traceability




                     59
Possible Requirements Traceability Links




                      60
Benefits of Tracing Requirements
• Certification - for a safety-critical product, can use
  traceability information to demonstrate that all requirements
  were implemented.
• Change impact analysis – without traceability information,
  there's a high probability of overlooking a system element
  that would be affected if you add, delete, or modify a
  particular requirement.

• Maintenance - Reliable traceability information facilitates
  making changes correctly and completely, which improves
  your productivity. A table that shows where each applicable
  business rule was implemented in the functional
  requirements, designs, and code makes it easier to make the
  necessary changes properly.


                                 61
Benefits of Tracing Requirements
• Project tracking - recording traceability data during
  development, will provide an accurate record of the
  implementation status of planned functionality.
   – Missing links indicate work products that have not yet been created.

• Reengineering - listing the functions in a legacy
  system you're replacing and recording where they
  were addressed in the new system's requirements
  and software components.
   – Defining traceability links is a way to capture some of what you learn
     through reverse engineering of an existing system.

• Reuse - identifies packages of related requirements,
  designs, code, and tests.

                                       62
Benefits of Tracing Requirements

• Risk reduction - Documenting the component
  interconnections reduces the risk if a key team
  member with essential knowledge about the system
  leaves the project.
• Testing - When a test yields an unexpected result,
  the links between tests, requirements, and code
  point you toward likely parts of the code to examine
  for a defect.
   – Knowing which tests verify which requirements can save time by
     letting you eliminate redundant tests.



                                     63
Requirements Traceability Matrix
User          Functional             Design          Code Module          Test Case
Requirement   Requirement            Element
UC-30         catalog.query.sort     Class catalog   catalog.sort()       search.9
                                                                          Search.10
UC-31         catalog.query.import   Class catalog   catalog.import()     search.15
                                                     catalog.validate()   Search.16
                                                                          Search.17




                                           64
Requirements Traceability Matrix

• Fill in the information as the work gets done,
  not as it gets planned.
  – Enter "catalog.sort()" in the Code Module column
    of the first row of the matrix only when the code
    in that function has been written, has passed its
    unit tests, and has been integrated into the source
    code baseline for the product.




                            65
Requirements Traceability Matrix
• Nonfunctional requirements such as performance goals and
  quality attributes don't always trace directly into code.
   – A response-time requirement might dictate the use of certain
     hardware, algorithms, database structures, or architectural choices.
   – A portability requirement could restrict the language features that the
     programmer uses but might not result in specific code segments that
     enable portability.
   – Integrity requirements for user authentication lead to derived
     functional requirements that are possibly implemented passwords or
     biometrics functionality.

• Where possible trace the corresponding functional
  requirements backward to their parent nonfunctional
  requirement and forward into down stream deliverables as
  usual.


                                      66
Sources of Traceability Link Information
Link Source Object Type   Link Target Object Type     Information Source
System Requirement        Software Requirement      Systems Engineer
Use Case                  Functional Requirement    Requirements Analyst
Functional Requirement    Functional Requirement    Requirements Analyst

Functional Requirement    Test Case                 Test Engineer
Functional Requirement    Software Architecture     Software Architect
                          Element
Functional Requirement    Other Design Elements     Designer or Developer
Design Element            Code                      Developer
Business Rule             Functional Requirement    Requirements Analyst


                                       67
Requirements Traceability Procedure

1. Select the link relationships you want to define from the
   possible Requirements Traceability links (slide 60).

2. Determine the format of the traceability matrix (slide 64 ).
  - Select a mechanism for storing the data: a table in a text document,
    a spreadsheet, or a requirements management tool.

3. Identify the parts of the product for which you want to
    maintain traceability information.
  - Start with the critical core functions, the high-risk portions, or the
  portions that you expect to undergo the most maintenance and evolution
  over the product's life.




                                        68
Requirements Traceability Procedure
4. Modify your development procedures and checklists to
   remind developers to update the links after implementing a
   requirement or an approved change.
  - The traceability data should be updated as soon as someone completes
  a task that creates or changes a link in the requirements chain.

5. Define the tagging conventions you will use to uniquely
   identify all system elements so that they can be linked
   together.

6. Identify the individuals who will supply each type of link
    information and the person who will coordinate the
    traceability activities and manage the data.


                                      69
Requirements Traceability Procedure
7. Educate the team about the concepts, objectives, and
   importance of requirements tracing, where the traceability
  data is stored, and the techniques for defining the links.
   -Make sure all participants commit to their responsibilities.
8. As development proceeds, have each participant provide the
   requested traceability information as they complete small
  bodies of work.

9. Audit the traceability information periodically to make sure
   it's being kept current.


                                         70
Chp 20: Links in the Requirements Chain –
Summary (1)
• Requirements tracing documents the dependencies
  and logical links between individual requirements
  and other system elements.
• Traceability information facilitates impact analysis by
  helping identify all the work products you might
  have to modify, to implement a proposed
  requirement change.
• Implement, communicate and follow a Requirements
  Traceability Procedure.


                              71
Chp 20: Links in the Requirements Chain –
Summary (2)
• Benefits of Tracing Requirements (helps with):
   –   Certification
   –   Change impact analysis
   –   Maintenance
   –   Project Tracking
   –   Reengineering
   –   Reuse
   –   Risk Reduction
   –   Testing



                                72
Software Requirements:

Chp 22: Improving Your Requirements




                    73
Improving the Requirement Process
• The ultimate objective of software process
  improvement is to reduce the cost of creating and
  maintaining software. There are several ways to
  accomplish this:
   – Correcting problems encountered on previous or current
     projects that arose from process shortcomings
   – Anticipating and preventing problems that you might
     encounter on future projects
   – Adopting practices that are more efficient than the
     practices currently being used


                                74
Requirements Relationship to other Processes




                        75
• This slide is intentionally left blank




                            76
Requirements and various Stakeholders




                       77
Process Improvement Fundamentals
1. Process improvement should be evolutionary,
   continuous, and cyclical.

2. People and organizations change only when they
   have an incentive to do so.

3. Process changes should be goal-oriented. Before
   you begin the journey to superior processes, make
   sure that you know where you're headed.

4.   Treat your improvement activities as mini projects.

                             78
Process Improvement Lifecycle




                     79
Process Improvement Lifecycle -
Step 2: Plan Improvement Actions




                     80
Process Improvement Lifecycle:
Step 2: Plan Improvement - Action Items
Action Items for Requirements Management Improvements
1. Draft a requirements change-control procedure.
2. Review and revise the change-control procedure.
3. Pilot the change-control procedure with Project “A”.
4. Revise the change-control procedure based on feedback from
   the pilot.
5. Evaluate problem-tracking tools, and select one to support the
   change-control procedure.
6. Procure the problem-tracking tool, and customize it to
   support the change-control procedure.
7. Roll out the new change-control procedure and tool to the
   organization.


                                  81
Process Improvement Lifecycle:
Step 3: Create, Pilot, and Implement New
Processes
Suggestions for Pilot Initiatives:
• Select pilot participants who will give the new approaches a
  fair try and provide helpful feedback..
• To make the outcome easy to interpret, quantify the criteria
  the team will use to evaluate the pilot.
• Identify the stakeholders who need to be kept informed of
  what the pilot is about and why it is being performed.
• Consider piloting portions of the new processes on different
  projects. This engages more people in trying new approaches,
  which increases awareness, feedback, and buy-in.
• As part of the evaluation, ask pilot participants how they
  would feel if they had to go back to their former ways of
  working.


                                82
Process Asset Documents
Type        Description
Checklist   A list that enumerates activities, deliverables, or other items to
            be noted or verified. Checklists are memory joggers. They help
            ensure that busy people don't overlook important details.
Example     A representative of a specific type of work product. Accumulate
            good examples as your project teams create them.
Plan        An outline of how an objective will be accomplished and what is
            needed to accomplish it.
Policy      A guiding principle that sets a management expectation of
            behaviors, actions, and deliverables. Processes should enable
            satisfaction of the policies.




                                          83
Process Asset Documents
Type         Description
Procedure    A step-by-step description of the sequence of tasks that
             accomplishes an activity. Describe the tasks to be performed
             and identify the project roles that perform them. Don't include
             tutorial information in a procedure. Guidance documents can
             support a process or procedure with tutorial information and
             helpful tips.
Process     A documented definition of a set of activities performed for
Description some purpose. A process description might include the process
            objective, key milestones, participants, communication steps,
            input and output data, artifacts associated with the process, and
            ways to tailor the process to different project situations.


                                         84
Process Asset Documents
Type       Description
Template   A pattern to be used as a guide for producing a complete work
           product. Templates for key project documents remind you to
           ask questions that you might otherwise overlook. A well-
           structured template provides many "slots" for capturing and
           organizing information. Guidance text embedded in the
           template will help the document author use it effectively.




                                      85
Requirements Engineering Process Assets
Requirements Development Process Assets
•   Requirements Development Process
•   Requirements Allocation Procedure
•   Requirements Prioritization Procedure
•   Vision and Scope Template
•   Use-Case Template
•   Software Requirements Specification Template
•   SRS and Use-Case Defect Checklists



                             86
Requirements Engineering Process Assets
Requirements Management Process Assets
•   Requirements Management Process
•   Change-Control Process
•   Requirements Status-Tracking Procedure
•   Requirements Traceability Procedure
•   Change Control Board Charter
•   Requirements Change Impact Analysis Checklist
    and Template



                              87
Requirements Process Improvement Road
Map




                    88
Chp 22: Improving Your Requirements
– Summary
• Objective of software process improvement is
  to reduce the cost of creating and
  maintaining software.
• Process Improvement Fundamentals
      - Slide 78
• Requirements Development Process Assets
      - Slide 86
• Requirements Management Process Assets
      - Slide 87

                        89
Software Requirements:

Chp 23: Software Requirements and Risk




                     90
Software Requirements & Risk Management
 • Risk - A risk is a future, uncertain condition that could cause
   some loss or otherwise threaten the success of a project.

 • If something problematic has already happened on your
   project, it's an issue or a problem, not a risk.

 • Risk management
   – the process of identifying, evaluating, and controlling risks
      before they damage your project
   – application of tools and procedures to contain project risk
      within acceptable limits
   – provides a standard approach to identify and document
      risk factors, evaluate their potential severity, and propose
      strategies for mitigating them


                                    91
Goals of Risk Management
 • Address risks proactively using generally accepted
   techniques
 • Evaluate and prioritize risks so scarce resources can
   manage them
 • Plan Risk Management activities
 • Assign Responsibilities for risk management
   functions
 • Report the status of risks to management on a timely
   basis
 • Develop and actively manage mitigation and
   contingency strategies for the most significant risks


                              92
Risk Management Plan




                       93
Sources of Risk
 • Historical project data
 • Current project planning data
 • Interviewing personnel with experience in similar
   projects
 • Interviewing personnel with experience with the
   client

 • General Categories of Risk:
    –   Staffing
    –   Project Definition
    –   Project Management
    –   Technical

                                 94
Elements of Risk Management




                    95
Risk Tracking Template / Risk Log




                       96
Requirements Related Risks
 • Requirements Elicitation
    – Product Vision and Product Scope
    – Time spent on requirements development
    – Completeness and correctness of requirements
      specifications
    – Requirements for highly innovative products
    – Defining nonfunctional requirements
    – Customer agreement on product requirements
    – Unstated requirements
    – Existing product used as the requirements baseline
    – Solutions presented as needs

                                 97
Requirements Related Risks
 • Requirements Analysis
   – Requirements prioritization
   – Technically difficult features
   – Unfamiliar technologies, methods, languages,
     tools, or hardware
   – Requirements understanding
   – Time pressure to proceed despite TBDs
   – Ambiguous terminology
   – Design Included in requirements


                            98
Requirements Related Risks
 • Requirements Validation
   – Unvalidated requirements
   – Inspection proficiency
 • Requirements Management
   – Changing requirements
   – Requirements change process
   – Unimplemented requirements
   – Expanding project scope



                           99
Chp 23: Software Requirements and Risk
– Summary (1)
• Goals of Risk Management - Slide 92
• Requirements Elicitation Related Risks
     - Slide 97
• Requirements Analysis Related Risks - Slide 98
• Requirements Validation Risks - Slide 99
• Requirements Management Risks - Slide 99



                         100

						
Related docs
Other docs by aG52zz
111studyguide
Views: 2  |  Downloads: 0
Section 2 of Employment Equity Act
Views: 0  |  Downloads: 0
Short Agency Briefing - PowerPoint - PowerPoint
Views: 11  |  Downloads: 0
FOR IMMEDIATE RELEASE:
Views: 1  |  Downloads: 0
APS presentation
Views: 2  |  Downloads: 0
Att IPEDS 0811 Summary and Section A 4 25
Views: 0  |  Downloads: 0
Silchester Garages Site Development
Views: 10  |  Downloads: 0
PROFESSIONAL/CONSULTING SERVICES AGREEMENT
Views: 8  |  Downloads: 0