Automated Time Tabling System

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 28

CHAPTER ONE

INTRODUCTION
1.1 BACKGROUND OF THE STUDY
A school timetable consists of a list of the complete set of offered courses, as well as the time
and place of each course offered. The purposes of the school timetable are to inform teachers
when and where they teach each course, and to enable students to enroll in a subset of courses
without schedule conflicts.

The academic environment has gone so complex that an automated system may be required to
automate certain aspects of the academic system. One such area of difficulty is timetable
scheduling; those saddled with the responsibility of time table creation are always faced with
challenges of creating effective system that will deliver its purpose.

Automation has been seen as a way of enhancing Manual activities. For instance, Manual
operations are characterized with some setbacks such as erroneous computation etc. with
automation, those setbacks are either eliminated or reduced to barest minimal. To this effect
application are being created to hide the manual operations and project automation.

The general task of solving timetable scheduling problems is iterative and time consuming. In
real world application, the participants to the timetable scheduling have conflicting preferences
which make the search for an optimal solution a problem. In order to solve the problem it is
necessary to find a compromise between all the parties involved in the requirement, usually
conflicting (e.g. day, time). The constraints are related to the availability, timetabling and
preference of each of the instructor, to rooms availability, number of student and curricula. In
order to solve this problem for the particular case of polytechnic system, timetable scheduling
has to adopt the computer-based approach. Computer-based approach enables the institution to
automate certain manual task and work efficiently. Also, in the particular case of timetable
scheduling, the automated system could find an optimal or a sub-optimal solution using mainly
inter agent communication.

1
1.2 STATEMENT OF THE PROBLEM
The scheduling problem can be defined as a problem of finding the optimal sequence for
evaluating a finite set of operation (task or job) under a certain set of constrains that must be
satisfied . A typical example of scheduling problem is timetable scheduling. The problems to be
solved by timetable scheduling are mapped out below.
1) Maximize individual in timetable scheduling or other resources.
2) Minimize time required to complete the entire process for timetable scheduling.
3) Production of timetable and of conflict interest, place, etc.
All these problems and more are to be solved so that the proposal solution for timetable
scheduling will be an enchantment over the manual.
1.3 AIM AND OBJECTIVES OF THE STUDY.
In solving problems of timetable scheduling, there is need for an effective and efficient
techniques or methods. The aim of this project is the develop an online timetable management
system for computer science department of kogi state polytechnic. The objectives are:
I. to have an effective and efficient timetable management system
II. to eliminate all the problems associated with the manual technique.

1.4 SIGNIFICANCE OF THE STUDY


The significance of this research work is very paramount for the department to implemented.
This proposed system will help the school management system to:
1. Eliminate the problem of the manual system.
2. Manage classroom allocation
3. Increasing the access to timetable by the students.
4. Having an effective scheduling system for time allocation..

1.5 SCOPE AND DELIMITATIONS OF THE STUDY.


Timetable scheduling is a complex and time consuming process. Generating timetable for all
levels in a polytechnic system will definitely take a lot time. For the purpose of this work, time
able creation will be based on degree program only with focus on ND1 and ND II level courses;
this will be an effective way to start the process of time table creation.
Also, the work will be made to run on the internet backbone this will make the application
distributed and network based.
2
The proposed development is a time consuming process to this end the project will be streamline
to ND1 and ND II -diploma program due to time limitation.
Another problem is the inadequate research materials on the subject of timetable scheduling and
creation. This project work made use of the little available materials.

1.6 DEFINITION OF TERMS


CAPACITY - Refers to the number of students a room will accommodate.
CLASH - When students are enrolled in two or more teaching activities that are running at the
same time.
COURSE CALENDAR: This online catalogue contains Brock rules and regulations, programs
of study, program requirements and course descriptions.
DEPARTMENT/CENTRE: Divisions of the university that give instruction in a certain subject
area. These divisions oversee program requirements.
DUMMY MODULE CODE: These are used to timetable non- credited module related sessions.
DURATION: Period of time over which a course is taught.
ONLINE: connected to a computer, a computer network, or the Internet.
PERSONALISED TIMETABLE: An individual student or staff timetable.
SCHEDULING: Scheduling is the process of arranging, controlling and optimizing work and
workloads in a production process or manufacturing process
STUDENT SET: A way of viewing a timetable for a group of students following the same
route.
SCHOOL TIME TABLE: A school timetable is a calendar that coordinates students and
teachers within the classrooms and time periods of the school day.
SYSTEM: A system is a group of interacting or interrelated elements that act according to a set
of rules to form a unified whole.

