Identifying Requirements (DDD) (SQA National 5 Computing Science): Revision Note
Exam code: X816 75
Examiner Tips and Tricks
In this course, DDD refers to Database design and development and WDD refers to Web design and development
Make sure you do not mix these up when revising or answering exam questions
End-user requirements (DDD)
What are end-user requirements?
End-user requirements describe what the user needs to achieve with the database
They focus entirely on the user’s tasks and goals
Written from the point of view of the user
Describe what the user wants to achieve using the database
Do not mention tables, fields, validation or technical detail
Usually gathered by interviewing or observing the users
Used to understand what the final system must allow the user to do
Example end-user requirements
Scenario | End-user requirement (what the user needs to do) |
|---|---|
Car dealership database | The user needs to search for cars by make and model |
Library system | The librarian needs to find books by title or author |
Property listings site | The user needs to filter properties by price range |
School system | Teachers need to view student details for a selected class |
Music store | Staff need to search for albums by artist name |
Fitness club | Staff need to view all members with overdue payments |
Holiday booking | The user needs to see all available destinations for chosen dates |
These examples focus only on tasks and goals
No tables, no fields, no SQL, no validation
These requirements never mention how the database will achieve the task
Functional requirements (DDD)
What are functional requirements?
Functional requirements describe the processes and data the system must contain to satisfy the end-user needs
They define the technical features, data, and processes the system must include
Used to design and build the database and check if it is fit for purpose
Key aspects of database functional requirements
Data structures
This describes how the database is organised
It specifies tables and relationships
Example:
The database will have two tables,
CarsandBranches, linked usingbranchIDas a foreign key
Data fields
Specify attributes
They describe the exact pieces of data the system must record
Example:
The system must store
carMake,carModel,colour,fuelType,priceandmileage
Processing
This describes the operations the database must carry out
Specifies required queries, sorts, filters
Example:
The system must run simple and complex queries to search for cars using multiple criteria
The system must sort results in ascending order of price
Validation and constraints
Specifies control measures on data entry
They include range checks, restricted choice, length checks and presence checks
Validation protects data quality and prevents invalid entries
Example:
The price field must use a range check between 0 and 100000
soilTypemust be restricted choice (Clay, Loam, Peat or Sandy)
Examiner Tips and Tricks
When writing requirements, test them like this:
If it mentions what the user does, it is end-user
If it mentions what the system stores or processes, it is functional
Example functional requirements
Scenario | Functional requirement (what the system must do) |
|---|---|
Car dealership database | The system must store fields for |
Library system | The database must include a |
Property listings site | The system must enforce a range check ensuring property price is between the minimum and maximum allowed values |
School system | The system must support a query that returns all students sorted alphabetically by surname |
Music store | The database must include two linked tables, |
Fitness club | The system must validate the membership type using restricted choice |
Holiday booking | The system must run a complex query that filters by destination and date, then sorts by price |
These are technical
These requirements directly define the data dictionary and SQL needed during implementation
Worked Example
A local amateur theatre company, "The Curtain Call," wants a new website.
The management states the website must clearly display details of their four upcoming shows, including ticket prices and show dates. The members of the public (end-users) need a quick way to find the closest venue, and they want to be able to download a PDF flyer for each show. The website must also allow staff to easily update the show data when prices or dates change.
Using the scenario above, identify the following requirements for the website:
(i) State one end-user requirement
[1]
(ii) State two functional requirements
[2]
Answers
(i)
The user needs:
to be able to download a PDF flyer for each show [1 mark]
a quick way to find the closest venue [1 mark]
to view the show dates and ticket prices [1 mark]
(ii)
Must relate to what the system must do or the data it must contain
Functional Requirement 1: The system must be able to store and display the ticket prices and show dates for the four upcoming shows [1 mark]
Functional Requirement 2: The system must include links/functionality to allow the download of a PDF flyer for each show [1 mark]
Functional Requirement 3 (Alternative): The system must include a function (e.g., a form or login) that allows staff to update the show data (prices/dates) [1 mark]
Unlock more, it's free!
Did this page help you?