Software Requirements Analysis

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson
Download our mobile app to listen on the go
Get App

Questions and Answers

Which of the following BEST describes the purpose of 'Requirements' in software development?

  • To specify the marketing strategies for the software product.
  • To detail the hardware configurations required for the software to run.
  • To outline the product's business needs, features, functionality, behaviors, and expected performance. (correct)
  • To define the specific code structure and algorithms to be used.

What does the term 'Requirements Engineering' primarily encompass?

  • The tasks, problem-solving, and knowledge contribution involved in creating and managing requirements. (correct)
  • The coding and testing phases of software development.
  • The process of designing the user interface and user experience.
  • The deployment and maintenance of the software application.

Which activity is MOST associated with Software Requirements Analysis?

  • Eliciting, analyzing, specifying, and validating software requirements. (correct)
  • Designing the database schema for the application.
  • Writing code to implement the software's features.
  • Creating user manuals and training materials.

What is the PRIMARY focus of 'Requirements Management'?

<p>Validating and meeting the needs and requirements of clients and stakeholders. (C)</p> Signup and view all the answers

Which of the following BEST describes what a requirement is in the context of software development?

<p>Something that is needed or wanted, identifying the product's business needs and purpose. (D)</p> Signup and view all the answers

According to the content, what are the three dimensions that assure good requirements?

<p>People, Organization, Technology (C)</p> Signup and view all the answers

What is the importance of involving all stakeholders when gathering requirements?

<p>To ensure that all relevant perspectives are considered, leading to comprehensive requirements. (A)</p> Signup and view all the answers

Stakeholder requirements can be problematic for several reasons. Which of the following is NOT mentioned as a potential issue?

<p>Stakeholders always agree on every aspect of the project. (D)</p> Signup and view all the answers

Which of the following BEST describes 'Overspecification' in the context of requirement problems?

<p>Telling the designer how to do their job, limiting their creativity. (D)</p> Signup and view all the answers

According to IEEE 830, what is a crucial characteristic of good software requirements?

<p>They should correctly describe the system behavior. (C)</p> Signup and view all the answers

What does it mean for a software requirement to be 'unambiguous'?

<p>It is written in a way that is not subject to different interpretations. (D)</p> Signup and view all the answers

Which of the following is an example of a BAD software requirement?

<p>&quot;The system shall be completely reliable.&quot; (D)</p> Signup and view all the answers

Why is the statement "The system should be fast" considered a poor software requirement?

<p>It is subjective and lacks measurable criteria for success. (D)</p> Signup and view all the answers

Which statement is an example of a GOOD software requirement?

<p>&quot;The response time for the system to present the checkout page upon an order button click on a product detail page shall be less than 500ms.&quot; (B)</p> Signup and view all the answers

According to the material, what term should be used for manditory requirements?

<p>Shall (D)</p> Signup and view all the answers

How do QA personnel and testers typically use the software requirements document?

<p>As a basis for writing and conducting tests. (C)</p> Signup and view all the answers

What is the FIRST phase in the requirements management process?

<p>Collection (B)</p> Signup and view all the answers

What is the Business Requirements Document (BRD) used for?

<p>To outline measurable goals for the software (C)</p> Signup and view all the answers

What would you find in the User Requirements Specification (URS)?

<p>Specific user needs or expectations (B)</p> Signup and view all the answers

What details does the Software Requirements Specification (SRS) provide?

<p>The specific features, functions, nonfunctional requirements, and requisite use cases for the software (B)</p> Signup and view all the answers

Flashcards

Requirements

A high-level identification of a product's business needs, features, functionality and stakeholders expectations.

Requirements Engineering

Tasks to complete, problems to solve, and method to contribute knowledge to the system.

Software Requirements Analysis

Elicitation, analysis, specification, and validation of software requirements throughout the software product lifecycle.

Requirements Management

Validating and meeting the needs of clients and external/internal stakeholders.

Signup and view all the flashcards

A Requirement

Something needed or wanted that identifies the product's business needs, features, functionality and stakeholders expectations.

Signup and view all the flashcards

Definition (in requirements)

A specification of a business process, service, product or system.

Signup and view all the flashcards

Value of Requirements

Requirements are the building blocks of strategic initiatives.

Signup and view all the flashcards

Use Case

A technique used to identify, define, and document the steps needed to achieve a specific goal.

Signup and view all the flashcards

User Story

A simple, concise way to capture a software system's requirements from an end-user perspective.

Signup and view all the flashcards

Business Rules

Specific regulations, policies, or standards that govern how a business operates and what it can or cannot do.

Signup and view all the flashcards

Good Requirements

Requirements assure a balance of people, organization, and technology.

Signup and view all the flashcards

Gather Requirements

Listen to needs, ask for clarification, record views, resolve inconsistencies and generate a consensus

Signup and view all the flashcards

Requirement Problem

There's a lack of clarity, requirements confusion and requirements amalgamation

Signup and view all the flashcards

Correct SRS

It should Correctly describe the system behavior.

Signup and view all the flashcards

Unambiguous SRS

Should be written in a way that is not subject to different interpretations.

Signup and view all the flashcards

Complete SRS

The software requirements document should completely describe the system's expected behaviors and feature set.