3
CHAPTER TWO
LITERATURE REVIEW
2.1 THOERY
According to Abacus (2017) increasing demands on expensive and scarce resources in education
are forcing the industry to adopt management style that emphasize more efficient utilization of
time, money and resources, both human and physical. Academic timetable assign resources to
teaching activities and represent the most accurate measure of how efficient the organization is in
terms of utilization. Educational institutions also provide valuable and complex service to
literally thousands of students, whose satisfaction can be one of the institution’s greatest assets.
And yet, many institutions still rely on manual timetabling techniques involving hundreds of
wasted main-hours or computer-assisted methods that merely create working timetables, without
attempting to optimize the allocation and utilization of resources.
Because time and resources utilization have direct financial implication and improvement of
even a few percent could lead to a substantial reduction in costs for an institution. Imagine being
able to avoid constructing a new building by making better use of existing venues or of
increasing student performance and throughput by providing all students with completely clash
free and evenly spread examination timetables.
According to Ausiello (2013) timetabling problem is an optimization problem. Furthermore,
Wikipedia (2018) expressed optimization problems as the problem of finding the best solution
from all feasible problems. The problems are listed below:
5. Time table scheduling that is done manually most times cannot be easily accessed by the
students.
6. There is a lot of delay that arises from the manual method used in timetable scheduling
For each optimization problems there is corresponding decision problem that ask whether there
is a feasible solution for some particular measure (Kann, 2012). Effective allocation of courses to
the availability lecture hall is optimization problem and centers on decision problem. In
computability theory and computational complexity theory, a decision problem is a question in
some formal system with a yes –or –no answer, depending on the values of some input
parameters.
Pius (2017) considered higher institution timetable creation system has constraint satisfaction
problems (CSP). CSP are mathematical problems defined as a set of objects whose state must

4
satisfy a number of constraints or limitations. CSP represent the entries in a problem as a
homogenous collection of finite constraints over variable which is solved by constraint
satisfaction methods. CSP are subject of intense research in both artificial intelligence and
operations. The regularity in their formulation provides a common basis to analysis and solves
problems of many unrelated families.
Polytechnic course timetabling problems (PTPS) are search problems in which subjects must be
arranged around a set of time slots so as to satisfy a given constraints and optimize a set of
objective. Scheduling under constraints hard or soft is complex task, having an NP-completed
degree of complexity {Piola. 2012} and generally is associated to dependant attribute domain so
necessitates specific optimization algorithms. This means that, in a space of possibilities of finite
time, deterministic and exhaustive search techniques may probably fail

2.2.1 FORMULATION OF TIMETABLE PROBLEMS


The lecture and examination timetables so formulated as follows:
Problem = {L, S, D, C, W}
Where L = {11, 12 ….1t} is a set of lectures
S = {s1, s2,Ss} is the subject,
D = {t1, t2,…………..tu} is a set of timetable for each subject, each timetable consist of a days of
the week, a time period and a location of classroom, where the days of the week is Monday to
Friday and the time period is 9 to 4. And R = {r 1, r2,rc} is the set of location of classroom. Also C
= {C1, C2…..Cm} is a set of constraints and w = {w 1, w2 ……..Wo} is a set of weights (i.e.
Penalties) for the constraints.

2.2.2 CONSTRAINTS
Rudova, et al (2013) expressed that constraint can be classified as hand or soft. Hard constraints
are those to which a timetable has to adhere in order to be satisfied. A timetable is not viable if it
does not satisfy them. Soft constraints are also those which should not been violated, but if this is
not possible then the resulting timetable is not optimal. Valves of weights for various constraints
are specified.

