Sei sulla pagina 1di 8

Software Requirements

Specification
for

Automated Timetable Generator

Version 1.0 approved

Prepared by Soubhagya Chandra Sahoo

Silicon Institute of Technology, Bhubaneswar

10th July 2019

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
Software Requirements Specification for Automated Timetable Generator Page ii

Table of Contents
Table of Contents...........................................................................................................................ii
Revision History.............................................................................................................................ii
1. Introduction..............................................................................................................................1
1.1 Purpose.......................................................................................................................................1
1.2 Document Conventions..............................................................................................................1
1.3 Intended Audience and Reading Suggestions.............................................................................1
1.4 Product Scope.............................................................................................................................1
1.5 References..................................................................................................................................2
2. Overall Description..................................................................................................................2
2.1 Product Perspective....................................................................................................................2
2.2 Product Functions.......................................................................................................................2
2.3 User Classes and Characteristics................................................................................................2
2.4 Operating Environment..............................................................................................................3
2.5 Design and Implementation Constraints.....................................................................................3
2.6 User Documentation...................................................................................................................3
2.7 Assumptions and Dependencies.................................................................................................3
3. External Interface Requirements...........................................................................................4
3.1 User Interfaces............................................................................................................................4
3.2 Hardware Interfaces...................................................................................................................4
3.3 Software Interfaces.....................................................................................................................4
4. System Features.......................................................................................................................4
4.1 Storing faculties/trainers specialization details:..........................................................................4
4.2 Keeping details of subjects/projects available to a branch/department:......................................5
4.3 Mapping availability of resources:.............................................................................................5
4.4 Retrieving information from database:.......................................................................................5
4.5 Generating faculty/trainer timetable:..........................................................................................5
4.6 Generating student/trainee timetable:.........................................................................................5
5. Other Nonfunctional Requirements.......................................................................................5
5.1 Performance Requirements.........................................................................................................5
5.2 Safety Requirements...................................................................................................................5
5.3 Security Requirements................................................................................................................6
5.4 Software Quality Attributes........................................................................................................6
5.5 Business Rules............................................................................................................................6
6. Other Requirements...................................................................................................................6

Revision History
Name Date Reason For Changes Version
Software Requirements Specification for Automated Timetable Generator Page 1

1. Introduction

1.1 Purpose 

The purpose of the project id to develop a system which will generate timetable for each course and
faculty, considering the availability calendar of faculties, availability of physical resources such as
classrooms, laboratories, seminar halls and rules applicable at different classes, semesters, faculties
and subject level. This timetable generation system improves resource utilization and optimization
and also reduces the manual labor and time consumption as the timetable is generated automatically.

1.2 Document Conventions

This document will use IEEE format. For clarity, acronyms deemed uncommon by the author, will be
annotated and included in the glossary. The format for headings is as followed:
Major headings are in bold 14pt font, and concurrent headings in bold 12 pt font. 
Sections are in the format of x. y, where x and y are real, positive integers.

SIZE STYLE
Heading 18 Times Bold
Sub-Heading 14 Times Bold
Others 12 Times New Roman
LINE SPACING THROUGHOUT 1.5

1.3 Intended Audience and Reading Suggestions

The document is intended for the following:


 Developers
 Software Engineers
 Project managers
 System Testers
 Documentation writers
 Software Designers in developing, testing

It is suggested to read the sections sequentially, and to refer the appendices as one progresses, in
order to clarify jargon terms and definitions.

1.4 Product Scope

Timetable Generation System generates timetable for each class and teacher, in keeping with the
availability calendar of teachers, availability and capacity of physical resources (such as classrooms,
Software Requirements Specification for Automated Timetable Generator Page 2

laboratories and computer room) and rules applicable at different classes, semesters, teachers and
subjects level. Best of all, this Timetable Generation System tremendously improves resource
utilization and optimization.

1.5 References

 https://nevonprojects.com/automated-college-timetable-generator/
 https://www.researchgate.net/publication/326265336_A_STUDY_ON_AUTOMATIC_TIMET
ABLE_GENERATOR
 https://github.com/topics/timetable-generator
 https://www.phptpoint.com/timetable-generator-free-download/

2. Overall Description

2.1 Product Perspective

The proposed Automated Timetable Generator is used to replace the traditional timetable preparing
techniques. Timetable needed at schools, colleges, universities or any organizations can be
automatically generated using the data from the database. This timetable generator checks for all the
preferable conditions so that no anomalies are faced after the timetable is generated. This in terms
also reduces human labor and time consumption.

2.2 Product Functions

The main functions of this project are:


 Generation of timetable for faculties.
 Generation of timetable for students.
 Maintaining a better database with respect to previously saved data.
 Reducing the manual labor done by the Head of departments.
 Accessing and maintaining data made easier.
 Providing timetable on a daily basis with respect to available resources.

2.3 User Classes and Characteristics

This project can be used by the following class of users:


 Head of departments: To record the data for timetable generation.
 Faculties: To check the time schedule for different works.
 Trainers: To check the time schedule for different works.
 Students: To check for the classes for a specified time period.
 Trainees: To check for various training sessions for a specified time period.
 Developer: To maintain database.
Software Requirements Specification for Automated Timetable Generator Page 3

2.4 Operating Environment

Software Requirements:
 Windows 7 (Ultimate, Enterprise) or above.
 Mozilla Firefox or Google Chrome or any compatible browser.
 Visual Studio 2008 or above.
 XAMPP or any other web servers.
