Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Visual Models for Software Requirements Dedication A Note Regarding Supplemental Files Foreword Introduction
Who Should Read This Book
Assumptions
Who Should Not Read This Book Organization of This Book
Finding Your Best Starting Point in This Book Models Quick Start
Conventions and Features in This Book Companion Content Acknowledgments Errata & Book Support We Want to Hear from You Stay in Touch
I. An Introduction to Models
1. Introduction to RML
RML Defined Challenges with Traditional Software Requirements Practices
Limitations of the Human Brain Pictures Are Easy, Words Are Hard
Requirements Models
Why Not UML? Requirements vs. Design
One Level’s Requirement Is Another Level’s Design Determining Actual Business Need Requirements Defined
Requirements Models Are Not the End Game
Using RML on Projects Additional Resources References
2. Model Categorization
Objectives, People, Systems, and Data Models
Bounding Models All Four Categories Are Needed
Objectives Models People Models Systems Models Data Models References
II. Objectives Models
3. Business Objectives Model
Business Objectives Model Template Example Creating Business Objectives Models
Identify Business Problems
Revenue Needs to Be Higher Costs Need to Be Lower Eliciting Business Problems
Identify Business Objectives Define Additional Problems and Objectives Define the Product Concept
Guiding Principles
Describe Success Metrics Questions to Ask to Complete the Business Objectives Model
Using Business Objectives Models
Providing a Common Understanding of a Project’s Value Bounding the Solution Space Understanding Projects That Are Underway
A Typical Approach That Doesn’t Work An Ideal Approach That Starts with Problems and Objectives A Realistic Approach
Deriving Requirements When to Use When Not to Use
Common Mistakes
Not Understanding the Business Problem Defining Business Objectives That Are Not Measurable Articulating the Wrong Type of Information in Business Objectives
Related Models Exercise
Instructions Scenario
Additional Resources References
4. Objective Chain
Objective Chain Template Example Creating Objective Chains
Identify Business Objectives and Features Select the Features to Analyze in Objective Chains Identify the Objective Factors
Use the Business Objectives Model Simplify Objective Factor Statements
Create the Objective Chain Hierarchy Define the Objective Equations
Format the Equation Identify Data Values Debate Data Values Measure Assumptions
Using Objective Chains
Comparing the Relative Values of Features to Cut Scope
Determining the Value of a Feature Mapped to Multiple Business Objectives Determining the Value of Multiple Features Mapped to the Same Objective Chain Determining the Value of Features Attached to Emotional Objectives
Determining Project Success Deriving Requirements When to Use When Not to Use
Common Mistakes
Not Creating Objective Chains Because Data Doesn’t Exist Skipping Levels in the Hierarchy
Related Models Exercise
Instructions Scenario
Additional Resources References
5. Key Performance Indicator Model
KPIM Template Example Creating KPIMs
Identify Business Processes
Selecting the Right Level Selecting the Right Processes
Identify KPIs Create the KPIM
Using KPIMs
Prioritizing KPIMs When Business Objectives Don’t Help Prioritizing When Replacing Existing Functionality Comparing the Relative Values of Requirements to Cut Scope Deriving Requirements When to Use When Not to Use
Common Mistakes
Not Using KPIMs Because KPIs Don’t Exist Not Using KPIMs Due to Fears of Being Held Accountable A Lack of Ongoing Monitoring
Related Models Exercise
Instructions Scenario
Additional Resources
6. Feature Tree
Feature Tree Template Example Creating Feature Trees
Identify Features Organize the Features
Subfeatures of More Than One Feature Parentless Subfeatures
Create the Feature Tree Look for Missing Features
Using Feature Trees
Depicting Project Scope Organizing the Requirements Organizing the Requirements Work Deriving Requirements When to Use When Not to Use
Common Mistakes
Wrong Number of Features at Each Level Poor Feature Names
Related Models Exercise
Instructions Scenario
Additional Resources References
7. Requirements Mapping Matrix
RMM Template Example Creating RMMs
List Process Flow Steps Map Requirements to Process Flow Steps
Many-to-Many Mappings Different Ways to Map Business Rules Using a Tool to Create Mappings
Identify Missing Mappings
Using RMMs
Reviewing in an Easy-to-Read Structure Identifying Missing Requirements Identifying Extraneous Requirements or Missing Steps Prioritizing Scope Advantages of Using a Requirements Management Tool Deriving Requirements When to Use When Not to Use
Common Mistakes
Not Mapping to Process Flows Not Using or Updating RMMs
Related Models Exercise
Instructions Scenario
Additional Resources References
III. People Models
8. Org Chart
Org Chart Template Example Creating Org Charts
Locate Existing Org Charts Determine the Right Level of Org Chart Complete the Org Chart
Departmental Org Charts Role Org Charts Individual Org Charts
Using Org Charts
Identifying the People Who Have Requirements Identifying Internal Users Identifying External Users Identifying People Used in Other Models Using Org Charts with Process Flows for Completeness Deriving Requirements When to Use When Not to Use
Common Mistakes
Not Using Org Charts to Identify Stakeholders Only Including Project Team Members
Related Models Exercise
Instructions Scenario
Additional Resources References
9. Process Flow
Process Flow Template Example Creating Process Flows
Create an L1 Process Flow
Creating the Diagram Scope of an L1
Create L2 Process Flows
Identifying Process Steps Writing Steps Using Swim Lanes Adding References to Other Flows Using Additional Symbols
Create L3 Process Flows As Necessary
Using Process Flows
Targeting the Audience with Different Levels of Detail Running Elicitation and Review Sessions Driving Completeness Deriving Requirements When to Use When Not to Use
Common Mistakes
Level of Detail Is Inconsistent Within a Flow Reviewers Do Not Understand the Level of Detail Reviewers Forget to Look at the Full Process Flow Process Flow Has Too Many Steps System Responses Are Mixed with User Actions Processes Outside the Scope of the Project Are Not Included
Related Models Exercise
Instructions Scenario
Additional Resources References
10. Use Case
Use Case Template Example Creating Use Cases
Identify Use Cases
From Process Flows From Business Data Diagrams From Org Charts or Lists of Actors
Write Descriptions Capture Organizational Benefits Capture Frequency of Use Prioritize Use Cases Complete the Remaining Header Fields
Assign a Unique ID Identify Actors Identify Triggers Identify Preconditions Identify Postconditions
Write the Main Course Write the Alternate Courses Write the Exceptions
Using Use Cases
Providing Context for Elicitation Through Implementation Prioritizing Work Deriving Requirements Reusing Use Cases Using a Use Case as a Basis for a UAT Script Using Models Similar to Use Cases Use Cases Do Not Have to Be Perfect When to Use When Not to Use
Common Mistakes
Making Use Cases Too Granular Using Use Cases As the Only Documentation for Requirements Allowing the System to Be an Actor
Related Models Exercise
Instructions Scenario
Additional Resources References
11. Roles and Permissions Matrix
Roles and Permissions Matrix Template Example Creating Roles and Permissions Matrices
Identify the Roles Identify the Operations Indicate Permissions
Permissions by Operation Permissions on Scope of Data Common Permissions on Related Operations
A Word About When to Create the Matrix
Using Roles and Permissions Matrices
Deriving Requirements Driving Completeness Identifying Additional Functions Configuring Systems Using a Roles and Permissions Matrix As a Basis for Setting Up User Data for Deployment When to Use When Not to Use
Common Mistakes
Missing Operations Struggling to Organize the Roles
Related Models Exercise
Instructions Scenario
Additional Resources
IV. Systems Models
12. Ecosystem Map
Ecosystem Map Template Example Creating Ecosystem Maps
Identify Systems Identify Interfaces Tie the Diagram Together
Using Ecosystem Maps
Defining Scope with Ecosystem Maps Deriving Requirements When to Use When Not to Use
Common Mistakes
Showing Physical Systems Too Much Documentation Lack of Organization
Related Models Exercise
Instructions Scenario
Additional Resources References
13. System Flow
System Flow Template Example Creating System Flows
Identify System Steps
Feature Trees Data Flow Diagrams
Write Steps
Swim Lanes Events
Using System Flows
Running System Flows Parallel to Process Flows Deriving Requirements When to Use
Describing Hidden Activities Describing System Interactions Describing Exception Handling
When Not to Use
Common Mistakes Related Models Exercise
Instructions Scenario
Additional Resources
14. User Interface Flow
UI Flow Template Example Creating UI Flows
Determine Scope of Screens Identify Screens
Diagramming What Constitutes a Screen?
Create Transitions
Identifying the Transitions Adding Transitions to the Diagram Branching
Label Triggers
Using UI Flows
Identifying Navigation Validating Navigation Optimizing Usability Developing Test Cases Deriving Requirements When to Use When Not to Use
Common Mistakes
Including Too Much Detail Including Unimportant Details Not Using a UI Expert When Needed
Related Models Exercise
Instructions Scenario
Additional Resources Rferences
15. Display-Action-Response
DAR Model Template
UI Element Description UI Element Displays UI Element Behaviors
Example Creating DAR Models
Prepare the Screen Create a UI Element Description Create the UI Element Displays Section Create the UI Element Behaviors Section Guidelines for Creating Element Tables
Using DARs
Driving Completeness Deriving Requirements When to Use When Not to Use
Common Mistakes
Modeling Too Much Modeling Elements with No Data-Driven Behavior or Display Using Only UI-Based Models or Prototypes Focusing on the User Interface Too Early Including Too Much Fidelity in the Screen Layout
Related Models Exercise
Instructions Scenario
Additional Resources References
16. Decision Table
Decision Table Template Example Creating Decision Tables
Identify Conditions Identify Choices
Determining Valid Choices Reordering Conditions Enumerating Choices
Identify Outcomes Label Valid Outcomes by Choice Combinations Simplify the Decision Table
Using Decision Tables
Making Decisions Driving Completeness Using Decision Tables with Decision Trees Deriving Requirements When to Use
Modeling Complex Logic
When Not to Use
Common Mistakes
Missing Permutations Overlapping Choice Ranges Not Combining Rules Modeling a Sequence of Decisions
Related Models Exercise
Instructions Scenario
Additional Resources References
17. Decision Tree
Decision Tree Template Example Creating Decision Trees
Identify Decisions Identify Choices Identify Outcomes Repeat Until Every Branch Ends in an Outcome Simplify the Decision Tree
Using Decision Trees
Driving Completeness Simplifying Logic Modeling Nested “If” Statements Training Users Deriving Requirements When to Use
Ordering Looping
When Not to Use
Common Mistakes
Modeling Process Steps Making All Yes or No Choices
Related Models Exercise
Instructions Scenario
Additional Resources References
18. System Interface Table
System Interface Table Template Example Creating System Interface Tables
Identify System Interfaces Determine Business Data Objects and Fields Determine Frequency of Transfer Determine Volume of Data Determine Error Handling Determine Security Constraints
Using System Interface Tables
Deriving Requirements When to Use When Not to Use
Common Mistakes
Including Information That Is Too Technical Documenting Every Interface Not Understanding User Needs
Related Models Exercise
Instructions Scenario
V. Data Models
19. Business Data Diagram
BDD Template
Business Data Example Diagram Template
Example Creating BDDs
Identify Business Data Objects Relate Business Data Objects Add Cardinalities Creating Business Data Example Diagrams
Using BDDs
Understanding the High-Level Business Data Objects Driving Completeness Identifying Processes Helping Technical Teams with Database Design Using Business Data Example Diagrams to Review BDDs Deriving Requirements When to Use When Not to Use
Common Mistakes
Including Fields As Objects Creating Middle-Man Objects Thinking in Terms of a Database Design
Related Models Exercise
Instructions Scenario
Additional Resources References
20. Data Flow Diagram
DFD Template Example Creating DFDs
Identify Business Data Objects Identify Processes Identify External Entities Tie the Diagram Together
Using DFDs
Representing Data Used Across Multiple Processes Using DFDs to Help with Readability Driving Completeness Deriving Requirements When to Use When Not to Use
Common Mistakes
Trying to Articulate Order in a DFD Trying to Document Every Single Data Flow
Related Models Exercise
Instructions Scenario
Additional Resources References
21. Data Dictionary
Data Dictionary Template
Properties List
Example Creating Data Dictionaries
Tailor Properties Identify Business Data Objects and Fields Populate Properties Supplement with Data Catalogs
Using Data Dictionaries
Promoting a Consistent Data Nomenclature Driving Completeness Deriving Requirements When to Use When Not to Use
Common Mistakes
Becoming Overwhelmed by the Size Not Articulating Important Validation Rules
Related Models Exercise
Instructions Scenario
Additional Resources References
22. State Table
State Table Template Example Creating State Tables
Identify the Business Data Objects Identify the States Analyze the Transitions
Using State Tables
Enhancing Readability Driving Completeness
Completing Other Models
Deriving Requirements When to Use When Not to Use
Common Mistakes
States That Are Not States Missing States Incorrect “No” Transitions
Related Models Exercise
Instructions Scenario
Additional Resources References
23. State Diagram
State Diagram Template Example Creating State Diagrams
Identify the Business Data Objects Identify the States Analyze the Transitions
Using State Diagrams
Visualizing Flow Between States Driving Completeness Deriving Requirements When to Use When Not to Use
Common Mistakes
States That Are Not States Missing States and Transitions
Related Models Exercise
Instructions Scenario
Additional Resources References
24. Report Table
Report Table Template Example Creating Report Tables
Identify Reports Prioritize Reports Complete Report Table Elements
Report Table Top-Level Elements Report Table Field Elements Managing Report Scope
Using Report Tables
Defining the Reports Checking Completeness and Consistency Against Other Models Deriving Requirements When to Use When Not to Use
Common Mistakes
Not Relating Reports to Decisions Made Documenting Unnecessary Reports
Related Models Exercise
Instructions Scenario
VI. Models in the Big Picture
25. Selecting Models for a Project
Selecting Models by Project Phases
Envision Phase Plan Phase Develop Phase Launch Phase Measure Phase
Selecting Models by Project Characteristics
Objectives Characteristics
Greenfield Projects Commercial Off the Shelf (COTS) Projects Enhancement Projects
People Characteristics
Systems with Extensive User Interaction Customer-Facing Systems Business Process Automation Projects Workflow Automation Projects
Systems Characteristics
System Replacement Projects Real-Time and Embedded Systems Large-Ecosystem Projects Internal IT Systems Hardware and Software Packaged Software Cloud Implementation Projects Web App Projects Mobile Systems Projects with Complex Decision Logic
Data Characteristics
Analytics and Reporting Components Database Back-End Components Data Warehouse Components
Project Examples
Thinking About the Audience Tailoring Models Exercise
Instructions Scenario
26. Using Models Together
Many Different Views Using More Than One Model Requirements Architecture
Relationships Between Models Where the Artifacts Live
A Models Plan Related Models Exercise
Instructions Scenario
A. Quick Lookup Models Grids
Additional Resources
B. General Guidelines for Models
Metadata to Include in Models General Guidelines and Tips
C. Exercise Answers
Chapter 3 Chapter 4 Chapter 5 Chapter 6 Chapter 7 Chapter 8 Chapter 9 Chapter 10 Chapter 11 Chapter 12 Chapter 13 Chapter 14 Chapter 15 Chapter 16 Chapter 17 Chapter 18 Chapter 19 Chapter 20 Chapter 21 Chapter 22 Chapter 23 Chapter 24 Chapter 25 Chapter 26
Glossary Index About the Authors Copyright
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion