Sie sind auf Seite 1von 52

TIMETABLE GENERATOR

A Project Report
Submitted in partial fulfilment of the
requirements for the award of the Degree of
BACHELOR OF SCIENCE (INFORMATION TECHNOLOGY)
By
VIVEK MANTRI (size-15, title case)
Seat Number: 17302C0005
Under the esteemed guidance of
Mrs. KETAKI GHAWALI PARAB
Assistant Professor, Department of Information Technology

DEPARTMENT OF INFORMATION TECHNOLOGY


VIDYALANKAR SCHOOL OF INFORMATION TECHNOLOGY
(Affiliated to University of Mumbai)
MUMBAI, 400 037
MAHARASHTRA
2019 - 2020
VIDYALANKAR SCHOOL OF INFORMATION TECHNOLOGY
(Affiliated to University of Mumbai)
MUMBAI-MAHARASHTRA-400037
DEPARTMENT OF INFORMATION TECHNOLOGY

CERTIFICATE
This is to certify that the project entitled, "TIMETABLE GENERATOR ", is bonafied
work of VIVEK MANTRI bearing Seat No: 17302C0005 submitted in partial fulfilment
of the requirements for the award of degree of BACHELOR OF SCIENCE in
INFORMATION TECHNOLOGY from University of Mumbai.

Internal Guide Coordinator

Internal Examiner External Examiner

Date: College Seal Principal


ABSTRACT

The system of timetable preparation in colleges is very monotonous and


time consuming which results in either the same teachers ending up with more
than one class at a time or a number of classes clashes at the same classroom.
Due to manual generated timetable, utilization of resources has proven
ineffective.

The system will take different inputs like number of subjects, room,
teachers, lectures, in a week considering which, it will create time tables for
working days of the week, making application of all resources in a way which
generate timetable.

A suitable timetable is then chosen from the optimal solutions


generated
ACKNOWLEDGEMENT
First and foremost, we are grateful to our college “VIDYALANKAR SCHOOL
OF INFORMATION TECHNOLOGY” for timely successful completion of
this project.

We are indebted to our respected Principal Dr. ROHINI KELKAR , it was


there constant support and guidance that kept us in alignment with our project as
a great learning experience.

We owe a sincere gratitude to our Head of Project Mrs. Ketaki Ghawali Parab
(Project Guide), who supported us and guided us with a continuous source of
information. It leads to our dedicated and determined approach, right from the
selection of project, working through it and overcoming several obstacles and
completing it within the time schedule.

We convey our deep sense of gratitude to all teaching and non-teaching staff of
INFORMATION TECHNOLOGY Department for their constant
encouragement, support and time-to-time help throughout the project work.

It is great pleasure to acknowledge the help and the suggestion, which we


received from the department of Computer Engineering. We wish to express
our profound thanks to all of those who helped us in finding information about
project
DECLARATION

I hereby declare that the project entitled, “TIMETABLE GENERATOR” done


at Vidyalankar School of Information Technology, has not been in any case
duplicated to submit to any other universities for the award of any degree. To
the best of my knowledge other than me, no one has submitted to any other
university.

The project is done in partial fulfilment of the requirements for the award of
degree of BACHELOR OF SCIENCE (INFORMATION TECHNOLOGY)
to be submitted as final semester project as part of our curriculum.

Name and Signature of the Student


Table of Contents
Chapter 1 Introduction............................................................................................................11

1.1 Background................................................................................................................11

1.2 Objectives..................................................................................................................11

1.3 Purpose......................................................................................................................11

1.4 Scope.........................................................................................................................12

1.5 Applicability (Feasibility Study)...............................................................................12

Chapter 2 Survey of Technologies.........................................................................................13

Chapter 3 Requirements and Analysis....................................................................................14

3.1 Problem Definition.........................................................................................................14

3.2 Requirement Specification.............................................................................................14

Hardware Requirements: -....................................................................................................14

3.3 Planning and Scheduling................................................................................................15

3.4 Software and Hardware Requirement............................................................................15

Chapter 4 System Design........................................................................................................16

4.1 Basic Modules................................................................................................................16

4.2 Data Design (Table Design)...........................................................................................17

4.2.1 Schema Design........................................................................................................20

4.2.2 Data Integrity and Constraints.................................................................................20

4.3 Diagrams.........................................................................................................................21