5
2.2.3 INTERNET BACKBONE
Automata timetabling systems were designed to run on desktop system without Network
capabilities. Today, internet has revolutionized application. There are numerous applications that
now run on internet backbone. This enables integration of network capabilities to application
development.
According to Walter (2013), Internet is a global system of interconnected computer network that
enhance data by packet snatching, using the standardized internet protocol suite (TCP/IP). It is a
“network of network” that consist of millions of private and public, academic business and
government networks of local to global scope that are linked by copper wires, fiber-optic cables,
wireless connections and other technologies.
The internet is created to carry out various information resources and service, such as electronic
mail, online sales, online gaining and the inter-linked hyper fact documents and other resources
of the World Wide Web (WWW).
Internet has grown from plain tent to multimedia based system. This has enforced creation of
applications that run on internet protocol (IP) suite. Today many applications are working on the
internet backbone suing the World Wide Web as the communication channel.

2.2.4 THE CONCEPT OF WORLD WIDE WEB (WWW)


The World Wide Web is a system of interlinked hypertext documents accessed via the internet
with a web browser. One can view web pages that may contain text, images videos and other
multimedia and navigate between then suing hyperlinks.

2.3 REVIEW OF RELATED WORKS


According to Kong, S. C. & Kwok, L. F. (1999), timetabling system involves a heuristicfunction
to increase the scheduling performance, as well as producing a best outcome.Currently, the well
known solutions for the timetabling system are Genetic Algorithms andMemetic Algorithms
(Mohd. Dain, A. A., Shaari, N. S. Gom, Y. S. & Bacheck, Z. A., 2001).However, Causmaecker,
P. D. and his friends introduced the Semantic Web as a solution inthe domain of timetabling.
Berger, J. & Barkaouia, M. (2002) also introduced a ParallelHybrid Genetic Algorithm for the
vehicle routing problem, which they argues to be faster,more cost-effective and highly
competitive than the best-known heuristic routing procedures and solutions. Obviously,

6
researchers are still looking forward to heuristics that are suitable for their particular problems
(Causmaecker, P. D., Demeester, P. & Vanden B. G., 2002). On the other hand, there are many
solutions for the timetabling system, while each of them has their strengths and weaknesses.

Anisha Jain (2015) In this paper proposed an approach that solves time tabling problem. The
researchers’ approach takes into account many constraints including allocation of room, teacher,
course, time slot, etc. The algorithm builds the timetable in an incremental manner, dynamically
adjusting resources in order of complexity. The algorithm proposed is dynamic in nature. It deals
with managing certain constraints as input, then using heuristic approach to scanning all the
constraints on priority basis. The sequence of checking of constraints is also dynamic in nature.
Though this sequence of constraints can also be altered manually. He also outlined that there are
two approaches, in one course registration is done and then time table is generated while the
reverse is done for second approach. The first approach requires that course registration be
carried out well in time to generate the timetables in time. This was helpful when plenty of
resources were available and timetable generation easy. The other approach generates the
timetables first and then course registration is done. This approach was used when resources
were limited and utilization of those resources was needed. The authors have divided the
constraints into „Hard constraints‟ and „Soft constraints‟. Hard constraints are those that cannot
be avoided whereas soft constraints can be ignored if fulfilling them is not feasible. The main
constraint that the authors have taken under consideration is that one person (teacher or student)
cannot be at two places simultaneously or that there is limit on the number of persons
accommodated in a room.

ActiveTimetable 2003 is a timetable preparation application for a variety of educational


establishments. Absolute automated scheduling of all the most difficult timetables in a
limited period is the biggest advantage. From data input, one can schedule many different
timetables and then choose the best suited to the institution's specifications. The data entry
method is streamlined by the schedule wizard, which helps you to easily construct the
skeleton of the schedule. The main features for the iMagic application are as follows;
1. Schedule blocks and multi-classes lessons
2. Spreads each topic’s lessons equally throughout the week

7
3. Allows one to specify the full amount of hours a day for lecturers and classes.
4. Permit the timetable to be exported to html However, the following limitations has been
identified
1. Lack of multiuser use
2. Lack of independent platform
3. No accessibility from remote locations
4. Students cannot view timetable schedules by themselves.

