Lecture_11 Flashcards
Course Summary & Exam
What is Requirements Engineering (RE)?
RE is the process of defining, documenting, and maintaining system requirements.
What are the key goals of RE?
To help people specify the qualities and functions of the “right” system.
What are the key RE concepts?
Functional and non-functional requirements, stakeholders, constraints, specifications, priority, and scenarios.
What are the quality characteristics of requirements?
Clarity, completeness, feasibility, traceability, and testability.
What are some requirements modeling techniques?
Context diagrams, use case diagrams, goal models, customer journey maps.
What are the benefits and drawbacks of elicitation techniques?
Some techniques provide detailed information but can be time-consuming (e.g., interviews vs. surveys).
What is the role of verification and validation in RE?
Verification: Ensures the system meets requirements.
Validation: Ensures the system meets user needs.
Why is elicitation difficult?
Knowledge is often implicit and spread across multiple sources.
Bias and hidden agendas can affect accuracy.
What are some elicitation techniques?
Traditional: Documentation, interviews, surveys.
Collaborative: Focus groups, prototyping.
Contextual: Participant observation.
Cognitive: Think-aloud protocol.
What are personas in RE?
Fictional characters representing user groups with demographics, goals, and behaviors.
What are Boden’s three types of creativity?
Exploratory: Improving existing ideas.
Combinatorial: Mixing different concepts.
Transformational: Changing fundamental assumptions.
What are domain properties, requirements, and specifications?
Domain Properties (D): Facts about the system environment.
Requirements (R): What the system must achieve.
Specifications (S): How the system will meet requirements.
Why should requirements avoid design details?
To maintain flexibility in implementation.
Who are stakeholders in RE?
Anyone affected by the system, including users, managers, and external entities.
What is the difference between users and stakeholders?
Users: Directly interact with the system.
Stakeholders: Have a vested interest but may not use the system.
What is the difference between functional and non-functional requirements?
Functional: What the system must do.
Non-functional: Qualities like usability, security, and performance.
What are constraints in RE?
Restrictions that shape system design (e.g., legal, budget, infrastructure).
What is requirements traceability?
Tracking requirements from origin to implementation.
What is an SRS (Software Requirement Specification)?
A formal document that specifies system requirements.
What are some alternative documentation formats?
User Stories: “As a [user], I want [goal], so that [reason].”
Use Cases: Structured descriptions of user-system interactions.
What are IEEE-recommended requirement attributes?
Identification, version, priority, risk, difficulty, and owner.
What is the $100 method for prioritization?
Stakeholders distribute $100 among competing requirements based on importance.
What is the value vs. cost method?
Evaluating trade-offs between requirement benefits and implementation cost.
What are different types of prototypes?
Paper: Quick and low-cost.
Digital: More realistic but requires software.
Web-based: Interactive but technical.