Functional requirements
Functional requirements should relate to the tasks that the database system will perform, usually in the form of searching and sorting (queries).
Functional requirements may also provide detail around the data that must be held in the database.
In the example of the doctor's surgery, the functional requirements could include the following:
- a basic patient data table
- a medical records table
Basic patient data table
This table should include fields for:
- patient ID
- first name
- surname
- patient ID
- first name
- surname
- date of birth
- address
- contact number
- whether assistance needed with communication
- next appointment time
- next appointment date
- next appointment location
- patient whereabouts
The basic patient data table should be linked to a medical records table.
Medical records table
The medical records table should include the following:
- Patient ID
- Medical record ID
- Diagnosed illness
- Medication
- Patient mobility
- Blood type
Simple and complex queries should exist to allow for searching and sorting on all tables.
Sorts should be generated to quickly sort data in all tables.
Forms will need to exist to allow all user groups to add or amend records.
In reality the example above would involve a much more complex database than this.
What is shown above is just an illustration to highlight how the end user and functional requirements may be determined.
Actual implementation would likely involve more than three tables to avoid anomalies. However, at Higher level, three tables or more must be implemented.