"Time Table Management System": Project Report On
"Time Table Management System": Project Report On
"Time Table Management System": Project Report On
2019-2020
Submitted By:
M.SAI TEJA(180330151)
K.SIDDHARTH(180330203)
S.VARDHAN(180330225)
K.KRISHNA VAMSI(180330207)
K.NITIN RAJ(180330203)
ABSTRACT
Timetabling concerns all activities with regard to producing a schedule that must be subjective to different
constraints. Timetable can be defined as the optimization of given activities, actions or events to a set of
objects in space-time matrix to satisfy a set of desirable constraints.
A college timetable is a temporal arrangement of a set of lectures and classrooms in which all given
constraints are satisfied. Creating such timetables manually is complex and time-consuming process.
By automating this process with computer assisted timetable generator can save a lot of precious time of
administrators who are involved in creating and managing course timetables. Since every college has its own
timetabling problem, the commercially available software packages may not suit the need of every college.
Hence we have developed practical approach for building lecture course timetabling system, which can be
customized to fit to any colleges timetabling problem. This project introduces a practical timetabling
algorithm capable of taking care of both strong and weak constraints effectively, used in an automated
timetabling system. So that each teacher and student can view their timetable once they are finalized for a
given semester but they can’t edit them.
SOFTWARE PROJECT MANAGEMENT PLAN
1. INTRODUCTION
Timetabling concerns all activities with regard to producing a schedule that must be subjective to
different constraints. Timetable can be defined as the optimization of given activities, actions or events
to a set of objects in space-time matrix to satisfy a set of desirable constraints.
A key factor in running an educational centre or basically an academic environment is the need for a
well-planned, well-throughout and clash-free timetable. Back in the days when technology was not in
wide use, (lecture) timetables were manually created by the academic institution.
Every school year, tertiary institutions are faced with the tedious task of drawing up academic timetables
that satisfies the various courses and the respective examination being offered by the different
departments.
Timetable development process starts when each Head of Department provide the following
information to be used for timetable scheduling. The information provides the modules with dates, time
and venues suitable in a particular semester:
Examinable courses in a particular semester.
Dates for lectures to be held (Lectures can be scheduled between Monday and Friday).
Specified time for lectures ( i.e. Between 8am and 4pm)
The venue of the scheduled lectures.
This problem assigns time and resources to the contacts on such a way that the constraints will be
satisfied. In various timetabling problems, educational timetabling has been generally examined from
practical standpoint.
The quality of the timetable determines the quality of time dedicated by lecturers, students and
administrators to academic activities. Various academic timetabling includes:
School timetable
Lecture timetable
Examination timetable and
Assignment timetable.
1.2 PURPOSE
Planning timetables is one of the most complex and error-prone applications. The available system
currently builds or generates a set of timetables manually, but most times have issues with generating a
clash-free and complete timetable. There are still serious problems like generation of high cost time
tables are occurring while scheduling and these problems are repeating frequently. Most educational
institutions have resorted to manual generation of their timetables which according to statistics takes
much time to get completed and optimal. Even at the optimal stage of the manually generated timetable,
there are still a few clashes and it is the lecturer that takes a clashing course that works out the logistics
of the course so as to avoid the clash. Therefore there is a great requirement for an application
distributing the course evenly and without collisions. Our aim here is to develop a simple, easily
understandable, efficient and portable application, which could automatically generate good
quality timetables within seconds.
2. PROJECT ORGANIZATION
2.1 Software Process Model
The Waterfall Model was first Process Model to be introduced. In a Waterfall model, each phase
must be completed before the next phase can begin and there is no overlapping in the
phases. Waterfall model is the earliest SDLC approach that was used for software development.
In “The Waterfall” approach, the whole process of software development is divided into separate
phases. The outcome of one phase acts as the input for the next phase sequentially. This means that
any phase in the development process begins only if the previous phase is complete. The waterfall
model is a sequential design process in which progress is seen as flowing steadily downwards (like
a waterfall) through the phases of Conception, Initiation, Analysis, Design, Construction, Testing,
Production/Implementation and Maintenance.
As the Waterfall Model illustrates the software development process in a linear sequential flow;
hence it is also referred to as a Linear-Sequential Life Cycle Model.
SEQUENTIAL PHASES IN WATERFALL MODEL
Requirements: The first phase involves understanding what need to be design and what is its
function, purpose etc. Here, the specifications of the input and output or the final product are
studied and marked.
System Design: The requirement specifications from first phase are studied in this phase and
system design is prepared. System Design helps in specifying hardware and system requirements
and also helps in defining overall system architecture. The software code to be written in the
next stage is created now.
Implementation: With inputs from system design, the system is first developed in small
programs called units, which are integrated in the next phase. Each unit is developed and tested
for its functionality which is referred to as Unit Testing.
Integration and Testing: All the units developed in the implementation phase are integrated into
a system after testing of each unit. The software designed, needs to go through constant
software testing to find out if there are any flaw or errors. Testing is done so that the client does
not face any problem during the installation of the software.
Deployment of System: Once the functional and non-functional testing is done, the product is
deployed in the customer environment or released into the market.
Maintenance: This step occurs after installation, and involves making modifications to the
system or an individual component to alter attributes or improve performance. These
modifications arise either due to change requests initiated by the customer, or defects
uncovered during live use of the system. Client is provided with regular maintenance and
support for the developed software.
All these phases are cascaded to each other in which progress is seen as flowing steadily downwards
(like a waterfall) through the phases. The next phase is started only after the defined set of goals
are achieved for previous phase and it is signed off, so the name “Waterfall Model“.
Admin Roles:
Admin can view all the content (All the timetables i.e. personal as well as general).
If the need be, admin can remove a timetable from the website/app.
Admin can view feedback given by users, and solve their queries.
Admin has the authority to manage the database.
2.3 Tools and Techniques
The tools and techniques used are mentioned as:
Tools used:
1. Designing: XAMPP/WAMPP
2. Coding: Netbeans and Eclipse
3. Database: MySQL
4. Creating UML Diagrams: ArgoUML
Techniques used:
1. Front-End: HTML, CSS
2. Back-End: Java, PHP
3. Database: MySQL
A Web Application on “Time Table Generator-plan ahead” is built up using following techniques:
FRONT-END
a. HTML
b. CSS
c. JavaScript
d. JQuery
BACK-END
a. PHP
DATABASE
a. MySQL and PHPMyAdmin
A Desktop Application on “Time Table Generator-plan ahead” is built up using following techniques:
Platforms:
JAVA GUI Swing
MySQL
IDE’s:
Netbeans
Eclipse
MySQL- Command Line Interface
3.4 CONSTRAINTS
3.4.1 HARD CONSTRAINTS
Class can only be assigned if room is spare.
No teacher or student have more than one class at a time.
A classroom must have enough seats to accommodate all students.
• Schedule Risk:
Project schedule get slip when project tasks and schedule release risks are not addressed properly.
Schedule risks mainly impact on project and finally on company economy and may lead to project
failure. Schedules often slip due to following reasons:
Wrong time estimation.
Resources are not tracked properly.
Failure to identify complex functionalities.
• Budget Risk:
Wrong budget estimation.
Cost overruns
Project scope expansion
• Operational Risks:
Risks of loss due to improper process implementation
Failed system or some external events risks.
Causes of Operational risks:
Failure to address priority conflicts.
Failure to resolve the responsibilities.
• Technical risks:
Technical risks generally leads to failure of functionality and performance.Causes of technical risks
are:
Continuous changing requirements.
No advanced technology available or the existing technology is in initial stages.
Product is complex to implement.
Difficult project modules integration.
1. INTRODUCTION
Timetabling concerns all activities with regard to producing a schedule that must be subjective to
different constraints. Timetable can be defined as the optimization of given activities, actions or events
to a set of objects in space-time matrix to satisfy a set of desirable constraints.
A key factor in running an educational centre or basically an academic environment is the need for a
well-planned, well-throughout and clash-free timetable. Back in the days when technology was not in
wide use, (lecture) timetables were manually created by the academic institution.
Every school year, tertiary institutions are faced with the tedious task of drawing up academic timetables
that satisfies the various courses and the respective examination being offered by the different
departments.
Timetable development process starts when each Head of Department provide the following
information to be used for timetable scheduling. The information provides the modules with dates, time
and venues suitable in a particular semester:
Examinable courses in a particular semester.
Dates for lectures to be held (Lectures can be scheduled between Monday and Friday).
Specified time for lectures ( i.e. Between 8am and 4pm)
The venue of the scheduled lectures.
This problem assigns time and resources to the contacts on such a way that the constraints will be
satisfied. In various timetabling problems, educational timetabling has been generally examined from
practical standpoint.
The quality of the timetable determines the quality of time dedicated by lecturers, students and
administrators to academic activities. Various academic timetabling includes:
School timetable
Lecture timetable
Examination timetable and
Assignment timetable.
1.1 PROJECT OVERVIEW
Timetabling concerns all activities with regard to producing a schedule that must be subjective to
different constraints. Timetable can be defined as the optimization of given activities, actions or
events to a set of objects in space-time matrix to satisfy a set of desirable constraints. A college
timetable is a temporal arrangement of a set of lectures and classrooms in which all given
constraints are satisfied. Creating such timetables manually is complex and time-consuming
process. By automating this process with computer assisted timetable generator can save a lot of
precious time of administrators who are involved in creating and managing course timetables. Since
every college has its own timetabling problem, the commercially available software packages may
not suit the need of every college.
2. PURPOSE
Planning timetables is one of the most complex and error-prone applications. The available system
currently builds or generates a set of timetables manually, but most times have issues with generating a
clash-free and complete timetable. There are still serious problems like generation of high cost time
tables are occurring while scheduling and these problems are repeating frequently. Most educational
institutions have resorted to manual generation of their timetables which according to statistics takes
much time to get completed and optimal. Even at the optimal stage of the manually generated timetable,
there are still a few clashes and it is the lecturer that takes a clashing course that works out the logistics
of the course so as to avoid the clash. Therefore there is a great requirement for an application
distributing the course evenly and without collisions. Our aim here is to develop a simple, easily
understandable, efficient and portable application, which could automatically generate good
quality timetables within seconds.
3. SPECIFIC REQUIREMENTS
3.1 USER INTERFACES
User: The User is one who intends to view the Time Table i.e. it can be Student, Teachers,
Course/Subject Co-ordinator and even the Head of Department. Multiple users can connect
through the software for viewing the time table.
Admin: She/he is the one that uses the Software to generate Time-Table according to the needs
and specific requirements of the Class for which the time table needs to be formed.
4. PRODUCT DESCRIPTION
4.1 OBJECTIVE
The main objectives of our project are:
1 The final system should able to generate time tables in completely automated way which will
save a lot of time and effort of an institute administration.
2 To make a timetable system generic so that I can work equally well for different School,
Colleges and Universities.
3 User defined constraints handling.
4 Ease of use for user of system so that he/she can make automatic timetable.
5 Focus on optimization of resources i.e. teachers, labs and rooms etc.
6 Provide a facility for everyone to view timetable.
7 Generate multiple useful views from time table.
5. FUNCTIONALITIES
The Software made will have Following Functionalities. Some of the Major Functionalities are stated
below-
Creating Recess and Prayer slots
Generate Multiple Time Tables
Information Storing in Data-Base
Vanquishes human errors
Reduces human efforts
Academic Calendar
Systematic planning
Personal Scheduler
Lectures Scheduling
Course Scheduling
Exam Scheduling
6. FEATURES
Interfaceforinput:The system will be having an easy to use and interactive interface to enter all the
inputs like the workload for the teachers, how many no. of students of which branches are studying
the subject in a semester, the data for the rooms and data for the labs.
DatabaseCapabilities: The system will have well-designed database to store all the information which
will be entered in as the input. Separate database maintaining basic information’s, subjects, teachers,
batches and their associations and other details Database for holding generated timetable and for
storing required timetables.
ProcessingCapabilities:The system will have algorithms to process all the data present in the database
and keeping in view the various constraints like that a teacher should not have two consecutive
lectures/labs, students have minimum one hour gaps, proper rooms are allocated for the lectures
and tutorials, labs are used optimally so that they are used for the maximum possible time, it will
generate the time table.
SearchPanel:The system will have an easy to use to search panel to search according his need on the
time tables stored in the database. The system would give the response to the user quires in the
proper format and errors messages will be shown properly to tell user about his mistakes and to
guide him/her for proper use of the system.
Features for assigning priorities for subjects.
Features for editing generated table, saving edited tables and opening saved tables.
High portability, works on almost all systems available.
Highly efficient, needs only few minutes to complete whole procedure.
7. PROJECT JUSTIFICATION
University is currently having a Manual Time-Table Generation System Which is very time consuming
and even faces clashing.
To overcome this problem and provide the university a good automated timetable generation system
this project has been taken.
The software made i.e. “TIME-TABLE GENERATOR SYSTEM” will be an easy to use and error free
system. It will avoid the Clashes and will made time table for all the Classes.
It is expected that the project will be completed in this semester, but if due to some problems it is
not completed in this semester it will be continued in the next semester till it is completed.
Regarding the cost there will be no expenditure in buying the new software to install the system as
the university is already having MSSQL and Windows operating system which will be required to use
the project. The required hardware is already available with the university.
Software designer description
1. INTRODUCTION
1.1 Design Overview
Through this project, we are trying to provide a platform to the users to write about anything which
could be useful for other bloggers/users. It can be a life hack, an experience that moved you, or
regarding academics. Internet is extremely vast. Internet can be a life saviour and annoyingly chaotic
at the same time.
UML is a common language for business analysts, software architects and developers used to
describe, specify, design, and document existing or new business processes, structure and
behaviour of artifacts of software systems. UML can be applied to diverse application domains
(e.g., banking, finance, internet, aerospace, healthcare, etc.) It can be used with all major object
and component software development methods and for various implementation platforms (e.g.,
J2EE, .NET).
TEACHERS SUBJECT_ID
TEACHER_ID
TEACHER_NAME CLASSES
WEEKHOUR CLASS_ID
CLASS_NAME
SUBJECT
SUBJECT_ID CLASS_TEACHER
SUBJECT_NAME CLASS_ID
TEACHER_ID
TEACHER_SUBJECT TEACHER_HOUR
TEACHER_ID M AX_HOUR
1.4 USER INTERFACES
1.4.1 Desktop Application:
Below Screenshots are the User Interfaces of Completed Desktop
Application made by Our Group.
PROJECT CODE
Software test documentation (std)
1. Testing Objectives
The objective for using black box testing is to validate that the application works as
the user will be operating it and in the environments of their systems. Black-box
testing checks that the user interface and user inputs and outputs all work correctly.
Part of this is that error handling must work correctly. It's used in functional and system
testing.
Navigability is tested to ensure that all navigation syntax and semantics are exercised
to uncover any navigation errors (e.g., dead links, improper links, erroneous links).
Interoperability is tested to ensure that the WebApp properly interfaces with other
applications and/or databases.
t echnology
Security
Testing
For content testing, the testing will be done manually by all the team members by
thoroughly going through all the content of the web-app.
7. DATABASE TESTING:
HTML script s
Each interface mechanism is tested within the context of a use-case or NSU for a
specific user category.
The complete interface is tested against selected use-cases and NSUs to uncover
errors in the semantics of the interface.
2 Enter number of
teachers and number
of classes
3
Teacher details panel
4
Class Section
Generate
suitable time-
8 tables?
No
11
BASIS PATHS
Since V(G)=6, therefore number of basis paths=5