Вы находитесь на странице: 1из 90

PENTECOST UNIVERSITY COLLEGE

FACULTY OF BUSINESS ADMINISTRATION

BACHELOR OF COMMERCE

PENTECOST UNIVERSITY COLLEGE ONLINE TIMETABLE


MANAGEMENT SYSTEM

Submitted By:
BRAKO PRINCE COBBY
(10143333)

Supervised By:
MADAM EVA ESTHER SHALIN EBENEZER

A DISSERTATION SUBMITTED TO THE PENTECOST UNIVERSITY COLLEGE


IN PARTIAL FULFILLMENT OF THE REQUIREMENT FOR THE AWARD OF
BACHELORS DEGREE IN COMMERCE.

JUNE 2015

DECLARATION

I hereby declare that this thesis is a legitimate work submitted in partial fulfilment of the
requirement for the award of Bachelor of Commerce degree.
With the strict supervision of MADAM EVA ESTHER SHALIN EBENEZER, I affirm that,
to the best of my knowledge, this work has not been submitted to any other university for any
award except for the references of other authors work, which have been duly acknowledged.
I further take responsibility for any error or mistake that this project work may be made up of.
I officially state that the project work has been supervised and accessed in accordance with
laid down guidelines by the Pentecost University College.

BRAKO PRINCE COBBY


(10143333)

MADAM EVA ESTHER SHALIN


(Supervisor)

...

Signature

..
Signature

Date

.
Date

DEDICATION

This project is dedicated to my father Mr. Samuel Brako, who taught me that the best kind of
knowledge to have is that, which is learned for its own sake. It is also dedicated to my mother
Mrs. Gifty Brako, who taught me that, every task can be accomplished if time and much
effort are put in place.
This project is dedicated to my little siblings, Ohenemaa Payin Asabea Brako and Ohenemaa
Kakra Asabea Brako.
To my friends who also advised, corrected and supported me throughout the process. I really
appreciate their effort especially, Andrews Afful, Oscar Owusu Ansah, Abigail Nyarko
Boaheng, Roberta kukua Arthur and all I could not mention their names.
God bless you all.

ACKNOWLEDGEMENT

My sincere thanks to the almighty God for His protection, love and direction He has shown to
me through my working of this masterpiece.
I really want to express my utmost gratitude to my supervisor, Madam Eva Shalin for her
guidance, support and encouragement throughout the project. Her devotion, attention, time
and effort made it possible for me to present this masterpiece. I have learnt and grown in
academic stature as a result of your intensive supervision.
To my parents Mr. Samuel Kwabena Brako and Mrs. Gifty Osei Brako for their support and
financing my four years stay in Pentecost University College. I say Ayekoo.
Furthermore, I want to thank Professor Felix Hammond (Dean of students for faculty of
Business Administration Pentecost University College) for his support and encouragement
and thanks to all lecturers of Bachelor of commerce.
Finally, to my friends who helped with ideas I say a big thank you.
Thanks to you all.

ABSTRACT

This dissertation is aimed to develop an online timetable for Pentecost University College
and eradicate the use of printed papers timetables.
The printed papers create lot of problems for the institution. The administration of the
institution puts in large amounts in the purchasing and printing of the papers. The students do
not have their timetable in time hence, delaying an academic semester.
This system is developed to assist management in the class scheduling for convenience and
efficiency. It can provide several instructors to schedule simultaneously. Students can check
and print a timetable immediately. It is developed in a web-based application. PHP is used as
a developing tool. The database management system was phpmyadmin in xampp. The tool
used for efficiency testing was face to face interview. In summary, the results from the
research indicated that the satisfaction of users were in a good level.
Therefore, this system could be implemented in the institution and satisfy the users
requirement effectively.

TABLE OF CONTENT
DECLARATION ....................................................................................................................... 2
DEDICATION ........................................................................................................................... 3
ACKNOWLEDGEMENT ......................................................................................................... 4
ABSTRACT ............................................................................................................................... 5
CHAPTER ONE ...................................................................................................................... 13
1.0 PROJECT INTRODUCTION ........................................................................................... 13
1.1 OVERVIEW AND BACKGROUND TO THE STUDY .............................................. 13
1.2 PROBLEM DEFINITION ............................................................................................. 13
1.3 SCOPE OF THE PROJECT........................................................................................... 13
1.4 OBJECTIVES OF THE PROJECT ............................................................................... 14
1.5 ROADMAP TO THE STUDY ...................................................................................... 14
CHAPTER TWO ..................................................................................................................... 16
LITERATURE REVIEW ........................................................................................................ 16
2.1 INTRODUCTION .......................................................................................................... 16
2.2 PENTECOST UNIVERSITY COLLEGE TIMETABLE ............................................. 16
2.2.1 IMPORTANCE OF TIMETABLE ......................................................................... 17
2.2.2 FORMS OF TIMETABLE ...................................................................................... 17
2.3 CURRENT TIMETABLE SYSTEM ............................................................................. 18
2.4 USERS OF THE ONLINE TIMETABLE SYSTEM .................................................... 18
2.4.1 ADMINISTRATORS .............................................................................................. 18
2.4.2 STUDENTS ............................................................................................................. 19
2.5 SAMPLES OF ONLINE TIMETABLE FOR OTHER UNIVERSITIES ..................... 19
CHAPTER THREE ................................................................................................................. 22
RESEARCH METHODOLOGY............................................................................................. 22
3.1 INTRODUCTION .......................................................................................................... 22
3.2 THE RESEARCH SAMPLE ......................................................................................... 22
3.3 THE RESEARCH METHOD ........................................................................................ 22
3.4 RESEARCH INSTRUMENT ........................................................................................ 22
3.4.1 PRIMARY INSTRUMENTS .................................................................................. 22
3.4.2 SECONDARY INSTRUMENT .............................................................................. 22
3.5 DATA ANALYSIS TECHNIQUES .............................................................................. 22
3.6 HARDWARE SPECIFICATION .................................................................................. 23

3.6.1 SERVER .................................................................................................................. 23


3.6.2 WORKSTATION .................................................................................................... 23
3.7 SOFTWARE SPECIFICATION .................................................................................... 23
3.7.1 XAMPP CONTROL PANEL .................................................................................. 23
3.7.2 MYSQL DATABASE ............................................................................................. 24
3.7.3 MICROSOFT INTERNET EXPLORER ................................................................ 24
3.7.4 MOZILLA FIREFOX.............................................................................................. 24
3.7.5 HYPERTEXT PREPROCESSOR (PHP)................................................................ 24
3.7.6 NOTEPAD ++ ......................................................................................................... 24
3.7.7 MACROMEDIA DREAMWEAVER 8 .................................................................. 25
3.8 SOFTWARE PROCESS MODEL ADOPTED ............................................................. 25
3.8.1 SYSTEM DEVELOPMENT METHODOLOGY ................................................... 25
3.8.2 ADVANTAGES OF THE MODEL ........................................................................... 26
3.8.3 DISADVANTAGES OF RAD ................................................................................ 27
3.8.4 PHASES OF RAD ................................................................................................... 27
3.8.5 STAGES OF RAD................................................................................................... 28
CHAPTER FOUR .................................................................................................................... 30
SYSTEM ANALYSIS AND DESIGN .................................................................................... 30
4.1 INTRODUCTION .......................................................................................................... 30
4.2 EXISTING SYSTEM..................................................................................................... 30
4.2.1 REVIEW OF THE EXISTING SYSTEM............................................................... 30
4.2.2 LIMITATIONS OF THE EXISTING SYSTEM .................................................... 30
4.3 PROPOSED SYSTEM................................................................................................... 31
4.3.1 REVIEW OF THE PROPOSED SYSTEM............................................................. 31
4.3.1.1 ADD PROGRAMS............................................................................................... 31
4.3.1.2 ADD COURSES................................................................................................... 31
4.3.1.3 ADD LECTURE................................................................................................... 32
4.3.1.4 ADD EXAMS....................................................................................................... 33
4.3.2 MERITS OF THE PROPOSED SYSTEM ............................................................. 34
4.3.3 LIMITATIONS OF THE PROPOSED SYSTEM .................................................. 35
4.4 FEASIBILITY STUDIES .............................................................................................. 35
4.4.1 ECONOMIC FEASIBILITY ................................................................................... 35
4.4.2 TECHNICAL FEASIBILITY ................................................................................. 35

4.4.3 ORGANISATIONAL FEASIBILITY .................................................................... 35


