Requirements Basics Flashcards
(33 cards)
What is the definition of requirements we will use in this class?
Statement that translates or expresses a need and its associated constraints and conditions
How does IEEE define a Stakeholder?
- Individual or organisation that have an interest or claim in a system
- Individual or organisation who may affect, be affected by, or perceive to be affected by a decision, activity, or outcome of a project
- Individual or organisation with an interest in a system
- Individual or organisation who may affect, be affected by, or perceive to be affected by a risk
What are some examples of stakeholders?
end users, supporters, developers, producers, trainers, maintainers, acquirers, interested parties
What is a constraint?
Externally imposed limitation on the system, its design, or implementation or on the process used to develop or modify the system
What is a condition?
Measurable qualitative or quantitative attribute that is stipulated for a requirement and that indicates a circumstance or event under which a requirement applies
What is an attribute?
Inherent property of an entity that can be distinguished quantitatively or qualitatively
What is requirements engineering?
Mediation between the domains of the acquirer and supplier to establish and maintain the requirements to be met by the system, software, or service of interest
What is an acquirer?
A stakeholder that acquires or procures a product or service from a supplier. Other terms are buyer, customer, owner, purchaser, or sponsor
What is a supplier?
Organisation or individual that enters into an agreement with the acquirer for the supply of a product or service. Other terms are contractor, producer, seller, or vendor
The acquirer and the supplier sometimes are part of the same organisation
Why are requirement deficiencies the prime source of project failures?
Everything else comes from requirements, as it’s so early
During requirements inception, what issues can you get from clients?
- They do not know what they want
- They will have a better idea once they see a working example
How do we get past that fact that users don’t know what they want?
We use incremental and iterative development processes, which is the basis of all modern processes, including agile
Why shouldn’t requirements contains design or implementation details?
We should let the developer come up with the best implementation of a requirement.
What are some examples of maintainability requirements?
- It should not take more than an hour to fix a bug
- Planned maintenance shouldn’t be required for more than once a month
How do we ensure requirements are communicated is unambiguously as possible?
Iterate and show them (demos)
What is the main thing a requirements engineer does?
Knowledge transfer from customers needs into technical languages for developers
What is a product requirement?
A need or constraint on the software to be developed?
What is a process requirement?
A constraint on the development of the software (ie this will be developed suing an agile process)
What is a functional requirement?
The functions that the software is to execute. Also known as capabilities or features
What is a nonfunctional requirement?
Requirements that act to constrain the solution. Also known as quality requirements
What are some categories of nonfunctional requirements?
Performance Maintainability Safety Reliability Security
What are emergent properties?
Requirements that cannot be addressed by a single component, but depends on how multiple software components interoperate.
What is an example of an emergent property?
the response time between a user clicking on a stock symbol on a web page and the page showing the updated stock price depends on:
- Metal speed of web server
- Code of the web server
- Speed of DB server
- Speed of internet
What is a system?
An interacting combination of elements to accomplish a defined objective (hardware, firmware, software, people, info, etc)