Prepared by Amira Selim 31 st October 2009 Revised by Dahlia Biazid Requirements Analysis
What is Requirements Analysis? A Knowledge Area that describes the tasks and techniques used by a business analyst to analyze stated requirements in order to define what is required.
Requirements Analysis Tasks Prioritize Organize Specify and Model Define Assumptions and Constraints Verify Validate
What is Prioritization? A decision process used to determine the relative importance of requirements
Why Prioritize? To ensure that analysis and implementation efforts focus on the most critical requirements first
How to decide on Priority? Evaluate the business value Business or Technical Risk Implementation Difficulty * Likelihood of Success Regulatory or Policy Compliance Relationship to Other Requirements Stakeholder Agreement * Urgency
Techniques Decision Analysis Risk Analysis MoSCoW Analysis Timeboxing/Budgeting Voting
Output A prioritized requirement with an attribute that describes its relative importance to stakeholders and the organization
Requirements Analysis Tasks Prioritize Organize Specify and Model Define Assumptions and Constraints Verify Validate
What is Organization? Present requirements in structured views in order to...
Why Organize? Show: Different stakeholder perspectives Analyst and stakeholders where to find a specific requirement Interrelationships and dependencies between requirements
How to Organize? Who needs what? What as opposed to How?
Example Techniques Business Rules Process and Data Diagrams Functional Break down Use Cases
Output Structured requirements and documentation of the relationships between them
Requirements Analysis Tasks Prioritize Organize Specify and Model Define Assumptions and Constraints Verify Validate
What is Specify and Model? Analyze expressed stakeholder desires and/or the current state of the organization using a combination of textual statements, matrices, and diagrams Models
Why Specify and Model? Analyze the functioning of an organization and provide insight into opportunities for improvement
How to Specify and Model? Statements Matrix Documentation Diagrams Capture Requirements Attributes
Techniques Including but not limited to: – Business Rules Analysis – Non-functional requirements analysis – State Diagrams – User Stories – Prototyping – Data Flow Diagrams – Data Modeling – Functional Decomposition – Sequence Diagrams
Output Analyzed, Specified Requirements Possibly models
Requirements Analysis Tasks Prioritize Organize Specify and Model Define Assumptions and Constraints Verify Validate
What are Assumptions and Constraints? Assumptions are factors believed to be true, but not yet confirmed. Constraints are restrictions or limitations on possible solutions.
Why Define Assumptions and Constraints? Identify factors other than requirements that may affect which solutions are feasible
How to Define Assumptions and Constraints? Document unconfirmed facts Business Constraints Technical Constraints
Techniques Problem Tracking Risk Analysis
Output monitoredupdated List of monitored and updated Assumptions and Constraints
Requirements Analysis Tasks Prioritize Organize Specify and Model Define Assumptions and Constraints Verify Validate
What is Verification? Final check by the business analyst and key stakeholders to determine that requirements: – Are ready for formal review and validation by customers and users – Provide all information needed for further work
Why Verify? To ensure that requirements have been defined correctly and are of acceptable quality
How to decide on Verification? Characteristics of Requirements Quality Verification Activities
Techniques Acceptance and Evaluation Criteria Problem Tracking Structured Walkthrough
Output Verified Requirements of sufficient quality to allow further work
Requirements Analysis Tasks Prioritize Organize Specify and Model Define Assumptions and Constraints Verify Validate
What is Validation? Ongoing Ongoing process to ensure that stakeholder, solution, and transition requirements align to business requirements
Why Validate? To ensure that all requirements support the delivery of value to the business, fulfill its goals and objectives, and meet a stakeholder need
How to decide on Validation? Identify Assumptions Define Measurable Evaluation Criteria Determine business value Evaluate Alignment with Business Need
Example Techniques Acceptance and Evaluation Criteria Definition Prototyping Structured Walkthrough
Output Validated Requirements demonstrated to deliver value to stakeholders and are aligned with the business goals and objectives
Requirements Analysis Tasks Prioritize Organize Specify and Model Define Assumptions and Constraints Verify Validate
I am done for today! Any Questions?