4.3.1 E-R Diagram /Block Diagram.................................................................................21

4.3.2 Class Diagram / Data Flow Diagram.......................................................................22

4.3.3 Use Case Diagram...................................................................................................23

4.3.4 Sequence Diagram...................................................................................................25

4.3.5 Activity Diagram.....................................................................................................29


4.3.6 Component Diagram :..............................................................................................34

4.3.7 Menu Tree :..............................................................................................................35

4.3.8 Event Table..............................................................................................................36

4.3.9 User Interface Design..............................................................................................36

4.3.10 Security Issues.......................................................................................................36

4.3.11 Test Cases Design..................................................................................................36

Chapter 5 Implementation and Testing...................................................................................37

5.1 Implementation Approaches...........................................................................................37

5.2 Coding Details and Code Efficiency:.............................................................................38

5.3 Testing approaches.........................................................................................................39

5.3.1 Unit Testing.............................................................................................................39

5.3.2 Integration Testing...................................................................................................39

5.4 Modification and Improvements....................................................................................40

Chapter 6 Results and Discussion...........................................................................................41

6.1 Test Reports....................................................................................................................41

6.2 User Documentation.......................................................................................................42

Chapter 7 Conclusion.............................................................................................................42

7.1 Conclusion......................................................................................................................43

7.2 Limitation of the system.................................................................................................43

7.3 Future Scope of the Project............................................................................................43

References...............................................................................................................................44

Bibliography...........................................................................................................................45

Website Used..........................................................................................................................46

Glossary..................................................................................................................................47

Appendices.............................................................................................................................49

Summary.................................................................................................................................50

Further Reading......................................................................................................................51
Plagiarism Report...................................................................................................................52
List of Tables (20 bold, centered, Title Case)
Should be generated automatically using word processing software.
List of Figures (20 bold, centered, Title Case)
Should be generated automatically using word processing software.
Chapter 1 Introduction

1.1 Background
This System is a Web based application where admin and Faculty will be using the web
application.
The Admin will use this website, where the admin will login to the system and the admin
will take the inputs of faculty, course, subject, room, dept and it will generate the timetable.
After generating the timetable, Faculty login into the system and faculty view and download
the timetable.

1.2 Objectives
The project “TIMETABLE GENERATOR” is a Web application to
generate the Timetable for college.
The final system should able to generate time tables in completely automated
way which will save a lot of time and effort of an institution.
With timetable Generator system it can work equally well for different School,
Colleges and Universities.
User can use this system so ease that he/she can make automatic
timetable It focus on resources ie teachers, labs and rooms etc.
Provide a facility for everyone to view timetable.

1.3 Purpose
The main Purpose of the system it to implement an effective system to
generate and maintain the Timetables. A website with a proper UI will be
provided to Admin and faculty to login with their username and password and
do their respective duties.
1.4 Scope
Our system allows users to generate timetable for newly occurring
changes in less time, with less effort and with more efficiency.

1.5 Applicability (Feasibility Study)


1. Feasibility Study: A feasibility study was an evaluation of a proposal designed to
determine the difficulty in carrying out a designated task. Generally, a feasibility study
precedes technical development and project implementation.

2. Economic Feasibility: It needs no extra facilities and devices. All dependencies are
satisfied from the open source projects. All tools used are free, open source and the
programming language like HTML, CSS, JAVASCRIPT and hence its development is
economically.

3. Technical Feasibility: Proposed system is technically feasible because the proposed


system requires only those H/W and S/W tools that are available in the system. It requires
the installation of Software and MYSQL which can be done for free.

4. Behavioural Feasibility: It determines how much effort will go in the proposed


information system, and educating and training the users on the new system. Since the
user interface is very simple and understandable for using this software.
Chapter 2 Survey of Technologies

HTML5:- There is no better technology to use than HTML5 if your


organization is looking at developing web-frontend applications for mobile
devices.

CSS: - Cascading style sheets are used to format the layout of Web pages. They can
be used to define text styles, table sizes, and other aspects of Web pages that
previously could only be defined in a page's HTML.

JAVASCRIPT: - JavaScript (JS) is a scripting language, primarily used on the


Web. JavaScript renders web pages in an interactive and dynamic fashion. This
allowing the pages to react to events, exhibit special effects, accept variable text,
validate data, create cookies, detect a user’s browser, etc

