Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 9

The University of Lahore – Final Year Project Proposal

THE UNIVERSITY OF LAHORE


Department of Computer Science & IT
Faculty of Information Technology

Day Month Year


Final Year Project Proposal
DATE – –

PROJECT TITLE:

KEY WORDS:

DOMAIN OF THE
PROJECT:

SUPERVISOR’S
NAME:

STUDENT INFORMATION
Write down the detail of all group members in BLOCK LETTERS ONLY.
Sr. Student ID Name Email Mobile
1.

2.

3.

PROBLEM STATEMENT
Normally timetable generation done manually. As we know all institutions\organizations have it’s
own timetable, managing and maintaining these will not be difficult. Considering workload with
this scheduling will make it more complex. As mentioned, 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 time consuming process.

Page 1
The University of Lahore – Final Year Project Proposal

EXECUTIVE SUMMARY

The Automatic Timetable Generator project, employing Django and SQLite3, addresses the
inefficiencies and errors in manual academic scheduling. This web-based solution offers a user-
friendly interface for administrators, automating timetable creation and optimizing resource
allocation. By considering constraints and faculty preferences, the system aims to enhance overall
efficiency, providing a scalable and adaptable solution for educational institutions. The project's
core objectives are to save time, reduce errors, and improve the academic experience through
streamlined scheduling processes.

INTRODUCTION

The Automatic Timetable Generator is a Computer Language based soft-ware used to generate
timetable automatically. Currently timetable is managed manually. It will help to manage all the
periods automatically and also will be helpful for faculty to get timetable in their phone by using
application. It will also manage timetable when any teacher is absent, late coming or early going.
Maximum and minimum workload for a Faculty for a day, week and month will be specified for
the efficient generation of timetable. By using this software users can apply for leave by providing
leave required date, reason and also with substitute faculty .When selecting a faculty as substitute
it allows to view timetable of that faculty for ensure that the faculty is free at that particular period.
Substitute can approve or reject request. Principal can also view the request and send by faculty
and can also view substitute response. Principal can approve reject request. It is a comprehensive
timetable management solutions for colleges which help to overcome the challenges in manually
setting the timetable. By using this software it will be very easy for faculty to get timetable in their
phones.

COMPETITORS/COMPETITIVE ANALYSIS

1. Manual Timetabling Systems:


 Strengths: Customization, familiarity.
 Weaknesses: Time-consuming, prone to errors.
2. Commercial Timetable Software:
 Strengths: Automation, advanced features.
 Weaknesses: Costly, may lack customization.
3. Open-Source Timetabling Solutions:
 Strengths: Cost-effective, community support.
 Weaknesses: Complexity, may lack user-friendly interfaces.
4. Custom In-House Solutions:
 Strengths: Tailored to specific needs.
 Weaknesses: Resource-intensive, may lack scalability.
5. Online Timetable Generators:
 Strengths: Accessibility, ease of use.

Page 2
The University of Lahore – Final Year Project Proposal

 Weaknesses: Limited customization, potential data security concerns.

The proposed Automatic Timetable Generator using Django and SQLite3 aims to differentiate
itself by offering a balance between customization, automation, and user-friendliness, providing
an optimized solution for educational institutions seeking efficient and tailored timetable
management.

OBJECTIVES

1. Automation: Develop an automated Timetable Generator using Django and SQLite3 to


eliminate manual scheduling, reducing time and effort in academic timetable creation.
2. User-Friendly Interface: Create an intuitive web-based interface for administrators,
enabling easy input of scheduling constraints, faculty preferences, and other relevant data.
3. Optimized Timetable Generation: Implement algorithms to optimize timetable creation,
considering factors such as classroom capacities, faculty availability, and subject-specific
requirements.
4. Faculty Satisfaction: Incorporate faculty preferences to enhance overall satisfaction,
productivity, and engagement in the scheduling process.
5. Scalability and Adaptability: Design the system to be scalable, accommodating
institutions of varying sizes, and adaptable to dynamic changes in schedules throughout the
academic term.
6. Efficiency Improvement: Streamline the timetable management process to save time and
resources, allowing educational institutions to focus on providing an enhanced academic
experience.
7. Error Reduction: Minimize scheduling errors and conflicts by automating the generation
process, improving overall accuracy and reliability.
8. Reporting and Analytics: Implement reporting features to assess the efficiency of
generated timetables, enabling data-driven decision-making for future improvements.
9. User Training and Support: Provide user training and support resources to ensure
effective utilization of the Automatic Timetable Generator, enhancing the overall user
experience.
10. Deployment and Feedback: Deploy the system and gather user feedback to continuously
improve and refine the Timetable Generator based on real-world usage and requirements.

