GCES Scheduler
GCES Scheduler
GCES Scheduler
GCES SCHEDULER
By
GCES SCHEDULER
By
Brinda Subedi
Sujan Kumal
Superviser
Er. Mahesh Shakya
This is to certify that this project titled “GCES Scheduler” in partial fulfillment of the
requirements for the degree of BACHELOR OF ENGINEERING IN SOFTWARE
ENGINEERING is a bona fide work of Brinda Subedi, Sujan Kumal under the
supervision of Er. Mahesh Shakya It is further certified that this work doesn’t form part
of any other project work on the basis of which a degree or award was conferred on any
earlier occasion on this by any other candidate.
……………………………….. ……………………………
………………………………… ……..……………………..
1
ACKNOWLEDGEMENT
We would like to express our special thanks of gratitude to our teachers, Project
Supervisor Er. Mahesh Shakya, Project Head Er. Sujan Tamrakar as well as our Vice
Principal Mr. Ashok Raj Parajuli who gave us the golden opportunity to do this
wonderful project on the topic “GCES Scheduler”, which also helped us in doing a lot
of Research and we came to know about so many new things. We are really thankful to
them.
Secondly, we would also like to thank our parents and friends who helped us a lot in
finalizing this project within the limited time frame.
Brinda Subedi,
Sujan Kumal
2
ABSTRACT
“GCES Scheduler” is a Desktop-based Course Scheduling system that is primarily
focused on scheduling the routine for teachers for different classes. It considers
available time of all the teachers and suggest most favorable schedule, near optimal, for
all the classes. It saves time and effort for the person who manages it. ”GCES
Scheduler” overcomes the traditional method of using paper by providing the platform.
The study concluded that the manual and the automated class scheduling systems are
both functional. However, the automated system is more functional because of its extra
features which solve the primary problems in creating class schedules.
3
TABLE OF CONTENTS
Bonafide Certificate ....................................................................................................... 1
Acknowledgement ......................................................................................................... 2
Abstract .......................................................................................................................... 3
Table of Contents ........................................................................................................... 4
Chapter 1 Introduction ............................................................................................ 5
1.1 Background ..................................................................................................................... 5
1.2 Problem Statement .......................................................................................................... 5
1.3 Project Objective ............................................................................................................. 5
1.4 Implication ...................................................................................................................... 6
Chapter 2 Literature Review ................................................................................... 7
Chapter 3 Technical Approach ................................................................................ 9
3.1 Architecture and Environment ...................................................................................... 11
3.2 Genetic Algorithm ........................................................................................................ 11
3.3 Usecase Diagram .......................................................................................................... 12
3.4 Use case contracts: ........................................................................................................ 12
Chapter 4 Result And Discussion.......................................................................... 13
4.1 Testing........................................................................................................................... 14
Chapter 5 Snapshots of Application ...................................................................... 15
Chapter 6 Conclusion ............................................................................................ 18
Bibliography ................................................................................................................ 19
4
INTRODUCTION
One of the remarkable and much known products of technology advancement is the
conversion of manually-operated system into automated system. Automation produces
a great impact in the lives of man, particularly in the field of industry, business,
medicine, and education. It is a fact that arranging class schedules, instructor’s
load and room utilization for the students and faculty in every department is one of the
many activities that each department heads must prepare before classes start. But the
school used the manual way of preparing the class schedule. With the manual system,
more time and labor force is required to plot, arrange, and revise the class schedules,
room utilization and instructors’ load provided by the department heads.
1.1 BACKGROUND
“GCES Scheduler” is a JAVA based desktop application particularly focused on
solving problems on scheduling classes for teachers. It suggests reliable schedule
considering availability of time for different teacher and expertise as well as interest on
particular subject.
We have been facing problem of unreliable schedule as these schedules are manually
created. Its time consuming and pressure task. Students as well as teachers are not
happy due to this unreliability. Poor scheduling practices would cause double-
assignations of lecturers, prolonged postponement and cancellations of presentations as
well as inefficient use of time and resources.
The objectives of this project is to schedule class routine automatically (near Optimal)
to reduce time and stress for the person responsible for scheduling classes. As well as
to manage time of teacher as guard for exam.
5
Facility to edit, view and delete the data later.
Facility of printing the result i.e. Final Schedule.
To make GUI as simple as possible.
1.5 IMPLICATION
Since GCES have been facing the problem of unreliable course schedule. GCES
Schedule is focused to generate course schedule at least to provide assistance for person
responsible for scheduling course.
6
LITERATURE REVIEW
There are scheduling applications available. But the problem with them are either they
don’t do as expected or they are paid version. Evaluation period are also confined to
limited facility. One of the example of these course scheduling tools is ‘asc timetable’.
7
transformation rules and executed by graph rewrite systems/graph
transformation tools.
We will be using concepts of some popular algorithm like Banker’s
algorithm, Knapsack problem, job sequencing, etc.
There are some application available for the task of scheduling like College
Management System, InfoSolz (an online tool), Prime Time Table,
etc. but they are either expensive or not typically focused for
scheduling classes only but for managing other college activity too. The
scheduling application available provides only demo function until they are
paid. So, we are developing this application particularly for scheduling.
We have some screenshot of “aSc TimeTables” generating schedule. This
application has two-day weekend and on these day the schedule is not
satisfactory. These need to be fixed. These Application has one good
feature i.e. manual editing.
8
METHODOLOGY
3.1 SOFTWARE DEVELOPMENT LIFECYCLE
Design Phase: In this phase the SRS was translated into the system’s design. Context
Diagram, DFD, ER – Diagram, Use Case Diagram and Class Diagram were developed.
Coding Phase: In this phase coding was done according to the design and a working
system was developed by the end of this process.
9
Testing Phase: In this phase, the system was tested. With each testing a list of changes
to the system developed, was suggested and the changes were applied to the software
3.2 RESOURCES
SQLite Database was used for the database of the program. It was being incorporated
with Java programming languages for the Graphic User Interface and Application
Programming Interface.
10
TECHNICAL APPROACH
Our application is Desktop application which will use following software tools:
Language: Java
IDE: NetBeans
11
4.3 USECASE DIAGRAM
Secondary Actor:
Stakeholders:
Preconditions: none
12
Use case UC1: Enter Class Details:
Secondary Actor:
Stakeholders:
Preconditions: none
13
RESULT AND DISCUSSION
Using this application, we are able to obtain the schedule. Software testing is a critical
element of software quality assurance and represents the ultimate review of
specification, design and code generation.
5.2 TESTING
This application was run for several minutes. But it didn’t end. scheduling task ran until
we stopped ourselves.
14
SNAPSHOTS OF APPLICATION
15
16
17
CONCLUSION
Course Scheduling is Constraint Satisfaction Problem. We can’t be sure that the
obtained schedule is the optimal schedule. It is also time consuming and require high
cost of processing. So, to obtain the near optimal solution it requires sophisticated
algorithm like Genetic Algorithm.
But instead of developing entire system using genetic algorithm we used Optaplanner
Course Scheduling, as this is open source.
The manual system is adaptable and useful in the making of class schedules. However,
the automated class scheduling system is more functional because of the distinctive
performance in the aspect of speed, project design, accuracy and stability of the system
in the preparation of class schedules, room schedules and instructors’ load. With these
features, the automated system can really solve the primary problems being
encountered during the class schedule preparation.
18
BIBLIOGRAPHY
[1] (2005). In C. Larman, Applying UML and Patterns (p. 703) [offline]
https://www.asctimetables.com/
https://www.optaplanner.org/
https://www.sciencedirect.com/science/article/pii/S0743731509001804
19