PHP: - A rather easy language to learn, PHP is object-oriented and uses a


three-layered model to help create dynamic mobile apps and web applications.
It works great for apps that require database integration.

ASP.NET: - Visual Studio.NET is a complete set of development tools for


building desktop applications & web applications. Accordingly, we have used
Visual Studio 2017 to develop this project.
Chapter 3 Requirements and Analysis

3.1 Problem Definition


Normally timetable generation done manually. Now institutions have its
own timetable, managing and maintaining these will not be difficult. When
Timetable generation is being done, it should consider the maximum and
minimum workload that is in a college. In those cases, timetable generation will
become more complex. Also, it is a time consuming process.
Automatic Timetable Generator is a Web based application used to
generate timetable automatically. It helps to manage all the lectures
automatically and also will be helpful for faculty. It helps to generate it
timetable automatically also helps to save time. There is no need for Faculty to
worry about their lectures details. It allows Faculty to view timetable to ensure
that the faculty is free at that particular period.

3.2 Requirement Specification


Software Requirements: -
Frontend : HTML, CSS JAVASCRIPT

Backend : My SQL, PHP

Operating System : Windows 7

Hardware Requirements: -

Processor : intel i3 3rd generation


Hard Disk : 50GB
RAM : 1gb or more
3.3 Planning and Scheduling
Software process model deals with the model which we are going to use for the
development of the project. There are many software process models available but while
choosing it we should choose it according to the project size that is whether it is industry
scale project or big scale project or medium scale project. Accordingly, the model which we
choose should be suitable for the project as the software process model changes the cost of
the project also changes because the steps in each software process model varies. This
software is build using the waterfall mode. This model suggests work cascading from step to
step like a series of waterfalls. It consists of the following steps in the following manner.

3.4 Software and Hardware Requirement


Chapter 4 System Design

4.1 Basic Modules


Admin: Admin will login into the system and take the inputs of course,
faculty, dept, sem, room and generate the timetable.

Faculty: Faculty will login into the system and download the timetable
Register: If there is any new faculty the admin will create the faculty username
and password and provide them.
Add Course: Admin will add the course to generate timetable.

Add Subject: Admin will add the Subject to generate timetable.

Create Timetable: Admin will click on Create timetable to generate the


timetable.

Add Div: Admin will add the Div

Add Sem: Admin will add the Sem

Add Student: Admin will add the student and register.


4.2 Data Design (Table Design)
Admin table
Serial No Column Name Datatype Constraints
1 id Varchar (45) Primary Key
2 username Varchar (45) NotNull
3 password Varchar (45) NotNull

Course table

Serial No Column Name Data type Constraints


1 Course_id Varchar (45) Primary Key
2 Course_name Varchar (45) NotNull

Sem table

Serial No Column Name Datatype Constraints


1 Sem_id Varchar (45) Primary Key
2 Course_id Varchar (45) Foreign key
3 Sem_id Varchar (45) Foreign key

Faculty table

Serial No: Column Name Datatype Constraints


1 fac_id Varchar (45) Primary key
2 f_name Varchar (45) NotNull
3 l_name Varchar (45) NotNull
4 address Varchar (45) NotNull
5 contact Varchar (45) NotNull
6 dob Varchar (45) NotNull
7 qualification Varchar (45) NotNull
8 e-mail Varchar (45) NotNull
9 username Varchar (45) NotNull
10 password Varchar (45) NotNull
11 course _id Varchar (45) NotNull
12 Div_id Varchar (45) Foreign key

Subject table

Serial No Column Name Data type Constraints


1 Sub_id Varchar (45) Primary Key
2 Sub_name Varchar (45) Foreign key
3 Sem_id Varchar (45) Foreign key
4 Course_id Varchar (45) Foreign key
5 hour Varchar (45) NotNull

Timetable

Serial Column Data type Constraint


No Name s
1 id Varchar PrimaryKe
(45) y
2 Fac_id Varchar (45) Foreign
key
3 Course_id Varchar Foreign
(45) key
5 Dept_id Varchar (45) Foreign
key
6 Sem_id Varchar Foreign
(45) key
7 Subject_i Varchar Foreign
d (45) key
8 day Varchar NotNull
(45)

Student

Serial No Column Name Data type Constraints


