Podcast
Questions and Answers
What do functional requirements specify?
What do functional requirements specify?
- The system's performance metrics
- The application domain characteristics
- The constraints on the development process
- The services the system should provide (correct)
Non-functional requirements only include timing constraints.
Non-functional requirements only include timing constraints.
False (B)
What is the difference between functional user requirements and functional system requirements?
What is the difference between functional user requirements and functional system requirements?
Functional user requirements are high-level statements of what the system should do, while functional system requirements describe the services in detail.
Functional requirements describe __________ or system services.
Functional requirements describe __________ or system services.
Match the type of requirements with their descriptions:
Match the type of requirements with their descriptions:
Which of the following is NOT a component of functional requirements?
Which of the following is NOT a component of functional requirements?
Functional requirements do not depend on the type of software or expected users.
Functional requirements do not depend on the type of software or expected users.
Provide an example of a functional requirement.
Provide an example of a functional requirement.
What is a primary goal of the analysis phase in requirements engineering?
What is a primary goal of the analysis phase in requirements engineering?
Participation by business users is not essential for determining system requirements.
Participation by business users is not essential for determining system requirements.
Name one technique that helps users discover their needs for the new system.
Name one technique that helps users discover their needs for the new system.
The final deliverable of the analysis phase is the __________.
The final deliverable of the analysis phase is the __________.
Which of the following is NOT part of the analysis phase?
Which of the following is NOT part of the analysis phase?
Match the following terms with their correct descriptions:
Match the following terms with their correct descriptions:
The customer provides the exact specifications for the software/system.
The customer provides the exact specifications for the software/system.
What is the primary function of requirements determination in requirements engineering?
What is the primary function of requirements determination in requirements engineering?
What is the main goal of requirements engineering?
What is the main goal of requirements engineering?
Requirements must be defined in a way that pre-defines a solution.
Requirements must be defined in a way that pre-defines a solution.
Name one type of stakeholder involved in the requirements engineering process.
Name one type of stakeholder involved in the requirements engineering process.
Agile methods often use __________ to express requirements due to their changing nature.
Agile methods often use __________ to express requirements due to their changing nature.
Match the stakeholder types with their descriptions:
Match the stakeholder types with their descriptions:
In requirements engineering, what is the purpose of writing a requirements document after a contract is awarded?
In requirements engineering, what is the purpose of writing a requirements document after a contract is awarded?
Agile methods advocate for producing extensive detailed system requirements.
Agile methods advocate for producing extensive detailed system requirements.
What is one challenge faced by agile methods in the context of critical systems?
What is one challenge faced by agile methods in the context of critical systems?
Which of the following describes a user requirement?
Which of the following describes a user requirement?
User requirements should not focus on the users' business priorities.
User requirements should not focus on the users' business priorities.
List one example of a user requirement mentioned in the content.
List one example of a user requirement mentioned in the content.
A Sales Representative must have the capability to __________ within the system.
A Sales Representative must have the capability to __________ within the system.
Match the user requirement to its description:
Match the user requirement to its description:
What is an example of a problem addressed in the requirements engineering process?
What is an example of a problem addressed in the requirements engineering process?
User tasks are not relevant to the design of new software systems.
User tasks are not relevant to the design of new software systems.
What are two considerations that user requirements must address?
What are two considerations that user requirements must address?
Which of the following is a common problem during requirements elicitation?
Which of the following is a common problem during requirements elicitation?
Stakeholders often know exactly what they want when discussing system requirements.
Stakeholders often know exactly what they want when discussing system requirements.
What is the first stage of the requirements elicitation process?
What is the first stage of the requirements elicitation process?
The process of grouping related requirements is called __________.
The process of grouping related requirements is called __________.
What could influence system requirements besides stakeholder opinions?
What could influence system requirements besides stakeholder opinions?
Match the following stages of requirements elicitation with their descriptions:
Match the following stages of requirements elicitation with their descriptions:
New stakeholders cannot emerge once the requirements elicitation process begins.
New stakeholders cannot emerge once the requirements elicitation process begins.
What is the purpose of requirements prioritization?
What is the purpose of requirements prioritization?
Which of the following is an example of a non-functional requirement?
Which of the following is an example of a non-functional requirement?
Organisational requirements only refer to external factors affecting system development.
Organisational requirements only refer to external factors affecting system development.
What type of requirement might require changes to the overall architecture of a system?
What type of requirement might require changes to the overall architecture of a system?
External requirements arise from factors __________ to the system and its development process.
External requirements arise from factors __________ to the system and its development process.
Match each type of requirement with its definition:
Match each type of requirement with its definition:
Which requirement indicates a usability concern for the system?
Which requirement indicates a usability concern for the system?
Functional requirements can often be interconnected with non-functional requirements.
Functional requirements can often be interconnected with non-functional requirements.
Give two examples of functional business requirements from the provided system requirements.
Give two examples of functional business requirements from the provided system requirements.
Flashcards
Requirements Engineering
Requirements Engineering
The process of figuring out what a system needs to do and the constraints it has to follow from a customer's perspective.
Functional Requirements
Functional Requirements
Statements about the system's services, reactions to inputs, and behaviors in various situations; what a system does.
Requirements
Requirements
Detailed descriptions of a system's features and limits, created during requirements engineering.
Non-functional Requirements
Non-functional Requirements
Signup and view all the flashcards
Requirements Abstraction
Requirements Abstraction
Signup and view all the flashcards
Domain Requirements
Domain Requirements
Signup and view all the flashcards
System Stakeholders
System Stakeholders
Signup and view all the flashcards
Functional User Requirements
Functional User Requirements
Signup and view all the flashcards
Agile Methods & Requirements
Agile Methods & Requirements
Signup and view all the flashcards
Functional System Requirements
Functional System Requirements
Signup and view all the flashcards
System Purpose
System Purpose
Signup and view all the flashcards
System Inputs
System Inputs
Signup and view all the flashcards
System Outputs
System Outputs
Signup and view all the flashcards
System Data Storage
System Data Storage
Signup and view all the flashcards
System Computations
System Computations
Signup and view all the flashcards
Process-Oriented Requirements
Process-Oriented Requirements
Signup and view all the flashcards
Information-Oriented Requirements
Information-Oriented Requirements
Signup and view all the flashcards
Analysis Phase Goal
Analysis Phase Goal
Signup and view all the flashcards
Critical Thinking in Analysis
Critical Thinking in Analysis
Signup and view all the flashcards
User Participation (Requirements)
User Participation (Requirements)
Signup and view all the flashcards
BPA, BPI, BPR
BPA, BPI, BPR
Signup and view all the flashcards
Software/System Proposal
Software/System Proposal
Signup and view all the flashcards
Analysis Phase Deliverables
Analysis Phase Deliverables
Signup and view all the flashcards
Problem Domain
Problem Domain
Signup and view all the flashcards
Software (Solution) Domain
Software (Solution) Domain
Signup and view all the flashcards
Customer Problem Statement
Customer Problem Statement
Signup and view all the flashcards
Requirements Engineering
Requirements Engineering
Signup and view all the flashcards
Stakeholders
Stakeholders
Signup and view all the flashcards
Requirement Elicitation Problems
Requirement Elicitation Problems
Signup and view all the flashcards
Requirements Discovery
Requirements Discovery
Signup and view all the flashcards
Requirements Classification
Requirements Classification
Signup and view all the flashcards
Requirements Prioritization
Requirements Prioritization
Signup and view all the flashcards
Requirements Specification
Requirements Specification
Signup and view all the flashcards
Focus of Information Collection
Focus of Information Collection
Signup and view all the flashcards
User Requirements
User Requirements
Signup and view all the flashcards
Schedule Client Appointment
Schedule Client Appointment
Signup and view all the flashcards
Place Customer Order
Place Customer Order
Signup and view all the flashcards
Reorder Inventory
Reorder Inventory
Signup and view all the flashcards
Check Available Credit
Check Available Credit
Signup and view all the flashcards
Look Up Account Balances
Look Up Account Balances
Signup and view all the flashcards
Functional Business Requirements
Functional Business Requirements
Signup and view all the flashcards
Example Functional Requirements
Example Functional Requirements
Signup and view all the flashcards
Non-functional Requirements
Non-functional Requirements
Signup and view all the flashcards
Example Non-functional Requirements
Example Non-functional Requirements
Signup and view all the flashcards
Non-Functional Types
Non-Functional Types
Signup and view all the flashcards
Performance Requirements
Performance Requirements
Signup and view all the flashcards
Organisational Requirements
Organisational Requirements
Signup and view all the flashcards
External Requirements
External Requirements
Signup and view all the flashcards
Study Notes
Software Engineering - Chapter 4
- Requirements Engineering is a crucial part of software development, with 37% of problems stemming from poor requirements.
- Requirements analysis is the phase of understanding who uses the system, what it does, and where it operates.
- Key deliverables are combined into a system proposal to determine if the project continues.
- The analysis phase includes classifying requirements: business, user, functional, and nonfunctional.
- The "As-Is" system represents the present system, which might or might not be computerized.
- The "To-Be" system is the new system that fulfills updated requirements.
- The System Proposal is the critical output from the analysis phase.
- Analysis refers to breaking down complex systems into their parts for understanding.
- The planning phase outputs are necessary inputs for the analysis phase.
- The goal in analysis is to fully grasp the new system's requirements.
- Understanding the "As-Is" system, identifying improvements, and defining the "To-Be" system are crucial.
- Business Process Automation (BPA), Business Process Improvement (BPI), and Business Process Reengineering (BPR) are used to discover user needs for the new system.
- The final analysis phase output is the software/system proposal.
- This proposal is presented as a walk-through to the approval committee for detailed explanation.
- The analysis phase's deliverables are the initial step in designing the new software/system.
- Recognizing that a customer's problem statement isn't the same as requirements is vital.
- Requirements engineering transforms high-level business requests into detailed specifications of the desired software/system functionality.
- Two key questions to ask are: "How can we identify the purpose of the system?" (i.e., features and constraints) and, "What is inside/outside the system?".
- Requirements elicitation (gathering) defines system needs, how it works in a day-to-day basis, and its role in the business.
- Requirements analysis clarifies the system's functions and specifications for the developers.
- Requirements specification formalizes the system's requirements for better clarity and consistency among stakeholders and developers.
- Requirements validation guarantees the system fulfills the needed requirements.
- Requirements are described through functional and non-functional descriptions.
- Functional requirements focus on what the system should do.
- Non-functional requirements focus on how the system should work (e.g., performance, security).
- Agile development often avoids detailed requirements, relying more on user stories and an iterative approach.
- User requirements detail tasks users must do within a system.
- Requirements should be complete and consistent, but this is typically challenging in reality.
- The analysis phase should consider business and IT perspectives, and stakeholders' needs.
Learning Objectives
- Explain the analysis phase of the Software Development Lifecycle (SDLC).
- Describe the elements of a requirements definition statement.
- Categorize requirements as business, user, functional, or non-functional.
- Understand how requirements elicitation mechanisms work.
- Define the function of each requirement elicitation technique.
- Demonstrate understanding of requirements specification and validation.
Key Definitions
- As-Is System: The current system (may or may not be computerized).
- To-Be System: The new system based on updated requirements.
- System Proposal: The main deliverable from the analysis phase.
Types of Requirements
- Functional Requirements: What the system should do.
- Non-functional Requirements: How the system should perform (e.g., performance, security).
- Business Requirements: The business needs.
- User Requirements: The needs of the user.
Information Collection Activities
- Business description and operational details (current situation).
- System environment and context.
- Existing business processes.
- Problems with the current system.
- Business or product goals.
- Users of the current and future systems.
- Customer and user priorities and needs.
- Any considerations of quality, performance, or security.
User Requirements Example
- Scheduling appointments, placing orders, re-ordering inventory, determining credit availability, and looking up account balances are typical scenarios.
Functional and Non-Functional Requirements
- Functional Requirements: Statements that define how a system serves users (e.g., input, output, behaviour).
- Non-functional Requirements: Requirements related to constraints, standards, timing, or the development process.
- Domain requirements stem from application specifics (e.g., implementation language).
Functional Requirements Examples
- User authentication, search functionality, recording and storing customer orders, generating and sending email notifications, user permissions, inventory management, and processing payments.
Requirements as User Stories
- User Stories are requirements expressed as end-user goals.
- They are expressed from the end-user's perspective emphasizing a specific user goal or action.
Requirements Imprecision
- Problems arise when functional requirements are not clearly stated, leading to ambiguity.
- Stakeholders may express requirements in their own terms.
- Conflicting requirements among stakeholders are also a problem.
Requirements Completeness and Consistency
- Requirements should fully cover all needed system features and be free from conflicts or contradictions for practicality.
Non-Functional Requirements
- These are constraints on the services offered, the development process, standards, etc. Example include performance(speed, capacity, reliability, availability), security(access constraints, safeguards) operational(physical and technical details), cultural/political requirements.
Metrics for Non-Functional Requirements
- Metrics define how to quantify and measure non-functional requirements (e.g., speed, size).
More on Non-Functional Requirements
- Operational details specify the hardware/software environments.
- Performance specifies system speed, capacity, and reliability.
- Security addresses access and safeguards.
- Specific cultural or political requirements are considered.
Process Activities
- Requirements are elicited and discovered from stakeholders.
- Requirements are organized, classified, prioritized, and negotiated.
- Requirements are formally specified.
Requirements Engineering Processes
- These processes widely vary depending on the application, domain, and the team/organization involved.
- However, they include generic activities common to all projects.
- Interleaved activities involve elicitation, analysis, specification, and validation.
The Process of Determining Requirements
- Both business and IT perspectives are key in determining requirements during the analysis phase.
- The best approach brings business, software engineering/analysis experts together.
- The team should elicit requirements from stakeholders with consideration for requirements evolution.
Requirements elicitation and analysis
- Stakeholder requirements are elicited and analyzed, covering maintainance, maintenance
- Methods help discover and document stakeholder requirements. Domain experts, users, managers, and engineers are potentially involved.
Problems in Requirements Elicitation
- Stakeholders may not precisely know what they need or understand limitations.
- People communicate in different ways.
- Conflicts and political influences may appear and change over time.
- Requirements frequently change during the process, and new stakeholders can emerge.
Stages in Requirements Elicitation
- Requirements discovery, organization, prioritization, negotiation, and specification.
Requirements Definition Report
- A document, report, or statement listing requirements in an outline.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.