CMIS Scheduler (CCM) An event-based planner that is able to coordinate not just the school
schedule, but any kind of activities, such as workshops, conferences, visits and other
school activities, it is also possible to use as a professional resource manager. The
preparation matrices allow a user to conveniently organize the school curriculum by
appointing lecturers and facilities, from developing the initial timetable to ensuring that
certain rules or constraints are not violated. The features for CMIS Scheduler include;
1. Color coding for displaying blocked and allocated routine status
2. Ordering of user-controlled courses, lecturers, subjects and facilities
3. Different planning layout
4. There is a drag and drop from one class to another in order to copy curricular elements
However, the following limitations have be identified
1. No support for other languages
2. Lacks export to other file-based applications
3. Lacks capabilities to combining multiple classes for a given period 4. No accessibility
from remote locations

Cyber-Matrix Class Scheduler is a perfect application for universities and other colleges
that need to plan classes easily. Block scheduling encourages classmates to be arranged
instead of only single students. A narrower resource footprint was also substituted by the
database engine. The features for Cyber-Matrix class scheduler include;
1. It is possible to join a group of required classes and pick a list of potential schedules
from.
2. You can schedule complete classes of students at one time.

8
3. Share scheduling details for all of your students and lecturers across ones network.
4. A search mechanism allows all students taking a single class or sharing a similar
classification, such as band students, to be found.
5. Non-English speaking users can quickly translate the text of the app into the
equivalents of their very own language. However, the following limitations have be identified;
1. Lacks export to other file-based applications
2. Lacks capabilities to combining multiple classes for a given period
3. No accessibility from remote locations
4. Students cannot view timetable schedules by themselves.

9
CHAPTER THREE
SYSTEM ANALYSIS AND DESIGN
3.1 INTRODUCTION
Putting in view the modern trend of software an immeasurable number of both generic and
customized system have been developed using different software development methodologies,
approaches, models, systems and methods.
System analysis is an assessment, description or explanation of a system usually based on careful
consideration or investigation. It is the summation of process that refers to the systematic
examination of a system. A system analyst carries out the investigation and examination to see if
the system is need to be kept at the current service level, needs to be improved or need to be
changed totally. This project is aimed at developing a system that speeds up a polling (election)
process by speeding up the vote count, heighten the security and credibility of an election,
reduces the human resources required, minimize the election time, provides voting conveniences
and eradicates or reduces election fraud to the lowest minimum. It should in addition provide a
hitch free election process. This chapter presents the system analysis and design methodology
adopted in the course of the development of this system.

3.2 ANALYSIS OF THE EXISTING SYSTEM


Presently, the manual approach to timetable creation is used in Ambrose Alli University for the
purpose of generating course and examination timetable. Although this method is old it has a lot
of shortcomings and limitation. These shortcomings necessitated the need of developing a new
solution based on information technology (IT).
Timetable creation entails the submission of all the available course of each department to the
committee responsible for creation of the timetable. The committee applies optimization
technique to the creation. The committee tries as much as possible to eliminate redundancy and
also ensures collision. After timetable has gone through series of ratification, the final draft will
be released as the timetable for that semester. This process is a continuous process. There is
tendency for errors in the timetable this now leave the department at the mercy of modifying the
timetable.

10
3.3 WEAKNESS OF THE EXISTING SYSTEM
The existing manual method is characterized by the following problems.
1) Redundancy – this is a situation where a course appears more than where it surprise to
appeal in the timetable. Also, a course that is not supposed to appear in the timetable
appears. This problem is a common occurrence in the both academic timetables and
examination timetables.
2) COLLISION-This is a situation where courses collide with one others. For instance,
general study (GST) courses that are offered by many departments collide with some
department courses.
3) Delay-One of the major characteristic of the manual production or creation of timetable is
delay. This problem is due to the complexity and the iterative nature of the manual
system.

3.4 DATA COLLECTION TECHNIQUES


The data used in the compilation of this write-up are gathered using the internet, with the use of
several search engines such as google.com, search.com, yahoo.com.msn.com, bing.com. pdf
database.com and the likes.
3.4.1 OBSERVATION METHOD: The observation method is described as a method to
observe and describe the behavior of a subject. As the name suggests, it is a way of collecting
relevant information and data by observing. Observations were made during the visit to the
cooperative society. The executives were extensively interviewed for firsthand information.

3.5 ANALYSIS OF THE PROPOSED SYSTEM


