Top Banner
Develop an online web-based university administration system Patrick Ward D11124386 Instructor: Mr. Patrick Mathews Module: Advanced Database Systems 1st March 2012
12

DB Assignment

Jul 18, 2016

Download

Documents

goingforward77

DB
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: DB Assignment

D e v e l o p a n o n l i n e w e b - b a s e d u n i v e r s i t y a d m i n i s t r a t i o n s y s t e m

Patrick WardD11124386

Instructor: Mr. Patrick MathewsModule: Advanced Database Systems

1st March 2012

Page 2: DB Assignment

1. Assignment Overview! 3

1.1.User Types! 3

1.2.User Functionality! 4

1. Students will be able to:! 4

2. Lecturers will be able to:! 4

3. Administrators will be able to:! 4

2. Database Tables! 5

2.1.User Tables! 5

2.2.Main Tables! 6

1. Scheduling Tables:! 6

2. Linking Tables to avoid Many to Many relationships:! 7

3. Entity Relationship Diagram! 8

4. Use Case Diagrams! 9

4.1.Basic Use Case Diagram! 9

4.2.Student Use Case Diagram! 10

4.3.Lecturer Use Case Diagram! 11

4.4.Administrator Use Case Diagram! 12

Page 3: DB Assignment

1. Assignment OverviewDesign a database system that will allow the efficient management of the university.

1.1. User TypesThe system will have three user types:

1. Students

2. Lecturers

3. Administrators

University administration system database design

Page 3

Page 4: DB Assignment

1.2. User Functionality1.2.1. Students will be able to:

1. register for a semester

2. view all available modules

3. enrol to up to 4 modules

4. view the modules they are enrolled to

5. view their class timetables

6. view their grades

7. un-enrol from modules (provided the module has not been closed by an administrator)

1.2.2. Lecturers will be able to:1. view the modules they are assigned to

2. view their timetable

3. view a list of all enrolled students to each module

4. assign grades to each student enrolled on the module (if the module is closed)

1.2.3. Administrators will be able to:1. assign modules to semesters

2. assign lecturers to modules (1 lecturer will be assigned to a maximum of 3 modules per semester.

3. assign and edit room, days and timeslots to modules (this combination must be unique to avoid timetable clashes)

4. view timetables for lecturers and students

5. close a module for enrolment

6. produce lists of enrolled students for each module

7. view grades for all students on a module

8. view all grades of a particular student

University administration system database design

Page 4

Page 5: DB Assignment

2. Database TablesThe tables below have been designed to meet the requirements of 3rd Normal Form that states

that “all non-key columns are independent of each other” in addition to meeting 1st and 2nd Normal Forms.

2.1. User TablesNote: Colour coding =

University administration system database design

Page 5

Staff

Staff_ID int (11) Primary KeySystemLogin_id int (10)fist_name varchar (55)last_name varchar (55)addressLine1 varchar (55)addressLine2 varchar (55)addressLine2 varchar (55)addressLine2 varchar (55)email varchar (55)mobilePhone int (14)officePhone int (14)job_typeId int (1) Foreign Key

Student

id int (11) Primary KeySystemLogin_id int (10) Foreign Keyfist_name varchar (55)last_name varchar (55)addressLine1 varchar (55)addressLine2 varchar (55)addressLine2 varchar (55)addressLine2 varchar (55)email varchar (55)mobilePhone int (14)officePhone int (14)

Job_Type

id int (1) Primary Keytitle varchar (55)

SystemLogin

id int (10) Primary Keyusername varchar (25)password varchar (25)

Primary Key

Foreign Key

Combined Key

Page 6: DB Assignment

2.2. Main Tables

2.2.1. Scheduling Tables:

University administration system database design

Page 6

Module

code varchar (5) Primary Keytitle varchar (55)openOrClosed binary (1)SemesterID int (10) Foreign Key

Semester

id int (6) Primary KeystartDate dateendDate date

Day

id int (1) Primary Keyname varchar (3) ‘mon’, ‘tues’, etc.This will be read-only table representing 7 day week.This will be read-only table representing 7 day week.This will be read-only table representing 7 day week.

Room

roomName varchar (6) Primary Keycapacity int (4)

TimeSlot

id int (2) Primary KeystartTime timeendTime timeThis will be read-only table representing 24 hour clock.

Class (event)

RoomName int(10) Primary KeyTimeSlot int(2) Primary KeyDayID int(1) Primary KeyModuleCode varchar (5) Primary KeyCombined key will prevent scheduling conflicts

Page 7: DB Assignment

2.2.2. Linking Tables to avoid Many to Many relationships:

University administration system database design

Page 7

Registration

SemesterID int(6)Student_ID int(11)Date timestamp

StudentToModule

StudentID int(10)SemesterID int(6)ModuleCodegrade varchar (5)Restricted to 4 per student using a trigger

LecturerToModule

staff_id int(10)ModuleCode varchar(5)staffJob_Type int (1)Restricted to 3 per lecturer using a triggerRestricted to 3 per lecturer using a triggerRestricted to 3 per lecturer using a trigger

Page 8: DB Assignment

3. Entity Relationship Diagram

University administration system database design

Page 8

Page 9: DB Assignment

4. Use Case Diagrams4.1. Basic Use Case Diagram

University administration system database design

Page 9

Page 10: DB Assignment

4.2. Student Use Case Diagram

University administration system database design

Page 10

Page 11: DB Assignment

4.3. Lecturer Use Case Diagram

University administration system database design

Page 11

Page 12: DB Assignment

4.4. Administrator Use Case Diagram

University administration system database design

Page 12