4.5 SYSTEM DESIGN ........................................................................................................ 36
4.5.1 DESIGN GOALS .................................................................................................... 36
4.5.1.1 PERFORMANCE CRITERIA ............................................................................. 36
4.5.1.2 DEPENDABILITY .............................................................................................. 36
4.5.1.3 MAINTENANCE ................................................................................................. 36
4.5.1.4 END USER CRITERIA ....................................................................................... 36
4.5.2 CONTENT ACQUISITION .................................................................................... 36
4.5.3 UNIFIED MODELLING LANGUAGE (UML) ..................................................... 37
4.5.4 USE CASE .............................................................................................................. 37
4.5.5 STRUCTURE DESIGN .......................................................................................... 40
4.5.6 DATABASE DESIGN ................................................................................................ 43
4.6 DESIGN SPECIFICATION ........................................................................................... 45
4.6.1 INTERFACE DESIGN............................................................................................ 45
4.6.1.1 SCREENSHOTS OF INPUT DESIGNS (BACK END) ..................................... 45
4.6.1.2 SCREENSHOTS OF OUTPUT DESIGNS (FRONT END) ................................... 46
SCREENSHOTS OF ERRORS........................................................................................ 48
4.7 DATA DICTIONARY ................................................................................................... 50
4.7.1 DATA STORE ........................................................................................................ 51
4.7.2

DATA STRUCTURES WITHIN THE DATABASE ........................................... 51

CHAPTER FIVE ..................................................................................................................... 54


5.1 TESTING ....................................................................................................................... 54
5.1.1 VERIFICATION ..................................................................................................... 54
5.1.2 VALIDATION ........................................................................................................ 54
5.1.3 BLACKBOX TESTING.......................................................................................... 54
5.1.4 WHITEBOX TESTING .......................................................................................... 54
5.1.5 TYPES OF TESTING ................................................................................................. 54
5.2 IMPLEMENTATION .................................................................................................... 55
5.2.1 PARALLEL CONVERSION .................................................................................. 56
5.2.2 PILOT CONVERSION ........................................................................................... 56
5.2.3 PHASED CONVERSION ....................................................................................... 56
5.2.4 DIRECT CONVERSION ........................................................................................ 56
5.4 USER MANUAL TO THE SYSTEM ........................................................................... 56

5.4.1 ADMINISTRATORS MANUAL .......................................................................... 56


5.4.2 STUDENTS MANUAL ......................................................................................... 61
5.5 CONCLUSION .............................................................................................................. 63
5.6 RECOMMENDATIONS ............................................................................................... 64
5.7 LIMITATIONS .............................................................................................................. 64
5.8 FUTURE RESEARCH .................................................................................................. 64
REFERENCE ........................................................................................................................... 65
Bibliography ............................................................................................................................ 65
APPENDIX I ........................................................................................................................... 67
SOURCE CODE .................................................................................................................. 67
LOGIN CODE...................................................................................................................... 67
TIMETABLE PORTAL....................................................................................................... 70
TIMETABLE SYSTEM ...................................................................................................... 78
DATABASE TABLES ........................................................................................................ 86

TABLE OF FIGURES
Figure 1: Dalhousie University ................................................................................................ 20
Figure 2: University of Ghana Legon ...................................................................................... 20
Figure 3: University of Windsor .............................................................................................. 21
Figure 4: University of Cambridge .......................................................................................... 21
Figure 5: Prototyping Methodology source: (Dennis, 2000) ................................................... 29
Figure 6 Screen: Add Program ................................................................................................ 31
Figure 7 Screen: Add Courses ................................................................................................. 32
Figure 8 Screen: Add Lecture .................................................................................................. 33
Figure 9 Screen: Add Exam ..................................................................................................... 34
Figure 10: Administrator's Section of Use Cases .................................................................... 38
Figure 11: Student's Section of Use Cases............................................................................... 39
Figure 12: Main Structure Design of the Timetable System Management ............................. 40
Figure 13: Administrator's Section of Main Structure Design ................................................ 41
Figure 14: Administrator's Section of Main Structure Design ................................................ 41
Figure 15: Student's Section of the Structured Design ............................................................ 42
Figure 16 Screen: Database Class Table .................................................................................. 43
Figure 17 Screen: Database Courses Table ............................................................................. 43
Figure 18 Screen: Database Exams Table ............................................................................... 44
Figure 19 Screen: Database Lessons Table ............................................................................. 44
Figure 20 Screen: Database Programs Table ........................................................................... 44
Figure 21 Screen: Administrator Login ................................................................................... 45
Figure 22 Screen: Administrator Department List................................................................... 46
Figure 23 Screen: Administrator Timetable Portal .................................................................. 46
Figure 24 Screen: Student Login ............................................................................................. 47
Figure 25 Screen: Student Master Timetable........................................................................... 47
Figure 26 Screen: Login Error ................................................................................................. 48
Figure 27 Screen: Add Program Error ..................................................................................... 48
Figure 28 Screen: Add Course Error ....................................................................................... 49
Figure 29 Screen: Add Exam Error ......................................................................................... 49
Figure 30 Screen: Add Lecture Error....................................................................................... 50
Figure 31: Enter Username and Password ............................................................................... 57
Figure 32: Add Program .......................................................................................................... 57

Figure 33: Select from the drop down ..................................................................................... 58


Figure 34: Add Course ............................................................................................................. 59
Figure 35: Add Lecture ............................................................................................................ 60
Figure 36: Add Exam ............................................................................................................... 61
Figure 37: Select ePortal .......................................................................................................... 62
Figure 38: Click on Undergraduate ePortal ............................................................................. 62
Figure 39: Enter Username and Password ............................................................................... 63
Figure 40: Click on Continuing Students................................................................................. 63

INDEX OF TABLES
Table 1: Data Types and Other Information ............................................................................ 51
Table 2: Class Table Data Dictionary ...................................................................................... 51
Table 3: Courses Data Dictionary ............................................................................................ 52
Table 4: Lessons Data Dictionary ............................................................................................ 52
Table 5: Exams Data Dictionary .............................................................................................. 53
Table 6: Programs Data Dictionary ......................................................................................... 53

CHAPTER ONE

1.0 PROJECT INTRODUCTION


1.1 OVERVIEW AND BACKGROUND TO THE STUDY
Information and Communication Technology has brought technology to change the way we
used to handle our timetable schedules. Before, timetable schedules were handled
traditionally by using builders logic where Academic registrar with a team sits down to
schedule our timetables manually. This usually caused a lot of errors and frustrations on the
part of the timetabling committee. Web-based online timetable management system is an
online oriented interface which will aid the entire student body to access timetable over the
internet. This will also help students to easily locate their lecture rooms which will be
associated in the proposed project. The project is of a purpose to allow all students of
Pentecost University College who do not often use the pentvars.edu.gh website to visit
regularly. Also, to ease the students from the stress of going to stand at the noticeboard to
struggle with others before timetables can be written down or memorized.
1.2 PROBLEM DEFINITION
Presently, the burdensome nature of manual system of managing timetables in Pentecost
University College makes it very difficult for students to retrieve their semester timetable on
time. Also, it turns to be hectic and stressful when timetables are posted on the noticeboard
and students struggle to retrieve them. On the part of the administration, its time consuming
and cost for printing and typing turns up to be high. This project seeks to correct all the
identified problems facing the College administration and student body.
This project seeks to induce students who have no time visiting the Colleges Website to do
so.
This project seeks to give every student the chance to have his or her timetable on his phone,
tablets and other gadgets everywhere he or she finds him or herself.
1.3 SCOPE OF THE PROJECT
The proposed project was added to the schools website on pentvars.edu.gh. (E-portal). The
scope of the project was to develop Pentecost University College online timetable
management system which has improved the current manual system Pentecost University
College was using.

1.4 OBJECTIVES OF THE PROJECT


This project seeks to design and develop an online timetable management system for
Pentecost University College. So, every student of the institution can have access to it at any
anytime and anywhere.
The objectives of this project are:

To investigate the current processes, requirements and problems involved in the task of
preparing the timetable.

To develop an online timetable to suit the institution.

To encourage students to visit the institutions website pentvars.edu.gh

To help students view and print their timetables.

Reduce wastage of paper used to print and reprint timetables.

Enable more efficient and appropriate use of teaching and learning space on campus.

Enable to create space on the noticeboard for more information to be published.

To have the quality and feasible timetable this will improve the current system in
Pentecost University College

Support the student experience by allowing them to access their timetable information at
all times.

The system will be user-friendly and easy to maintain.