First let us defined the process of Timetable production as a process which starts when the data
for the timetable period P of validity are entered, this P period is a semester period. The process
ends when all the concern people received the schedule on paper via the web and the period of
validity of the schedule comes to an end. Multiple data are entered into the system, for example
courses offered during period P, format of courses, assigned or potential teachers for certain
courses, assigned or potential classroom availability of teacher and classrooms, etc.
The proposed system requires some data. These data are defined as long-term data in the data
warehouse. Information on the academic activities of a program, the program offered, the

11
teachers, the characteristic of classroom, the students, all of them are examples of this type of
information.
In addition to constructing timetable for courses the system must be able to build timetable for
exams. The evolution of data in the case of exams follows the same path as the course with
exception that the data extracted essential to the construction of a timetable for a given period:
The courses offered during the that period, the availability of teacher for the period, etc. these
data are a prerequisite for timetable construction and will be entered before each construction.
The proposed system is also designed to avoid every necessary period clashes. The proposed
system allows drag and drop operation during time scheduling.

3.6 SYSTEM FLOWCHART

Start

Display Login Page

Enter Login Details

No
Is Login details correct? Display login error

Yes

Display Home Page

Is option = Manage TimeTable.? Yes


Display TimeTable Page

No

Yes
Is option = Manage Dept.? Display Department Page

No

Is option = Manage Rooms.? Yes


Display Rooms Page

No

Yes
Is option = Manage Course? Display Course Page
No

12
Is option = Allocate Timetable? Display Time Table Page

Is option = Allocate Timetable? Display Time Table Page

Stop

Fig.3.1: SYSTEM FLOWCHART

3.7 ENTITY RELATIONAL DIAGRAM

Course Table Department Table


Course Id Dept Code
1
Course Name Dept Name
Faculty ∞
Allowed Conflict ∞

Time Table
∞ Time 1
Date
Courses
Rooms

Fig.3.2: Entity Relational Diagram

3.7.1 DATA DICTIONARY

Table3.1: Course Table


COURSE TABLE

FIELDS DATA TYPE MAX_LENGTH REQUIRED

Course Id INT 5 YES

Course Name VARCHAR 20 YES

13
Faculty Varchar 20 YES

Allowed Conflict Yes/No 1 Yes

Table3.2: Times Table


Time Table

FIELDS DATA TYPE MAX_LENGTH REQUIRED

Time DateTime 8 yes

Date Date 8 yes

Courses Varchar 20 yes

Rooms Varchar 20 yes

14
CHAPTER FOUR
SYSTEM IMPLEMENTATION AND EVALUATION
4.1 PROGRAM DEVELOPMENT
Programming is the process of writing programs or codes execution in order to enable the
computer perform some specific task.
Implementation of systems involves the process of effective the conversion makes the system
call for an implementation or a modified software packages version. This therefore will run in a
computer which was above 2.54kilobytes free of memory space. This will replace the nature of
having to do with duty manually and less time will be utilized. Accuracy will therefore become
the key factor which will be touched on.

In this case, the major concern is to put this package into use. This involves the introduction of
familiarization of the new system to the children, teachers and parents. It also involves answering
their questions and explaining the method involved in the program. For any literate user, the
user’s manual will be of great help.
A good program brings about economic production of correct program and the program
specification defines the inputs, processing is needed by giving exact relationship between output
an input from which they are derived rather than prescribing hoe the program should be written.
In this system, the design used is the top down programming form. It starts with the introductory
screen with each form representing a single module. The introductory form is linked to the form
that corrects the subsequent menu.
The programming languages used in designing this software are HTML, CSS and
JAVASCRIPT. The HyperText Markup Language, or HTML is the standard markup language
for documents designed to be displayed in a web browser. It can be assisted by technologies such
as Cascading Style Sheets and scripting languages such as JavaScript.
CSS or Cascading Style Sheets is a style sheet language used for describing the presentation of a
document written in a markup language such as HTML. CSS is a cornerstone technology of the
World Wide Web, alongside HTML and JavaScript.
JavaScript, often abbreviated as JS, is a programming language that conforms to the
ECMAScript specification. JavaScript is high-level, often just-in-time compiled and multi-
paradigm. It has dynamic typing, prototype-based object-orientation and first-class functions

15
 Adoption and Quick Start.
 Flexible access to easier action
 Improving governance and control.
 Effective management of resources.
 Strengthening daily collaboration.
 Fluid Communication.

4.2 SYSTEM REQUIREMENTS