1 Student_id Varchar (45) Primary Key
2 F_name Varchar (45) Not Null
3 L_name Varchar (45) Not Null
4 Username Varchar (45) Not Null
5 Password Varchar (45) Not Null
6 div_id Varchar (45) Foreign key
7 course_id Varchar (45) Foreign key

Div

Serial No Column Name Data type Constraints


1 Div_id Varchar (45) Primary Key
2 Div_name Varchar (45) Not Null
7 course_id Varchar (45) Foreign key

4.2.1 Schema Design


4.2.2 Data Integrity and Constraints

4.3 Diagrams

4.3.1 E-R Diagram /Block Diagram


An Entity in this context is an object, a component of data. These
entities can have attributes that define its properties. By defining the
entities, their attributes, and showing the relationships between them, an ER
diagram illustrates the logical structure of databases.
4.3.2 Class Diagram / Data Flow Diagram
Class diagram describes the attributes and operations of a class and also
the constraints used on the system. The class diagrams are widely used in the
building and modelling of object oriented systems because they are the only
UML diagrams, which can be mapped directly with object-oriented languages.
Class diagram shows a collection of classes, interfaces, associations,
collaborations, and constraints and their inter-relation. It is also known as a
structural diagram.
4.3.3 Use Case Diagram
Purpose of use case diagram is to capture the dynamic aspect of a
system. Use case diagrams are used to gather the requirements of a system
including internal and external influences. These requirements are mostly
design requirements. Hence, when a system is analyzed to gather its
functionalities, use cases are prepared and actors are identified.
When the initial task is complete, use case diagrams are modelled to
present the outside view.
Use Case Diagram for Admin :

Use Case Diagram for Faculty and Student :


4.3.4 Sequence Diagram
A sequence diagram shows object interactions arranged in time sequence. It
depicts the objects and classes involved in the scenario and the sequence of
messages exchanged between the objects needed to carry out the functionality of
the scenario.
Sequence diagrams are typically associated with use case realizations in the
Logical View of the system under development. Sequence diagrams are sometimes
called event diagrams or event Scenarios.
A sequence diagram shows, as parallel vertical lines, different process or objects that live
simultaneously, and, as horizontal arrows, the messages exchanged between them, in the
order in which they occur. This allows the specification of simple runtime scenarios in a
graphical manner.

1. Sequence diagrams of Admin for login :

2. Sequence Diagram for Faculty Registration :


3. Sequence Diagram for Course :

4. Sequence Diagram for TimeTable :


5. Sequence Diagram for Faculty login

6. Sequence diagram for Student login:


4.3.5 Activity Diagram
Activity diagram is another important diagram in UML to describe the
dynamic aspects of the system. Activity diagram is basically a flowchart to
represent the flow from one activity to another activity. The activity can be
described as an operation of the system.

The control flow is drawn from one operation to another. This flow can
be sequential, branched, or concurrent. Activity diagrams deal with all type of
flow control by using different elements such as fork, join, etc. Activity
diagram is used to show message flow from one activity to another.

Activity diagrams are not only used for visualizing the dynamic nature of
a system, but they are also used to construct the executable system by using
forward and reverse engineering techniques. The only missing thing in the
activity diagram is the message part.

It does not show any message flow from one activity to another. Activity
diagram is sometimes considered as the flowchart. Although the diagrams look
like a flowchart, they are not. It shows different flows such as parallel,
branched, concurrent, and single.

Activity Diagram for Admin:


Activity Diagram for Faculty:
Activity Diagram for student:
Flowchart:
A flow chart is a type of diagram representing a process using different
symbols containing information about steps or a sequence of events. Each of these
symbols is linked with arrows to illustrate the flow direction of the process.

4.3.6 Component Diagram :


4.3.7 Menu Tree :
4.3.8 Event Table
4.3.9 User Interface Design

4.3.10 Security Issues

4.3.11 Test Cases Design


Chapter 5 Implementation and Testing

5.1 Implementation Approaches

Sr. No. Implementation Plan Action


1. Module List of Project Modules
2. Percentage Completed List the Percentage of each
module completed.
3. Status Module status such as:
Completed,
On Schedule, Behind
Schedule, Cancelled
4. Day Started Date module begun
5. Day to be Completed Estimated date of module
completion.
6. Actual Completion Date Date module was
completed.
7. Module Assignment Name of Module Owner
8. Importance of Module Module Priority such as:
High,
Medium or
Low
5.2 Coding Details and Code Efficiency:

