Managing Software Requirements: A Unified Approach
Dean Leffingwell, Don Widrig
- 出版商: Addison Wesley
- 出版日期: 1999-10-28
- 售價: $2,000
- 貴賓價: 9.5 折 $1,900
- 語言: 英文
- 頁數: 528
- 裝訂: Hardcover
- ISBN: 0201615932
- ISBN-13: 9780201615937
已絕版
買這商品的人也買了...
-
$1,200$1,176 -
$680$537 -
$1,670$1,587 -
$580$493 -
$400$380 -
$970Introduction to Algorithms, 2/e
-
$1,710$1,625 -
$860$731 -
$2,840$2,698 -
$560$504 -
$450$351 -
$1,860$1,767 -
$780$741 -
$620$558 -
$650$553 -
$580$458 -
$760$600 -
$580$458 -
$620$527 -
$690$538 -
$720$569 -
$590$531 -
$640$576 -
$560$442 -
$750$675
相關主題
商品描述
Table Of Contents
Foreword.Preface.
Introduction.
Chapter 1. The Requirements Problem.
The Goal.
A Look at the Data.
Root Causes of Project Success and Failure.
A Look at the Data.
Root Causes of Project Success and Failure.
The Frequency of Requirements Errors.
The High Cost of Requirements Errors.
Conclusion.
The High Cost of Requirements Errors.
Conclusion.
2. Introduction to Requirements Management.
Definitions.
Application of Requirements Management Techniques.
The Road Map.
Summary.
What Is Requirements Management?
Application of Requirements Management Techniques.
Systems Applications.
The Road Map.
The Problem Domain.
Stakeholder Needs.
Moving Toward the Solution Domain.
Features of the System.
Software Requirements.
An Introduction to Use Cases.
Stakeholder Needs.
Moving Toward the Solution Domain.
Features of the System.
Software Requirements.
An Introduction to Use Cases.
Summary.
3. The Software Team.
Software Development as a Team Activity.
The Case Study.
Summary.
Requisite Team Skills for Effective Requirements Management.
Team Members Have Different Skills.
The Organization of Software Teams.
Team Members Have Different Skills.
The Organization of Software Teams.
The Case Study.
Background for the Case Study.
The HOLIS Software Development Team.
The HOLIS Software Development Team.
Summary.
I. ANALYZING THE PROBLEM.
4. The Five Steps in Problem Analysis.
Step 1: Gain Agreement on the Problem Definition.
Step 2: Understand the Root Causes--The Problem Behind the Problem.
Step 3: Identify the Stakeholders and the Users.
Step 4: Define the Solution System Boundary.
Step 5: Identify the Constraints to Be Imposed on the Solution.
Summary.
Looking Ahead.
The Problem Statement.
Step 2: Understand the Root Causes--The Problem Behind the Problem.
Addressing the Root Cause.
Step 3: Identify the Stakeholders and the Users.
Step 4: Define the Solution System Boundary.
Step 5: Identify the Constraints to Be Imposed on the Solution.
Summary.
Looking Ahead.
5. Business Modeling.
Purpose of Business Modeling.
Using Software Engineering Techniques for Business Modeling.
From The Business Models to the Systems Model.
When To Use Business Modeling.
Summary.
Looking Ahead.
Using Software Engineering Techniques for Business Modeling.
Choosing the Right Technique.
The Unified Modeling Language (UML).
Business Modeling Using UML Concepts.
The Unified Modeling Language (UML).
Business Modeling Using UML Concepts.
From The Business Models to the Systems Model.
When To Use Business Modeling.
Summary.
Looking Ahead.
6. Systems Engineering of Software Intensive Systems.
What Is Systems Engineering?
Requirements Allocation in Systems Engineering.
Pragmatic Principles of Systems Engineering.
The Composition and Decomposition of Complex Systems.
The Composition and Decomposition of Complex Systems.
Requirements Allocation in Systems Engineering.
On Derived Requirements.
A Quiet Revolution.
When Generations Collide: Graybeard Meets Young Whippersnapper.
Avoiding the Stovepipe System Problem.
When Subsystems Are Subcontracts.
Making It Work Out Right.
The Case Study.
Preliminary User Needs.
Problem Analysis.
HOLIS: The System, Actors, and Stakeholders.
HOLIS Systems Engineering.
The Subsystems of HOLIS.
A Quiet Revolution.
When Generations Collide: Graybeard Meets Young Whippersnapper.
Avoiding the Stovepipe System Problem.
When Subsystems Are Subcontracts.
Making It Work Out Right.
The Case Study.
Preliminary User Needs.
Problem Analysis.
HOLIS: The System, Actors, and Stakeholders.
HOLIS Systems Engineering.
The Subsystems of HOLIS.
II. UNDERSTANDING USER NEEDS.
7. The Challenge of Requirements Elicitation.
Barriers to Elicitation.
Techniques for Requirements Elicitation.
The "Undiscovered Ruins" Syndrome.
The "User and the Developer" Syndrome.
The "User and the Developer" Syndrome.
Techniques for Requirements Elicitation.
8. The Features of a Product or System.
Stakeholder and User Needs.
Features.
Features.
Managing Complexity by Picking the Level of Abstraction.
Attributes of Product Features.
Attributes of Product Features.
9. Interviewing.
The Interview Context.
Value-Added Context.
The Moment of Truth: The Interview.
Compiling the Need Data.
A Note on Questionnaires.
Value-Added Context.
The Moment of Truth: The Interview.
Compiling the Need Data.
The Analyst's Summary: 10+10+10 _ 30.
The Case Study.
The Case Study.
A Note on Questionnaires.
10. Requirements Workshops.
Preparing for the Workshop.
Role of the Facilitator.
Setting the Agenda.
Running the Workshop.
Brainstorming and Idea Reduction.
Production and Follow-Up.
Selling the Concept.
Ensuring the Participation of the Right Stakeholders.
Logistics.
"Warm-Up Materials".
Ensuring the Participation of the Right Stakeholders.
Logistics.
"Warm-Up Materials".
Role of the Facilitator.
Setting the Agenda.
Running the Workshop.
Brainstorming and Idea Reduction.
Production and Follow-Up.
11. Brainstorming and Idea Reduction.
Live Brainstorming.
Idea Reduction.
Web-Based Brainstorming.
The Case Study: The HOLIS 2000 Requirements Workshop.
Idea Reduction.
Pruning.
Grouping Ideas.
Feature Definition.
Prioritization.
Grouping Ideas.
Feature Definition.
Prioritization.
Web-Based Brainstorming.
The Case Study: The HOLIS 2000 Requirements Workshop.
Attendees.
The Workshop.
The Session.
Analysis of Results.
The Workshop.
The Session.
Analysis of Results.
12. Storyboarding.
Types of Storyboards.
What Storyboards Do.
Tools and Techniques for Storyboarding.
Tips for Storyboarding.
Summary.
What Storyboards Do.
Tools and Techniques for Storyboarding.
Tips for Storyboarding.
Summary.
13. Applying Use Cases.
Building the Use Case Model.
Applying Use Cases to Requirements Elicitation.
Case Study: The Use Cases for HOLIS.
Summary.
Applying Use Cases to Requirements Elicitation.
Case Study: The Use Cases for HOLIS.
Summary.
14. Role Playing.
How to Role Play.
Techniques Similar to Role Playing.
Summary.
Techniques Similar to Role Playing.
Scripted Walkthroughs.
CRC (Class-Responsibility-Collaboration) Cards.
CRC (Class-Responsibility-Collaboration) Cards.
Summary.
15. Prototyping.
Types of Prototypes.
Requirements Prototypes.
Summary.
Requirements Prototypes.
What to Prototype.
Building the Prototype.
Evaluating the Results.
Building the Prototype.
Evaluating the Results.
Summary.
III. DEFINING THE SYSTEM.
16. Organizing Requirements Information.
Organizing Requirements of Complex Hardware and Software Systems.
Organizing Requirements for Product Families.
On "Future" Requirements.
Business and Marketing Requirements versus Product Requirements.
The Case Study.
Summary.
Organizing Requirements for Product Families.
On "Future" Requirements.
Business and Marketing Requirements versus Product Requirements.
The Case Study.
Summary.
17. The Vision Document.
Components of the Vision Document.
The "Delta Vision" Document.
The "Delta Vision" Document.
Vision Document for Release 1.0.
Vision Document for Version 2.0.
The Delta Vision Document in a Legacy System Environment.
Vision Document for Version 2.0.
The Delta Vision Document in a Legacy System Environment.
18. The Champion.
The Role of the Product Champion.
The Product Champion in a Software Product Environment.
The Product Champion in an IS/IT Shop.
The Product Champion in a Software Product Environment.
The Product Champion in an IS/IT Shop.
IV. MANAGING SCOPE.
19. The Problem of Project Scope.
Components of Project Scope.
The Hard Question.
The Hard Question.
20. Establishing Project Scope.
Setting Priorities.
Assessing Effort.
Adding the Risk Element.
Reducing Scope.
The Case Study.
Assessing Effort.
Adding the Risk Element.
Reducing Scope.
A Reasonable First Estimate.
The Case Study.
21. Managing Your Customer.
Engaging Customers to Manage their Project Scope.
Communicating the Result.
Negotiating with the Customer.
Managing the Baseline.
Communicating the Result.
Negotiating with the Customer.
Managing the Baseline.
Official Change.
Unofficial Change.
Unofficial Change.
22. Scope Management and Software Development Process Models.
The Waterfall Model.
The Spiral Model.
The Iterative Approach.
What to Do, What to Do....
The Spiral Model.
The Iterative Approach.
Life Cycle Phases.
Iterations.
Work Flows.
Iterations.
Work Flows.
What to Do, What to Do....
V. REFINING THE SYSTEM DEFINITION.
23. Software Requirements.
Definition of Software Requirements.
Relationship Between Features and Software Requirements.
The Requirements Dilemma: What versus How.
More on Requirements versus Design.
A Further Characterization of Requirements.
Using Parent-Child Requirements to Increase Specificity.
Looking Ahead.
Relationship Between Features and Software Requirements.
The Requirements Dilemma: What versus How.
Exclude Project Information.
Exclude Design Information.
Exclude Design Information.
More on Requirements versus Design.
Iterating Requirements and Design.
A Further Characterization of Requirements.
Functional Software Requirements.
Nonfunctional Software Requirements.
Design constraints.
Are Design Constraints True Requirements?
Nonfunctional Software Requirements.
Design constraints.
Are Design Constraints True Requirements?
Using Parent-Child Requirements to Increase Specificity.
Organizing Parent-child Requirements.
Looking Ahead.
24. Refining the Use Cases.
Questions to Ask.
Refining Use Case Specifications.
The Case Study: Anatomy of a Simple Use Case.
Looking Ahead.
When Are Use Cases Not the Best Choice?
Is Redundancy a problem?
Is Redundancy a problem?
Refining Use Case Specifications.
How Use Cases Evolve.
The Scope of a Use Case.
The Scope of a Use Case.
The Case Study: Anatomy of a Simple Use Case.
Define the Actor(s).
Define the Use Case by Naming It.
Write a Brief Description.
Define a Flow of Events.
Identify Pre- and Postconditions.
Define the Use Case by Naming It.
Write a Brief Description.
Define a Flow of Events.
Identify Pre- and Postconditions.
Looking Ahead.
25. A Modern Software Requirements Specification.
The Modern SRS Package.
Documenting Functional Requirements.
Looking Ahead.
Who Owns the SRS Package?
Organizing the Modern SRS Package.
Organizing the Modern SRS Package.
Documenting Functional Requirements.
Looking Ahead.
26. On Ambiguity and Specificity.
Mary Had A Little Lamb.
Techniques for Disambiguation.
What to Do?
Techniques for Disambiguation.
What to Do?
27. Quality Measures of Software Requirements.
Nine Quality Measures.
Quality Measures for the Use-Case Model.
Quality Measures of the Modern SRS Package.
Correct Requirements.
Unambiguous Requirements.
Completeness of the Requirement Set.
Consistency in the Requirement Set.
Requirements Ranked for Importance and Stability.
Verifiable Requirement.
Modifiable Requirements Set.
Traceable Requirements.
Understandable Requirements.
Unambiguous Requirements.
Completeness of the Requirement Set.
Consistency in the Requirement Set.
Requirements Ranked for Importance and Stability.
Verifiable Requirement.
Modifiable Requirements Set.
Traceable Requirements.
Understandable Requirements.
Quality Measures for the Use-Case Model.
Use Case Specifications.
Use Case Actors.
Use Case Actors.
Quality Measures of the Modern SRS Package.
A Good Table of Contents.
A Good Index.
A Revision History.
A Glossary.
A Good Index.
A Revision History.
A Glossary.
28. Technical Methods for Specifying Requirements.
Pseudocode.
Finite State Machines.
Decision Trees and Decision Tables.
Graphical Decision Trees.
Activity Diagrams.
Entity-Relationship Models.
Object-Oriented Modeling.
Data Flow Diagrams.
Maintenance of Specifications.
Finite State Machines.
Decision Trees and Decision Tables.
Graphical Decision Trees.
Activity Diagrams.
Entity-Relationship Models.
Object-Oriented Modeling.
Data Flow Diagrams.
Maintenance of Specifications.
VI. Building the Right System.
29. Building the Right System Right: Overview.
Continually Confirm that the Development Is on Track.
Confirm that the Development Results Are Correct.
Learn How to Cope with Change that Occurs During the Development Process.
Looking Ahead.
Principles of Software Verification.
The Cost of Verification.
Verification at All Levels.
The Reason for Verification.
The Cost of Verification.
Verification at All Levels.
The Reason for Verification.
Confirm that the Development Results Are Correct.
Learn How to Cope with Change that Occurs During the Development Process.
Looking Ahead.
30. From Requirements to Implementation.
Mapping Requirements to Design and Code.
Realizing Use Cases in the Design Model.
From Design to Implementation.
Summary.
Looking Ahead.
The Orthogonality Problem.
Object Orientation.
The Use Case as Requirement.
Managing the Transition.
Modeling Software Systems.
Role of the Use-Case Model in Architecture.
Object Orientation.
The Use Case as Requirement.
Managing the Transition.
Modeling Software Systems.
Role of the Use-Case Model in Architecture.
Realizing Use Cases in the Design Model.
Structural and Behavioral Aspects of Collaborations.
Using Collaborations to Realize Sets of Individual Requirements.
Using Collaborations to Realize Sets of Individual Requirements.
From Design to Implementation.
Summary.
Looking Ahead.
31. Using Traceability to Support Verification.
The Role of Traceability in Requirements Verification.
Implicit versus Explicit Traceability.
Additional Traceability Options to Consider.
Using Traceability Tools.
Proceeding without Traceability Tools.
Thinking About Verification and Traceability.
Looking Ahead.
Implicit versus Explicit Traceability.
Additional Traceability Options to Consider.
Using Traceability Tools.
Maintenance of Traceability Relationships.
Proceeding without Traceability Tools.
Omitted Verification Relationships.
Excess Verification Relationships.
Excess Verification Relationships.
Thinking About Verification and Traceability.
Looking Ahead.
32. Validating the System.
Validation.
Case Study: Testing Use Cases.
Testing Discrete Requirements.
Testing Design Constraints.
Looking Ahead.
Validation Testing.
Validation Traceability.
Requirements-based Testing.
Validation Traceability.
Requirements-based Testing.
Case Study: Testing Use Cases.
Test Case 1 Description.
Tracing Test Cases.
Tracing Test Cases.
Testing Discrete Requirements.
Omitted Validation Relationships.
Excess Validation Relationships.
Excess Validation Relationships.
Testing Design Constraints.
Looking Ahead.
33. Using ROI to Determine the V&V Effort.
Depth versus Coverage.
What to Verify and Validate.
Looking Ahead.
V&V Coverage.
What to Verify and Validate.
Option 1: Verify and Validate Everything.
Option 2: Use a Hazard Analysis to Determine V&V Necessities.
Hazard Analysis as Return On Investment (ROI).
Option 2: Use a Hazard Analysis to Determine V&V Necessities.
Hazard Analysis as Return On Investment (ROI).
Looking Ahead.
34. Managing Change.
External Factors.
Internal Factors.
"We Have Met the Enemy, and They Is Us".
A Process for Managing Change.
Requirements Configuration Management.
Summary.
Internal Factors.
"We Have Met the Enemy, and They Is Us".
A Process for Managing Change.
Step 1: Recognize that Change Is Inevitable, and Plan for It.
Step 2: Baseline the Requirements.
Step 3: Establish A Single Channel to Control Change.
Step 4: Use a Change Control System to Capture Changes.
Step 5: Manage Change Hierarchically.
Step 2: Baseline the Requirements.
Step 3: Establish A Single Channel to Control Change.
Step 4: Use a Change Control System to Capture Changes.
Step 5: Manage Change Hierarchically.
Requirements Configuration Management.
Tool-based Support for Change Management.
Elements Impacted by Change.
Audit Trail of Change History.
Configuration Management and Change Management.
Elements Impacted by Change.
Audit Trail of Change History.
Configuration Management and Change Management.
Summary.
35. Getting Started.
Dedication.
What We've Learned So Far.
Your Prescription for Requirements Management.
Now, On To the Next Release!
What We've Learned So Far.
Introduction.
Team Skill 1: Analyzing the Problem.
Team Skill 2: Understanding User Needs.
Team Skill 3: Defining the System.
Team Skill 4: Managing Scope.
Team Skill 5: Refining the System Definition.
Team Skill 6: Building the Right System.
Team Skill 1: Analyzing the Problem.
Team Skill 2: Understanding User Needs.
Team Skill 3: Defining the System.
Team Skill 4: Managing Scope.
Team Skill 5: Refining the System Definition.
Team Skill 6: Building the Right System.
Your Prescription for Requirements Management.
Simplifying Assumptions.
The Recipe.
The Recipe.
Now, On To the Next Release!
Appendix A.
Appendix B.
Appendix C.
Appendix D.
Appendix E.
Bibliography.
Index. 0201615932T04062001