This requirement includes the two types of complete programs written by manufacturers of
computer firms for particular or general purpose applications. This system software serves as a
buffer between users, system, software and hardware.

This system is menu driven that is, it runs under user control. Any literate users could operate it.
The user is therefore required to press key presented on the menu screen as is appropriate to
his/her choice of operations. The pressing of a wrong key does not result in serious error in
system execution. When the error occurs it might be ignored by the system.

4.2.1 SOTWARE REQUIREMENT


 Wampp or Xampp Server
 Windows 7, or a higher operating system.
 Web Browser.
 Text Editor. i.e VS code

4.2.2 HARDWARE REQUIREMENT


The new design will need the following hardware requirement to work effectively. They include:
a. A complete computer set of at lest Pentium II with a reasonable and sizeable hard disk
space of at least 2GB and above.
b. A networked environment to ensure the collection of data and records to central database
storage device.
c. The share able resource such as printers fax machines, scanners etc. Can Also be
connected so that users can make use of it.
d. A 15” svga colored monitor.

16
e. An enhanced keyboard.
f. Cd Rom 48X and above, 3.5(1.44) FDD Drive.
g. Enhanced parallel or serial mouse.
h. Memory of about 128 megabyte and above.

4.3 SYSTEM INTERFACE


System interface is the font-end application view through which users interact with the computer.
Users can manipulate and control the program by common instructions through a program
interface. A good User interface is an attribute of a good program as it makes the operation of the
program very easy. There are many standards to follow in developing a good program. Many
factors are considered when designing the virtual interface of a program. The targeted audience
needs to be put into consideration.

4.3.1 INPUT INTERFACE


Computer is designed in such a way that sometimes it is called GIGO, denoting that what goes in
is what comes out. The input forms are designs generally based on the necessary data that needs
to be entered into the system. The data are captured through the keyboard and stored on a
magnetic disk in an access database.

Fig.4.1: Department Interface

17
4.3.2 OUTPUT INTERFACE
The output design was based on the inputs. The report generated gives a meaningful report to the
management.

Fig.4.2: Faculty Management

4.4 SYSTEM PERFORMANCE


The software operates at a guide of 4-5 seconds interval. Users logging in can easily access the
software website but that’s if the network condition us excellent. The software is developed in a
way that anyone whether a computer literate or not can access it conveniently.

4.5 SYSTEM TRAINING


The aspect of training in software development is very important because if not done, operators
will not operate perfectly. Computers system familiarization program should be organized so as
to get the operators acquainted with the operation of the system.
The following people should be trained in the use and control of an online operation.
Computer engineer: The person should be in charge of providing solution in case a problem
occur and should be properly trained as a computer engineer in order to know what type of
solution to be provided to the problem.
Computer operator: Users should be familiar with their system to know how to operate it and
when a problem has happened.

18
4.6 CONVERSION TO THE PROPOSED SYSTEM
Parallel and direct are two major method of hand over to a new system, which is the parallel and
direct change over.
In direct hand over, the old system is kept and the new system becomes operational immediately.
In parallel hand over, it involves the old and new systems running concurrently, thereby using
the same input. This occurs after the outputs are compared and reasons for differences resolve. In
this regard, if the output from the new system is proven satisfactory, the old system at this point
is discarded and the new system becomes operational. This system or procedure is expensive but
however, it serve as s the standby, should the new system fails to meet its sets objectives. In the
case of this work, Users are advised to make use of the parallel hand over procedure.

4.7 SYSTEM DOCUMENTATION


 Documentation is written text or illustration that accompanies computer software or is
embedded in the source code. The documentation either explains how the software operates or
how to use it, and may mean different things to people in different roles

4.7.1 USER MANUAL


This acts as a guide to the user on the operation of the software. It serves as an aid to the user
who might not understand the computer and Microsoft visual Basic as follows;

 Put on (that is “BOOT”) the system and move the mouse pointer on the screen to the start
button to pop up the windows taskbar.
 Click the start button to pop up the start menu, move to the program file, this pops up
another list of programs available in the system.
 Move to Microsoft Visual studio and then to Microsoft Visual basic 6.0 or if it is on the
desktop, the double click the icon. This will open the visual basic environment and a
dialogue box to open project that appears.
 Choose the project by clicking and pressing the f5 or click on the run button to run or
