Free Essay

Database

In: Science

Submitted By horlarme
Words 4780
Pages 20
Student Database Management System
Ajay Shankar Bidyarthy , Abhishek Kumar
b.ajay@iitg.ernet.in kumar.ak@iitg.ernet.in
November 13, 2012

Abstract: An organized and systematic office solution is essential for all universities and organizations. There are many departments of administration for the maintenance of college information and student databases in any institution. All these departments provide various records regarding students. Most of these track records need to maintain information about the students. This information could be the general details like student name, address, performance, attendance etc or specific information related to departments like collection of data. All the modules in college administration are interdependent. They are maintained manually. So they need to be automated and centralized as, Information from one module will be needed by other modules. For example when a student needs his course completion certificate it needs to check many details about the student like his name, reg number, year of study, exams he attended and many other details. So it needs to contact all the modules that are office, department and examination and result of students.
With that in mind, we overhauled the existing Student Database Management System and made necessary improvement to streamline the processes. Administrators using the system will find that the process of recording and retrieving students information and managing their classes, including marking of attendance, is now a breeze. In general, this project aims to enhance efficiency and at the same time maintain information accurateness. Later in this report, features and improvement that allow achievement to this goal will be demonstrated and highlighted.
Our work is useful for easy user interface. We are planning to uttilize the powerful database management, data retrieval and data manipulation. We will provides more ease for managing the data than manually maintaining in the documents. Our work is useful for saving valuable time and reduces the huge paper work.
Keywords: Education, Database managements, students database, students academic performance, students health record.

1

Contents
List of Figures

4

1 Introduction

1

1.1

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2 Project Review

1
2

2.1

Project management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2

2.2

Student management system . . . . . . . . . . . . . . . . . . . . . . . . . . .

2

3 Resources

4

3.1

System Development lyfe cycle . . . . . . . . . . . . . . . . . . . . . . . . . .

4

3.2

Scripting language selection . . . . . . . . . . . . . . . . . . . . . . . . . . .

5

3.3

Database selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5

3.4

Web server selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6

4 System Analysis and Design

7

4.1

Use case analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7

4.2

System Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8

5 Database Design and Development

12

5.1

Database design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

5.2

Database development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13

6 System and Database Testing
6.1

17

System and database testing . . . . . . . . . . . . . . . . . . . . . . . . . . .

7 Project Management

17
33

2

7.1

Work breakdown structure . . . . . . . . . . . . . . . . . . . . . . . . . . . .

33

7.2

Risk management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

33

8 Conclusions
8.1

35

Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9 Critical Reviews
9.1

35
36

Critical reviews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3

36

List of Figures
2.1

Project Development Phases . . . . . . . . . . . . . . . . . . . . . . . . . . .

2

3.1

SDLC Phases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4

3.2

Comparison of web servers . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6

4.1

use case analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7

4.2

Student registration process . . . . . . . . . . . . . . . . . . . . . . . . . . .

8

4.3

Export students module . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9

4.4

Search attributes for registration process . . . . . . . . . . . . . . . . . . . .

9

4.5

Enrol existing student to class . . . . . . . . . . . . . . . . . . . . . . . . . .

10

4.6

Legend and attendance system . . . . . . . . . . . . . . . . . . . . . . . . . .

10

5.1

Database creation in phpMyAdmin . . . . . . . . . . . . . . . . . . . . . . .

14

5.2

Table creation in phpMyAdmin . . . . . . . . . . . . . . . . . . . . . . . . .

14

5.3

Attribute creation in phpMyAdmin . . . . . . . . . . . . . . . . . . . . . . .

15

5.4

Total number of tables in a database . . . . . . . . . . . . . . . . . . . . . .

16

5.5

Data of one table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16

6.1

Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

17

6.2

Test1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18

6.3

Test2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

19

6.4

Test3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

19

6.5

Test4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

20

6.6

Test5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

20

6.7

Test6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

21

6.8

Test7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

22

4

6.9

Test8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

23

6.10 Test9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

24

6.11 Test10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

25

6.12 Test11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

25

6.13 Test12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

6.14 Test13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

6.15 Test14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27

6.16 Test15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27

6.17 Test16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

28

6.18 Test17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

28

6.19 Test18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

29

6.20 Test19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

29

6.21 Test20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

30

6.22 Test21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

31

6.23 Test22 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

6.24 Test23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

7.1

34

Risk Assessment Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5

Chapter 1
Introduction
1.1

Introduction

Student Management System deals with all kind of student details, academic related reports, college details, course details, curriculum, batch details and other resource related details too. It tracks all the details of a student from the day one to the end of his course which can be used for all reporting purpose, tracking of attendance, progress in the course, completed semesters years, coming semester year curriculum details, exam details, project or any other assignment details, final exam result etc.
Our design can facilitate us to explore all the activities happening in the college, even we can get to know which faculty is assigned to which course, the current status of a student, attendance percentage of a student and upcoming requirements of a student. The student management system is an automated version of manual Student Management System. It can handle all details about a student. The details include college details, subject details, student personnel details, academic details, exam details etc.
In case of manual system they need a lot of time, manpower etc. Here almost all work is computerized. So the accuracy is maintained. Maintaining backup is very easy. It can do with in a few minutes. Our system has two type of accessing modes, administrator and user. Student management system is managed by an administrator. It is the job of the administrator to insert update and monitor the whole process. When a user log in to the system. He/she would only view details of the student. He/she can’t perform any changes.
Our system has seven modules, they are administrator, student, course, department, exam, attendance, and section. These modules and its attributes with entity relationship module presented in the ER diagram secion.