1.5 ROADMAP TO THE STUDY


The project will be presented in five chapters.

CHAPTER ONE

This chapter drives the other chapters in the project, by giving insight on what the whole
project is about.

CHAPTER TWO

This is Literature Review. It compares the project to that of other similar ones to prove that
no one has studied the project.

CHAPTER THREE

This is methodology. This seeks to identify the methods and processes used by the developer.
Also, this gives the investigator enough information to replicate the study.

CHAPTER FOUR

This is system analysis and design. This chapter also illustrates diagrams and tables used in
the project. The diagrams and tables are salient results from the study.

CHAPTER FIVE

This chapter summaries the whole project, gives recommendation and how it was
implemented and tested.

CHAPTER TWO

LITERATURE REVIEW
2.1 INTRODUCTION
PUC online timetable management system plays a great role in the reduction of the workload
stress of the Academic registrar and his team. Also, it has come to satisfy the students need
of having to view, download and print their timetables over the internet. This chapter will
help describe the techniques which were used to design the online timetable. The problem
faced by the manual or traditional timetable was the late postings of the timetable on the
noticeboard. After going through lot of solutions to the problem being faced by PUC
timetabling system, online timetable system was chosen.
2.2 PENTECOST UNIVERSITY COLLEGE TIMETABLE
Oxford dictionary defined timetables as;

A plan of times at which events are scheduled to take place, especially towards a
particular end.

A chat showing how the weekly time of a school or college is allotted to classes.

Wikipedia also gave a definition as;


A school timetable is a table for coordinating these four elements:

Teachers

Students

Class rooms

Time slots or Periods

PUC timetables are changed every academic semester due to the courses to be offered in a
particular semester.
PUC timetable ensures that each course has its own lecturer, lecture rooms, time slots and
course codes. Before a student of PUC will go for a lecture, he or she must know all of those.
This makes learning and lecturing conductive for both the lecturer and the students. In the
research institution, for regular and evening schools, a particular programme offers at least
five courses a semester and at most eight courses a semester and the weekend school also

offers four courses per trimester. Time apportionment is also very important in timetables,
this helps both parties (i.e. lecturer and student) know the exact time for a lecture and each
lecture is subjected to three credit hours. PUC timetable do not repeat the same course being
taught in a week. Allocations of lecture rooms are done by the size of the students to that
lecture. Every course has a course code allotted to them. A lecturer can be assigned to one or
more different courses with different course codes.
2.2.1 IMPORTANCE OF TIMETABLE
Timetable is a mirror that reflects the entire educational programme followed in institutions.
It serves the following purposes:

Timetable helps students and lecturers to prepare before the lecture.

It helps students and lecturers know the exact time and duration for a lecture.

It ensures that lecturers are not scheduled for many back to back lectures at the same
time slot.

Timetables makes sure appropriate lecture rooms are given to the size of the students
to a lecture.

A well-constructed timetable establishes a natural rhythm and routine, which can be


comforting to teachers and students.

Timetable eliminates time wastage and energy.

Timetable ensures punctuality and regularity in both the lecturers and students

Timetable also ensures discipline and keeps students busy in an institution.

2.2.2 FORMS OF TIMETABLE


The forms of timetable depend on the type of institution, due to the various activities carried
out in that institution.
But generally speaking there are seven forms of timetable which are:

Master time indicating the entire programme of the institution.

Class time-table.

Teacher's time-table.

Vacant period time-table.

Games time-table.

Co-curricular activities time-table.

Home-work time-table.

2.3 CURRENT TIMETABLE SYSTEM


In PUC, manual timetable are prepared by the academic registrar and his team. Scheduling a
lecture requires a lecture room and time slots such that other lectures will not conflict with
others.
In school timetabling, we are required to schedule a given set of meetings such that the
resulting timetables are feasible and acceptable to all people involved. Humans are able to
prepare the timetable using some hit/miss approach (i.e. its quality cannot be predicted it
could good or bad). When this approach is used, timetables most often conflict with each
other being it the same lecturer to different courses at the same time slot. This creates a lot of
problems to the timetabling team which make them go over and over again before getting it
right.
The manual solution of the timetabling problem usually requires many person-days of work.
In addition, solution obtained may not be satisfactory to the stakeholders of the timetable.
Lectures allotment may not suite the stakeholders of the timetable.
2.4 USERS OF THE ONLINE TIMETABLE SYSTEM
The users of the new timetable system are of two categories which are:

Administrators

Students

2.4.1 ADMINISTRATORS
They are responsible for the monitoring and controlling of the master timetable. They do all
the relevant changes such as:

Lecturers Profile

Administrators Username and Password and change password

Add, Delete Lecture rooms

Add, Drop Courses

The Master Timetable

2.4.2 STUDENTS
These users are the main focus group. Before they access the timetable they login with their
student index numbers as username and password. They then select from drop downs of

PROGRAMS
1. BCOM
2. Banking and Finance
3. Insurance

STREAM

1. Regular
2. Evening
3. Weekend

LEVEL

1. 100
2. 200
3. 300
4. 400

SEMESTER

1. First
2. Second
3. Third
When students select everything accurately, their mater timetables will be shown for them to
view and print.
2.5 SAMPLES OF ONLINE TIMETABLE FOR OTHER UNIVERSITIES

DALHOSIE UNIVERSITY

This timetable was taken from Dalhousie University. Comparing this timetable to my project,
this looks unorganised and it is not user-friendly. As a guest visiting this timetable, it will be
quite difficult to read the timetable.

Figure 1: Dalhousie University

UNIVERSITY OF GHANA LEGON

This timetable was created for examination purposes only. Comparing this to my project, my
project has both academic and examination timetables.

Figure 2: University of Ghana Legon

UNIVERSITY OF WINDSOR

This timetable interface is not organised, which can be difficult for guest to read.

Figure 3: University of Windsor

UNIVERSITY OF CAMBRIDGE

This timetable looks neat and organised. No guest to the university except students and staff
can have access to this timetable.

Figure 4: University of Cambridge

CHAPTER THREE

RESEARCH METHODOLOGY
3.1 INTRODUCTION
This chapter outlines the research design for this exploratory study and the manner in which
the research was conducted. This chapter will cover the research sample, research method,
research instrument, method of distribution and data analysis techniques. In this chapter also
cover the system development methodology.
3.2 THE RESEARCH SAMPLE
The targeted audience of this research were Pentecost University College students who are
using the manual timetable system. The targeted subjects are likely to have knowledge or
experience in doing or using the timetable system.
3.3 THE RESEARCH METHOD
It was decided that the research method used was face to face interview with some selected
students from the faculty of Business Administration. This method of collecting data was
used to acquire knowledge on the difficulty of preparing the manual timetable and how
readily is it available to the students on time. This will help gain data on how to develop the
software.
3.4 RESEARCH INSTRUMENT
3.4.1 PRIMARY INSTRUMENTS
The research used face to face interviews. The first interview was with the academic board in
charge of timetable, Head of Departments, Faculty Dean of students. Data to be used are
those collected from interviewers.
3.4.2 SECONDARY INSTRUMENT
Data collected from the users of the timetable or students was analysed.
3.5 DATA ANALYSIS TECHNIQUES
Data collected from the interviewers were entered into Microsoft Excel spreadsheet so;
graphs and tables could be generated.

3.6 HARDWARE SPECIFICATION


3.6.1 SERVER
Processor: 2.00GHz or Higher
Hard Disk: 150GB or more
Main Memory: 1024MB
Backup Hard Disk 150GB or more
Monitor: VGA or Higher Resolution Monitor (1024*768 pixels)
Network Interface Card: Recommended
Keyboard and mouse: Recommended
3.6.2 WORKSTATION
Processor: Intel Pentium IV or Later
Hard Disk: 100GB or more
Main Memory: 512MB
Monitor: VGA or Higher Resolution Monitor (1024*768 pixels)
Network Interface Card: Recommended
Keyboard and mouse: Recommended
Scanner and printer: Recommended
3.7 SOFTWARE SPECIFICATION
Operating System: Windows XP, VISTA, Windows 7, 8 or 8.1.
The project was designed and implemented using XAMPP Control Panel, MYSQL database,
Microsoft Internet Explorer, Mozilla Firefox, Hypertext Preprocessor (PHP), Notepad ++,
Macromedia Dreamweaver 8.
3.7.1 XAMPP CONTROL PANEL
This acts as a web server that allows you to serve dynamic pages on your computer. Its
intended to be used as a development tool as it allows programmers to develop their work