execute the program.

4.8. SYSTEM MAINTENANCE

19
This ensures an ongoing process after implementation, its purpose being to ensure that the
system continuously provide the desired service as planned. The user or educators may make
additional capabilities, since the computer industry is rapidly changing, maintenance would have
to be carried out. This maintenance includes updating the installation and modifying the correct
version to conform the program standard. File maintenance would also include updating and
expanding the new feature, modifying the file structure to accommodate changes in the
information requirement of the establishment

4.8.1 MEHODS OF SYSTEM MAINTENANCE


The following are the method of system maintenance.
I. Emergency Maintenance: this is due to the malfunction or bug in the system where
maintenance is urgent and usually calls for immediate attention. The malfunction could
be because the program was not tested completely, even though the system, must have
run perfectly for months or even years. The information the user usually identifies the
malfunction. Then a team of analyst and programmers should rectify it if the malfunction
is in computer program and caused by a system input.
II. Routine Maintenance: it is required to keep systems performance in order as it reflects
the organization environment. The activities may be rewriting manual procedures,
conducing training sessions, altering report formats and contents and forming new
processing logic for computer programs. For e.g a new tax law may require a change in
the calculation of net pay or new accounting depreciation method may be adopted.
III. Special Report Request: these are periodic requests for tactical and strategic
management information, which does not come under routine production. These special
request can be satisfied directly by a user with a database management system and the
analyst assists in preparing the necessary procedures for the request. Eg. A special report
on selected products during a sales promotion.
IV. System Improvements: when a new system is implemented, users may suggest
additional improvements to the system. To make the changes, the analyst determines if it
can be met with the existing database develops the necessary manual and computer
procedures to satisfy the requirements.

20
CHAPTER FIVE
SUMMARY, RECOMMENDATIONS AND CONCLUSION
5.1 SUMMARY
This project work presents architecture of a timetable creation system in an academic institution.
An objective guided approach to have an open and extensible architecture so that it would ensure
a long-life system. This project work started by considering the existing manual method of
creating courses and examination timetable in Computer Science Department of Kogi State. The
system also review the timetables scheduling system which is a typical optimization problem. It
is allocation of scarce resources such as lecture hall and lectures to causes. It is complex and time
consuming process. After a critical review of the existing manual approach, it proposed an
automated approach. An approach that generate academic work timetable and examination
timetable based on input parameters.

5.2 RECOMMENDATIONS
Being an application that is highly essential in university system, a further research is
recommended to cover post- graduate and other degree related courses.
The focus of this work is on first –degree courses. To effectively utilize the application all the
necessary constraints are to be put into consideration.

5.3 CONCLUSION.
The system is a distributed application which makes it possible to run on networked environment
and on the web. Some of the features of the developed timetables generation system are:
1) Web based interface - which also make the applications runnable from remote system.
2) Timetable generation for the administrator -The administrator uses the same
application to generate timetables for a particular semester.
3) Student Access – The can check academic timetable online/remotely.
The developed application was tested on windows XP and vista platform using WAMP as web
server softwares. The testing was successful. This testing was conducted on intranet
environments.

21
REFERENCES
Abacus Bayen (2007) –“Combinatorial optimization – automation approach”.

Ausiello M. (2003) “Web based approach to academic” http: / /www.Ceaser.com.

Gauton P.W. (2007) “Understanding Web applications in PHP” http://www.3wc.org.

Kann B. (2002): “optimization problem” 3rd edition macmillian publisher, New York.

Maccfadden F. (2002) “Developing web based applications” 3rd edition, Apress


Publication.

Piola, Z.(2002). “Timetabling problems” (UTP) s http://www.univer.edu.

Rudova A. at. al. (2003) “Constraints based problems” 3rd edition Welsely publisher,
New York.

Waiter.Y. (2003) “Internet and web services” 2nd edition Apress, New York.

Wikipedia (2008): “web based application” http:/ / en wikipedia. org.

22
APPENDIX A (INPUT AND OUTPUT INTERFACE)

MANAGE FACULTY

MANAGE TIMETABLE

LOGIN SCREEN

23
VIEW TIME TABLE

$home = "dean.php";
if($_POST)
postResponse("redirect", $home);
header("Location: " . $home);
die();