1

Chapter 2
Project Review
2.1

Project management

Project management skills are put to good use for this project. Having gone through project management modules in Time Series Analysis, Optimization and with two interns Project
Management for Business and IT respectively, they enhanced my knowledge on managing a project. Project management focuses on achieving the objectives by applying five processes presented in Figure below.

Figure 2.1: Project Development Phases

2.2

Student management system

There are many software development companies that offer student management system for schools in the market. There are records on the past years projects on student management system is done by students. Through the researches, it is observed that there are features where this project can adopt and implement. One of it will be with addition of new course or class, or even upgrading of students to the next level, the school administrator can easily
2

register all of them within a particular class into the new one using just a page and not having to register one at a time. With this feature, it helps administrator to save time as well as increase their efficiency.

3

Chapter 3
Resources
3.1

System Development lyfe cycle

Systems Development Life Cycle (SDLC) is the most common process adopted to develop a project and not surprisingly, this project is following this model too. To be precise, waterfall model is being applied. Waterfall model is a sequential model process where the input of a phase actually results from the previous phase.

Figure 3.1: SDLC Phases
There are five phases in this model and the first phase is the planning stage. The planning stage determines the objectives of the project and whether the project should be given the green light to proceed. This is where the proposal submission comes into picture. After obtaining the approval, the next phase is analysis. Gathering and analysing the system and user requirements is essential for entry to the design step.
With the user requirements gathering completed, there is a need to prepare the resources for the project. Be it software or hardware components, careful consideration and selection is to be taken care at this stage. The decision on the appropriate resources to be used is
4

further elaborated under the subsections below. The next step is to design the system and database structure.
Results from the analysis and preparation that were concluded from the previous stage are put into action. With the user requirements in mind, the flow of the system is planned and the user interface is designed to suit their easy navigation needs. In addition, the number of tables, attributes, primary and unique keys of the database is listed.
After completing the design, actual coding begins. Database is created and codes are written. Some of the codes required amendments and improvement to it so these are being developed at this fourth stage of the waterfall model. With the development completed, testing will begin. The codes and database are tested to ensure the results obtained are as intended. More time is spent on both development and testing stages because it is inevitable to have errors and issues and buffer time is allocated for troubleshooting.

3.2

Scripting language selection

There are many scripting languages available in the market. VBScript, Perl, JSP (Java
Server Pages), ASP (Active Server Pages) and PHP (Hypertext Pre-processor) are some of those commonly used. Yet for this project, PHP is the language that is utilised for the coding piece because it is a server-side, embeddable HTML language. Being a widely-used open source scripting language, it is free for everyone to use and is especially suited for web development. On top of that, the existing system is already using PHP. There are many advantages for using PHP thus no need for the switch to another scripting language.
Other than being a freeware, there are many free upgrade packages easily available. The other benefit of choosing PHP is the ease in installation. It can run as a plug in on quite a number of web servers such as the Apache. On the other hand, JSP requires J2EE server to run and because it is a Java coded language, it is therefore more complex to understand and to do coding
Further exploring on the processing speed against ASP, PHP is interpreted at runtime and not compiled into memory whereas ASP is more memory intensive with each ASP language compiler running in its own processes. This results in slower processing speed for ASP. In addition, ASP runs more reliably only on Microsoft Windows-based web servers than other web servers
In conclusion, PHP is the preferred selection due to the ease of usage and it can be uploaded and run on another platform with minimal change required to be done to the script.
Beyond and above, the compiling time and speed for PHP is faster and more efficient.

3.3

Database selection

There are a variety of databases that we can select from the market. The widely used databases are Microsoft Access, Microsoft SQL, Oracle and MySQL. Looking at Microsoft
5

Access, it does not encourage concurrent usage and it may be inefficient, as the database needs to be saved into one file. It is also unable to process high speed and large size database as compared to MySQL.
In terms of costs, Oracle database requires a licensing fee but MySQL database is a freeware. In addition, MySQL database is easy to install, user friendly, reliable and is able to run on different platforms. Moreover PHP can access MySQL database directly without the need to go through ODBC (Open Database Connectivity).
To conclude, PHP script is able to run faster with MySQL database and the processing time will definitely be shorter. The pre-school does not require complex and costly software for its database management system hence MySQL is the ideal database for this project.

3.4

Web server selection

After deciding on the scripting language and database, next is to select the web server that can support them. Web server is necessary for the delivery of web content to the web browser.
As such, Apache HTTP server which has performance similar with other ’high-performance’ server is considered
Thereafter, research and actual testing have been performed to see the outcome of the various servers listed in the Figure below. These servers include PHP and MySQL in their installation packages thus allowing smoother and simpler download process. However, based on the performance and interface, Wamp or LAMP server is the preferred choice.

Figure 3.2: Comparison of web servers

6

Chapter 4
System Analysis and Design
4.1

Use case analysis

In order to provide a clearer picture of the functionality provided by the student management module, we have done a use case analysis. Figure below is a use case diagram to present the functionality in the student management module.
View Class
Schedule

Use Case
Analysis???

Add Class

Edit Class

Register
Family

Include

Update Family
Data
Include

Administrator

Enroll Student to Class

Register
Student

Include
Include

Bulk Enrolment

List Student

View
Attendance

Student
Management Model

Create Time
Table

Include

