Podcast
Questions and Answers
What do functional requirements specify?
What do functional requirements specify?
Non-functional requirements only include timing constraints.
Non-functional requirements only include timing constraints.
False
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.
Signup and view all the answers
Match the type of requirements with their descriptions:
Match the type of requirements with their descriptions:
Signup and view all the answers
Which of the following is NOT a component of functional requirements?
Which of the following is NOT a component of functional requirements?
Signup and view all the answers
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.
Signup and view all the answers
Provide an example of a functional requirement.
Provide an example of a functional requirement.
Signup and view all the answers
What is a primary goal of the analysis phase in requirements engineering?
What is a primary goal of the analysis phase in requirements engineering?
Signup and view all the answers
Participation by business users is not essential for determining system requirements.
Participation by business users is not essential for determining system requirements.
Signup and view all the answers
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.
Signup and view all the answers
The final deliverable of the analysis phase is the __________.
The final deliverable of the analysis phase is the __________.
Signup and view all the answers
Which of the following is NOT part of the analysis phase?
Which of the following is NOT part of the analysis phase?
Signup and view all the answers
Match the following terms with their correct descriptions:
Match the following terms with their correct descriptions:
Signup and view all the answers
The customer provides the exact specifications for the software/system.
The customer provides the exact specifications for the software/system.
Signup and view all the answers
What is the primary function of requirements determination in requirements engineering?
What is the primary function of requirements determination in requirements engineering?
Signup and view all the answers
What is the main goal of requirements engineering?
What is the main goal of requirements engineering?
Signup and view all the answers
Requirements must be defined in a way that pre-defines a solution.
Requirements must be defined in a way that pre-defines a solution.
Signup and view all the answers
Name one type of stakeholder involved in the requirements engineering process.
Name one type of stakeholder involved in the requirements engineering process.
Signup and view all the answers
Agile methods often use __________ to express requirements due to their changing nature.
Agile methods often use __________ to express requirements due to their changing nature.
Signup and view all the answers
Match the stakeholder types with their descriptions:
Match the stakeholder types with their descriptions:
Signup and view all the answers
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?
Signup and view all the answers
Agile methods advocate for producing extensive detailed system requirements.
Agile methods advocate for producing extensive detailed system requirements.
Signup and view all the answers
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?
Signup and view all the answers
Which of the following describes a user requirement?
Which of the following describes a user requirement?
Signup and view all the answers
User requirements should not focus on the users' business priorities.
User requirements should not focus on the users' business priorities.
Signup and view all the answers
List one example of a user requirement mentioned in the content.
List one example of a user requirement mentioned in the content.
Signup and view all the answers
A Sales Representative must have the capability to __________ within the system.
A Sales Representative must have the capability to __________ within the system.
Signup and view all the answers
Match the user requirement to its description:
Match the user requirement to its description:
Signup and view all the answers
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?
Signup and view all the answers
User tasks are not relevant to the design of new software systems.
User tasks are not relevant to the design of new software systems.
Signup and view all the answers
What are two considerations that user requirements must address?
What are two considerations that user requirements must address?
Signup and view all the answers
Which of the following is a common problem during requirements elicitation?
Which of the following is a common problem during requirements elicitation?
Signup and view all the answers
Stakeholders often know exactly what they want when discussing system requirements.
Stakeholders often know exactly what they want when discussing system requirements.
Signup and view all the answers
What is the first stage of the requirements elicitation process?
What is the first stage of the requirements elicitation process?
Signup and view all the answers
The process of grouping related requirements is called __________.
The process of grouping related requirements is called __________.
Signup and view all the answers
What could influence system requirements besides stakeholder opinions?
What could influence system requirements besides stakeholder opinions?
Signup and view all the answers
Match the following stages of requirements elicitation with their descriptions:
Match the following stages of requirements elicitation with their descriptions:
Signup and view all the answers
New stakeholders cannot emerge once the requirements elicitation process begins.
New stakeholders cannot emerge once the requirements elicitation process begins.
Signup and view all the answers
What is the purpose of requirements prioritization?
What is the purpose of requirements prioritization?
Signup and view all the answers
Which of the following is an example of a non-functional requirement?
Which of the following is an example of a non-functional requirement?
Signup and view all the answers
Organisational requirements only refer to external factors affecting system development.
Organisational requirements only refer to external factors affecting system development.
Signup and view all the answers
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?
Signup and view all the answers
External requirements arise from factors __________ to the system and its development process.
External requirements arise from factors __________ to the system and its development process.
Signup and view all the answers
Match each type of requirement with its definition:
Match each type of requirement with its definition:
Signup and view all the answers
Which requirement indicates a usability concern for the system?
Which requirement indicates a usability concern for the system?
Signup and view all the answers
Functional requirements can often be interconnected with non-functional requirements.
Functional requirements can often be interconnected with non-functional requirements.
Signup and view all the answers
Give two examples of functional business requirements from the provided system requirements.
Give two examples of functional business requirements from the provided system requirements.
Signup and view all the answers
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.
Related Documents
Description
Explore the essential concepts of Requirements Engineering in Software Engineering. This chapter focuses on the importance of accurate requirements analysis, classification of requirements, and the development of the system proposal. Understand how to differentiate between the 'As-Is' and 'To-Be' systems and the significance of these phases in project success.