24
}
?>
<!DOCTYPE HTML>
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="shortcut icon" type="image/png" href="images/favicon.png"/>
<script src="js/jquery.min.js"></script>
<link href="css/styles.css" rel="stylesheet" type="text/css" />
<title>TIME TABLE| Login</title>
<script src="js/form.js"></script>
</head>

<body class="center">
<div class="vspacer"></div>
<div class="box middle">
<div class="boxbg"></div>
<div class="elements">
<div class="avatar"><div class="icon key"></div></div>
<div class="title">Login</div>
<form id="loginform" method="post" action="login.php">
<input type="text" name="uName" class="styled username" required
placeholder="Username/Roll No." />
<input type="password" name="pswd" class="styled pswd" required placeholder="Password" />
<div class="blocktext info"></div>
<div class="center button" >
<button>Login</button>
<div class="loader">
</div>
</div>
</form>
</div>
</div>
<div id="footer" style="margin:0"></div>
</body>

</html>

INDEX.PHP
<?php

/**
* Provides interface to display the timetable

25
* @author Avin E.M
*/

require_once('functions.php');
require_once('connect_db.php');
$faculty="";$batchStr="";$department="";
if(sessionCheck('logged_in') && empty($_GET['faculty']) && empty($_GET['batch']))
$department = $_SESSION['dept'];
if(!empty($_GET['department']))
$department = $_GET['department'];
if(!empty($_GET['faculty']))
$faculty = $_GET['faculty'];
if(!empty($_GET['batch']))
$batchStr = $_GET['batch'];
?>
<!DOCTYPE HTML>
<html>
<head>
<title>TMS</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="shortcut icon" type="image/png" href="images/favicon.png"/>
<link rel="stylesheet" type="text/css" href="css/styles.css">
<link rel="stylesheet" type="text/css" href="css/dashboard.css">
<link rel="stylesheet" type="text/css" href="css/chosen.css">
<link rel="stylesheet" type="text/css" href="css/table.css">
<script type="text/javascript" src="js/jquery.min.js" ></script>
<script type="text/javascript" src="js/form.js"></script>
<script type="text/javascript" src="js/chosen.js"></script>
<script type="text/javascript" src="js/grid.js"></script>
<script type="text/javascript">
$(function()
{
$("#main_menu a").each(function() {
if($(this).prop('href') == window.location.href || window.location.href.search($
(this).prop('href'))>-1)
{
$(this).parent().addClass('current');
document.title+= " | " + this.innerHTML;
return false;
}
});
$("option[value='<?=$current['table_name']?>']","#table_name").attr('selected','selected');
$("option[value=<?=$department?>]","#department").attr('selected','selected');
$("option[value=<?=$faculty?>]","#faculty").attr('selected','selected');
$("option[value='<?=$batchStr?>']","#batch").attr('selected','selected');
$("select").chosen({allow_single_deselect: true});

26
$("select").change(function(){
window.location.href='./?'+$("#filters :input[value!='']").serialize();
})
<?php
$t=$current['start_hr'] .":". $current['start_min'] ." ". $current['start_mer'];
echo" drawGrid('{$current['table_name']}',{$current['slots']},{$current['days']},
{$current['duration']},'$t');\n";
$deptFilter = 'where dept_code=?';
$facFilter='';$batchFilter='';
$queryParams=[$department];
if(!empty($faculty))
{
if(empty($department))
{
$deptFilter = '';
$facFilter = 'where ';
unset($queryParams[0]);
}
else
$facFilter = ' AND ';
$facFilter.= 'uName=?';
$queryParams[] = $faculty;
}
if(!empty(explode(' : ', $batchStr)[1]))
{
if(empty($department))
{
$deptFilter = '';
unset($queryParams[0]);
}
$batchFilter = 'NATURAL JOIN (SELECT * FROM allowed WHERE batch_name=?
AND batch_dept =?) allowed_batches';
$batch=explode(' : ', $batchStr);
$queryParams[] = $batch[0];
$queryParams[] = $batch[1];
}
$queryString = 'SELECT course_id,course_name,day,slot_num,room,fac_name,batches
from slot_allocs NATURAL JOIN
(SELECT * from courses NATURAL JOI

27
28

You might also like