View Class
Details

Take Attendance

Faculty

Delete
Timetable

Figure 4.1: use case analysis

7

4.2

System Design

Under the existing student management module, the administrator has to first register the family. This includes the parent’s particulars and home details. After submitting these data, the administrator will be directed to the student page whereby the student information is to be submitted.
Figure below provides the interface of the existing student registration site. For easy navigation, the registration of the student and enrolment to the class has been combined into one process.

Figure 4.2: Student registration process
Besides the registration for a single student, there is a new feature added to the system.
That is to ’export’ bulk students from a class to another. This new feature is created to minimize the time required to register students to a new class. The school has many programs ranging from beginner to intermediate levels thus with this new feature, the administrator can easily enrol those students to their next level. The interface of this function is shown in
Figure below.

8

Figure 4.3: Export students module
Other than the ’export’ feature, the system has been modified to allow a couple of search attributes at the family registration part. The name attribute includes the first and last name whereas contact number means mobile, office and home number.
Figure below present functionality at registration page.

Figure 4.4: Search attributes for registration process
Figure below present the functionality to add student to class module from the existing one. 9

Figure 4.5: Enrol existing student to class
For the attendance marking system the following functionality has been added

Figure 4.6: Legend and attendance system
In order to fulfil the second objective on minimizing human error, there are a few error checking functions being implemented for the student management module. Firstly, at the family registration page, all the fields except the entry date, referral and remarks fields have been coded to do validation check. This is to ensure that all the relevant information are
10

collected and inserted into the database in an orderly manner.
The contact fields are designed to prompt an error message if none of the three fields has been input. The school requires at least one valid number. In addition, contact number should not contain alphabets so this has been taken into consideration for the error checking.
As for surname, name and nationality fields, checks are implemented to make sure the fields are not empty. On the other hand the postal code which should not contain alphabet; there will be message to alert any error as well.
Other than error checks on family registration page, the student registration page also checks for the surname and name fields. After retrieving the class details at the same page, users will be alerted if no class is selected for the enrolment. This is also implemented at the bulk student enrolment process. If the targeted class code is not provided, error message will appear.
The codes for the system design are provided under Appendix A.

11

Chapter 5
Database Design and Development
5.1

Database design

Database is critical for all businesses. A good database does not allow any form of anomalies and stores only relevant information in an ordered manner. If a database has anomalies, it is affecting the efficiency and data integrity. For example, delete anomaly arise upon the deletion of a row which also forces other useful data to be lost. As such, the tables need to be normalised. This fulfils the last objective of ensuring data are accurate and retrieved correctly. For the database of this project, the tables are normalised to BCNF as shown below. admin(id, name, password) faculty(id, name, password)
ATTENDANCE (student-class-id, class-date, status)
Where ATTENDANCE.student-class-id must exist in STUDENT-CLASS.id
ATTENDANCE-CODE (attendance-code, attendance-status)
CLASS-SCHEDULE (id, code, clientcode, clientname, educatorname, educatornric, curriculatheme, startdate, enddate, starttime, endtime)
Where CLASS-SCHEDULE.code must exist in CLIENT.code,
CLASS-SCHEDULE.clientname must exist in CLIENT.name,
CLASS-SCHEDULE.educatornric must exist in EDUCATOR.nric,
CLASS-SCHEDULE.educatorname must exist in EDUCATOR.name
And CLASS-SCHEDULE.curriculatheme must exist in CURRICULA.theme
CLASS-TIMETABLE (class-schedule-id, class-date)
Where CLASS-TIMETABLE.class-schedule-id must exist in CLASS-SCHEDULE.id
CLIENT (code, name)
CURRICULA (grp, theme)
EDUCATOR (nric, name)
(nric: National Registration Identity Card)
12

FAMILY (id, entry-date, reg-fee, status, name, surname, nric, address1, address2, postalcode, contact-home, contact-office, contact-hp, email, nationality, referred-by, remarks)
STUDENT (id, family-id, name, surname, sex, dob, status)
Where STUDENT.family-id must exist in FAMILY.id
STUDENT-CLASS (id, student-id, class-schedule-id, remark)
Where STUDENT-CLASS.student-id must exist in STUDENT.id
And STUDENT-CLASS.class-schedule-id must exist in CLASS-SCHEDULE.id

5.2

Database development