using Apache, MySQL, PHP and Perl without having access to the internet. Its available for
Windows, Linux, Solaris, and Mac OS X and is released under the terms of the GNU General
Public License. XAMPP also provides support for creating and manipulating databases
in MySQL.
3.7.2 MYSQL DATABASE
This is a freely available open source Relational Database Management System (RDBMS)
that uses Structured Query Language (SQL). SQL is the most popular language for adding,
accessing and managing content in a database. It is most noted for its quick processing,
proven reliability, ease and flexibility of use.
3.7.3 MICROSOFT INTERNET EXPLORER
Internet browsing software manufactured by Microsoft Corp. and included on computers with
their Windows operating system. This software allows users to view and navigate web pages
on the Internet. Internet Explorer is the most widely used browser in the world.
Initially called Microsoft Internet Explorer (MSIE), Internet Explorer (IE) has long held the
title of most popular browser in use, despite strong competition from the likes of Mozilla
Firefox, Safari, Opera and Google Chrome.
3.7.4 MOZILLA FIREFOX
Firefox is a free, open-source web browser from Mozilla. Firefox includes most of the
features with which users of other browsers are familiar. The first iteration of the browser
also included several new features other browsers did not have at the time, such as a
bookmarks toolbar and tabbed browsing that allow a user to quickly switch back and forth
between several Web sites.
3.7.5 HYPERTEXT PREPROCESSOR (PHP)
Hypertext Preprocessor (PHP) is a server-side programming language and is a widely-used,
open source scripting language. A good benefit of using PHP is that it can interact with many
different database languages including MySQL. It works with MySQL at Bluelinemedia
since this is also a free language so it makes sense to use PHP. Both PHP and MySQL are
compatible with an Apache server which is also free to license.
3.7.6 NOTEPAD ++
Notepad++ is a free (as in "free speech" and also as in "free beer") source code editor and
Notepad replacement that supports several languages. Running in the MS Windows

environment, its use is governed by GPL License. Based on the powerful editing component
Scintilla, Notepad++ is written in C++ and uses pure Win32 API and STL which ensures a
higher execution speed and smaller program size.
3.7.7 MACROMEDIA DREAMWEAVER 8
Macromedia Dreamweaver 8 from Adobe is the industry-leading web development tool that
lets you efficiently design, develop and maintain standards-based websites and applications.
Dreamweaver 8 provides a powerful combination of visual layout tools, application
development features, and code editing support.
Macromedia Dreamweaver 8 is the industry-leading HTML editor for designing, coding, and
developing websites, web pages, and web applications. This is available for both Macintosh
and Windows operating systems. Dreamweaver 8 is a powerful Hypertext Markup Language
(HTML) editor used by professionals, as well as beginners. The program makes it easy for
designers to create visually attractive, interactive Web pages without having to know HTML
or JavaScript. However, Dreamweaver 8 enables the experienced professional to write and
edit HTML using the code editor. Macromedia Dreamweaver 8 also contains HTML, PHP,
ASP VBScript, and ASP.NET C #, JavaScript, XML, and CSS which are all programming
and scripting languages.
3.8 SOFTWARE PROCESS MODEL ADOPTED
Rapid Application Development (RAD) was the software model adopted.
3.8.1 SYSTEM DEVELOPMENT METHODOLOGY
The term 'rapid application development' was first coined by James Martin in the year 1991.
According to him: Rapid Application Development (RAD) is a development life cycle
designed to give much faster development and higher-quality results than those achieved with
the traditional life cycle. (Martin, 1991)
Rapid Application Development (RAD) was used primarily in the project as the
Methodology. Rapid application development is a software development methodology that
involves methods such as iterative development and software prototyping. According to
Whitten (2004), it is a merger of various structured techniques, especially data-driven
Information Engineering, with prototyping techniques to accelerate software systems
development. (Whritten & L, 2004)
Dennis et al (2000). Martin (1991) had defined RAD as:

A development life cycle designed to give much faster development and higher quality
results than the traditional life cycle.
In RAD model the components or functions are developed in parallel as if they were mini
projects. The developments are time boxed, delivered and then assembled into a working
prototype. This can quickly give the customer something to see and use and to provide
feedback regarding the delivery and their requirements. RAD helps programmers to quickly
build programs and also provide tools to create a good graphical user interfaces which will
take much more effort in it development. RAD provides abilities to quickly develop an
application and modify it without going through a repetition process. The lack of preplanning makes the software to be written much easier and changes to be modified faster. In
RAD, structured techniques and prototyping are especially used to define users' requirements
and to design the final system.
3.8.2 ADVANTAGES OF THE MODEL
The advantages indicated below clearly indicate why rapid application development is a fast
and efficient methodology for software development, delivering great quality in a costeffective and timely manner.

It is much easier for a project manager to be accurate in estimating project costs which of
course means that project cost controls are easier to implement and manage as well.

It saves big cost of project budget and project time due to reusability of prototypes.

This method helps to save time for testing because a component is tested when picked
from repository. There will be no need testing again.

The project management requirements are collected in a dynamic manner. Every time
there is a prototype ready, requirements are studied and matched. If there are any
additional requirements, these are then included in the next prototype built.

There is a strong and continuous participation of the project sponsor who provides
feedback in the whole process. Hence the end user satisfaction level is higher when the
end result is produced.

It promotes better documentation through written test cases.

Faster Delivery Time. Here, the CASE software tools which enable programmers and
developers to re-use previous codes on the other hand, saving the time available for
manual coding.

Better Quality. RAD leads to a better quality of products being delivered to customers
and my meeting their requirements as stated. With this, drastic errors reduction is
achieved and also detected in the early stages of development.

Lower Maintenance. In most companies, statistics show that, 65% of information


technology budget is duly spent on maintenance of existing systems. RAD allows for
software solutions to be built in a way that facilitates better maintenance and upgrading of
applications.

Reduced Risk. Due to the iterative approach and prototyping, testing and integration of
end user feedback happens at each stage of product development. This minimizes the end
products changes and defects and also the risk involved in the project.

3.8.3 DISADVANTAGES OF RAD


This model has some disadvantages which should be looked out for by developers when
using this method, of which some as being listed below.

This method may be irrelevant for large, unique or highly complex projects.

This method cannot be a success if the team has no motivation or do not communicate
well together.

Success of this method depends on the extremely high technical skills of the developers.

At times, when the team ignores necessary quality parameters such as consistency,
reliability and standardization. Hence, this can make project quality management hard to
implement during the project management life cycle.

High dependency on modeling skills.

Inapplicable to cheaper projects as cost of modeling and automated code generation is


very high.

Requires highly skilled developers/designers.

3.8.4 PHASES OF RAD


The phases in the rapid application development (RAD) model are:
1. Business modeling: The information flow is identified between various business
functions.
2. Data modeling: Information gathered from business modeling is used to define data
objects that are needed for the business.

3. Process modeling: Data objects defined in data modeling are converted to achieve the
business information flow to achieve some specific business objective.
4. Application generation: Automated tools are used to convert process models into code
and the actual system.
5. Testing and turnover: Test new components and all the interfaces.
3.8.5 STAGES OF RAD
Rapid application development model stages:
These stages are iterative so it goes through them over and over again.

Design Capture, refine and prioritize user stories; estimate, plan and monitor sprints and
releases.

Build Use visual models, pre-built components, and business logic workflows to rapidly
develop applications in a common language understood by business and IT.

Deploy Provision and manage apps in the cloud, including one-click deployment;
manage test, acceptance and production environments.

Manage Control all applications from a single dashboard, ensuring availability, security,
performance and scalability.

Iterate Gather feedback, including end user input, and use in the next cycle of designdevelop-deploy-iterate.

Collaborate Enable closed feedback loops within the rapid application development
model so that all stakeholders can communicate and collaborate. The right rapid
application development software enables speed and collaboration across the full
application lifecycle. The result is the faster release of higher quality applications.

Figure 1 below illustrates the prototyping methodology that is used in this project.

Analysis
Planning
Design
Development and
Testing

System
Prototypes

Implementation

System

Figure 5: Prototyping Methodology source: (Dennis, 2000)

CHAPTER FOUR

SYSTEM ANALYSIS AND DESIGN


