Design Specification CS Thinking Example 2
Follow the full solution, then compare it with the other examples linked below.
Example 2
mediumA 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.
Solution
- 1 Step 1: 'Fast' is subjective. Replace with: 'Pages load in under 2 seconds on a standard broadband connection.'
- 2 Step 2: 'User-friendly' is subjective. Replace with: 'Navigation requires no more than 3 clicks to reach any page. Text is at least 16px. All images have alt text for accessibility.'
- 3 Step 3: Good specifications are SMART: Specific, Measurable, Achievable, Relevant, and Time-bound. Vague requirements lead to disputes about whether the project is complete.
Answer
Replace vague terms with measurable criteria: 'fast' โ '<2 second load time', 'user-friendly' โ 'โค3 clicks to any page, 16px+ text'.
Measurable requirements prevent disputes and make testing possible. If you cannot test whether a requirement is met, it is not a good requirement.
About Design Specification
A document that describes what a software system should do, how it should behave, and what constraints it must satisfy, before coding begins. A good specification covers functional requirements (what the system does), non-functional requirements (performance, security, usability), and acceptance criteria (how to verify it works).
Learn more about Design Specification โMore Design Specification Examples
Example 1 easy
What is a design specification and what should it include for a simple calculator app?
Example 3 mediumWrite a brief design specification for a school library book search system. Include at least: purpos
Example 4 hardExplain the difference between functional requirements and non-functional requirements. Give two exa