Signup and view all the flashcards

Consistent SRS

SRS must not contradict each other.

Signup and view all the flashcards

Software Requirements Specification (SRS)

The SRS details what the software will do, and it expands upon or translates the BRD into features and functions that developers understand.

Signup and view all the flashcards

Business requirements

They’re the specific goals that a business hopes to achieve through the implementation of a project or initiative.

Signup and view all the flashcards

User requirements

They reflect the specific needs or expectations of the software's customers.

Signup and view all the flashcards

Study Notes

Definitions of Terms/Concepts

  • Requirements specify the product's business needs/purposes at a high level
  • They clarify the features, functionality, behaviors, and performance that stakeholders expect
  • Requirements Engineering encompasses the tasks to be completed, problems to be solved, and ways of contributing to knowledge or system types
  • Software Requirements Analysis involves elicitation, analysis, specification, and validation of software needs throughout the software product lifecycle
  • Requirements management validates and meets the needs/requirements of clients, external, and internal stakeholders

The Requirement Problem - What is a Requirement?

  • A requirement is a needed or wanted element
  • Requirements pinpoint business needs/purposes at a high level

The Requirement Problem - Requirements Dimensions

  • Good requirements rely on a balance between people, organization, and technology

The Requirement Problem - Gathering Requirements

  • Effective gathering involves talking to users to understand their needs
  • Ask for clarification and record views
  • Clarify views by resolving inconsistencies and generating a consensus
  • Stakeholder participation is crucial

The Requirement Problem - Requirement Issues

  • Stakeholders may lack a clear vision or have unrealistic expectations
  • Stakeholders' language usage introduces communication barriers
  • Lack of clarity, requirements confusion, and requirements amalgamation can occur
  • Varying stakeholder needs may arise
  • Political and economic factors influence requirements
  • Physical environment considerations are critical to project success

The Requirement Problem - More Requirement Issues

  • Noise: Irrelevant or meaningless information
  • Silence: Missing key elements
  • Overspecification/implementation bias dictates design choices
  • Contradiction: Conflicting descriptions of the same element
  • Un-satisfiability: Unrealistic specifications
  • Ambiguity: Lack of precision
  • Wishful thinking: Unrealistic or unreasonable demands

The Requirement Problem - Characteristics of Software Requirements

  • IEEE 830 outlines characteristics of good software requirements
  • Correctness: The SRS should accurately reflect system behavior and align with user goals
  • Unambiguous: Requirements should be clear, avoiding multiple interpretations through specific language
  • Completeness: The software requirements document should comprehensively describe anticipated behaviors and features
  • Consistency: Requirements should not contradict each other

The Requirement Problem - Bad Software Requirements

  • Poor requirements include terms like "completely reliable," "maintainable," "fast," use "artificial intelligence," or "totally modular" without specifics

The Requirement Problem - Good Software Requirements

  • Use "Shall" for mandatory requirements and "Should" for optional/nice-to-have items
  • The response time must be less than 500ms
  • 95% of all transactions must be processed in under 4s
  • MTBF for the Controller shall be 5000 hours

The Requirement Problem - Role of Software Requirements

  • Customers/clients use the requirements document to express their needs and expectations throughout the software development lifecycle
  • Developers/programmers use it to design solutions that satisfy requirements
  • QA personnel/testers it as a basis for testing
  • Managers/project leaders use it as a contract and control the project
  • System/Maintenance engineers use it as a guide for system evolution

Software Requirement Management

  • Collection: gathering feedback and needs from both customers and internal teams
  • Analysis: involves determining whether proposed features and requirements align with the company or product vision
  • Definition: includes documenting requirements from the user perspective and detailing functional or technical aspects
  • Prioritization: involves planning upcoming releases or sprints and deciding which features and requirements to include
  • Validation and Maintenance: focuses on creating a definition of complete and planning ongoing enhancements

The Requirement Problem - Types of Software Requirements

  • Business requirements outline the business's measurable goals, define the software project's purpose, and aligns it with stakeholder objectives
  • User requirements reflect specific user needs and expectations and highlighting how users interact with the software
  • Software requirements identify features, functions, non-functional needs, use cases

Business Requirements

  • A BRD contains one or more statements aligning project goals with measurable stakeholder or business goals
  • A BRD Statement format: "The [project name] software will [meet a business goal] in order to [realize a business benefit]."
  • Example: Laser marking software will mark text and images on stainless steel to save chemical costs

User Requirements

  • User requirements reflect the specific needs/expectations of customers
  • Format of User Requirements is: "The [user type] shall [interact with the software] in order to [meet a business goal or achieve a result]."
  • Example: The production floor manager should upload new marking files to have an updated library of laser marking images

Software Requirements Breakdown

  • The team creates an SRS that lists the features, functions, nonfunctional items, and use cases
  • Essentially, the SRS explains what the software will do and expands upon the BRD for developers
  • Functional, Nonfunctional, and Domain Requirements

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Software Requirements Specifications (SRS)
18 questions
Cours de Génie Logiciel: Chapitre 2
31 questions
Software Requirements Analysis Chapter 2
47 questions
Use Quizgecko on...
Browser
Browser