4.1 INTRODUCTION
System Analysis deals with the study of a business problem to generate and recommend ideas
and identify the business requirements and alternatives for the solution. It involves analysing,
classifying and understanding the problem, then, identifying alternative solutions to the
problem and also, choosing the best course of action and then designing the best solution
from the selected alternatives.
The purpose of systems analysis to ascertain what must be done in order to carry out the
functions of the system.
It determines how existing systems work and the problems associated with existing systems.
It is worthy to note that, before a new system can be designed, it is obligatory to study the
existing system that is to be improved upon.
4.2 EXISTING SYSTEM
4.2.1 REVIEW OF THE EXISTING SYSTEM
The existing timetable system is use by Pentecost university college undergraduates who
offer business Administration. This timetable brings much discomfort to the student body and
also the institution uses more funds to finance the printing and posting of these timetables.
This timetable used by the institution most at times delays the institutions activities for the
academic semester. Most at times, the first and second weeks of the semester goes waste by
the delay of the timetable posting.
4.2.2 LIMITATIONS OF THE EXISTING SYSTEM
These are some of the challenges faced by both the Administration and the student body;

The student body conflicts with the timetable because of the arrangement of the date and
time.

Administrations experiences high cost of printing the timetables.

Relevant Information cannot be posted on the noticeboard due to the large space the
timetable has occupied.

Differentiating between the streams is difficult on the timetable.

Students write their timetables on sheets which later get lost and now turn to be fumbling
with the times to go for lectures.

4.3 PROPOSED SYSTEM


4.3.1 REVIEW OF THE PROPOSED SYSTEM
The proposed system was designed and developed to solve the timetabling problem being
faced by Pentecost University College every academic semester and to reduce high cost of
printing and posting the timetables on the noticeboard.
The timetabling system has capabilities for Administrators to input
4.3.1.1 ADD PROGRAMS
Here, the administrator will have to add the programs conducted by Pentecost university
college faculty of business administration.

Figure 6 Screen: Add Program

4.3.1.2 ADD COURSES


Here, the administrator will have to add course code, course name, course lecturer, select
from a drop down course semester and click on add course for the course to be added.

Figure 7 Screen: Add Courses

4.3.1.3 ADD LECTURE


Here, administrator will select from a drop down course, day, start time, end time, add class
room and click on add lecture.

Figure 8 Screen: Add Lecture

4.3.1.4 ADD EXAMS


Here, the administrator will select from drop down course, pick date, select time, add exam
venue and click on add exam to be recorded.

Figure 9 Screen: Add Exam


These fields are validated and checks errors. When a field is not entered or omitted, the user
or administrator will be prompted when the user clicks on add course, add lecture and add
exams.
4.3.2 MERITS OF THE PROPOSED SYSTEM
The proposed system seeks to be of great importance to the college. These advantages are as
follows:

It is very flexible unlike the manual system of timetabling.

It increases productivity and reduces cost.

It brings down the rate at which papers are used.

It makes it easy for students to have their timetable in time.

Students can print and have their own copy of timetable.

It promotes academic work since there will be no delay in posting the time tables.

Students will have time to go round to look for their lecture rooms before school reopens.

4.3.3 LIMITATIONS OF THE PROPOSED SYSTEM


The following are challenges to be faced when using the proposed system due to time
constraint:

The academic board will still have to process the timetable before keying it on the system.

Not all the generic algorithms are used or implemented in the system.

Lecturers will have to be prompted on their lecture and lecture rooms using the existing
methods.

The proposed system has no automatic generating features.

4.4 FEASIBILITY STUDIES


This study is conducted with the aim of providing estimate of the likely cost and benefits of
the proposed system. This is to help make a brilliant selection of the system that will meet the
required performance and expectations of the proposed system.
Also this study is conducted at the early stages of the project development to help know
whether the proposed system is realistic. With this, much expenditure is not required.
Three main areas to look at during a feasibility study are:
4.4.1 ECONOMIC FEASIBILITY
This is the measure of the cost-effectiveness of a proposed system to be developed. For a
system to be developed, the economic benefit should be compared to the economic cost if
they justify each other. If they do not the system is unlikely to be developed.
4.4.2 TECHNICAL FEASIBILITY
This measures whether there are technical expertise and technical resources to develop the
proposed system in an institution.
4.4.3 ORGANISATIONAL FEASIBILITY
This feasibility is sometimes called operational feasibility.
It measures how the proposed system will work in the institution and also measures how
users of the proposed system feel about it.

4.5 SYSTEM DESIGN


This refers to the specification and construction of a technical, computer-based solution for
the proposed system requirements identified in a system analysis. It also gives the overall
plan and model of a system consisting of all specifications that give the system its form and
structure.
4.5.1 DESIGN GOALS
Design goals identify the qualities of the system that developers should optimize.
Design goals are grouped into four categories. These are
Performance
Dependability
Maintenance
End User Criteria
4.5.1.1 PERFORMANCE CRITERIA
The part of the system where the timetable will be retrieved must have a fast response time
with a maximum throughput. Also, the system should not take up much memory space. The
system should be much interactive and reliable to the administrator.
4.5.1.2 DEPENDABILITY
The system will not be used by only IT intellectuals so; the institution will need the system to
be more dependable. Furthermore, the system must be user-friendly, robust and fault tolerant.
Since the system will be handling data of the school, more emphasis should be based on the
security levels.
4.5.1.3 MAINTENANCE
The system should be subjected to adding more functionality from time to time.
4.5.1.4 END USER CRITERIA
The end users of the system should have much satisfaction. The user should be able to learn
and use the system effectively and have few challenges if any.
4.5.2 CONTENT ACQUISITION
The proposed system content was acquired from text and graphics.

Text

The text content of the system was generated from scrapped ideas and through reference
materials during the literature review and research studies.

Graphics

Graphics play significant role in our system by making our browser attractive and creative.
The logos of the institution were downloaded from the internet to design the front and back
end of the system.
4.5.3 UNIFIED MODELLING LANGUAGE (UML)
This is an object- oriented system that describes the software system in terms of objects.
UML which is object oriented adds variety of software development and techniques to
fields of system analysis.
4.5.4 USE CASE
UML Use Case is used to give description of the processes and functionality of the proposed
system. Also, the main purpose of having use case diagram is to identify the scope of the
system. It also gives description of what a system does from the standpoint of an external
viewer. The emphasis of use case diagrams is on what the proposed system does rather than
how. They are used to show the interactions between users of the proposed system and the
system itself.
Two use case diagrams have been created for timetable system: one for the administrator and
the students.

Log in
Add program
Add course

Delete course

Add lecture

Delete lecture

Add exams

Delete exams
Administrator

Figure 10: Administrator's Section of Use Cases


Administrators will have to log in with a username and password. When the correct username
and password is entered, the web will direct the administrator to a new page were he or she
can add programs, add courses, add exams and delete any error made. But if the username
and password are not correct, a dialog will pop up as username or password incorrect of
which the administrator will not have access to the system.

Pentvars.edu.gh

E-portal
undergraduate
UN

Log in

Click
Timetable

View
Timetable

Print
Students

Timetable

Figure 11: Student's Section of Use Cases


Students would have to enter into the pentvars.edu.gh site and click on e-portal. A menu will
pop up showing undergraduate and post graduate. Students will have to click on
undergraduate which will direct them to a new page were they can log in with their username
and password. When they are logged in, there they can view their timetable as illustrated in
the use case above.

4.5.5 STRUCTURE DESIGN


This shows the structure of the web page clearly. It gives an insight of what users of both the
back end and front end will go through to use the system.

TIMETABLE MANAGEMENT
SYSTEM

ADMINISTRATORS
MODULE

STUDENTS
MODULE

Figure 12: Main Structure Design of the Timetable System Management

ADMINISTRATORS
MODULE

Login

Add
Add
Delete
Add
Delete
Program
lecture
lecture
Figure 13:Course
Administrator'sCourse
Section of Main
Structure Design
s

Add
exams

Figure 14: Administrator's Section of Main Structure Design

Delete
exams

STUDENTS
MODULE

Pentvars.edu.gh

E-portal

Login

Undergraduate

Click
Timetable

View
Timetable

Figure 15: Student's Section of the Structured Design

Print
Timetable

4.5.6 DATABASE DESIGN


This design phase will help illustrate how data was stored in a database.
A database is a shared collection of logically related data, and a description of this data,
designed to meet the information needs of an organisation. (Connolly & begg, 2005)
A database system is a collection of application programs that interact with the database
along with the DBMS and database itself (Connolly and Begg, 2005).
With the database, the administrator will be the only user to this information. Also, data
entered in the back end will be stored directly to the database.
The database was created using phpmyadmin from Xampp. All the main database tables and
data types are in the screenshot provided below.

Class Table

Figure 16 Screen: Database Class Table


