I began by analysing the data requirements document and selecting key information provided for Larry’s Leisure Centre. I carefully reviewed the documents, picking out concise data and carrying out a non-technical summary of what items will be stored in the database, and relations between various data items, which allowed me to think of how I will be preparing my designs.
After determining the requirements of the clients, analysing the information I had gathered, and identifying problems faced by Larry’s Leisure Centre. I was equipped to begin the design for the new system.
Design
Adopting a top-down approach, I initially planned out a very basic model which allowed me to understand the tables and relationships I may include in my database (Appendix 1). I then captured the data requirements for the new system by using an entity relationship conceptual diagram as shown in Fig 2. This provided me with a very useful indication of the tables and attributes of the entity types I will be including in the database. Primary and Foreign keys are also specified. By initially creating a conceptual model, I was able to understand the database design and decide if it was complete or not.
After a series of stepwise refinements to the entity relationship model i.e. seeing whether the model meets requirements or if any more relationships need to be created, and normalising to 3NF, which was used to check the entity relationship model, I was able to create a relational model (Fig 3), which could be implemented in a relational database.
Further considerations relating to the number of tables, complexity of the queries and performance made it necessary to carry out some denormalisation steps, which involved adjusting my relational model to include less tables, resulting in the final design model as shown in Fig