Tuesday, November 17, 2009

New Software Project: School Time Table Software for Indian Schools

Col SC Sood(Retd)
Introduction:

Writing Software for Managing School Time Table is a herculean task. Generally we need such software at high school level. I have been working on this project since 1991. Students pursuing Computer Science Engineering, Information Technology, MCA etc. generally search for a variety of projects. If you wish to take up a new project, here is a challenge before you. In case you pursue a carrier in the field of manager project you would get enough ideas from this project. It involves scheduling of various resources, especially scheduling teachers which is a form of employee scheduling. Scheduling of labs is another aspect. Thus, in a way, School Time Table Software is a scheduling software.

Time table management primarily involves two major aspects:-

  1. Using existing time table to generate adjustments for teachers on leave/duty.
  2. Generating (computing) new time table with the given resources.

Through this blog I would make efforts to pass on my experience to you all.

Let us proceed.

Parameters for Managing School Time Table
  • Essential parameters for computing and managing school time table are as under:-
  1. List of Classes.
  2. List of Subjects applicable to all classes.
  3. List of Teachers in the school.
  4. Class Assignments: Which Class is assigned to which teacher.
  5. Subjects Taught: Indicating capabilities of each teacher.
  6. Class wise Subject Allocation: What subjects are allocated to each teacher for each class.
  7. Teacher wise work load i.e. Total periods per week that can be allocated to each teacher.
  8. Subject Periods: Number of weekly periods for each subject.
  9. Number of working days per week.
  10. Number of periods per day.
  11. Number of periods on Saturday.
  12. List of Practical Subjects.
  13. Number of continuous periods required in continuation for each practical subject.
  14. Number of labs for each subject.
  15. Splitting of classes into groups for Medical, Non Medical etc.
  16. Number of recess periods - one or two.
  17. Position of recess period during the day (i.e. Recess after period number _?)
There would be many more considerations as we proceed ahead.

Before we start working on this project, it is essential to understand the essential phases in software development. These include:-
  1. Communication with the user to get user requirements. These requirements need to be gathered from the user in many sittings and dialogues. The requirements are compiled in the form of a document known as Software Requirement Specifications (SRS) document. SRS forms the basic document for developing any software project. After formalizing the same, a thorough analysis is carried out to decide whether the project is feasible. While reading this article, you may not have planned to undertake this project for a specific organization. Therefore, generic requirements from the schools need to be collected and included in the SRS.
  2. After preparing and analyzing SRS the next step is Planning. Software Project planning includes estimating the size of the software, time and resources required for completion of the project and finally the cost estimates. These are required to carry out negotiations with the user. After negotiations, the SRS document is to be signed by both the parties. If you are undertaking this project for learning purposes, the cost and effort estimation may take the form of your mental appreciation. However, this project is highly challenging and interesting.
  3. Having signed the agreement, the next step in software development starts. This is called modeling. At this stage we prepare a suitable model of the project. It is followed by a detailed design. When I started this project, a prototype was first prepared to get the general understanding of menus and options essential for this project. Ultimately, it took the form of spiral model with many iterations. Subsequently, I have been following the spiral model for other projects too.
  4. After preparing the design, construction begins. It is at this stage that actual coding starts. A suitable programming language is chosen and the coding starts. In many cases, the choice of programming language is decided at modeling stage. Initially, I started with Pascal and subsequently moved to Delphi. This provided me everything for compiling the project in the form of a .exe file which could be run in Windows environment with GUI (Graphics User Interface).
  • The final product is named as WinTTM7A (Time Table Manager Version 7 for Adjustments on Windows platform). This version is meant for generating Adjustment Classes for teachers on leave. The input is your existing school time table. Features of this version are listed below:-


WIN TTM 7A: TIME TABLE MANAGER SOFTWARE FOR WINDOWS


INTRODUCTION
  • Time Table Manager for Windows (Win TTM) 7A has been designed to assist the schools in managing their existing Time Table efficiently and elegantly with full flexibility and minimum effort. Basically Win TTM7A helps in storing your existing Timetable and uses it to generate Daily Adjustment Periods for teachers on leave on daily basis as well as to meet the instant requirements.

  • Data entry and operation of the package have been designed in such a manner that there is no requirement of computer experts to use the package. The package is menu driven with on line help and tutorial.

  • TTM comes to you after 14 years of research and trials and meets all your requirements for managing timetable.


FEATURES

  • Characteristic features of TTM7A are listed below:-

  • One time DATA ENTRY for storing your existing Time Table (two days' work). This will also indicate clashes if any.

  • ALLOCATE ADJUSTMENT PERIODS on daily basis or as and when required.

  • Attendance of teachers can be marked for Full Day/Half Day (First Half/ Second Half) to generate adjustment periods for half day.

  • Adjustment will ensure EQUITABLE WORK LOAD on the teachers for the day.

  • Specified TEACHERS can also be EXEMPTED from adjustments.

  • EXEMPTION of each teacher can be for selected periods as well as Classes.

  • Adjustment ensures INTERMITTENT FREE PERIOD after every 2/3/4 periods as specified by you.

  • Generates PRINTOUT of ADJUSTMENTS in a tabular form for teachers which can be circulated and also class-wise which can be displayed on notice board for information of students.

  • Groups. WinTTM caters for splitting of classes into separate groups for Medical/Non Medical/Commerce etc and displays the Time Table accordingly.

  • Combined Classes for Games/PT/Library etc. If a teacher is allocated to more than one class for the same period, the same will be shown in the list of Combined Classes below the Time Table and marked with a star in the Time Table.

  • Adjustment by Combining Classes. WinTTM is capable of generating adjustments by way of Combining Classes also. If no suitable teacher is available WinTTM automatically generates adjustments using this technique. For exclusive use of this method reduce the daily adjustment limit to zero for all teachers.

  • The complete process will require JUST TWO MINUTES daily.

    • Creates healthy environment ensuring SATISFACTION of all teachers.

    • List of FREE CLASSES and TEACHERS at any time.

    • Consolidated list of Free Teachers (Period-wise) for each day i.e. Monday to Saturday.

    • Printout of CLASS-WISE and TEACHER-WISE timetable is provided.

    • Printout of MASTER TIME TABLE is provided both Class-wise as well as Teacher-wise.


eCompetence

2252-A, Sector 47-C, Chandigarh, India.

Contact: 0172-2632752, 09216508708, 09216515715



We will proceed with more details step by step.