44220: Database Design & Implementation Review & Assignment 2 Ian Perry Room: C41C Tel Ext.: 7287...
-
Upload
dinah-glenn -
Category
Documents
-
view
213 -
download
0
Transcript of 44220: Database Design & Implementation Review & Assignment 2 Ian Perry Room: C41C Tel Ext.: 7287...
44220: Database Design & Implementation
Review & Assignment 2
Ian PerryRoom: C41C Tel Ext.: 7287
E-mail: [email protected]
http://itsy.co.uk/ac/0708/sem2/44220_DDI/
Ian Perry Slide 244220: Database Design & Implementation: Review & Assignment 2
Data, Information, …
Ian Perry Slide 344220: Database Design & Implementation: Review & Assignment 2
The ‘Data Modelling Stack’
Conceptual Overview of things that are perceived to be of ‘interest’ in the ‘real’ world.
Model of the Business System. (ER Model)
Logical Data elements & the relationships between those elements in a tabular form.
Model of Data Storage Theory (Db Schema)
Physical Actual data held in a database & the means to manipulate that data.
Physical Implementation (RDBMS)
Ian Perry Slide 444220: Database Design & Implementation: Review & Assignment 2
Conceptual Model - ER Diagram
Staff, Student, Course (SSC)
Staff Student
Team Course
Pay tutor for =>
<= tutored by
1 M
1
11
M
M
M<= taught by
applies to =>
<= paid at<
= p
art o
f
IndicatesMandatory
Participation
Staff Student
Team Course
Pay tutor for =>
<= tutored by
1 M
1
11
M
M
M<= taught by
applies to =>
<= paid at<
= p
art o
f
IndicatesMandatory
Participation
Ian Perry Slide 544220: Database Design & Implementation: Review & Assignment 2
Logical Model – Schema & Domains
Schema: SSC Domains:
StudentIdentifiers: Number, from 1 to 9999 Titles: Text, >=2 & <= 4 Characters, First Char Caps,
e.g. Mr, Ms, Mrs, Miss, Prof, Dr. PersonNames: Text, <= 12 Characters, First Char Caps. OPoints: Number, from 0 to 100. StaffIdentifiers: Number, from 1001 to 1199. SPoints: Number, from 1 to 6. StaffBirthDates: Date, dd/mm/yyyy, >= 21 years before
today. PayRates: Money, from £15,000 to £20,000, in £1,000
increments. CourseIdentifiers: Number, from 101 to 110. CourseNames: Text, <= 15 Characters, First Char Caps. CourseDurations: Number, 3, 6, 9 or 12 (Months).
Ian Perry Slide 644220: Database Design & Implementation: Review & Assignment 2
Logical Model – Relations 1 Relation: Student
EnrolNo: StudentIdentifiers Title: Titles FirstName: PersonNames SurName: PersonNames OLevelPoints: OPoints Tutor: StaffIdentifiers Primary Key: EnrolNo Foreign Key: Tutor references Staff.StaffID
Relation: Staff StaffID: StaffIdentifiers Title: Titles FirstName: PersonNames FamilyName: PersonNames ScalePoint: SPoints DOB: StaffBirthDates Primary Key: StaffID Foreign Key: ScalePoint references Pay.ScalePoint
Ian Perry Slide 744220: Database Design & Implementation: Review & Assignment 2
Logical Model – Relations 2 Relation: Pay
ScalePoint: SPoints RateOfPay: PayRates Primary Key: ScalePoint
Relation: Team CourseCode: CourseIdentifiers StaffID: StaffNumbers Primary Key: CourseCode & StaffD Foreign Key: CourseCode references Course.CourseCode Foreign Key: StaffID references Staff.StaffID
Relation: Course CourseCode: CourseIdentifiers Name: CourseNames Duration: CourseDurations Primary Key: CourseCode
Ian Perry Slide 844220: Database Design & Implementation: Review & Assignment 2
What is a Physical Data Model?
The Physical Implementation (hardware & software) of a Logical Data Model: it is useless to progress to this stage of
database development if your Logical Data Model is NOT demonstrably ‘robust’.
Physical Data Model must enable: data to be stored (& maintained) in structured
manner. retrieval of specific groupings of data
(information?).
There may be several constraints: depending upon the software application
chosen.
Ian Perry Slide 944220: Database Design & Implementation: Review & Assignment 2
Logical => Physical i.e. translate a ‘logical’ Database
Schema into a ‘physical’ Database: Schema => Database Relations => Tables Attributes => Field Names Domains => Data Type
Field SizeInput MaskValidation Rule
Key Fields => Relationships
Ian Perry Slide 1044220: Database Design & Implementation: Review & Assignment 2
Physical Implementation - 1
Ian Perry Slide 1144220: Database Design & Implementation: Review & Assignment 2
Physical Implementation - 2
The ‘Team’ Table has composite Primary Key, consisting of BOTH;
CourseCode & StaffID You MUST set up relationships between ALL of the Tables of your
Database, with referential integrity enforced, BEFORE you; ADD any DATA to your Tables, BUILD any QUERIES to answer Questions.
Ian Perry Slide 1244220: Database Design & Implementation: Review & Assignment 2
Implementing ‘rules’ of Domains
Access provides 4 main ways to control the data that can be entered into individual fields. Data Type
Number, Text, Memo, Date/Time, Currency, etc. Field Size (or Format)
depends upon the Data Type chosen. Validation Rule
to control the range of allowable values that can be entered into a field.
Input Mask to force the data that is entered to conform to a
particular shape/pattern.
Ian Perry Slide 1344220: Database Design & Implementation: Review & Assignment 2
Assignment 2 (50% of Module Marks)
Deadline? Friday, the 9th of May.
Read the Case Study carefully: Your Database MUST be able to ‘answer’ the 10
questions at the end of the Learn-by-Post Case Study.
Two parts: implement your logical data model as a
physical data model, using Microsoft Access; Using Data Type, Field Size, Input Masks & Validation
Rules as appropriate in order to constrain domains. test this implementation thoroughly, by
building 10 Database Queries; i.e. prove that the information requirements can
actually be delivered.
Ian Perry Slide 1444220: Database Design & Implementation: Review & Assignment 2
Answer the Questions I have set!
1. Implement a Physical Data Model, i.e. a Microsoft Access Database; which supports requirements of the Case Study organisation. (50 Marks) This Physical Data Model MUST be developed using
Microsoft Access. Marks here will be awarded with respect to the
following: Tables – are there sensible Table Names, Field
Names & choice of Key Fields. Domains – how well have you attempted to control
data entry by use of Data Type, Field Size, Input Mask, Validation Rule, etc.
Relationship Diagram – does it show all of the relationships, with referential integrity enforced, between the all of the above Tables?
NB. If you can’t enforce referential integrity for every relationship, then there is a problem with your database design/implementation.
Ian Perry Slide 1544220: Database Design & Implementation: Review & Assignment 2
Answer the Questions I have set!
2. Test this Physical Data Model; by developing a number of Queries that show that your database can deliver the information requirements, i.e. can answer the 10 questions from the Case Study. (50 Marks)
These Database Queries MUST be developed using Microsoft Access.
You MUST develop 10, clearly named, queries (each worth 5 Marks) that provide ‘reasonable’ answers to the Questions of the Case Study organisation; e.g.:
A. Who are our students?B. Which tutors are module co-ordinators, and for which
modules?C. Which students should be sent a certificate for module X?
AND remember to ADD ‘enough’ test data to your database tables; in order to demonstrate that your Database can provide a
‘reasonable’ answer to each of the 10 questions.
Ian Perry Slide 1644220: Database Design & Implementation: Review & Assignment 2
The 10 Questions (5 Marks each)
Your database MUST be able to ‘answer’ the following questions:
A. Who are our students?B. Which students should attend examination centre X?C. What is the assessment/examination weighting for all of the
available modules?D. Which tutor(s) is/are on the team for module X?E. Which tutors are module co-ordinators, and for which modules?F. Which module(s) has student X already taken?G. What module(s) is/are student X currently studying?H. Which modules are not yet fully marked & who is the module co-
ordinator?I. Which students should be sent a certificate for module X?J. Which module is the most difficult to pass?
NB. Where the examination centre, module, or student is an X, then the user of the Database MUST be able to choose from at least 2 different values. Therefore, the queries that ‘answer’ these questions MUST BE parameter-based queries.
Ian Perry Slide 1744220: Database Design & Implementation: Review & Assignment 2
Get on with it! No More Lectures
You may be ‘glad’ to hear? TWO Assignment 2 Support Workshops
i.e. this week & next. If you want any help with Assignment 2,
then make sure that you come to these support sessions prepared to ask sensible questions. “Where do I begin?” - is NOT a sensible
question! Assignment 2 Deadline:
Friday, the 9th of May.