Practice Design Specification in CS Thinking

Use these practice problems to test your method after reviewing the concept explanation and worked examples.

Quick Recap

A document that describes what a software system should do, how it should behave, and what constraints it must satisfy, before coding begins.

A spec is a blueprint for software โ€” like an architect's plan before building a house. It answers 'what are we building and why?' before 'how?'

Example 1

easy
What is a design specification and what should it include for a simple calculator app?

Example 2

medium
A client asks for a 'fast and user-friendly website'. Explain why this is insufficient as a design specification and suggest specific, measurable criteria to replace these vague terms.

Example 3

medium
Write a brief design specification for a school library book search system. Include at least: purpose, inputs, outputs, and three functional requirements.

Example 4

hard
Explain the difference between functional requirements and non-functional requirements. Give two examples of each for an online shopping system.