Courses Table

Figure 17 Screen: Database Courses Table

Exam Table

Figure 18 Screen: Database Exams Table


Lessons Table

Figure 19 Screen: Database Lessons Table


Programs Table

Figure 20 Screen: Database Programs Table

4.6 DESIGN SPECIFICATION


4.6.1 INTERFACE DESIGN
The significance of the interface design is to make the system more comfortable and
convenient for users. The success of the system is when users feel comfortable operating it.
The interface will show the input designs and out designs. The input design is the back end
where the administrators operate. The output design is the front end where the students
operate. The developed system seeks to meet the needs of the users.

4.6.1.1 SCREENSHOTS OF INPUT DESIGNS (BACK END)


Login

Figure 21 Screen: Administrator Login


Department List

Figure 22 Screen: Administrator Department List


Timetable Portal

Figure 23 Screen: Administrator Timetable Portal


4.6.1.2 SCREENSHOTS OF OUTPUT DESIGNS (FRONT END)
Login

Figure 24 Screen: Student Login


Master Timetable

Figure 25 Screen: Student Master Timetable

SCREENSHOTS OF ERRORS

Figure 26 Screen: Login Error

Figure 27 Screen: Add Program Error

Figure 28 Screen: Add Course Error

Figure 29 Screen: Add Exam Error

Figure 30 Screen: Add Lecture Error

4.7 DATA DICTIONARY


Data dictionary is a repository of elements in the system. This contains various elements
which comprises of data flow, data stores and data processes. It is very important to use data
dictionaries to manage details in a large system.
Data dictionaries has a significant role to play in communicating a common meaning of all
system elements and also, aid developers in documentation and recording of features of the
system. This also helps to identify where system changes should be done and evaluate
characteristics by making analysis of the details. Data modules are also important, to locate
errors and omissions in the system.

4.7.1 DATA STORE

These comprise of data fields. These fields have relevant data types, which plays significant
role in the development of the database structure. The data types of the system are from the
table below which comprises of, data types, size and range of the data types.
DATA TYPES

SIZE

RANGE OF DATA TYPES

Int

4bytes

-2147483648 to
2147483647

Varchar

Varies

Varies

Date

3bytes

0001-01-01 to 9999-12-31

Char

1byte

-128 to 127

Time

5bytes

00:00:00.0000000 to
23:59:59.9999999

Text

Varies

Varies

Table 1: Data Types and Other Information

4.7.2 DATA STRUCTURES WITHIN THE DATABASE

Data structure

Class table. Db

Description

This identifies the class details.

Content

Class id
Class program
Class level
Class stream

Table 2: Class Table Data Dictionary

Data structure

Courses. db

Description

This indicates the courses


details.

Content

Course id
Course code
Course name
Class id
Course lecturer name
Course semester

Table 3: Courses Data Dictionary

Data structure

Lessons. Db

Description

This indicates the lessons details.

Content

Lessons id
Course id
Class id
Lesson start time
Lesson end time
Lesson day
Lesson day value
Lesson lecture room

Table 4: Lessons Data Dictionary

Data structure

Exam. Db

Description

This indicates the exams details.

Content

Exam id
Exam start time
Exam date
Exam venue
Course id
Class id

Table 5: Exams Data Dictionary

Data structure

Programs. Db

Description

Indicates the program details.

Content

Program id
Program name

Table 6: Programs Data Dictionary

CHAPTER FIVE
5.1 TESTING
Testing of a new system is done during the development stages of the cycle. This is mostly
done to test the quality of the system and its challenges facing it.
This is a process of evaluating a software item to detect changes in the given input and
expected output. Testing is done on verification and validation processes.
5.1.1 VERIFICATION
This process is where developers make sure the system satisfies the conditions imposed at the
beginning of the development stage. Developers will make absolutely sure the system works
the way they want it.
5.1.2 VALIDATION
This process is where developers ensure that the system satisfies the needs of the clients after
the development stage. Here, developers make sure the system works as demanded by the
clients.
Testing of a system also entails two basics. These are;
5.1.3 BLACKBOX TESTING
This testing basic is also called functional testing. Here, the testing technique only focuses on
the output generated against the input and execution of the system. The internal mechanism is
ignored. Blackbox is used for validation.
5.1.4 WHITEBOX TESTING
This is also called the structural testing or glass box testing. The testing technique takes the
internal mechanism into account. Whitebox is used for verification.
5.1.5 TYPES OF TESTING
There are many types of testing but will look at these five types,

UNIT TESTING

This type of testing is done by a developer to test whether the system is producing the
expected output against the given input. Here, test is done on individual units or group of
related units. This is under whitebox testing.

INTEGRATION TESTING

With this type of testing, software and hardware interactions are being tested if, their
components have same relation. Here, group of components are combined to produce same
output. This falls under blackbox and whitebox testing.

FUNCTIONAL TESTING

With this, the developer tests whether a particular function works as required by the system.
This is under blackbox testing.

SYSTEM TESTING

This type of testing is done on the entire system to ensure that, by putting the system in
different environments it will still be in operation as expected. This falls under blackbox
testing.

PERFORMANCE TESTING

This type helps to test the effectiveness and speed of the system. Here, the test is done on the
time of input and the time of retrieval of the output. This is a blackbox testing.

USER ACCEPTANCE TESTING

This type, the client tests the system to know whether it will satisfy his or her needs as
expected. This falls under blackbox testing.

STRESS TESTING

With this type, the system is tested to evaluate how it will operate under unfavourable
conditions. Here, there is no limit to the testing. This is a blackbox testing.
5.2 IMPLEMENTATION
From information technology perception, implementation is the process an individual goes
through to analyse, execute, customise, run, install and configure software and hardware after
or post sales of the items.
Also, implementation can only be done after testing the system. This is known as the system
conversion. This conversion as some approaches to be followed and these are;

5.2.1 PARALLEL CONVERSION


This approach is where the old and new systems work or operate cordially together for a
period of time. This is the safest approach because; the old system will not be eradicated
completely until the new system starts to function as expected.
5.2.2 PILOT CONVERSION
This approach deals with one part of the organisation using the new system and another part
using the old system. When the part using the new system gets satisfied with the way the new
system works or operates, the whole organisation starts using it as well.
5.2.3 PHASED CONVERSION
The approach deals with the individual components of the new system being installed one by
one or in stages or phases.
5.2.4 DIRECT CONVERSION
This approach is the most risky conversion of all and sometimes called the crash conversion.
Here, the new system replaces the entire old system completely.
5.4 USER MANUAL TO THE SYSTEM
Training of the users of the new system is very significant in the institution to enable them
use the system effectively with no difficulty. When there is no training, the user manual
guides the user on how to use the system. The user manual below is in two different forms,

Administrators Manual

Students Manual

5.4.1 ADMINISTRATORS MANUAL


Log onto the System
Internet Access Required

To Log onto the system from any browser go to:


http://localhost/puctimetable/controlpanel/

Enter your username: Admin

Enter the password: ******

Figure 31: Enter Username and Password


Note: any wrong input of username or password, the system will not login
You are now logged in into department list page where the user will find,

Add program will be found on the top right hand were the user must add a program
before he or she can access the main system.

Figure 32: Add Program

Logout: Where the system will return the user to the login page.

Program: The input made by the user in the add program will automatically be
inputted here.

Level, Stream and Semester: This is a drop down to select from.

Click on proceed to take you to the Timetable Portal.

Figure 33: Select from the drop down


In here, the user will find,

Name, Level, Stream, Semester on the dashboard.

Menu: Returns the user to the department list page.

Logout: Returns user to the login page.

Add courses: User will input course code, name and lecturer and select semester and
add course.

Figure 34: Add Course

Add lecture: User will select course, day, start and end time and input class room and
add lecture.

Figure 35: Add Lecture

Add exam: User will select course, day, time and input exam venue and add exam.

Figure 36: Add Exam


5.4.2 STUDENTS MANUAL
Log onto the System
Internet Access Required

To Log onto the system from any browser go to:


https://www.pentvars.edu.gh/

Figure 37: Select ePortal

Find and click on e- portal where you will see,

1. Undergraduate e-portal
2. Postgraduate e-portal
3. MSc. IAF e-portal

Figure 38: Click on Undergraduate ePortal

Click on undergraduate, which will direct you to

PUC Online e-portal: Here, users will enter their username and password

Figure 39: Enter Username and Password

Login which will direct you to a link to select from,


1. Application form
2. Continuing student
3. Change password
4. logout