MOTIVATION
Automatic Timetable Generator project lies in addressing the inherent challenges and
inefficiencies of manual academic timetable creation in educational institutions. The significance
of this project is underscored by several key factors:
1. Time Savings: Manual timetabling is a labor-intensive process that consumes valuable
time and resources. The motivation is to streamline this task, enabling institutions to
allocate resources more efficiently and focus on core academic activities.
2. Error Reduction: Human errors in manual scheduling can lead to class clashes, resource

Page 3
The University of Lahore – Final Year Project Proposal

mismanagement, and dissatisfaction among stakeholders. Automating the process aims to


minimize errors, ensuring a more accurate and reliable timetable.
3. Enhanced Faculty Satisfaction: By incorporating faculty preferences into the scheduling
algorithm, the project aims to improve overall satisfaction among teaching staff. This, in
turn, contributes to a positive academic environment and potentially higher faculty
engagement.
4. Adaptability to Change: The dynamic nature of academic schedules requires a system
that can quickly adapt to changes, cancellations, and additions. The motivation is to
provide a flexible solution that accommodates unforeseen events seamlessly.
5. Efficient Resource Allocation: Academic institutions often face challenges in optimizing
the use of classrooms, faculty expertise, and time slots. The Automatic Timetable
Generator seeks to address these challenges by automating resource allocation for
maximum efficiency.
6. Technological Advancement: Leveraging Django and SQLite3 technologies
demonstrates a commitment to modern and scalable solutions. The project's motivation is
to harness the power of these technologies to provide an innovative and sustainable
solution to a common problem.
7. Improved Academic Experience: Ultimately, the motivation is to contribute to an
improved academic experience for both students and faculty. A well-organized timetable
contributes to a smoother learning process and a positive institutional atmosphere.

FEATURES OF PROJECT
.
1. User-Friendly Web Interface:
 Functionality: Create an intuitive interface for administrators to input scheduling
constraints, faculty preferences, and relevant data.
 Details: Design a responsive web interface using Django templates, allowing easy
navigation and data input for scheduling parameters.
2. Automated Timetable Generation:
 Functionality: Implement algorithms to automate the creation of academic
timetables based on input constraints.
 Details: Develop a robust algorithm that considers classroom capacities, faculty
availability, and subject-specific requirements to generate optimized timetables.
3. Constraint Handling:
 Functionality: Manage various constraints such as classroom capacities, faculty
availability, and subject-specific requirements to ensure a feasible and efficient
timetable.
 Details: Implement a constraint-handling mechanism to address conflicting
constraints and provide viable scheduling solutions.
4. Faculty Preferences Integration:
 Functionality: Incorporate faculty preferences into the timetable generation
process to enhance satisfaction and productivity.

Page 4
The University of Lahore – Final Year Project Proposal

Details: Allow administrators to input faculty preferences, such as preferred time



slots and non-teaching hours, ensuring personalized scheduling considerations.
5. Scalability and Adaptability:
 Functionality: Design the system to accommodate changes in schedules, additions,
and cancellations efficiently.
 Details: Develop a scalable architecture that can handle varying institutional sizes
and easily adapt to dynamic scheduling changes.
6. Reporting and Analytics:
 Functionality: Generate reports for administrators to assess the efficiency of the
generated timetables and make informed decisions for future improvements.
 Details: Provide analytics tools and reporting features to track resource utilization,
identify patterns, and optimize scheduling based on historical data.
7. User Training and Support:
 Functionality: Offer user training resources and support to ensure effective
utilization of the Automatic Timetable Generator.
 Details: Create documentation, tutorials, and a support system to assist users in
understanding and maximizing the features of the system.
8. Version Control with Git:
 Functionality: Implement version control using Git for efficient collaboration,
tracking changes, and ensuring code integrity.
 Details: Utilize Git repositories to manage code versions, enabling collaboration
among developers and maintaining a structured development workflow.
9. Responsive Design:
 Functionality: Ensure the web interface is responsive and accessible across
different devices.
 Details: Implement responsive design principles to enable seamless access and
functionality on various devices, including desktops, tablets, and smartphones.
10. Dynamic Notifications:
 Functionality: Provide dynamic notifications to alert administrators of scheduling
conflicts, changes, or important updates.
 Details: Implement a notification system that keeps users informed about relevant
changes and ensures timely responses to scheduling issues.

ARCHITECTURAL DESIGN

1. User Interface (UI):


 Description: The UI component provides a web-based interface for administrators
to input scheduling constraints, faculty preferences, and relevant data.
 Technology: HTML, CSS, JavaScript, Django Templates.
2. Web Server (Django):
 Description: The web server handles user requests, interacts with the database, and
manages the application's logic and workflow.
 Technology: Django Web Framework (Python).

Page 5
The University of Lahore – Final Year Project Proposal

3. Database (SQLite3):
 Description: SQLite3 serves as the backend database for storing scheduling data,