Students not need include full source code, instead, include only the important
codes (algorithms, applets code, forms code etc). The program code should
contain comments needed for explaining the work a piece of code does.
Comments may be needed to explain why it does it, or, why it does a particular
way. The student can explain the function of the code with a shot of the output
screen of that program code.
• Code Efficiency: The student should explain how the code is efficient and
how the students have handled code optimisation.
5.3 Testing approaches

Testing should be according to the scheme presented in the system design


chapter and should follow some suitable model – e.g., category partition, state
machine-based. Both functional testing and user-acceptance testing are
appropriate.
Explain the approach of testing.

5.3.1 Unit Testing

Unit testing deals with testing a unit or module as a whole. This would test the
interaction of many functions but, do confine the test within one module.

5.3.2 Integration Testing

Brings all the modules together into a special testing environment, then checks
for errors, bugs and interoperability. It deals with tests for the entire
application. Application limits and features are tested here.
5.4 Modification and Improvements

Once the students finish the testing they are bound to be faced with bugs, errors
and they will need to modify your source code to improve the system. Define
what modification are implemented in the system and how it improved the
system.
Chapter 6 Results and Discussion

6.1 Test Reports

Explain the test results and reports based on the test cases, which should show
that the project is capable of facing any problematic situation and that it works
fine in different conditions. Take the different sample inputs and show the
outputs.
6.2 User Documentation

Define the working of the software; explain its different functions, components
with screen shots. The user document should provide all the details of the
product in such a way that any user reading the manual, is able to understand
the working and functionality of the document.

Chapter 7 Conclusion
7.1 Conclusion

The conclusions can be summarised in a fairly short chapter (2 or 3 pages).


This chapter brings together many of the points that would have made in the
other chapters.

7.2 Limitation of the system

Explain the limitations encountered during the testing of the project that the
students were not able to modify. List the criticisms accepted during the
demonstrations of the project.

7.3 Future Scope of the Project

Future Scope of the Project describes two things: firstly, new areas of
investigation prompted by developments in this project, and secondly, parts of
the current work that was not completed due to time constraints and/or
problems encountered.
References

It is very important that the students acknowledge the work of others that they
have used or adapted in their own work, or that provides the essential
background or context to the project. The use of references is the standard way
to do this. Please follow the given standard for the references for books,
journals, and online material. The citation is mandatory in both the reports.
E.g:
Linhares, A., & Brum, P. (2007). Understanding our understanding of strategic
scenarios: What role do chunks play? Cognitive Science, 31(6), 989-1007.
https://doi.org/doi:10.1080/03640210701703725
Lipson, Charles (2011). Cite right : A quick guide to citation styles; MLA,
APA, Chicago, the sciences, professions, and more (2nd ed.). Chicago [u.a.]:
University of Chicago Press. p. 187. ISBN 9780226484648.

Elaine Ritchie, J Knite. (2001). Artificial Intelligence, Chapter 2 , p.p 23 - 44.


Tata McGrawHill.
Bibliography
Website Used
Please mention the full URL and Date of Access of URL
Glossary

If you the students any acronyms, abbreviations, symbols, or uncommon terms


in the project report then their meaning should be explained where they first
occur. If they go on to use any of them extensively then it is helpful to list them
in this section and define the meaning.
Appendices

These may be provided to include further details of results, mathematical


derivations, certain illustrative parts of the program code (e.g., class interfaces),
user documentation etc.

In particular, if there are technical details of the work done that might be useful
to others who wish to build on this work, but that are not sufficiently important
to the project as a whole to justify being discussed in the main body of the
project, then they should be included as appendices.
Summary

Project development usually involves an engineering approach to the design


and development of a software system that fulfils a practical need. Projects also
often form an important focus for discussion at interviews with future
employers as they provide a detailed example of what the students are capable
of achieving.
Further Reading

1. Modern Systems Analysis and Design; Jeffrey A. Hoffer, Joey F. George,


Joseph,S. Valacich; Pearson Education; Third Edition; 2002.
2. ISO/IEC 12207: Software Life Cycle Process
(http://www.software.org/quagmire/descriptions/iso-iec12207.asp).
Plagiarism Report

[Max allowed range is 10-15 %]

Das könnte Ihnen auch gefallen