Hardware Requirements:
 Processor- Core2 duo or later.
 Memory- 2GB RAM or more.
 HDD- Minimum 5GB of space for installations.
 Network connectivity.

2.5 Design and Implementation Constraints

Items and issues that may limit the options available to the software developers are legal and ethical
constraints with regards to ATG and possible social and legal opposition software. Moreover, it will
require research in how to program and operate with several, parallel-running threads in the same
application. Constraints of the user-permissions system are specified for the database system. This
project shall implement a series of subsystems that shall contain details of persons associated and
personal records. Due to this, security features shall be of the highest concern when developing this
project. Such security features include high-security of data transfers, and encrypted accessibility, as
well as programming logging of function calls as well as parameters passed.
It is anticipated that all related governing directives both social and governmental regulations
will be adhered to. Due to the large nature of the project, keeping track of the source code between
the developer sub-teams will be difficult. The details of the persons related are issued by the
concerned organization and they will be checking the faculty/trainers and available resources details
and store it in its database. In case of retrieval of book much of human intervention can be eliminated
and some amount of the payment is deducted.

2.6 User Documentation

The project will come with a Help option, which will allow users to go through the manual of its
working. This manual will be updated with each new service pack. Other user documentation
includes one user manual for lowest level users, one technical document describing the functionality
of the sub-section in detail for use of technicians, one copy of documentation and link to current
source for future contributors.
Software Requirements Specification for Automated Timetable Generator Page 4

2.7 Assumptions and Dependencies

Assumptions:
 The ATG should generate accurate timetable with respect to all available and favorable
resources. So it is assumed that the generator will extract accurate data from the database
and provide results without any anomalies.
 Since the ATG is supposed to provide timetable without anomalies, it was assumed that it has
complete details of holidays beforehand and provides the timetable only on working days.

Dependencies:
 Our system uses database which stores the data of the faculties/trainers associated with
the organization and provides those data for timetable generation.
 Our system requires high specification hardware to provide faster outputs.
 It also considers various factors such as working days, holidays, availability of
faculties/trainers and availability of associated resources.

3. External Interface Requirements

3.1 User Interfaces

The software provides good graphical interface for the administrator to operate on the system,
performing the required task such as create, update, viewing the details of the database.
 Allows administrator to view and manage the details of different people involved.
 Allows the people involved to check the timetable.

3.2 Hardware Interfaces

 CPU- Core 2 duo or later.


 HDD- At least 5GB of space for installation of required software.
 Memory- 2GB or more.
 Working network connectivity.

3.3 Software Interfaces

 SQLITE database
 PHP
 HTML
 CSS
 JS
 MS Excel
Software Requirements Specification for Automated Timetable Generator Page 5

4. System Features

4.1 Storing faculties/trainers specialization details:

This feature will be storing all the details of the faculties or trainers associated with the 
organization in the database. Details such as personal details, work experience, 
specializations etc will be stored.

4.2 Keeping details of subjects/projects available to a branch/department:

This feature will be keeping the details of the subjects to be taught during a semester in a 
particular branch or the projects to be dealt with by a department. 

4.3 Mapping availability of resources:

This feature will help to map whether or not the resources required to proceed for a session 
are available or not. If not then provide feedback accordingly.

4.4 Retrieving information from database:

The process of extracting the information of all the resources such as availability of 
faculties, classrooms etc is the included in this feature.  

4.5 Generating faculty/trainer timetable:

The generation of timetable for any specific faculty/trainer is to be done here.

4.6 Generating student/trainee timetable:

The generation of timetable for a branch or department for the students or trainees 
associated is to be done here.

5. Other Nonfunctional Requirements

5.1 Performance Requirements

 Timetable must be generated every day.


 Timetable for faculties/trainers and students/trainees must be different.
 Timetable must be provided as soon as the user interacts with the system.
Software Requirements Specification for Automated Timetable Generator Page 6

5.2 Safety Requirements

 The faculty/trainer details provided must be accurate and verified.


 Holidays and working days must be checked.
 Availability of faculties/trainers must be checked.
 In case a faculty is not present then another faculty must be arranged keeping in mind that the
faculty has equivalent specialization and is not allotted any class during that time period.
 Multiple faculties should not be allotted the same rooms during a time period.
 Multiple faculties must not be allotted the same class.

5.3 Security Requirements

 Changes to the timetable or database can only be made by the administrator.


 Students/trainees and faculties/trainers can only view the timetable.

5.4 Software Quality Attributes

User Satisfaction: - The system is such that it stands up to the user expectations.

Response Time: - The response of all the operation is good. This has been made possible by careful
programming.

Error Handling: - Response to user errors and undesired situations has been taken care of to
ensure that the system operates without halting.

Safety and Robustness: - The system is able to avoid or tackle disastrous action. In other words, it
should be foul proof. The system safeguards against undesired events, without human intervention.

Portable: - The software should not be architecture specific. It should be easily


transferable to other platforms if needed.

User friendliness: - The system is easy to learn and understand. A native user can also use the system
effectively, without any difficulties.

5.5 Business Rules

The following rules should be followed:


 Only the admin can access and edit the database.
 Only the Head of Department and Admin is allowed to add data to the database.
 Other users can only check the timetable generated.
 Separate timetable should be generated for faculties and students.
 The timetable generator should be used within an organization.

6. Other Requirements
No other requirements.

Potrebbero piacerti anche