fter identifying the tables and columns of the database, the next step is to create them.
Basically there are two ways to do so. The first option is to create them using commands.
Below are some of the ’create’ and ’insert’ statements. The complete database code is provided under Appendix B. create table if not exists admin(aid char(50) not null primary key, aname char(50), apwd char(50)); insert into admin values(’admin’, ’admin’, password(’admin’)); create table if not exists faculty(fid char(50) not null primary key, fname char(50), fpwd char(50)); insert into faculty values(’faculty’, ’faculty’, password(’faculty’));
CREATE TABLE IF NOT EXISTS curricula (grp varchar(50) NOT NULL, theme varchar(50) NOT NULL, PRIMARY KEY (grp) ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO curricula (grp, theme) VALUES (’1’, ’Math’), (’2’, ’Phy’), (’3’, ’Che’),
(’4’, ’CSE’);
The second option is to use phpMyAdmin. This is a Graphical User Interface (GUI) interface for building and maintaining the database which is included in the web server,
XAMPP package. This is a simpler way to create the tables if one does not know the usage of commands.
The first step is to create the database as shown in Figure below. The default storage engine in this MySQL server is InnoDB which has commit, rollback, and crash-recovery capabilities to protect user data. Following that is to create the tables in the database.

13

Figure 5.1: Database creation in phpMyAdmin
Figure below gives a view of the table creation.

Figure 5.2: Table creation in phpMyAdmin
Figure below shows the interface for creating the attributes in the table.

14

Figure 5.3: Attribute creation in phpMyAdmin
After completing the creation, Figure below depicts the contents of the database, providing information like the number of tables in the database and the number of records in each of them. The MySQL server, phpMyAdmin, has many other features such as the deletion of tables, attributes and database. It also provides a mean for exporting or importing data into another database easily just by selecting the desired option seen at the top of the table in
Figure below.

15

Figure 5.4: Total number of tables in a database
To view the data in one of the table, this can be done by clicking on the table name listed on the left menu as per Figure below. The figure illustrates the educator table and there are three records in it.

Figure 5.5: Data of one table

16

Chapter 6
System and Database Testing
6.1

System and database testing

Testing is the last phase of this project. This is the stage where it shows whether the system and database are working as desired. Otherwise, further rectification is required. Tests have been conducted and recorded below to show the results.

Figure 6.1: Test
Test 1
17

Purpose: Test the error checking functions
Location: Family Registration
Condition: All mandatory fields need to be filled up
Result

Figure 6.2: Test1
Test 2
Purpose: Test the error checking functions
Location: Family Registration
Condition: At least one contact number is required
Result:

18

Figure 6.3: Test2
Test 3
Purpose: Test the error checking functions
Location: Family Registration
Condition: Contact number should contain numbers only
Result:

Figure 6.4: Test3
Test 4
Purpose: Test the error checking functions
Location: Family Registration
19

Condition: Email address must be valid
Result:

Figure 6.5: Test4
Test 5
Purpose: Test the error checking functions
Location: Family Registration
Condition: Postal Code should contain numbers only
Result:

Figure 6.6: Test5
Test 6
20

Purpose: Test the Search function
Location: Family Registration
Condition: No search value is input
Result:

Figure 6.7: Test6
Test 7
Purpose: Test the Search function
Location: Family Registration
Condition: Search using NRIC
Result:

21

Figure 6.8: Test7
Test 8
Purpose: Test the Search function
Location: Family Registration
Condition: Search using any contact number
Result:

22

Figure 6.9: Test8
Test 9
Purpose: Test the Search function
Location: Family Registration
Condition: Search using name
Result:

23

Figure 6.10: Test9
Test 10
Purpose: Update of family details
Location: Family Registration
Database: Family table
Condition: All data are valid
Result: In the system:

24

Figure 6.11: Test10
Test 11
Purpose: Update of family details
Location: Family Registration
Database: Family table
Condition: No update is done (status quo)
Result: In the system:

Figure 6.12: Test11

25

Test 12
Purpose: Create family
Location: Family Registration
Database: Family table
Condition: All data are valid
Result:In the system:

Figure 6.13: Test12
Test 13
Purpose: Create student (After creating the family)
Location: Student Registration
Condition: All mandatory fields are required

Figure 6.14: Test13
Test 14
Purpose: Create student (After creating the family)
Location: Student Registration
Condition: All mandatory fields are required
Result:
26

Figure 6.15: Test14
Test 15
Purpose: Create student (After creating the family)
Location: Student Registration
Condition: Need to select the class after retrieve class
Result:

Figure 6.16: Test15
Test 16
Purpose: Create student (After creating the family)
Location: Student Registration
27

Database: Student and Student-class tables
Condition: All data are valid
Result: In the system:

Figure 6.17: Test16
Test 17
Purpose: Delete student
Location: Student Registration
Database: Student and Student-class tables
Result: In the system:

Figure 6.18: Test17
Test 18
Purpose: To test the export function
Location: Export students
Condition: A valid class code is required.
Result:

28

Figure 6.19: Test18
Test 19
Purpose: To test the export function
Location: Export students
Database: Student-class table
Condition: Selected student to be exported from TRY-01 to class TRY-02
Result: In the system

Figure 6.20: Test19
Test 20
Purpose: To test the list students function
Location: List Student
29

Database: Student and Family tables
Condition: Search for students with name ’Bhai’ and list out the family information
Result:

Figure 6.21: Test20
Test 21
Purpose: To test the list students function
Location: List Student
Database: Student and Family tables
Condition: List all students in the school by the order of Date of Birth
Result:

30

Figure 6.22: Test21
Test 22
Purpose: To test the list students function
Location: List Student
Database: Student and Family tables
Condition: List all students in the school by the order of Surname
Result:

31

Figure 6.23: Test22
Test 23
Purpose: To test the attendance taking function
Location: Take Attendance
Database: Attendance table
Result: In the system:

Figure 6.24: Test23

32

Chapter 7
Project Management
7.1

Work breakdown structure

The Work Breakdown Structure provides a clear picture of the items that are required to be completed for the project work scope. It is arranged in a tree structure manner to show all sub-sections required to be accomplished in each phase throughout the project.

7.2

Risk management

Every project has uncertainties and they may affect the project success. These uncertainties are known as risk. There is a need to determine the risks involved in the project to reduce the chance of its occurrence as well as develop a plan to either mitigate or avoid the risks that have been identified.
After identifying and determining the risks, they are recorded in a table called the risk assessment matrix. This matrix lists the severity which is also known as the impact level in terms of High, Medium and Low. In addition to those details, the action plan that can be taken for each of the risks is clearly stated too.

33

Figure 7.1: Risk Assessment Matrix

34

Chapter 8
Conclusions
8.1

Conclusions

Simplicity is never simple. As we have seen in this project, the process of creating a userfriendly and straightforward platform that facilitates the administrator’s job is one filled with complexity. From understanding user requirements to system design and finally system prototype and finalization, every step requires in-depth understanding and commitment towards achieving the objectives of the project.
Although the student database management module is not fully integrated to the system and used on real time, the system prototype demonstrates easy navigation and data are stored in a systematic way. Overall, efficiency has improved and work processes simplified.
Although all the objectives have been met, the system still has room for improvement. The system is robust and flexible enough for future upgrade using advanced technology and devices. 35

Chapter 9
Critical Reviews
9.1

Critical reviews

In the process of doing this project, obstacles have been encountered. I have learnt to be more flexible in resolving issues. One of the situations that I have faced was when I had installed MySQL server, but it did not work. Then I tried to troubleshoot, research online and did a couple of re-installation but to no avail. Then I installed XAMPP, it did not work out too. Some how I did get rid of this problem but I did not like XAMPP server. Therefore
I decided to install LAMP server. Yes it worked fine. At the end I found that I had installed multiple server and hence system was confused which server is to be used i.e. conflicts with
MySQL. Then I stopped all server running on my laptop and decicded to start only LAMP server and it worked fine.
Being a novice in PHP language, I had difficulty in understanding the basic to write php files. Therefore I took longer time to understand how and why PHP works. I researched too much online. Went through several examples, tutorials etc.
Still I am not good enough in PHP language. In this entire project I have used only
PHP and HTML languages. but later I realized that there are multiple laguages which can support in designing a good database project. Those are CSS, JavaScript. There may be more but trully speeking I really don’t know any more.
Eventually with more hands-on exposure throughout this project, I managed to gain some understanding of PHP language.
Discipline played an important role for the completion of this project. Using the project management skills taught in class, I was able to apply them to this project.
Besides project management skills, I had also applied the database knowledge that I had learnt in the class to this project. From analysing of database structure and their relations to creating the database and tables, all these have strengthened my understanding. However when doing part of the codes, I would still research online and find solutions, for example, the usage of ’Ignore’ command to avoid duplication of data from inserting into the database.
This command did not work on MyISAM storage engine thus I had to change my database
36

storage to InnoDB in order for that to work.
Overall though the project was filled with challenges, it had given me opportunity to apply and strengthen my knowledge as well as gain new knowledge and skill through researches and experienced professionals whom I am fortunate enough to encounter.

37…...

Similar Documents

Premium Essay

Database

...form. Once the system is done with the coding stage it tests the systems and sees to it that it is working as per the expectations or not. System implantation is one of the most vital phases as in this phase the analyst actually gives the system to the customer and expects for a positive feedback. Finally, the system maintenance is that the analyst needs to maintain the system and see to it that it working within the standards set. He needs to maintain the system by removing the defects of flaws occurred. I think this relates to database development because in 1960 the developers, Elliott and Strachan and Radford developed large scale functional business systems in an age of large scale business conglomerates. Information systems activities revolved around heavy data processing and number crunching routines. The database is also a design lie cycle in my opinion because it is design in different stages in storing data and each of the components in the database might work similar but also in different ways. In requirements analysis, the head topics that I found are: project management tools, five common errors, and business analysts....

Words: 368 - Pages: 2

Premium Essay

Database

...Client/Server is a system. It is not just hardware or software. It is not necessarily a program that comes in a box to be installed onto your computer’s hard drive. Client/Server is a conglomeration of computer equipment, infrastructure, and software programs working together to accomplish computing tasks which enable their users to be more efficient and productive. Client/Server applications can be distinguished by the nature of the service or type of solutions they provide. Client/Server Computing is new technology that yields solutions to many data management problems faced by modern organizations. Client/Server Computing: An Introduction, features objective evaluations and details of Client/Server development tools, used operating system, database management system and its mechanism in respect of Client/Server computing and network components used in order to build effective Client/Server applications. vi Preface Last but not the least, this work is primarily a joint work with a number of fellow teacher who have worked with us. My parents, wife Meera, and our children, Akanksha and Harsh. I am particularly grateful to Dr. A. P. Singh, Principal, Udai Pratap Inter College, Varanasi; Dr. D. S. Yadav, Sr. Lecturer, Department of Computer Science and Engineering, IET, Lucknow; Dr. A. K. Naiyak, Director IIBM, Patna, former President of IT and Computer Science Section of Indian Science Congress Association; Prof. A. K. Agrawal, Professor and Ex-Head of Department,......

Words: 79055 - Pages: 317

Premium Essay

Database

...the minimum, maximum, sum, and average salary for each job type. Resave lab_04_04.sql as lab_04_05.sql. Run the statement in lab_04_05.sql. SELECT job_id, ROUND(MAX(salary),0) "Maximum",                 ROUND(MIN(salary),0) "Minimum",                 ROUND(SUM(salary),0) "Sum",                 ROUND(AVG(salary),0) "Average"  FROM   employees         GROUP BY job_id;  6. Write a query to display the number of people with the same job. SELECT job_id, COUNT(*)  FROM   employees   GROUP BY job_id;  Generalize the query so that the user in the HR department is prompted for a job title. Save the script to a file named lab_04_06.sql.� SELECT job_id, COUNT(*)  FROM   employees  WHERE  job_id = '&job_title'  GROUP BY job_id;  Oracle Database 10g: SQL Fundamentals I A - 12 Practice 4: Solutions (continued) 7. Determine the number of managers without listing them. Label the column Number of  Managers. Hint: Use the MANAGER_ID column to determine the number of managers. SELECT COUNT(DISTINCT manager_id) "Number of Managers"  FROM   employees;   8. Find the difference between the highest and lowest salaries. Label the column DIFFERENCE.� SELECT   MAX(salary) - MIN(salary) DIFFERENCE  FROM     employees;  If you have time, complete the following exercises:� 9. Create a report to display the manager number and the salary of the lowest-paid employee for that manager. Exclude anyone whose manager is not known. Exclude any groups where the minimum salary is $6,000 or......

Words: 569 - Pages: 3

Premium Essay

Database

...Introduction $  $  • Purpose of Database Systems • Data Definition Language • Data Manipulation Language • Transaction Management & ' & • Storage Management • Database Administrator • Database Users • Overall System Structure 1.1 Silberschatz, Korth and Sudarshan c 1997 Database Systems Concepts Database Management System (DBMS) • Collection of interrelated data • Set of programs to access the data • DBMS contains information about a particular enterprise • DBMS provides an environment that it both convenient and efficient to use Database Systems Concepts 1.2 Silberschatz, Korth and Sudarshan c 1997 ' & ' & Purpose of Database Systems $  $  Database management systems were developed to handle the following difficulties of typical file-processing systems supported by conventional operating systems. • Data redundancy and inconsistency • Difficulty in accessing data • Data isolation – multiple files and formats • Integrity problems • Atomicity of updates • Concurrent access by multiple users • Security problems Database Systems Concepts 1.3 Silberschatz, Korth and Sudarshan c 1997 View of Data An architecture for a database system view level view 1 view 2 … view n logical level physical level Database Systems Concepts 1.4 Silberschatz, Korth and Sudarshan c 1997 ' & ' & Levels of Abstraction $  $  • Physical level: describes how a record (e.g., customer) is stored. • Logical level: describes data stored in database, and the relationships among......

Words: 1023 - Pages: 5

Premium Essay

Database

...DATABASE ASSIGNEMENT ONLINE STORE DATABSE TABLE NAME * STUDENT/CUSTOMER * ENROLLMENT * COURSES * CATEGORY * ORDERS * ORDER DETAILS * PAYMENT * PRODUCT * SHIPPERS * SUPPLIER/COMPANY TABLES ATTRIBUTES STUDENT/CUSTOMER STUDENT table contain attribute such as: * STUDENT ID-PRIMARY KEY * FIRST NAME * LAST NAME * ADDRESS * POSTAL CODE * CITY * STATE * COUNTRY * PHONE * EMAIL * PASSWORD * CREDIT CARD * CREDIT CARD TYPE ID * BILLING ADDRESS * SHIP ADDRESS * DATE ENTERED ENROLLMENT ENROLLMENT table contain attribute such as: * STU ID-PRIMARY KEY * COURSE ID-PRIMARY KEY * SEMESTER-PRIMARY KEY * INTAKE COURSES COURSE table contain attribute such as: * COURSE ID-PRIMARY KEY * COURSE NAME * FACULTY CATEGORY CATEGORY table contain attribute such as: * CATEGORY ID-PRIMARY KEY * CATEGORY NAME * DESCRIPTION * PICTURE * ACTIVE ORDERS ORDERS table contain attribute such as: * ORDER ID * STUDENT ID * PAYMENT ID * SHIPPER ID * ORDER NUMBER * ORDER DATE * SHIPDATE * REQUIRED DATE * SALE TAX * TIME STAMP * TRANSACTION STATUS * FULFILED * DELETED * PAID * PAYMENT DATE ORDER DETAILS ORDERDATAILS table contain attribute such as: * ORDER IDs-PRIMARY KEY * PRODUCT IDs * ORDER NUMBER * PRICE * QUANTITY * DISCOUNT * TOTAL * IDSKU ......

Words: 289 - Pages: 2

Premium Essay

Database

...needed to build a database for the scheduling process. * Describe the advantages and disadvantages of moving the schedule to a database. * Create a graphical representation of your proposed database environment. * Explain how referential integrity can prevent mistakes in a database. Do the advantages outweigh the difficulty of setting it up? * Impress your boss by creating a database in Microsoft Access that will match trainers with courses and meet the following requirements: * Two (2) tables, one (1) containing trainer information and the other containing course information. Create data for five (5) instructors and five (5) courses. The trainer data should include: employee ID number, last name, first name, department, and email address. The course data should include: course number, course name, trainer employee ID number, and training location. * A relationship should exist between the tables. * Use referential integrity to make sure that each course has a valid trainer assigned to it. Week 7 Assignment 4 * Discuss the requirements needed to build a database for the scheduling process. The first step in creating a database is creating a plan that serves both as a guide to be used when implementing the database and as a functional specification after it has been implemented. The complexity and detail of a design is dictated by the complexity and size of the database application as well as the user population. A database can be......

Words: 681 - Pages: 3

Free Essay

Database

...is a relation schema. For example, Student(StudId: integer, StudName: string, Major: string) • A relation schema specifies the name and the structure of the relation. • A collection of relation schemas is called a relational database schema. * 1. List the names of all students who have borrowed a book and who are CS majors. πStName(σSTUDENTS.StId=borrows.StId (σMajor=’CS’(STUDENTS)×borrows)) * 2. List the title of books written by the author ’Silberschatz’. πTitle(σAName=’Silberschatz’ (σhas-written.DocId=BOOKS.DocID(has-written×BOOKS))) or πTitle(σhas-written.DocId=BOOKS.DocID (σAName=’Silberschatz’(has-written)×BOOKS)) * 3. As 2., but not books that have the keyword ’database’. * . . . as for 2. . . . − πTitle(σdescribes.DocId=BOOKS.DocId (σKeyword=’database’(describes)×BOOKS)) * 4. Find the name of the youngest student. πStName(STUDENTS)− πS1.StName(σS1.Age>S2.Age(ρS1(STUDENTS)×ρS2(STUDENTS))) * 5. Find the title of the oldest book. πTitle(BOOKS)−πB1.Title(σB1.Year>B2.Year(ρB1(BOOKS)×ρB2(BOOKS))) * Relational algebra is a language that is being used to explain basic relational operations and principles. * It is procedural language which instructs the system to perform a specific sequence of tasks on the database. * Relational algebra is a procedural query language with five fundamental operations. These operations include project, select, Cartesian product, union and set difference. * Projection is a unary operation......

Words: 700 - Pages: 3

Free Essay

Database

...transformation processes. In actual sense, relational database offers a solution to this menace. Data organization, keeping, storage, and retrieval among other essentials can easily be realized by adopting relational data management model. In this kind of model, tables are made use of in such a way that data items are formally described and organized according to their level of relations. The data item contained in a given table represents a relation. I am convinced beyond reasonable doubt that through the use of relational database model, an organization can be able to effectively manage their wide range of information encountered on a daily basis. Relational database model offers a more efficient means of managing data. Some of the huge benefits are discussed as follows. A relational database is a collection of relations or tables. The rows of a table in a relational database are known as tuples and each column of a table is called an attribute. By definition, a relation becomes a set of tuples having the same attributes. Operations, which can be performed on the relations are select, project and join. The join operation combines relations, the select queries are used for data retrieval and the project operation identifies attributes. The information oif the organization can be captured, manipulated, managed, and shared, and the value the database brings to the organization is immense. The advantages of a relational database are that they contribute to sound logical......

Words: 554 - Pages: 3

Premium Essay

Databases

...Assignment: Databases Maurice Eugene Northam III DBM/380 January 12, 2015 Bill Enloe Databases Database Management Systems (DBMS) are mind boggling, mission-discriminating programming systems. Today's DBMS’s epitomize many years of scholastic of a, what's more, mechanical examination and exceptional corporate programming advancement. Database Management Systems were among the soonest broadly conveyed online server systems and, accordingly, have spearheaded configuration arrangements crossing not just information administration, additional system applications, working systems, and organized administrations. The early DBMS’s are among the most powerful programming systems in software engineering, and the thoughts and execution issues spearheaded for DBMS’s are broadly duplicated and reexamined. For various reasons, the least of database systems building design are not as extensively known as they ought to be. First and foremost, the connected database systems group is genuinely little. Since business compels just help a couple of contenders at the top of the line, just a modest bunch of fruitful DBMS’s usage exist. The group of individuals included in outlining and actualizing database systems is tight: numerous went to the same schools, took a shot at the same compelling exploration ventures, and worked together on the same business items. Second, scholastic treatment of database systems frequently disregards building issues. Course reading presentations of database......

Words: 955 - Pages: 4

Premium Essay

Database

...COURSE OUTLINE DATABASE SYSTEMS: DIS 308 INTRODUCTION Databases are part of our day to day lives. When we are registering as students, we are interacting with databases, when we go to the bank, pay our electricity bills or pay water bills our accounts are on a database, even when we are browsing the net; information is coming from several databases. Therefore, databases are sources of information kept on electronic storage media for easy retrieval by interested parties. OBJECTIVE The objective of this unit is to introduce students to the concepts, architecture and design methods of database systems. At the end of the course you will be expected to translate logical models into physical databases LECTURE ONE: Introduction to Databases * Database Terminologies * Tradition Files * Database Management Systems (DBMSs) * Characteristics of Database Approach * Database Users * Database Storage LECTURE TWO: Database Systems Concepts and Architecture * Data Models * Three Schema Architecture * Database Languages and Interfaces LECTURE THREE: Database System Environment * Types of Databases * Database System Utilities * Tools Environment and Communication Facilities * Centralized and Client Server architecture for DBMSs * Distributed Databases * Data Warehouse LECTURE FOUR: Database Design Process * Logical Database Design Process * Physical Database Design * Object-Oriented Database Design LECTURE FIVE: CAT LECTURE SIX: ......

Words: 252 - Pages: 2

Premium Essay

Database

...CHOICE. Choose the one alternative that best completes the statement or answers the question. 3) The UNION clause is used to: 3) B A) join two tables together to form one table. B) combine the output from multiple queries into a single result table. C) find all rows that do not match in two tables. D) none of the above. TRUE/FALSE. Write 'T' if the statement is true and 'F' if the statement is false. 4) SQL statements can be included in another language, such as C or Java. 4) T MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. 5) A procedure is: 5) B A) given a unique name. B) called by name. C) stored within the database. D) all of the above. 6) The ________ DBA view shows information about all users of the database in Oracle. 6) B A) DBA_VIEWS B) DBA_USERS C) USERS D) DBA_INDEXES TRUE/FALSE. Write 'T' if the statement is true and 'F' if the statement is false. 7) User-defined functions can improve system performance because they will be processed as sets rather than individually, thus reducing system overhead. 7) T ESSAY. Write your answer in the space provided or on a separate sheet of paper. 8) What can be done with Persistent Stored Modules? PSM - Persistent Stored Module is a feature which provides users the ability to add their own extensions to the standard SQL. The Uses of PSM: • PSM becomes a valuable application development tool in case of applications......

