Free Printable Worksheets for learning Software Requirements Engineering at the Middle School level

Here's some sample Software Requirements Engineering quizzes Sign in to generate your own quiz worksheet.

Software Requirements Engineering Quiz

  1. What is Software Requirements Engineering?

  2. What are the three main steps of Software Requirements Engineering?

  3. What is the purpose of a Requirements Document?

  4. What are the different types of Requirements?

  5. What is the importance of traceability in Software Requirements Engineering?

  6. What is the difference between a Functional Requirement and a Non-Functional Requirement?

  7. What is the purpose of a Use Case?

  8. What is the purpose of a Requirements Traceability Matrix?

  9. What is the importance of Quality Assurance in Software Requirements Engineering?

  10. What is the difference between a System Requirement and a Design Requirement?

Questions Answers
What is Software Requirements Engineering? Software Requirements Engineering is the process of defining and documenting the requirements that are necessary for a software system to be developed. It is the process of gathering and defining the requirements for a software system.
What are the three main steps of Software Requirements Engineering? The three main steps of Software Requirements Engineering are Requirements Elicitation, Requirements Analysis, and Requirements Validation.
What is the purpose of a Requirements Document? The purpose of a Requirements Document is to provide a comprehensive description of the requirements of a software system. It is used to define the scope of the project, the stakeholders involved, the functional and non-functional requirements, and any other relevant information.
What are the different types of Requirements? The different types of requirements include Functional Requirements, Non-Functional Requirements, System Requirements, and Design Requirements.
What is the importance of traceability in Software Requirements Engineering? Traceability is important in Software Requirements Engineering as it allows for the tracing of the requirements from the beginning of the project to the end. It is used to ensure that the requirements are met and that any changes are tracked and documented.
What is the difference between a Functional Requirement and a Non-Functional Requirement? A Functional Requirement is a requirement that specifies how the system should behave and what functions it should perform. A Non-Functional Requirement is a requirement that specifies the system's quality attributes, such as performance, scalability, and usability.
What is the purpose of a Use Case? The purpose of a Use Case is to provide a detailed description of how a system should be used. It is used to define the interactions between the system and its users and to identify the user's goals and objectives.
What is the purpose of a Requirements Traceability Matrix? The purpose of a Requirements Traceability Matrix is to provide a visual representation of the relationship between the requirements of a system and the system's design. It is used to ensure that all requirements are met and that any changes are tracked and documented.
What is the importance of Quality Assurance in Software Requirements Engineering? Quality Assurance is important in Software Requirements Engineering as it ensures that the requirements are met and that the system is developed according to the specifications. It is used to ensure that the system meets the customer's needs and that any changes are tracked and documented.
What is the difference between a System Requirement and a Design Requirement? A System Requirement is a requirement that specifies the functionality of the system. A Design Requirement is a requirement that specifies the design of the system, such as the user interface, the architecture, and the data structures.

Here's some sample Software Requirements Engineering practice sheets Sign in to generate your own practice sheet worksheet.

.

Software Requirements Engineering Practice Sheet

Introduction

Software Requirements Engineering (SRE) is a branch of software engineering that focuses on the definition, analysis, and management of software requirements. It is the process of defining and refining the requirements for a software system in order to ensure that the system meets the needs of its users.

Task 1

In SRE, the first step is to define the requirements for the software system. Requirements can be divided into two categories: functional and non-functional.

Functional requirements describe what the software must do and how it should behave. Examples of functional requirements include:

  • The software must allow users to log in and out.
  • The software must allow users to search for information.
  • The software must allow users to submit forms.

Non-functional requirements describe how the software must be built and how it should behave. Examples of non-functional requirements include:

  • The software must be secure and reliable.
  • The software must be fast and responsive.
  • The software must be easy to use and understand.

Task 1: For each of the following scenarios, identify and list the functional and non-functional requirements.

  1. A software system for a restaurant that allows customers to order food online.

Functional Requirements: * The software must allow customers to place orders online. * The software must allow customers to pay for their orders online. * The software must allow customers to view the menu and prices.

Non-Functional Requirements: * The software must be secure to protect customer information. * The software must be reliable and stable. * The software must be easy to use and understand.

  1. A software system for a library that allows users to search for books.

Functional Requirements: * The software must allow users to search for books by title, author, or subject. * The software must allow users to check out books. * The software must allow users to reserve books.

Non-Functional Requirements: * The software must be secure to protect user information. * The software must be reliable and stable. * The software must be fast and responsive.

Task 2

Once the requirements have been defined, the next step is to analyze the requirements. This involves breaking down the requirements into smaller and more manageable pieces, and understanding how the requirements interact with each other.

Task 2: For each of the following scenarios, identify and list the requirements that need to be analyzed.

  1. A software system for a restaurant that allows customers to order food online.

Requirements to be Analyzed: * How will customers log in and out? * How will customers search for information? * How will customers submit forms? * How will customers pay for their orders? * How will the system be secured? * How will the system be reliable? * How will the system be fast and responsive? * How will the system be easy to use and understand?

  1. A software system for a library that allows users to search for books.

Requirements to be Analyzed: * How will users search for books? * How will users check out books? * How will users reserve books? * How will the system be secured? * How will the system be reliable? * How will the system be fast and responsive? * How will the system be easy to use and understand?

Background image of planets in outer space