Figure 40: Click on Continuing Students

Users will have to click on continuing student which will direct them to the main page
where users can view and print their timetables.

5.5 CONCLUSION
This chapter summarizes and concludes the dissertation. In this project, Pentecost university
college online timetable management system was developed to facilitate the activities of the
institution.
The system developed is a web based application. This web based application facilitates
administrative login and students login.
I found that, the current timetable that is used by PUC is always changed and not feasible to
use. Timetabling in PUC was complicated and stressful to use. The current timetable, wastes

time and high cost of printing. To overcome all of these problems, the system has been
developed to replace the current system.
The information gained for the development of the system was from analysis and review
carried out.
The main objective of the project is to, help administration reduce cost of printing, student
body to freely check their timetable on time and reduce stress from visiting notice board
when timetable is ready. With this new system, students can be at their comfort zones and
access the timetables only if they have internet access.

5.6 RECOMMENDATIONS
For this system to work efficiently,
1. Maintenance must be done on the system.
2. Administrators are to keep their usernames and passwords secretly.
3. The system must be on a save server so, perpetuators cannot gain access.
5.7 LIMITATIONS

The academic board will still have to process the timetable before keying it on the
system.

Lecturers will have to be prompted on their lecture and lecture rooms using the
existing methods.

The proposed system has no automatic generating features.

5.8 FUTURE RESEARCH


Enhancements are the perquisite for development of a system. Every existing system has
proposed enhancements which make it better and easier to use and more secure.
In the future, I hope to enhance the system to:

Be automated

Alert lecturers by SMS

Alert students for lectures

REFERENCE

Bibliography
Baah, M. (2014). Topic: " Database Management System". Pentecost University College,
Sowutuom.
Business dictionary. (2015, January). Retrieved from www.businessdictionary.com:
http://www.businessdictionary.com/definition/InternetExplorer.html#ixzz3aZKg99HI
Connolly, & begg, a. (2005). Database Systems. A Practical Approach to Design,. London:
Fourth edition,Pearson Education Limited.
Dennis, e. (2000). Prototyping Methodology.
DreamweaverCS3Basics.pdf. (2015, February). Retrieved from training.health.ufl.edu:
http://training.health.ufl.edu/handouts/dreamweaver/CS3/DreamweaverCS3Basics.pdf
International, I. (September 2010). Computer Science Issues. IJCSI International Journal of
Computer Science Issues, Vol. 7, Issue 5,.
JISC Virtual Research Environments programm. (2009, November). Retrieved from
www.jisc.ac.uk:
http://www.jisc.ac.uk/whatwedo/programmes/flexibleservicedelivery/stop.aspx
Macromedia-Dreamweaver-8-tutorials.html. (2015, January). Retrieved from
www.vtc.com/products: http://www.vtc.com/products/Macromedia-Dreamweaver-8tutorials.html
Martin, J. (1991). Rapid Application Development. Macmillan.
PHP tutorials. (2014, November). Retrieved from w3schools: http://www.w3schools.com
PHP-introduction.html. (2013, March). Retrieved from phpexplanation.blogspot.com:
http://phpexplanation.blogspot.com/2013/03/php-introduction.html
School_timetable. (2011, October). Retrieved from en.wikipedia.org:
http://en.wikipedia.org/wiki/School_timetable
Shalin, M. E. (2012). Topic: "system Analysis". Pentecost University College Sowutuom.

Timetable. (2015, January). Retrieved from www.timetable.cam.ac.uk/:


https://www.timetable.cam.ac.uk/
Web-development/xampp-apache-distribution-containing-mysql-php-and-perl/. (2015,
Febuary). Retrieved from talkbinary.com: http://talkbinary.com/webdevelopment/xampp-apache-distribution-containing-mysql-php-and-perl/
Whritten, & L, J. (2004). Rapid Application Development. McGraw-Hill/Irwin; 7th edition.