Words: 696 - Pages: 3

Free Essay

Database

...1.1 Define the following terms: data, database, DBMS, database system, database catalog, program-data independence, user view, DBA, end user, canned transaction, deductive database system, persistent object, meta-data, and transaction-processing application. • Data merupakan satu satuan informasi yang akan diolah dimana sebelum diolah dikumpulkan di dalam suatu file database. Pengumpulan data dilakukan secara sistematis menurut struktur file database. • Database merupakan kumpulan data yang terkait satu sama lain. Atau sekumpulan data yang terintegrasi yang diorganisasi untuk memenuhi kebutuhan pemakai untuk keperluan organisasi. • Dalam database pastinya mengenal istilah DBMS (Databse Management System) yang mana merupakan suatu koleksi dari program yang mana pengguna bisa mengcreate dan memaintain suatu database. Dalam DBMS terdiri atas proses-proses yang harus dilakuka nyaitu defining, constructing, manipulating dan sharing. Komponen-komponen DBMS yaitu terdiri atas hardware, software, data, prosedur, people. Fungsi dari defining yaitu DBMS harus dapat mengolah pendefinisian data. Fungsi dari manipulating DBMS harus dapat menangani permintaan-permintaan dari pemakai untuk mengakses data. Fungsi dari constructing yaitu DBMS harus mengontrol proses pengiriman data ke penyimpanan medium. Fungsi dari sharing yaitu database memperbolehkan banyak orang dan program untuk mengakses database. • Meta data: informasi terstruktur yang bertujuan untuk mendeskripsikan,......

