Executive Summary

    


    The purpose of the project is to find an optimal solution to the time tabling problem which is one of the highly constrained N-P hard problems. The need of this sort of a time tabling software arised as manually designing a time table takes too much time and effort and if overlap occurs among the timetable, the timetable is redesigned using hit and error methods which has very high time cost. So, in this project we are trying to develop such a software which will automatically and will decrease the effort and time required for the generation of a time table in accordance to the given input. The expected main input is about teachers, classes and subject’s data along with the maximum workload of a teacher in a week to generate a valid time-table. The main constraints that this software should satisfy are that a teacher should not have a lecture in more than one class at the same time slot and a class should not have more than one lecture in a given time slot. The solution which we will get from this project should have to satisfy the above-mentioned constraints.

                The platform we used to develop this software is web application. The programming language used to implement this software is JavaScript. In the development of the UI, React.js is used while backend is implemented using node.js. To make it a multi user app login facility is provided and to store the data corresponding to the user, mongodb database is used locally. Project is currently run on local severs but we have planned it to deploy it using Heroku and we will also change the database from local to mongodb atlas.

This projected is completed in 4 steps.


·       Step1

We have designed our algorithm for this problem by analyzing the problem deeply and designed the UI for the project.

·       Step2

In the second step our project we worked to improve the efficiency of our algorithm and calculated the time complexity of it. We also proved the correctness of our algorithm.

·       Step3

In this phase we implemented the algorithm on the backend and get the desired results by providing our dummy inputs.

·       Step4

Backend was implemented and Rest API’s were developed to interact with database and frontend

·       Step5

Frontend was developed and iteration of backend with our UI is done in this step.


  • FlowChart

 


  • Algorithm 
         Link
 

Comments

Popular posts from this blog

Final Work

Teachers