DBI Assignment
DBI Assignment
approximately 25 hours
Deadline: your work must be submitted before the last week of this semester.
All material copied or amended from any source (e.g. internet, books) must be
referenced correctly according to the reference style you are using.
For this assignment you must submit a single Acrobat PDF document / Hardcopy (depending on
your lecturer decision)
1>Detailed Specification
This is an individual assignment.
You are asked to provide a conceptual database design for Attendance Taking & Student Grade
Management System at FPT University (I know, FPT already got one, but let assume we are
reconstructing it).
You can base on existing sources to develop your design including: fap.fpt.edu.vn, flm.fpt.edu.vn, ...
Attendance Taking Sub-System
Every semester, Lecturers and students will receive their schedules for classes. The below figure displays
an example of the particular lecture, you can check your own to see the detail schedule for student.
1
Each class, the lecture going to take attendance for student, all of their absent/present will be recorded.
The list of students is grouped by the training department (no need to worry how they can create the list;
it is a different story to concern).
2
Hint: check the instructions you got before
3
Student Grading Management Sub-System
For each subject that attended by the student, the lecture will give score to the assessment to each of their
assessment. Below figure shows an Example of the assessments for course DBI202.
Students can check their results at the end of semester as following example:
Each Subject code, student can check their detailed result of as below example:
4
2> The database must consist of at least six tables that have been populated with data. The database is
to support queries that would typically be submitted to the system for the topical area that you have
chosen. You must do the following:
Self-investigation for the requirement of the system. Listed them all as form of reports, business rules.
· Using UML, Chen’s notation to create an Entity Relationship (ER) model for your relational
database. All entity types, their attributes and relationships must be clearly shown. You will also
be required to show all cardinality and participation constraints. You should use some enhanced
ER features in your conceptual model where it makes sense to do so.
· Map the EER model devised in part (1) into a relational data model. It must be normalised up to
at least 3rd Normal Form.
· Using appropriate SQL commands create a set of database tables in MS SQL Server 2008+. You
should also show all constraints used in the creation of the tables.
· Populate the database with a small amount of data. The data should be meaningful but does not
need to be extensive. The following sites may be useful for quickly generating data:
http://www.databasetestdata.com/
http://www.generatedata.com/
Your database must contain one view, one trigger, on store procedure and an index (describe
why).
Create 10 sample queries that demonstrate the expressiveness of your database system. Your
queries must demonstrate different aspects of the system.
Final Report
You must submit a brief final report which must include the following:
a) A brief description of the database including any assumptions made during the design
(THIS IS VERY IMPORTANT TO CLERIFY THE ASSUMTIONS in form of business
rules).
5
b) An ERD (Entity Relationship Diagram) that fully describes the database (giving
descriptions on your work would be appreciated).
c) The relational schema derived from the ERD that is at least in 3NF (Any detail of the
process would be appreciated).
d) The set of database statements used to create the tables used in your database. You do
NOT need to include all the data and insert statements.
e) 10 queries that demonstrate the usefulness of the database. Also state why and when
each query would be used. The following must be demonstrated by at least one of your
queries:
f) The trigger, store procedure, and the index should be added (explain why you make it)
Demonstration
You will be required to briefly demonstrate your system in one of the laboratory sessions prior to
submission of the report.