Chapter 9 - Requirements Engineering Flashcards
Requirements engineering is a cyclical process involving four types of activities
elicitation, specification, validation/verification, and negotiation
Define: requirement
a condition or capability needed by a user to solve a problem or achieve an objective
Define: requirements specification
the mutual understanding of the problem to be solved between the analyst and the client
In the design phase
the architecture of the system is devised in terms of system components and interfaces between those components
Define: Requirements elicitation
understanding the problem
Define: Requirements specification
describing the problem
Define: Requirements validation/verification
agreeing upon the nature of the problem: making sure the correct requirements are state(validation) and that those requirements are stated correctly(verification)
Define: explicit conceptual model
contains all relevant information from the universe of discourse
Define: implicit conceptual model
shared background knowledge of people in the universe of discourse
Define: requirements negotiation
agreeing upon the bounds of the problem
Define: domain
the general field of business/tech in which the clients will use the software
Define: domain expert
someone with deep knowledge of the domain
Benefits of performing domain analysis?
faster development, better system, anticipation of extensions
A problem can be expressed as
a difficulty customer/users are facing an opportunity that will result in benefit
Define: functional requirements
what the system should do
Define: quality requirements
(verifiable) constraints on the design to meet specified levels of quality
Define: platform requirements
constraints on the environment and tech of the system
Define: process requirements
constraints on the project plan and development methods