Words: 1618 - Pages: 7

Premium Essay

Databases

...University of Phoenix Material Determining Databases and Data Communications Read Scenario 1 and Scenario 2 below. Write a paper of no more than 1,500 words in which you respond to the questions designated for both scenarios. Scenario 1: You are a marketing assistant for a consumer electronics company and are in charge of setting up your company’s booth at trade shows. Weeks before a show, you meet with the marketing managers and determine what displays and equipment they want to display. Then, you identify each of the components that need to be shipped and schedule a shipper to deliver them to the trade show site. You then supervise trade show personnel as they set up the booths and equipment. After the show, you supervise packing the booth and all the equipment as well as schedule its shipment back to your home office. When the equipment arrives, you check it into your warehouse to ensure that all pieces of the booth and all the equipment are returned. If there are any problems due to shipping damage or loss, you handle those problems. Your job is important; at a typical show you are responsible for more than a quarter-million dollars of equipment. • In Scenario 1: o You need to track data about booth components, equipment, shippers, and shipment. List typical fields for each type of data. Provide an example of two relationships that you need to track. o Do you need a database system? If not, can Excel® handle the data and the output? What...

Words: 436 - Pages: 2

Premium Essay

Database

...Case Study: Database Development ALEXANDRA DESINORD PROFESSOR OSAMA MORAD CIS 515- STRAT PLAN FOR DBASE SYSTEMS Week 7 Assignment February 29, 2016 The more companies base their large elements of their business strategy around data, the need for IT team and executives with deep understanding of data and analytics is growing rapidly. Data changes all of the time. That is why it is essential that companies should try to stay up to par with the ever changing technology so that they can ensure that the system can withstand anything that comes about. Down below I will discuss briefly the various aspects of the SLDC and the tasks that can be completed to help solve certain common problems that exist from within. Customer data management is not high on many organizations' lists of priorities until it has to be. The term used in systems engineering, information systems and software engineering to describe a process for planning, creating, testing, and deploying an information system is called Systems development life cycle (SDLC). This term is also referred to as the application development life-cycle, which is a term used in systems engineering, information systems and software engineering to describe a process for planning, creating, testing, and deploying an information system. The task of optimizing the software development process has faced many obstacles. The main obstacle is a lack of accurate and complete data on the development process. The use of the......

Words: 2352 - Pages: 10

Premium Essay

Database

...IST 792 paper 2 Database security is a growing concern evidenced by an increase in the number of reported incidencets of loss of unauthorized exposure to sensitive data. As the amount of data collected, retained, and shared electronically expands, so does the need to understand database security. (Murray, 2010) Database security concerns the use of a broad range of information security controls to protect databases (potentially including the data, the database applications or stored functions, the database systems, the database servers and the associated network links) against compromises of their confidentiality, integrity and availability. It involves various types or categories of controls, such as technical, procedural/administrative and physical. Database security is a specialist topic within the broader realms of computer security,information security and risk management. Security risks to database systems include, for example: * Unauthorized or unintended activity or misuse by authorized database users, database administrators, or network/systems managers, or by unauthorized users or hackers (e.g. inappropriate access to sensitive data, metadata or functions within databases, or inappropriate changes to the database programs, structures or security configurations); * Malware infections causing incidents such as unauthorized access, leakage or disclosure of personal or proprietary data, deletion of or damage to the data or programs, interruption or denial......

Words: 524 - Pages: 3