Software Requirements Engineering
14 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

What are the categories of requirements?

  • Functional Requirements
  • Non-Functional Requirements
  • Technical and Non-Technical Requirements
  • Both A and B (correct)

Which technique is NOT a requirements collection technique?

  • Questionnaires and Surveys
  • Coding (correct)
  • Observation
  • Interviewing Stakeholders

Functional requirements specify HOW the deliverable will be delivered.

False (B)

Which of the following is NOT a type of Non-Functional Requirement?

<p>Software Non-Functional Requirements (A)</p> Signup and view all the answers

What is included in technical non-functional requirements?

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

Which of the following is not a goal of the system analysis phase?

<p>Determining specific technical requirements (B)</p> Signup and view all the answers

What do non-technical non-functional requirements encompass?

<p>Regulatory and cultural factors (C)</p> Signup and view all the answers

Which category does not belong in the classifications of requirements for a new system?

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

What is a significant challenge faced by customers when describing system requirements?

<p>They often provide unprioritized, conflicting capabilities. (A)</p> Signup and view all the answers

What is one advantage of using Agile methodology?

<p>It is very flexible and efficient in dealing with change. (D)</p> Signup and view all the answers

Which of the following best describes a swim lane in business process modeling?

<p>A visualization of sub-processes within a business process. (A)</p> Signup and view all the answers

What is the primary purpose of a Data Flow Diagram (DFD)?

<p>To show how a system stores, processes, and transforms data. (B)</p> Signup and view all the answers

What role does the actor play in a Use Case Diagram?

<p>The actor represents interactions with the information system. (C)</p> Signup and view all the answers

What is a potential disadvantage of using Agile methodology?

<p>It often leads to significant changes in project scope. (D)</p> Signup and view all the answers

Flashcards

Requirements Engineering

The process of gathering, analyzing, documenting, and managing the needs and wants of users for a system.

Functional Requirements

What a system must do. Describes the system's behavior and actions.

Non-Functional Requirements (NFR)

System attributes like performance, security, and usability.

Technical NFR

Software attributes like speed, reliability, and security.

Signup and view all the flashcards

Non-Technical NFR

Requirements related to regulations, culture, and politics.

Signup and view all the flashcards

Requirements Gathering

Identifying user needs and system capabilities.

Signup and view all the flashcards

JAD (Joint Application Development)

Technique where users actively participate in design.

Signup and view all the flashcards

Agile Development

Iterative development approach, adaptable to change.

Signup and view all the flashcards

System Analysis Phase

Understanding project specifics/alignment with business needs.

Signup and view all the flashcards

Requirements Modeling

Describing the current system and identifying new requirements, like inputs, outputs, processes, and security.

Signup and view all the flashcards

Data Flow Diagram (DFD)

Illustrates data flow, processing and storage within a system.

Signup and view all the flashcards

Use Case Diagram

Shows user interactions with a software system depicting users/actors.

Signup and view all the flashcards

Fact-Finding Techniques

Gathering essential information to understand requirements.

Signup and view all the flashcards

Interview Process

Gathering in-depth information through structured conversations.

Signup and view all the flashcards

Interview vs. Questionnaires

Interviews are detailed but time-consuming, while questionnaires are broad but less detailed.

Signup and view all the flashcards

Study Notes

Requirements Engineering and Modeling

  • A requirement is defined as a condition or capability needed by a user for problem-solving or achieving an objective.
  • It also refers to a condition that a system must meet to satisfy contracts, standards, or specifications.
  • Requirements collection involves identifying the needed capabilities in final deliverables.

Categories of Requirements

  • Functional Requirements

    • Define what the deliverable must do; describe its characteristics in non-technical language.
    • Focus on "what" is needed, not "how" it will be achieved.
  • Non-Functional Requirements (NFR)

    • Concern product properties and user expectations.
    • Split into two subcategories: technical and non-technical.