constraints, faculty preferences, and generated timetables.
 Technology: SQLite3.
4. Scheduling Algorithm:
 Description: The scheduling algorithm processes input data, applies constraints,
and generates optimized timetables.
 Technology: Custom algorithm integrated with the Django application.
5. Version Control (Git):
 Description: Git is used for version control, enabling collaborative development,
tracking changes, and maintaining code integrity.
 Technology: Git.

IMPLEMENTATION TOOLS AND TECHNIQUES

1. Frontend Development:
 Tools: HTML, CSS, JavaScript.
 Methodology: Employ a responsive design approach using HTML for structure,
CSS for styling, and JavaScript for enhancing user interactivity. Ensure a user-
friendly and visually appealing interface.
2. Backend Development:
 Tools: Django Web Framework (Python).
 Methodology: Utilize Django's MVC (Model-View-Controller) architecture.
Define models to represent database tables, views for handling user requests, and
templates for rendering dynamic content. Leverage Python for server-side logic.
3. Database Management:
 Tools: SQLite3.
 Methodology: Use SQLite3 as the backend database for its lightweight nature and
ease of integration with Django. Employ Django's ORM to define models, create
database tables, and perform database operations.
4. Algorithm Development:
 Tools: Python.
 Methodology: Develop a custom scheduling algorithm in Python that considers
constraints, faculty preferences, and dynamic scheduling requirements. Integrate
the algorithm seamlessly with the Django application for automated timetable
generation.
5. Version Control:
 Tools: Git.
 Methodology: Implement version control using Git to track changes, collaborate
among developers, and manage code versions effectively. Host the project
repository on a platform like GitHub for centralized collaboration.
6. Responsive Design:
 Tools: Bootstrap or other responsive design frameworks.

Page 6
The University of Lahore – Final Year Project Proposal

Methodology: Implement a responsive design to ensure the web interface is


accessible on various devices. Utilize Bootstrap or similar frameworks for grid
systems and components that adapt to different screen sizes.
7. Testing:
 Tools: Django Test Framework, Selenium.
 Methodology: Write unit tests using Django's Test Framework to validate
individual components. Conduct end-to-end testing with Selenium to ensure the
seamless functioning of the entire system. Adopt test-driven development (TDD)
principles.
8. Documentation:
 Tools: Markdown, Sphinx.
 Methodology: Document the codebase using Markdown for in-line documentation.
Generate comprehensive documentation using Sphinx to cover project structure,
API references, and installation instructions. Provide user guides for administrators.
9. Deployment:
 Tools: Heroku, AWS, or similar cloud platforms.
 Methodology: Deploy the Django application to a cloud platform for accessibility.
Set up continuous integration and continuous deployment (CI/CD) pipelines for
automated deployment. Configure environment variables for security.
10. User Training and Support:
 Tools: Online documentation platforms, communication tools.
 Methodology: Develop clear and accessible documentation for users, including
administrators. Utilize communication tools for conducting user training sessions,
webinars, and providing ongoing support.
11. Security Measures:
 Tools: Django Security Middleware, SSL/TLS.
 Methodology: Implement Django's built-in security features, including security
middleware and measures against common vulnerabilities. Enforce the use of
HTTPS (SSL/TLS) to secure data transmission.

PROJECT PLAN

1. Requirements Gathering (Month 1-2):


 Define user requirements and constraints.
2. Design and Architecture (Month 3-4):
 Create the system architecture and design user interfaces.
3. Development (Month 5-8):
 Implement frontend and backend components.
4. Testing and Debugging (Month 9-10):
 Conduct thorough testing and resolve any issues.
5. Deployment and Evaluation (Month 11-12):
 Deploy the system and collect user feedback.

Page 7
The University of Lahore – Final Year Project Proposal

REFERENCES

[1] Django Documentation: https://docs.djangoproject.com/


[2] SQLite Documentation: https://www.sqlite.org/docs.html
[3] Bellmore, C. (2009). Solving the School Timetabling Problem with a Genetic Algorithm.
Proceedings of the 11th Annual Conference on Genetic and Evolutionary Computation.

Supervisor’s Signature: ………………………

Page 8
The University of Lahore – Final Year Project Proposal

FYP Proposal Evaluation


(To be filled by students)

PROJECT TITLE:

STUDENT INFORMATION
Write down the detail of all group members in BLOCK LETTERS ONLY.
Sr. Student ID Name Email Mobile
1.

2.

3.

FOR EVALUATOR’S ONLY


Remarks:  Accepted  Accepted with Minor changes  Rejected

Suggested Improvements (if any):

____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________________
____________________________________________________________________________

Reviewed By:

Name: _______________________________________________________________________

Signature: _______________________________________________________________________
Day Month Year

DATE – – Page 9

You might also like