APPENDIX I
SOURCE CODE
LOGIN CODE
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Welcome extends CI_Controller {

public function index()


{

if ($this->session->userdata('user_id')) {
redirect(base_url().'welcome/programs');
} else {
$data = array('error' => 0);
$this->load->view('index',$data);

} else {
redirect(base_url());
}

public function add_program()


{
if ($this->session->userdata('user_id')) {
$this->load->view('add_program');
} else {
redirect(base_url());
}

public function dologin()


{
if(!$_POST){
$data = array('error' => 0);
$this->load->view('index',$data);
}
else{

$password = $this->input->post('password');
$username = $this->input->post('username');

if($password == '' && $username == ''){


$userData = array('user_id' => 'online');
}else{
$data = array('error' => 1);
$this->load->view('index',$data);
}
}
}

public function dologout()


{
$this->session->sess_destroy();
redirect(base_url());
}

}
/* End of file welcome.php */
/* Location: ./application/controllers/welcome.php */

TIMETABLE PORTAL
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Dashboard extends CI_Controller {


}

public function addCourse()


{
$courseCode = $this->input->post('c_code');
$coursename = $this->input->post('c_name');

$data = array(
'class_id' => $this->session->userdata('classID'),
'course_code'=>$courseCode,
'course_name'=>$coursename ,
'course_lecturers_name'=>$this->input->post('l_name'),
'course_semester'=>$this->input->post('semester')
);

$this->load->model('course');
$id = $this->course->createCourse($data);

$ret = array();
if($id){
$ret['status'] = 1;
}else{

$ret['status'] = 0;
}

echo json_encode($ret);
}

public function getCourses()


{
if($this->session->userdata('classID')){
$this->load->model('course');
$Coursedata = $this->course->getClassCourses($this->session>userdata('classID'),$this->session->userdata('semester'));
echo json_encode($Coursedata);
}else{
returnError();
}
}

function returnError(){
$data = array('status' => 'error');
echo json_encode($data);
}

public function deleteCourse()


{

if($this->session->userdata('classID')){
$id = $this->input->get('id');
$this->load->model('course');
$this->load->model('lesson');
$this->load->model('exam');

$delete = $this->course->deleteCourse($id);
$this->lesson->deleteLessonsByCourse($id);
$this->exam->deleteExamByCourse($id);
echo json_encode($delete);
}else{
returnError();
}
}

public function getLessons()


{
if($this->session->userdata('classID')){
$day = $this->input->get('day');
$this->load->model('lesson');
$lessonData = $this->lesson->getClassLessonsByDay($this->session>userdata('classID'),$day,$this->session->userdata('semester'));
echo json_encode($lessonData);
}else{
returnError();
}
}

public function deleteLesson()


{

if($this->session->userdata('classID')){
$id = $this->input->get('id');
$this->load->model('lesson');
$delete = $this->lesson->deleteLesson($id);
echo json_encode($delete);
}else{
returnError();

}
}

public function addLesson()


{
$day_vlaues = array('Monday' => 1,'Tuesday' => 2,'Wednesday' =>
3,'Thursday' => 4,'Friday' => 5,'Saturday' => 6 );
if($this->session->userdata('classID')){

$data = array(
'course_id' => $this->input->post('courseID'),
'lesson_start_time'=>$this->input->post('s_time'),
'lesson_end_time'=>$this->input->post('e_time'),
'lesson_day'=>$this->input->post('day'),
'class_id'=>$this->session->userdata('classID'),
'lesson_lecture_room'=>$this->input->post('c_room'),
'lesson_day_value'=>$day_vlaues[$this->input>post('day')]
);
$this->load->model('lesson');
$id = $this->lesson->createLesson($data);
$ret = array();
if($id){

$ret['status'] = 1;
}else{

$ret['status'] = 0;
}

echo json_encode($ret);

}else{
returnError();
}

public function addExam()


{
if($this->session->userdata('classID')){
$data = array(
'course_id' => $this->input->post('e_course'),
'class_id'=>$this->session->userdata('classID'),
'exam_date'=> $this->input->post('e_date'),
'exam_start_time'=>$this->input->post('e_time'),

'exam_venue'=>$this->input->post('e_center')
);

$this->load->model('exam');
$id = $this->exam->createExam($data);
$ret = array();
if($id){
$ret['status'] = 1;
}else{

$ret['status'] = 0;
}

echo json_encode($ret);
}else{
returnError();
}
}

function getExams(){
if($this->session->userdata('classID')){

// $type = $this->input->get('type');

$this->load->model('exam');
$data = $this->exam->getExams($this->session>userdata('classID'));
echo json_encode($data);
}else{
returnError();
}
}

public function deleteExam()


{

if($this->session->userdata('classID')){
$id = $this->input->get('id');
$this->load->model('exam');
$delete = $this->exam->deleteExam($id);
echo json_encode($delete);
}else{
returnError();
}
/* End of file dashboard.php */
/* Location: ./application/controllers/dashboard.php */
?>

TIMETABLE SYSTEM
<?php
session_start();
include './includes/connection.php';

if (!isset($_SESSION['class_id'])) {
header("LOCATION:./index.php");
}else{
$classid = $_SESSION['class_id'];
$semester = $_SESSION['semester'];
$program = $_SESSION['program'];
$level = $_SESSION['level'];
$stream = $_SESSION['stream'];
//

echo $semester;
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>PUC TIMETABLE</title>

<!-- Bootstrap -->


<link href="css/bootstrap.min.css" rel="stylesheet">
<link href="css/main.css" rel="stylesheet">
</head>
<body>
<div class="header">
<div class="container">
<div class="pull-left">
<img src="img/puc_logo.jpg">
</div>
<div class="pull-left" style="margin-left: 30px">
<h1><b>Pentecost University College</b></h1>
<h3>TIMETABLE SYSTEM</h3>
<p style ="float: left"><b>Program :</b> <?php echo $program;?></p>
<p style ="float: left; margin-left: 35px;"><b>Level :</b> <?php echo
$level;?></p>
<p style ="float: left; margin-left: 35px;"><b>Stream :</b> <?php echo
$stream;?></p>
<p style ="float: left; margin-left: 35px;"><b>Semester :</b> <?php echo
$semester;?></p>
</div>
</div>
</div>
<div class="container">

<div role="tabpanel" class="tabpanel">

<!-- Nav tabs -->


<ul class="nav nav-tabs" role="tablist">
<li role="presentation" class="active"><a href="#home" ariacontrols="home" role="tab" data-toggle="tab">Academic Timetable</a></li>
<li role="presentation"><a href="#profile" aria-controls="profile"
role="tab" data-toggle="tab">Examination Timetable</a></li>
<!--

<li role="presentation"><a href="#messages" aria-

controls="messages" role="tab" data-toggle="tab">Messages</a></li>


<li role="presentation"><a href="#settings" ariacontrols="settings" role="tab" data-toggle="tab">Settings</a></li>-->
</ul>

<!-- Tab panes -->


<div class="tab-content">
<div role="tabpanel" class="tab-pane active" id="home">
<div class="timetable">
<?php
$query = "Select courses.*,lessons.* from courses,lessons where
lessons.class_id = courses.class_id and courses.class_id = $classid and courses.course_id
= lessons.course_id and courses.course_semester = $semester order by
lessons.lesson_day_value asc";
$result = mysql_query($query);

if ($result && mysql_num_rows($result)) {


?>
<table class="table table-hover table-bordered">
<thead>
<tr>
<th>DAY</th>
<th>START TIME</th>
<th>END TIME</th>
<th>COURSE CODE</th>
<th>COURSE TITLE</th>
<th> LECTURER</th>
<th>LECTURE ROOM</th>
</tr>
</thead>
<tbody>
<?php
while ($row = mysql_fetch_assoc($result)) {
?>
<tr>
<td><?php echo $row['lesson_day']; ?></td>
<td><?php echo $row['lesson_start_time']; ?></td>
<td><?php echo $row['lesson_end_time']; ?></td>
<td><?php echo $row['course_code']; ?></td>

<td><?php echo $row['course_name']; ?></td>


<td><?php echo $row['course_lecturers_name']; ?></td>
<td><?php echo $row['lesson_lecture_room']; ?></td>
</tr>
</tbody>
<?php
}
}
?>

</table>
</div>
</div>
<div role="tabpanel" class="tab-pane" id="profile">
<div class="timetable">
<?php
$query = "Select exam.*,courses.* from exam, courses where
exam.class_id = courses.class_id and courses.class_id = $classid and courses.course_id
= exam.course_id order by exam.exam_date asc";
$result1 = mysql_query($query);
if ($result1 && mysql_num_rows($result)) {
?>
<table class="table table-hover table-bordered">

<thead>
<tr>
<th>EXAM DATE</th>
<th>START TIME</th>
<th>EXAM VENUE</th>
<th>COURSE CODE</th>
<th>COURSE TITLE</th>
</tr>
</thead>
<tbody>
<?php
while ($row1 = mysql_fetch_assoc($result1)) {
?>

</tbody>
<?php
}
}
?>

</table>
</div>
</div>

<!--

<div role="tabpanel" class="tab-pane"

id="messages">...</div>
<div role="tabpanel" class="tab-pane"
id="settings">....</div>-->
</div>

</div>

<div style="text-align:right" >


<style type="text/css" media="print">
.printbutton {
visibility: hidden;
display: none;
}

</style>
<script>
document.write("<input type='button' " +
"onClick='window.print()' " +
"class='printbutton btn btn-success ' " +
"value='PRINT'/>");
</script>
</div>

<div class="footer">

</div>
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script src="js/jquery.js"></script>
<!-- Include all compiled plugins (below), or include individual files as needed -->
<script src="js/bootstrap.min.js"></script>
</body>
<?php
}
?>
</html>

DATABASE TABLES
-- phpMyAdmin SQL Dump
-- version 3.5.2.2
-- http://www.phpmyadmin.net
--- Host: 127.0.0.1
-- Generation Time: Apr 01, 2015 at 04:26 PM
-- Server version: 5.5.27
-- PHP Version: 5.4.7

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";

/*!40101 SET
@OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET
@OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET
@OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--- Database: `class_time`

--

-- --------------------------------------------------------

--- Table structure for table `class_table`


--

CREATE TABLE IF NOT EXISTS `class_table` (


`class_id` int(11) NOT NULL AUTO_INCREMENT,
`class_program` varchar(150) NOT NULL,
`class_level` int(3) NOT NULL,
`class_stream` varchar(15) NOT NULL,
`class_department` varchar(150) NOT NULL,
PRIMARY KEY (`class_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ;

--- Dumping data for table `class_table`


--

INSERT INTO `class_table` (`class_id`, `class_program`, `class_level`, `class_stream`,


`class_department`) VALUES

-- --------------------------------------------------------

--- Table structure for table `courses`


--

CREATE TABLE IF NOT EXISTS `courses` (


`course_id` int(11) NOT NULL AUTO_INCREMENT,
`course_code` varchar(15) NOT NULL,
`course_name` varchar(150) NOT NULL,
`class_id` int(11) NOT NULL,
`course_lecturers_name` varchar(120) NOT NULL,
`course_semester` int(11) NOT NULL,
PRIMARY KEY (`course_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;

--- Dumping data for table `courses`


--

INSERT INTO `courses` (`course_id`, `course_code`, `course_name`, `class_id`,


`course_lecturers_name`, `course_semester`) VALUES

-- --------------------------------------------------------

--- Table structure for table `exam`


--

CREATE TABLE IF NOT EXISTS `exam` (


`exam_id` int(11) NOT NULL AUTO_INCREMENT,
`exam_start_time` time NOT NULL,
`exam_date` date NOT NULL,
`exam_venue` varchar(40) NOT NULL,
`course_id` int(11) NOT NULL,
`class_id` int(11) NOT NULL,
PRIMARY KEY (`exam_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

-- --------------------------------------------------------- Table structure for table `lessons`


CREATE TABLE IF NOT EXISTS `lessons` (
`lesson_id` int(11) NOT NULL AUTO_INCREMENT,
`course_id` int(11) NOT NULL,
`class_id` int(11) NOT NULL,
`lesson_start_time` time NOT NULL,

`lesson_end_time` time NOT NULL,


`lesson_day` varchar(20) NOT NULL,
`lesson_day_value` int(11) NOT NULL,
`lesson_lecture_room` text NOT NULL,
PRIMARY KEY (`lesson_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
-- Dumping data for table `lessons`
INSERT INTO `lessons` (`lesson_id`, `course_id`, `class_id`, `lesson_start_time`,
`lesson_end_time`, `lesson_day`, `lesson_day_value`, `lesson_lecture_room`) VALUES
-- --------------------------------------------------------- Table structure for table `programs`
CREATE TABLE IF NOT EXISTS `programs` (
`program_id` int(11) NOT NULL AUTO_INCREMENT,
`program_name` varchar(150) NOT NULL,
PRIMARY KEY (`program_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
-- Dumping data for table `programs`
INSERT INTO `programs` (`program_id`, `program_name`) VALUES
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT
*/;
/*!40101 SET
CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION
*/;