1. Home
  2. Projects
  3. Quiz System Requirements

Requirements engineering · Individual

Quiz System Requirements

From a lecturer's email with wishes for a quiz tool to a full set of requirements: numbered requirement statements, epics and user stories, and BDD scenarios in Gherkin that can be tested.

  • Team Individual assignments
  • Course Requirements Engineering, UAS Technikum Wien
  • When Spring 2026
  • 15 functional requirements
  • 3 + 2 quality requirements and boundary conditions
  • 15 user stories in 3 epics
  • 19 Gherkin scenarios in 5 features

The customer's need

A lecturer wanted a tool to create quizzes for lectures, self-study and assessment. The wishes were informal and spread across one email, so the job was to turn them into requirements a developer can build and test.

  • Several question types, including surveys with no right answer
  • Reuse questions across courses and find them quickly
  • Set date, time, duration and question order
  • Compare attempts to show learning progress
  • Up to 50 students at once, on any device
  • Developed in BDD style

Four steps

  1. Numbering Compared hierarchical and ID-based schemes for traceability
  2. Requirements 15 functional, 3 quality, 2 boundary, written from templates
  3. User stories 3 epics, 15 stories, acceptance criteria, 2 roles
  4. BDD 5 Gherkin features, 19 scenarios with error and edge cases

One requirement, traced all the way

Every item points back to the one before it, so a failing test can be followed to the customer need it protects.

  1. Need "Various question types"
  2. FR-001 The system shall allow the lecturer to create quiz questions of type single choice.
  3. US-01.01 As a lecturer, I want to create single-choice questions so that I can assess basic knowledge quickly.
  4. AC-01.01 Given I mark exactly one correct answer and save, then the system stores it as a single-choice question.
Feature: FR-001 Create single-choice quiz questions

  Scenario: Reject a question when more than one answer is marked as correct
    Given a lecturer enters the question "Which number is even?"
    And the lecturer provides 4 answer options: "2", "3", "4" and "5"
    And the lecturer marks "2" and "4" as correct
    When the lecturer saves the question
    Then the question is not stored
    And the lecturer is informed that exactly 1 correct answer must be selected

The five feature files

Each file covers one functional requirement, with concrete numbers and the cases where the system should say no.

  • FR-001 Create single-choice questions3 scenarios
  • FR-008 Build a quiz from existing questions3 scenarios
  • FR-011 Schedule date, start time and duration5 scenarios
  • FR-013 Compare results with earlier attempts5 scenarios
  • FR-015 Generate a report when the quiz ends3 scenarios

FR-011 tests the exact edges: the quiz opens at 10:00, is closed at 09:59, and closes again after 60 minutes.

What I learned

  • Stable IDs make it possible to trace a requirement both forward to code and back to the customer
  • Vague wishes become testable once they have concrete numbers, like "within 2 seconds" or "50 students"
  • Error and edge cases belong in the requirements, not only in the tests
Back to all projects