Non-Functional Requirements

  • Technical NFRs

    • Include attributes like scalability, reliability, security, usability, and maintainability.
  • Non-Technical NFRs

    • Encompass regulatory and compliance aspects, cultural influences, and political factors.

Challenges in Requirements Gathering

  • Customers often struggle to articulate their requirements clearly, leading to unprioritized and conflicting capabilities.

System Analysis Phase Overview

  • Aims to understand the proposed project and ensure it aligns with business requirements.
  • Establishes a strong foundation for the subsequent stages of system development.

Requirements Modeling

  • Involves fact-finding to assess the current system and identify new system requirements.
  • Requirements categorized include outputs, inputs, processes, performance, and security.

Requirements Collection Techniques

  • Utilize various methods for gathering requirements, including:
    • Interviewing stakeholders
    • Conducting focus groups and workshops
    • Distributing questionnaires and surveys
    • Observation of current practices
    • Prototyping to visualize ideas

Team-Based Techniques

  • Joint Application Development (JAD)

    • Encourages active user participation in the development process.
  • Rapid Application Development (RAD)

    • Focuses on quick production and revision through user feedback.
  • Agile Development

    • Emphasizes iterative development and flexible response to change.

Other Classification of Requirements

  • Normal Requirements
  • Expected Requirements
  • Exciting Requirements
    • Each category defines different user needs and expectations from the system.

Requirements Overview

  • Customers often struggle to articulate system requirements clearly, resulting in unprioritized and conflicting capabilities.

Non-Functional Requirements (NFR)

  • Two categories exist:
    • Technical NFRs: Focus on software attributes like scalability, reliability, availability, recoverability, maintainability, security, usability, and integrity.
    • Non-Technical NFRs: Address regulatory issues, government standards, cultural expectations, and political contexts.

System Analysis Phase

  • Objectives include understanding the proposed project, ensuring alignment with business requirements, and laying a foundation for system development.

Requirements Modeling

  • Involves fact-finding to describe the current system and identify new system requirements, such as:
    • Outputs, Inputs, Processes, and Performance.

Agile Development Methodology

  • Advantages: Flexibility in change management, strong team interaction, frequent deliverables that validate the project, and reduced risks.
  • Disadvantages: Potential for evolving user requirements leading to significant changes in project scope.

Business Process Modeling (BPM)

  • Graphically illustrates business processes and uses standard languages for requirement modeling.
  • Diagrams include "pool" for overall process depiction and "swim lanes" for subprocesses.

Data Flow Diagrams (DFD)

  • Used to show data storage, processing, and transformations using defined symbols like rectangles, circles, and arrows.

Use Case Diagrams

  • Represents user interactions with the system, where users are depicted as actors performing specific roles.

System Requirement Checklist

  • System requirements are essential characteristics/features necessary for business compliance and user satisfaction.
  • Categories include Outputs, Inputs, Processes, Performance, and Controls.

Fact-Finding Techniques

  • Collects information vital for understanding system requirements and includes questions such as Who, What, Where, When, How, and Why.
  • Distinguishes between current operations and proposed enhancements.

Interview Process

  • A structured meeting aimed at gathering information from individuals.
  • Steps include determining interviewees, establishing objectives, preparing questions, conducting interviews effectively, documenting outcomes, and evaluating insights.

Interview vs. Questionnaires

  • Interviews gather in-depth information from individuals but are time-consuming and less economical.
  • Questionnaires reach a larger audience economically but offer lower flexibility and immediate feedback.

Studying That Suits You

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

Quiz Team

Related Documents

Module 3 (1).pdf

Description

This quiz focuses on the categories of requirements in software engineering, specifically functional and non-functional requirements. It also references the IEEE Standard Glossary of Software Engineering Terminology, providing insights into understanding technical and non-technical requirements. Test your knowledge on this crucial aspect of software development.

More Like This

Software Functional Requirements
21 questions
Software Requirements Management Quiz
5 questions
Software Requirements Overview
10 questions
Use Quizgecko on...
Browser
Browser