D. Y.
Patil Technical Campus,
Faculty of Engineering & Faculty of Management, Talsande
Department of Computer Science & Engineering
Course Name : Mini Projects
Class : F.Y.B.Tech Division: C Batch:C3
Team Members: 04
Roll No. Name of Student
387 Krushna Asaram Yadav
384 Omkar Sakharam Walsange
381 Abhijeet Uttam Waghchaure
382 Vedika Vijay Waghmare
Project Guide Name: Prof. A.D.Thorat Sir
Synopsis Report
Project Title: Bus Reservation System
Introduction:
This Project aims to create a bus Reservation System that helps users to book bus tickets online.
It maintains records of available buses, booked seats, and passenger information. The system simplifies
the process of booking and error-free.
Objectives:
To automate the manual bus ticket booking process.
To maintain up-to-date records of booking and cancellations.
To enhance the user experience through an easy-to-use interface.
To reduce human error and improve a service management.
Scopes:
The project is useful for travel agencies and passengers to manage bookings.
It covers bus scheduling, seat allocation, fare calculation, cancellation, and ticket generation.
Problem Statement:
Currently, the ticket booking process is either manual or lacks a centralized digital solution.
This leads to inefficiencies, human error, and difficulties in managing data. Our system aims to provide
An automated and accurate way of handling reservations.
Design Solution:
The system allows users to reserve bus tickets from a list of available buses. Each bus includes details such as bus
number, name, source, destination, and total seats. The system provides a menu with options to view buses, book a
ticket, cancel a booking, and view all bookings. Bookings are stored in a file and each transaction generates or updates
booking records. Invalid inputs such as incorrect ticket numbers or invalid seat requests are handled gracefully. The
system runs continuously until the user chooses to exit.
1. Initial Setup:
The system starts with a set of predefined bus routes and their details:
Bus Number
Bus Name
Source & Destination
Total Seats
2. User Interaction:
A menu-driven interface allows users to:
View available buses
Book a ticket
Cancel an existing ticket
View all booked tickets
Exit the program
3. Bus Reservation Functionalities:
View Buses:
Displays a static list of buses with route information and seating capacity.
Ticket Booking:
Prompts user to enter:
Passenger Name
Bus Number
Number of Seats to Book
Generates a unique ticket number for each booking.
Saves the booking to a file (bookings.dat)
Ticket Cancellation:
Prompts the user to enter a ticket number.
Removes the booking from the data file if found
View All Bookings:
Displays a list of all current bookings including:
Ticket Number
Passenger Name
Bus Number
Number of Seats Booked
Exit:
Terminates the program safely.
4. Error Handling:
Handles invalid input conditions:
Booking with non-existent bus number
Canceling a ticket with an incorrect ticket number
Booking zero or negative number of seatsFailure to open files
---
5. Looping:
After completing each transaction (view, book, cancel, or view bookings), the system returns to the main
menu.
Users can perform multiple actions in a session until they explicitly choose to exit.
Algorithm:
Step 1: Start
Display a welcome message (optional: read from welcome.txt).
Introduce a delay to simulate loading.
Clear the screen.
---
Step 2: Display Main Menu
Show the following options:
View Buses
Book Ticket
Cancel Ticket
View Bookings
Exit
Step 3: Perform User-Selected Operation
A. View Buses
1. Display the list of available buses with details:
Bus No
Bus Name
Source
Destination
Total Seats
B. Book Ticket
1. Prompt the user to enter:
Passenger Name
Bus Number
Number of Seats to Book
2. Validate bus number:
If invalid, display error and return to menu.
3. Generate a unique ticket number.
4. Store booking details in bookings.dat file:
Ticket No
Passenger Name
Bus No
Seats Booked
5. Display booking confirmation with Ticket Number.
C. Cancel Ticket
1. Prompt the user to enter the Ticket Number to cancel.
2. Search for the ticket in bookings.dat.
3. If found:
Remove it by copying other records to a temporary file.
Confirm cancellation.
4. If not found, display an error message.
D. View All Bookings
1. Read and display all bookings from bookings.dat:
Ticket No
Passenger Name
Bus No
Seats Booked
E. Exit
Display a thank-you message.
Terminate the program.
Step 4: Error Handling
1.Handle
Invalid menu option
Invalid bus number
Negative or zero seat
Invalid ticket number
Step 5: Looping
1. After completing an operation, return to the main menu.
2. Continue until user selects “Exit.”
f
Roles and Responsibilities:
Roll No. Name of Student Roles & Responsibilities
387 Krushna Asaram Yadav Problem understand
384 Omkar Sakharam Walsange Design solution
381 Abhijeet Uttam Waghchaure Prepare algorithm
382 Vedika Vijay Waghmare Development & Documentation
[Responsibilities: Problem Understand, Design Solution, Prepare algorithm, Development & Documentation]
Project Completion Plan:
1. Team Formation
Form a team of 4 Students
Member 1: Find the problem & Understanding the Problem
Member 2: Designing the Solution of Problem
Member 3: Preparing Algorithm of given problem
Member 4: Explain Development & Documentation of given project
2. Project Finalization Synopsis Report
Finalize the topic: Bus Reservation System
Synopsis including:
Objective: To create a simple bus ticket reservation system.
Tools: Dev c/c++.
Modules: Booking, Cancellation, View, Exist
Submit synopsis for review.
3. Synopsis Presentation
Prepare Short Oral Explanation
Explain the problem statement scope, and how the system working.
4. Project Development
Display main menu
Take user input
Store bus details
5. Project Report
Show working System to Teacher
Explaining the given project
Answer questions
Date:
Place:
Team Leader:
Roll No. Name of Student Signature
381 Abhijeet Uttam Waghchaure
Team Members:
Roll No. Name of Student Signature
382 Vedika Vijay Waghmare
387 Krushna Asaram Yadav
384 Omkar Sakharam Walsange
Guide Sign. HOD Sign.