Project 2
Project 2
ON
Date:
YASHIKA
ACKNOWLEDGEMENT
I would like to acknowledge all those who have given me moral support and
helped in making the project a success.
I wish to express my gratitude to the head of the department Dr. Pooja Nagpal
(HOD,MCA) who guided and helped me. I would also like to express my
gratitude to all the staff members of my center for not only providing me the
opportunity to work with them on this project but also for their support and
encouragement throughout the process.
I also express my sincere thanks to Miss. Bhavika Anand,,,Asssistant Professor
of MCA, for the valuable guidance and support for the completion of this
project.
And finally, I would like to offer many thanks to all my colleagues for their
valuable suggestions and constructive feedback. I also thank all my friends and
all those who gave their valuable inputs and helped me to successfully
complete this major project.
INDEX
Table of Contents
INTRODUCTION......................................................................................................................
Problem Statement.......................................................................................................12
Need For The System...................................................................................................14
Scope of the system......................................................................................................17
OBJECTIVES...........................................................................Error! Bookmark not defined.
Functionalities of The System:.....................................................................................23
REQUIREMENT SPECIFICATION.......................................Error! Bookmark not defined.
A. Hardware Requirements..........................................................................................27
B. Software Requirements...........................................................................................29
REQUIREMENT ANALYSIS.................................................Error! Bookmark not defined.
1. Types of Requirements.............................................................................................33
2. Software Requirements Specification (SRS)...........................................................34
3. Process Adopted For This Project............................................................................34
SYSTEM ANALYSIS..............................................................................................................
1. Study Of Existing System........................................................................................39
2. Proposed System......................................................................................................40
3. Feasibility Study.......................................................................................................41
Conclusion Of System Analysis...................................................................................44
SYSTEM DESIGN..................................................................................................................
[Link] Of System Design...................................................................................48
2. Design Methodology................................................................................................49
3. Architecture Of The System.....................................................................................49
Input Design.................................................................................................................53
Output Design..............................................................................................................53
E-R Diagram................................................................................................................54
Data Flow Diagram......................................................................................................56
Schema.........................................................................................................................58
SYSTEM IMPLEMENTATION..............................................................................................
Implementation.............................................................Error! Bookmark not defined.
Implementation Environment.......................................................................................60
Main Modules Implemented........................................................................................60
SYSTEM TESTING.................................................................................................................
Unit Testing..................................................................................................................69
Integration Testing........................................................................................................70
System Testing.............................................................................................................70
Test Cases.....................................................................................................................71
SNAPSHOTS...........................................................................................................................
FUTURE SCOPE.....................................................................................................................
CONCLUSION........................................................................................................................
MERITS...................................................................................................................................
BIBLIOGRAPHY....................................................................................................................
REFERENCES.........................................................................................................................
SYNOPSIS
SYNOPSIS
The main aim of this Bike Rental Portal project is to make the bike rental process
easier and more convenient for customers. This system provides an online platform for
booking bikes, making information dissemination much easier. Nowadays, renting
bikes online is a very trending concept as people prefer to hire bikes for their
convenience. This project offers plenty of options to add, update, and remove bikes.
In this system, we are also providing a tracking feature which will ease the work for
both the admin and the riders. The admin can interact with users anytime and assist
them. This system can be helpful to trace the time and location in case of any accident
or theft of bikes. It will also notify if any crash or similar incident happens.
The purpose of this project is to provide hassle-free booking of rental bikes for
personal or professional use. Seeing the growing trend in the market of using rented
bikes, this real-time project was developed to solve existing problems.
Similar websites/portals are present in the market, but this project includes more
functionality and works on two main modules:
Admin:
Admin is the person who controls, monitors and keeps the whole flow of the system
running smoothly.
INTRODUCTION:
Bike Rental Portal is a web-based application designed for people who want to book
bikes online for their personal use. In today's fast-moving world, people prefer online
services that save time and effort. This system provides an easy and convenient way for
customers to search for available bikes and book them according to their requirements.
The portal helps users to avoid long waiting times and manual paperwork involved in
traditional bike rental systems.
The main aim of this project is to provide a simple and user-friendly platform for
customers as well as administrators. Users can register themselves in the system, login
using their credentials, view available bikes, and book bikes online. This system makes
the booking process faster and more reliable. It also ensures that users receive accurate
information about bike availability, pricing, and booking details.
This project also provides full control to the admin. The admin is responsible for
managing the entire system and performing various operations. Admin can add new
bikes, update existing bike details, remove unavailable bikes, and manage customer
bookings. The admin has the authority to confirm or cancel bookings according to
availability. This feature helps to maintain proper records and improves the efficiency
of the system.
In this project, all bike information is updated in real time so that users always get
correct and updated details. The system supports multiple users and allows different
operations to be performed at the same time. Various modules are included in the
system to improve functionality and provide a better user experience. The user
interface is designed in a simple and interactive manner so that even new users can
operate the system easily.
The Bike Rental Portal also helps in reducing manual errors and improves overall
management of rental services. It saves time for both customers and administrators. At
present, the system supports basic booking functionality and one payment method. In
future enhancements, additional features such as customer support chat, multiple
payment options, and improved security features can be added to make the system
more efficient and reliable. In the modern era of digital technology, online services
have become an essential part of daily life. People prefer using web-based platforms to
perform various activities such as shopping, booking tickets, and renting vehicles. The
rapid growth of internet usage and smartphone technology has made it possible for
businesses to provide services online, allowing customers to access them from
anywhere at any time. The Bike Rental Portal is developed by keeping these
technological advancements in mind. It provides an efficient solution for customers
who require bikes for short-term or long-term use without going through complicated
manual procedures.
Traditionally, bike rental services were handled manually. Customers had to visit rental
shops physically, check available bikes, fill out forms, and wait for confirmation. This
process consumed a lot of time and often led to confusion due to improper record
maintenance. Manual systems were also more prone to human errors such as incorrect
booking entries, misplaced records, and difficulty in tracking customer details. The
introduction of an automated Bike Rental Portal eliminates these challenges by
providing a centralized system where all data is stored and managed electronically.
The Bike Rental Portal provides a systematic way to manage rental operations
efficiently. It enables customers to browse through a list of available bikes along with
detailed information such as model name, rental price, availability status, and
specifications. This transparency helps customers make better decisions while selecting
bikes according to their needs and budget. Additionally, customers can compare
different bikes before making a booking, which enhances the overall user experience
and satisfaction.
Another important advantage of this system is its ability to maintain accurate records of
bookings and transactions. The system automatically stores customer information,
booking details, and payment records in the database. This makes it easier for
administrators to retrieve information whenever required. The availability of digital
records also helps in generating reports related to bookings, revenue, and customer
activity. These reports support decision-making and help improve the overall
performance of the business.
The system is designed with a modular approach, where different modules perform
specific functions. These modules include user registration, login authentication, bike
management, booking management, and payment processing. Each module is
interconnected and works together to ensure smooth functioning of the system. The
modular structure makes the system more organized and easier to maintain. It also
allows developers to add new features in the future without affecting existing
functionalities.
Security is another important aspect considered in the development of the Bike Rental
Portal. User authentication mechanisms such as username and password verification
help protect sensitive information. Only authorized users are allowed to access their
accounts and perform operations. Similarly, administrative privileges are restricted to
the admin panel to prevent unauthorized access. This ensures the safety of data and
improves user trust in the system.
The Bike Rental Portal also supports scalability, which means it can handle an
increasing number of users and transactions as the business grows. As more customers
start using the system, additional features such as advanced payment gateways, GPS
tracking of bikes, and customer feedback systems can be integrated. This flexibility
makes the system suitable for both small-scale and large-scale rental businesses.
Furthermore, the graphical user interface of the portal is designed to be simple and
user-friendly. Special attention has been given to layout design, navigation menus, and
display of information. Buttons, icons, and forms are placed in an organized manner so
that users can easily understand the workflow. A user-friendly interface reduces the
learning curve and allows users to perform tasks quickly without requiring technical
knowledge.
The Bike Rental Portal also contributes to environmental sustainability by reducing the
use of paper-based records. Since all transactions and booking details are stored
electronically, there is less dependency on printed forms and physical documentation.
This not only saves paper but also reduces storage requirements and operational costs.
Digital systems promote eco-friendly practices and support the concept of paperless
offices.
In addition, the system enhances communication between customers and
administrators. Notifications regarding booking confirmations, cancellations, or
updates can be provided through the portal interface. This ensures that customers
remain informed about their booking status at all times. Effective communication
improves customer satisfaction and builds trust between service providers and users.
Overall, the Bike Rental Portal represents a modern solution to traditional rental
challenges. By combining automation, data management, and user-friendly design, the
system improves operational efficiency and enhances customer convenience. The
adoption of such systems reflects the growing importance of technology in simplifying
business operations and delivering high-quality services to customers.
Problem Statement
In the traditional bike rental system, customers have to physically visit the
rental shop to check bike availability. This process is time-consuming and
inconvenient. Shop owners maintain all records manually in registers, which
leads to errors in booking, calculation mistakes, and difficulty in managing
large amounts of data. There is no proper system to track which bikes are
rented, which are available, and what are the return dates. Customers also
face problems like lack of transparency in pricing, no advance booking
option, and waiting in long queues during peak seasons
The manual system also makes it difficult for the admin to generate reports,
analyze business performance, and maintain customer history. Due to these
limitations, there is a strong need for an automated web-based system. Another
major problem in the traditional bike rental system is the lack of proper
communication between customers and rental shop owners. Customers often
have to make multiple visits or phone calls to confirm bike availability.
Sometimes, the information provided by staff may not be accurate due to
improper record maintenance. This leads to confusion and dissatisfaction
among customers. In many cases, customers arrive at the shop expecting a
particular bike, only to find that it has already been rented to someone else.
Such situations reduce customer trust and affect the reputation of the rental
business.
Manual record keeping also creates difficulties in maintaining customer details.
Rental shops usually store customer information such as name, address, phone
number, and rental duration in physical registers. Over time, these registers
become bulky and difficult to manage. Searching for old records becomes a
time-consuming task and increases the chances of losing important data. In
case of emergencies or disputes, retrieving past booking details becomes
extremely challenging. The absence of digital records limits the ability to
maintain accurate customer history and track repeated customers.
Another limitation of the traditional system is the absence of advance booking
facilities. Customers who wish to reserve bikes for future use are unable to do
so easily. They have to depend on availability at the time of visit, which creates
uncertainty. This problem becomes more serious during weekends, holidays,
and festive seasons when the demand for rental bikes is very high. Without an
online booking facility, customers are forced to wait in long queues, which
wastes valuable time and reduces convenience.
Pricing transparency is also a common issue in manual rental systems.
Customers are sometimes unaware of the exact rental charges, security
deposits, or additional fees associated with late returns. This lack of clarity
leads to misunderstandings between customers and shop owners. In addition,
manual calculations performed by staff may result in billing errors. Incorrect
calculations can cause financial losses for both customers and rental
businesses. An automated system with predefined pricing rules can eliminate
such issues and ensure accurate billing.
The traditional bike rental system also lacks effective monitoring of bike usage
and return schedules. Without automated reminders, customers may forget to
return bikes on time. This results in delayed returns and affects the availability
of bikes for other customers. Shop owners also face difficulties in tracking
overdue rentals and calculating penalties. Manual tracking methods are
inefficient and increase the workload of administrators.
Another problem associated with manual systems is limited business
scalability. As the number of customers and bikes increases, maintaining
records manually becomes more complicated. Managing large volumes of data
without digital tools leads to confusion, duplication of records, and reduced
efficiency. This restricts the growth of the business and prevents rental services
from expanding to new locations or handling higher customer demand.
Security and data privacy are also major concerns in manual systems. Physical
registers containing customer information can be easily lost, damaged, or
accessed by unauthorized individuals. This exposes sensitive data to potential
misuse. In contrast, an automated web-based system can include security
features such as login authentication, password protection, and role-based
access control. These features help safeguard confidential information and
maintain data integrity.
Furthermore, manual systems make it difficult to analyze business
performance. Rental shop owners often require reports related to daily
bookings, monthly revenue, and customer preferences. Preparing such reports
manually requires significant effort and time. Due to lack of proper analysis
tools, it becomes difficult to identify trends and make informed business
decisions. An automated system can generate reports instantly, allowing
administrators to evaluate performance and plan future strategies effectively.
Considering all these challenges, it becomes evident that the traditional bike
rental system is inefficient and outdated. The absence of automation leads to
delays, errors, and reduced customer satisfaction. Therefore, there is a strong
need to develop an automated Bike Rental Portal that simplifies booking
operations, improves data management, and enhances the overall efficiency of
rental services. The proposed system aims to address these problems by
providing a reliable, transparent, and user-friendly platform for both customers
and administrators.
With the rapid growth of internet and smartphone usage, people prefer online
services for all their needs. The bike rental industry also needs digital
transformation to meet customer expectations. An online Bike Rental Portal
will solve all the problems of the manual system.
The scope of the Bike Rental Portal defines the boundaries and capabilities
of the proposed system.
The main objective of the Bike Rental Portal project is to develop an online system that
makes the bike rental process easy and convenient for customers. This system helps
users to book bikes quickly and allows the admin to manage bike rental services
efficiently.
The objective of the Bike Rental Portal project is not only to develop an online booking
system but also to create an efficient and reliable platform that improves the overall rental
experience. The system aims to simplify the process of renting bikes and provide convenience
to both customers and administrators. By introducing automation into the rental process, the
system reduces the time and effort required to perform manual tasks and ensures smooth
functioning of operations.
One of the major objectives of this system is to develop a user-friendly online platform that
allows customers to book bikes easily without visiting rental shops physically. The system
provides a simple interface through which users can browse available bikes, select the desired
model, and complete the booking process within a few minutes. This objective focuses on
improving accessibility and ensuring that customers can use the service without facing
technical difficulties.
Another important objective of the Bike Rental Portal is to provide fast and reliable booking
services. The system is designed to process booking requests instantly and provide
confirmation without delay. This ensures that customers receive immediate feedback
regarding their bookings. Fast processing improves customer satisfaction and encourages
users to depend on the system for their rental needs.
Reducing manual paperwork is also one of the key objectives of this project. In traditional
rental systems, administrators are required to maintain physical registers for recording
customer and booking details. This method consumes time and increases the chances of
human errors. By implementing an automated system, all records are stored digitally, which
eliminates the need for manual documentation and improves accuracy in maintaining records.
Maintaining proper records of customers and bikes is another major objective of the system.
The Bike Rental Portal stores information related to customer registration, booking history,
and bike details in a structured database. This organized storage system makes it easier to
retrieve data whenever required. Accurate record maintenance supports better decision-
making and improves administrative efficiency.
Providing real-time information about bike availability is also an important objective of this
project. The system ensures that customers can view updated details of available bikes at any
time. This feature prevents double booking and reduces confusion regarding availability.
Real-time updates help customers plan their trips more effectively and avoid unnecessary
delays.
Another objective of the Bike Rental Portal is to improve the efficiency and accuracy of
rental services. Automated calculations reduce the chances of billing errors and ensure that
rental charges are calculated correctly. The system also minimizes the workload of
administrators by automating routine tasks such as updating bike status and maintaining
booking records. Improved efficiency leads to better management and faster service delivery.
Security is another major objective of the proposed system. The system includes secure login
functionality that allows only authorized users to access the portal. Each user is provided with
a unique username and password to protect personal information. Administrative functions
are restricted to authorized personnel to prevent unauthorized changes in the system. This
objective ensures data safety and maintains confidentiality.
The system also aims to improve communication between customers and administrators.
Through the online portal, customers can receive updates related to booking confirmation,
cancellation, or modification. This objective helps in maintaining transparency and improving
trust between users and service providers.
Another important objective of the Bike Rental Portal is to support scalability and future
growth. The system is designed in such a way that additional features can be added easily in
the future. New functionalities such as online payment systems, mobile applications, and
advanced reporting tools can be integrated without affecting existing operations. This
flexibility ensures that the system remains useful even as technology evolves.
Furthermore, the system aims to provide better monitoring and control over rental operations.
Administrators can track booking activities, monitor bike usage, and generate reports related
to revenue and performance. This objective helps businesses evaluate their operations and
make improvements wherever necessary.
Overall, the objectives of the Bike Rental Portal focus on providing convenience, improving
efficiency, ensuring data security, and enhancing customer satisfaction. The system aims to
transform traditional rental services into a modern and automated solution that meets the
demands of today's digital environment.
Functionalities of The System:
Admin Functionalities:
User Functionalities:
The Bike Rental Portal consists of various functionalities designed to support both
administrators and users in performing their respective tasks efficiently. These
functionalities are divided into two major categories: Admin Functionalities and User
Functionalities. Each functionality plays an important role in maintaining the smooth
operation of the system and ensuring that all activities are performed in an organized
manner.
Detailed Admin Functionalities
The admin is the main authority responsible for managing the overall operation of the
Bike Rental Portal. The admin panel provides several tools that help in controlling and
monitoring system activities.
Add New Bike Details:
One of the most important functionalities available to the admin is adding new bike
details into the system. Whenever a new bike is purchased or introduced into the rental
service, the admin can enter its information into the database. This includes details such
as bike model name, rental price, features, engine capacity, and availability status.
Adding accurate information ensures that customers can view complete details while
browsing available bikes.
Update Bike Information:
The admin also has the authority to update existing bike details whenever required. For
example, if the rental price of a bike changes or if additional features are added, the
admin can modify the information accordingly. Updating details regularly helps
maintain accurate and reliable data in the system.
Delete Bike Details:
If a bike becomes unavailable due to damage, maintenance, or sale, the admin can
remove its details from the system. This functionality prevents customers from
selecting bikes that are no longer available for rental. It also helps maintain an
organized and updated list of available bikes.
Approve or Reject Bookings:
Another important functionality of the admin is to manage customer booking requests.
When a customer submits a booking request, the admin reviews the details and checks
the availability of the selected bike. Based on availability, the admin can approve or
reject the booking request. This functionality helps avoid booking conflicts and ensures
proper allocation of bikes.
Monitor Booking Information:
The system allows the admin to monitor all booking activities. The admin can view
booking details such as customer name, bike model, booking date, return date, and
booking status. Monitoring booking information helps track ongoing rentals and
ensures that all operations are handled properly.
Manage User Accounts:
The admin is responsible for managing user accounts registered in the system. This
includes viewing user details, updating user information if necessary, and removing
inactive or unauthorized users. Proper management of user accounts helps maintain
system security and ensures that only valid users access the portal.
Manage Testimonials:
The admin also has the ability to manage testimonials submitted by users. Testimonials
include customer feedback about their experience with the rental service. Admin can
approve or remove testimonials based on relevance and appropriateness. Displaying
customer feedback helps build trust and improves the credibility of the rental service.
The hardware requirements are divided into two parts: one for the system
where the application will be developed and hosted, and the other for the end-
users who will access the application.
1. Types of Requirements
For the "Bike Rental Portal", requirements are classified into three main categories:
i. User Requirements: These are statements in natural language of the services that
the system is expected to provide to the end-users and the constraints under which it
must operate. For this portal, user requirements include: a user should be able to
register, login, view available bikes, check prices, book a bike for specific dates, make
online payments, and view booking history.
ii. System Requirements: These are more detailed descriptions of the system's
functions, services, and operational constraints. It defines exactly what is to be
implemented. For example: The system shall display a list of bikes with filters for
price and model. The system shall validate user login credentials against the database.
The system shall not allow booking if a bike is already booked for the selected dates.
The requirements of this web application "Bike Rental Portal" were well
understood and documented initially before the development process started.
Multiple meetings were conducted to finalize the features. Accordingly, the
hardware and software requirements were chosen as mentioned in the previous
section. This web application is developed using PHP and runs on a
WAMP/XAMPP Server, which can be accessed by web clients through the
Internet from anywhere in the world. While developing, this system was
rigorously tested on the localhost using the Google Chrome browser. Also, other
popular web browsers like Mozilla Firefox and Microsoft Edge were tested for
compatibility to ensure a consistent user experience.
Importance of Requirement Analysis in System
Development
Requirement analysis is one of the most crucial stages in the development of any
software system. It helps developers understand what the users actually need and how
the system should behave under different conditions. In the case of the Bike Rental
Portal, requirement analysis ensures that both customer needs and administrative
requirements are properly identified before development begins. This process helps in
reducing misunderstandings and prevents errors during later stages of development.
During requirement analysis, developers gather information from various sources such
as system users, administrators, and business stakeholders. This information is
carefully analyzed to determine the exact features that the system must include. Proper
communication between developers and stakeholders helps in creating a clear
understanding of expectations. When requirements are well defined, it becomes easier
to design and implement the system correctly.
Requirement analysis also helps in identifying possible risks and limitations before
development starts. For example, if the system is expected to handle a large number of
users simultaneously, developers must ensure that the hardware and software
resources are capable of supporting such load. Identifying these requirements early
helps prevent system failures and improves overall performance.
SYSTEM ANALYSIS
System analysis is the process of studying a procedure or business to identify its goals
and purposes and create systems and procedures that will achieve them in an efficient
way. It is a problem-solving technique that breaks down a system into its component
pieces to study how well those parts work and interact to accomplish their purpose.
The existing system for bike rentals in most local shops is a completely manual and
offline process. The entire workflow depends on physical registers and verbal
communication. A detailed study reveals the following major drawbacks:
ii. Inefficient Record Management: All critical data including customer details,
address proof, bike details, booking dates, and payment information are maintained in
physical ledgers. This manual method is highly prone to human errors and incorrect
entries. There is also a constant risk of data loss due to damage to the registers from
fire, water, or misplacement.
iv. Difficult Inventory Tracking: For the rental business owner, tracking the status of
every single bike is a tedious task. It is difficult to quickly know which bikes are
rented out, which are available, which are due for maintenance, and which are overdue
for return. This leads to poor inventory management.
v. Limited Business Hours: The service is only available during the shop's operating
hours, typically 9 AM to 8 PM. A customer cannot book a bike during an emergency
at night or on public holiday
2. Proposed System
To overcome all the limitations of the existing manual system, a new web-based
application named "Bike Rental Portal" is proposed. This system will automate and
digitize the entire bike rental lifecycle.
The proposed system is designed with the following objectives and features:
i. 24x7 Online Accessibility: The portal will be accessible to users 24 hours a day, 7
days a week, from any location with an internet connection. Customers can browse
bikes and make bookings at their convenience.
ii. Centralized and Secure Database: All information related to users, bikes, bookings,
and transactions will be stored in a secure and centralized MySQL database. This
eliminates all paperwork, reduces human error, and prevents data loss. Data can be
easily backed up and retrieved.
iii. Real-Time Bike Availability: The system will display the real-time availability
status of all bikes. The inventory will be automatically updated when a booking is
made or a bike is returned. This provides accurate information and prevents booking
conflicts.
iv. Comprehensive Admin Dashboard: A powerful admin panel will be provided for
the rental business owner. From this dashboard, the admin can easily add new bikes,
update details, manage user accounts, view all bookings, track payments, and generate
sales reports.
v. User-Friendly Interface: The portal will have a clean, intuitive, and responsive user
interface built with HTML, CSS, and Bootstrap. Customers can easily register, search
for bikes using filters, view detailed information and images, and complete the
booking process in a few simple steps.
3. Feasibility Study
A feasibility study is an analysis that takes all of a project's relevant factors into
account to ascertain the likelihood of completing the project successfully. For the
"Bike Rental Portal", three key aspects of feasibility were studied:
A. TECHNICAL FEASIBILITY
The "Bike Rental Portal" is found to be technically feasible due to the following
reasons:
ii. Familiarity with Technology: The development team is familiar with the chosen
technology stack. PHP is a robust server-side scripting language specifically
designed for web development and it integrates seamlessly with the MySQL
database.
iv. Scalability: The chosen technologies are highly scalable. If the number of users
or bikes increases in the future, the server capacity can be easily upgraded without
changing the core application architecture. The database structure is designed to
handle thousands of records efficiently.
B. OPERATIONAL FEASIBILITY
i. Solves Existing Problems: The proposed system directly addresses all the
problems of the manual system like time consumption, data loss, lack of real-time
information, and poor inventory management. It provides a complete digital
solution.
ii. User Acceptance: The user interface is designed to be simple, clean, and
intuitive. A person with basic computer or smartphone knowledge can easily use the
portal to book a bike. The process is reduced from a 30-minute physical visit to a 2-
minute online booking.
iii. Management Support: For the admin or business owner, the system drastically
reduces manual workload. Tasks like checking availability, calculating rent, and
maintaining records that took hours are now done in seconds. This increases
productivity and is likely to receive strong support from management.
iv. Minimal Training Required: Since the system uses standard web conventions
like buttons, forms, and menus, the training required for both customers and admin
is minimal. A simple user manual is sufficient for operation.
Hence, the system is operationally feasible and will be accepted by its users.
C. ECONOMIC FEASIBILITY
The "Bike Rental Portal" is economically feasible for the following reasons:
ii. Reduction in Operational Cost: The system eliminates the need for physical
registers, paper, and files. It also reduces the manpower required to manage
bookings and records, as one person can now manage the entire system through the
admin dashboard. This leads to significant cost savings in the long run.
iii. Increased Revenue: By being available 24x7 and accessible from anywhere, the
business can attract more customers beyond its local area. The ease of booking will
lead to an increase in the total number of bookings per day, directly increasing the
revenue and profit.
iv. High Return on Investment (ROI): Considering the very low initial investment
and development cost versus the potential for increased revenue, reduced errors,
and improved customer satisfaction, the Return on Investment for this project is
very high. The system can recover its development cost within the first few months
of operation.
The study of the existing system clearly highlighted its inefficiencies, including
high time consumption, risk of data loss, lack of transparency, and limited
accessibility, which are major bottlenecks for business growth and customer
satisfaction.
The proposed web-based system directly addresses all these identified problems by
providing a 24x7 online platform with real-time data, automated processes, and a
centralized secure database. The feasibility study further confirms that the project is
technically possible with available open-source technologies, operationally
acceptable by both customers and admin, and economically profitable with a high
return on investment.
Therefore, the system analysis phase confirms that the "Bike Rental Portal" is
a viable solution that will streamline the rental process, improve business
efficiency, and provide a much better experience for the customers. The
findings of this analysis provide a strong foundation to proceed to the next
phase, which is System Design.
SYSTEM DESIGN
System design is the process of defining the architecture, modules, interfaces, and
data for a system to satisfy specified requirements. It is the phase where the "how"
of the system is decided, based on the "what" that was defined in the system
analysis phase. The main objective of system design is to transform the user
requirements into a detailed blueprint that can be used for coding.
For the "Bike Rental Portal", the system design phase involves creating logical and
physical designs that will serve as a foundation for the implementation phase. A
good design is the key to a successful and maintainable software application.
i. Practicality: The design should be practical and easy to implement using the
chosen technologies like PHP and MySQL. It should not be overly complex.
ii. Accuracy: The design must accurately represent the system's functionality and
meet all the user and system requirements gathered during the analysis phase.
iii. Completeness: The design should cover all aspects of the system, including user
interfaces, database structure, process flow, and security measures. Nothing should
be left ambiguous for the developer.
iv. Modularity: The system is designed in a modular way. The major modules are
User Module, Admin Module, Bike Management Module, and Booking Module.
This modular approach makes the system easy to develop, test, debug, and maintain
in the future.
v. User-Friendliness: The design of the user interface focuses on being simple and
intuitive. The goal is to ensure that a new user can understand and operate the portal
without any formal training.
2. Design Methodology
For this project, a Top-Down, Structured Design methodology is adopted. The
system is first viewed as a whole, and then it is broken down into smaller, more
manageable subsystems or modules. Each module is then designed in detail.
ii. Application Tier (Server Side): This is the core of the application where all the
business logic resides. It is developed using PHP. This tier receives requests from
the presentation tier, processes them, interacts with the database tier to fetch or store
data, and sends the response back to the presentation tier.
iii. Data Tier (Database Side): This tier consists of the MySQL database server. It is
responsible for storing all the application's data in an organized and secure manner.
It only communicates with the application tier and not directly with the user.
This 3-tier architecture makes the system more secure, scalable, and easy to
maintain, as changes in one tier do not heavily affect the other [Link] (Hyper
Text Mark-up Language)
The Bike Rental Portal follows a 3-Tier Architecture model to separate concerns and
improve maintainability
. The three tiers work together as follows
1. Client Tier: This is the presentation layer that the end-user interacts with using a
web browser. It is developed using HTML, CSS, Bootstrap, and JavaScript. Its sole
purpose is to display data to the user and capture user inputs. It forwards all requests
to the Application Server for processing.
2. Application Server Tier: This is the business logic layer developed in PHP. It acts as
a mediator between the client and the database. It validates user input, processes
business rules, and executes queries on the Data Source. It ensures that the client
never directly accesses the database, which enhances security.
3. Data Source Tier: This is the data storage layer using MySQL database. It stores all
persistent data of the system like user details, bike information, and booking records.
It only responds to requests from the Application Server tier and returns the required
data.
This architecture makes the system scalable because each tier can be upgraded
independently. It also improves security by isolating the database from direct user
access.
Input Design
A. User Registration Form: Collects Full Name, Email, Mobile, Password, Address.
Validation like email format and 10-digit mobile check is applied.
B. User Login Form: Takes Email and Password to allow existing users to access
their account.
C. Bike Booking Form: User selects 'From Date' and 'To Date' using a calendar.
System auto-calculates total days and cost. Bike is selected from a dropdown menu.
D. Admin - Add Bike Form: Used by admin to add new bikes. Fields include Bike
Name, Model, Reg. Number, Daily Rent, and Upload Image. All fields are
mandatory.
Output Design
Output design refers to the information generated by the system for the end-users.
The output should be clear, accurate, and in an easy-to-understand format.
A. Bike Listing Page: Displays all available bikes with their image, name, and daily
rent. Filters are provided to help users search easily.
C. Admin Dashboard Reports: System generates reports for the admin like List of
All Users, List of All Bikes, All Bookings, and Total Revenue Report.
D. Error Messages: System provides user-friendly alerts. For example, "Invalid
Password" or "Bike not available for selected dates" instead of technical error
codes.
E-R Diagram
C. RELATIONSHIPS:
A. DFD SYMBOLS:
1. Process: It is represented by a circle or a rounded rectangle. A process shows a
transformation or manipulation of data within the system. It is named with a verb
phrase. Example: 'Verify Login', 'Book Vehicle'.
CONTEXT LEVEL:
LEVEL 1:
Schema
Table 1: USER
# Name Type Null Key Default
1 id int No PRI NULL
2 FullName varchar(120) No NULL
3 EmailId varchar(100) No UNI NULL
4 Password varchar(100) No NULL
5 ContactNo char(11) No NULL
6 RegDate timestamp No CURRENT_TIMESTAMP
Table 2: VEHICLES
# Name Type Null Key Default
1 id int No PRI NULL
2 VehiclesTitle varchar(150) No NULL
3 VehiclesBrand int No MUL NULL
4 PricePerDay int No NULL
5 ModelYear int No NULL
6 VehiclesOverview text No NULL
Table 3: BOOKING
# Name Type Null Key Default
1 id int No PRI NULL
2 userEmail varchar(100) No MUL NULL
3 VehicleId int No MUL NULL
4 FromDate varchar(10) No NULL
5 ToDate varchar(10) No NULL
6 message varchar(255) Yes NULL
7 Status int Yes NULL
Table 4: BRANDS
# Name Type Null Key Default
1 id int No PRI NULL
2 BrandName varchar(120) No NULL
3 CreationDate timestamp No CURRENT_TIMESTAMP
Table 5: ADMIN
# Name Type Null Key Default
1 id int No PRI NULL
2 UserName varchar(100) No NULL
3 Password varchar(100) No NULL
4 updationDate timestamp Yes NULL
SYSTEM IMPLEMENTATION
Implementation Environment
# Component Specification
1 Operating system Window 11
2 Web server Apache (XANPP v3.3.0)
3 Database MySQL 8.0
4 Backend language PHP 8.2
5 Frontend HTML5,CSS3,Bootstrap
5,javascript
6 IDE Visual Studio Code
1. User Module: This module handles user registration, login, profile management,
and password recovery. It ensures secure access to the system using session
management.
2. Admin Module: This module allows the admin to perform CRUD operations on
bikes, brands, and bookings. The admin can also view user lists, manage testimonials,
and generate reports from the dashboard.
3. Booking Module: This is the core module that allows users to search for bikes,
check availability for specific dates, and book a vehicle. It calculates the total cost
and generates a booking receipt.
Database Implementation
Database implementation plays a crucial role in the successful functioning of the Bike
Rental Portal. A MySQL database was designed to store all system-related information
such as user details, bike details, booking records, and administrative data. Tables
were created with proper primary keys and foreign keys to maintain relationships
between different entities.
The database was structured to ensure efficient storage and retrieval of data. For
example, separate tables were created for users, bikes, bookings, and testimonials.
This modular database structure helped in maintaining data consistency and avoiding
duplication of records. Indexing techniques were also applied to improve query
performance and reduce data retrieval time.
Data validation was implemented at the database level to ensure that only valid
information is stored. Constraints such as NOT NULL, UNIQUE, and
AUTO_INCREMENT were used to maintain data integrity. Backup procedures were
also implemented to protect important records from accidental loss.
Integration of Modules
After developing individual modules, they were integrated into a single unified
system. Integration involves combining different modules such as user management,
booking management, and admin management into one complete application. This
step ensures that all modules communicate properly with each other.
During module integration, several tests were performed to check the interaction
between different components. For example, when a user completes registration, the
system must store the information in the database and allow login access immediately.
Similarly, booking requests submitted by users must appear in the admin dashboard
for approval.
Proper integration ensures that data flows smoothly between modules without
conflicts. It also improves system reliability and ensures that the application functions
as expected.
Deployment Process
After successful implementation and testing, the system was prepared for deployment.
Deployment refers to making the system available for actual use by users. Initially, the
application was deployed on a local server environment using XAMPP for testing
purposes.
Once the system performed successfully in the local environment, it was ready to be
deployed on a live server. Hosting services can be used to upload the application files
and database to an online server. This allows users to access the Bike Rental Portal
from any location using the internet.
Proper deployment ensures that the system functions correctly in real-world
conditions. It also involves configuring server settings, establishing database
connections, and verifying system accessibility.
The system is developed in PHP. The key code snippets from the main modules are
presented below:
8.4.1 Database Connection [[Link]]
<?php
// Database configuration
define('DB_HOST','localhost');
define('DB_USER','root');
define('DB_PASS','');
define('DB_NAME','bikerental');
if(!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
?>
if(isset($_POST['login'])) {
$email = $_POST['email'];
$password = md5($_POST['password']);
if(mysqli_num_rows($result) > 0) {
$_SESSION['login'] = $email;
header('location:[Link]');
} else {
echo "<script>alert('Invalid Details');</script>";
}
}
if($result) {
echo "<script>alert('Booking Successful');</script>";
} else {
echo "<script>alert('Something went wrong');</script>";
}
}
}
?>
<?php
session_start();
include('[Link]');
if(strlen($_SESSION['alogin'])==0) {
header('location:[Link]');
} else {
if(isset($_POST['submit'])) {
$vehicletitle = $_POST['vehicletitle'];
$brand = $_POST['brandname'];
$vehicleoverview = $_POST['vehicalorcview'];
$priceperday = $_POST['priceperday'];
$fueltype = $_POST['fueltype'];
$modelyear = $_POST['modelyear'];
if($result) {
echo "<script>alert('Vehicle added successfully');</script>";
} else {
echo "<script>alert('Error occurred');</script>";
}
}
}
?>
Unit Testing
Each module was tested individually. Example: Login function was tested
separately to check if it accepts valid credentials and rejects invalid ones.
Unit Testing is the first level of testing where individual components
of the software are tested. The purpose is to validate that each unit
of the software performs as designed.
System Testing
The complete integrated system was tested as a whole to ensure it meets all
specified requirements. System Testing is conducted on a complete
integrated system to evaluate
the system's compliance with its specified requirements. The entire Bike
Rental Portal was tested as a whole by following a real user's journey.
The complete flow tested was: User Registration → Login → Search Bike
→
Book Bike → Logout → Admin Login → View Booking → Approve
Booking →
Update Bike Status. The system passed all test cases and works as per
the SRS document.
Test Cases
Table 9.1: Test Cases for Bike Rental Portal
Test ID Module Test Case Input Expected Result Actual Result Status
Description
TC_01 User Check new Valid Registration “Registration pass
Registration user Name, Successful successful”
registration Email, message message
Password
TC_02 User Check with Already Email already Email already Pass
Registration existing registered exists error exists error
email Email
TC_03 User Login Check login Correct Redirect to user Redirect to user Pass
with valid Email + dashboard dashboard
data Password
TC_04 User Login Check login Wrong Invalid Invalid Pass
with invalid Password credentials error credentials error
data
TC_05 Bike Check bike Select Booking Booking Pass
Booking booking bike + confirmed, confirmed,
process valid dates Status=Pending Status=Pending
TC_06 Bike Check From Date Invalid date Invalid date Pass
Booking booking = error error
with past Yesterday
date
TC_07 Admin Check Admin Redirect to Redirect to Pass
Login admin panel Email + admin admin
access Password dashboard dashboard
TC_08 Admin Check Click Status changed Status changed Pass
Module booking Confirm to Confirmed to Confirmed
status on
update booking
Conclusion
All the test cases were executed successfully. The system is working as per
requirements. No critical bugs were found during testing. The Bike Rental
Portal is ready for deployment.
Importance of System Testing in Software Development
System testing plays a vital role in ensuring that the Bike Rental Portal performs
correctly under different conditions. It verifies that all system components work
together as expected and meet the requirements defined during earlier development
stages. Without proper system testing, errors may remain undetected and lead to
system failures during real-world usage.
The primary objective of system testing is to detect defects before the system is
delivered to users. During testing, developers simulate real-world scenarios to
evaluate system performance and identify possible issues. In the case of the Bike
Rental Portal, multiple test cases were designed to verify the functionality of user
registration, login, bike selection, booking operations, and administrative tasks.
System testing also helps in improving the reliability of the software. By testing each
function repeatedly, developers ensure that the system behaves consistently under
similar conditions. This reliability builds trust among users and increases confidence
in the system.
This is the landing page of the Bike Rental Portal. It displays featured bikes with a "Find
Your Perfect Bike" banner for users.
This page displays all available bikes with their rental price. Users can browse and select a
bike for booking.
Fig 10.3: User Login Page
Registered users can log in using their Email and Password to access the booking features.
This is a separate and secure login for the administrator to access the admin pan
Fig 10.6: Admin Dashboard
This page displays all user bookings. The admin can view booking details and update the status to
Confirmed or Cancelled
Fig 10.8: Bike Details Page
This is an important page for the admin. Here the admin can view all bikes added to the system.
The admin can also add new vehicles, edit existing vehicle details like price, or delete a vehicle
from the inventory using the action buttons.
FUTURE SCOPE
The Bike Rental Portal was successfully designed, developed, and implemented using PHP and
MySQL as per the objectives defined in the project synopsis. The system provides a complete,
user-friendly, and efficient platform for users to rent bikes online and for the administrator to
manage the entire business workflow from a centralized dashboard.
All the planned modules like User Registration, Bike Booking, Admin Management, and Booking
Status Update were implemented and tested successfully. The system testing proved that the
application is functional, secure, and meets all the functional and non-functional requirements. The
use of a structured database ensures data integrity and fast retrieval of information.
Working on this project provided hands-on experience in full-stack web development, database
design, and the software development life cycle. It enhanced the understanding of how theoretical
concepts are applied to solve real-world problems. The project is complete and ready for
deployment in a real-world scenario with minor hardware additions like a payment gateway.
MERITS
Hassle free checkout for public with the help of online payment.
We have provided user-friendly interface to help the user to operate the system.
Online support system for and query or problem.
BIBLIOGRAPHY
1. [Link]
2. [Link]
3. [Link]
4. [Link]
5. [Link] - For MySQL database concepts
6. HTML & CSS: Design and Build Web Sites by Jon Duckett
7. Learning PHP, MySQL, JavaScript, CSS & HTML5: A Step-by-Step Guide to Creating
Dynamic Websites by Robin Nixon
REFERENCES
1. Mall, Rajib. Fundamentals of Software Engineering, 5th Edition. PHI Learning Private
Limited, 2018. [Referred for SDLC and DFD concepts in Chapter 4 & 5]
2. Silberschatz, Abraham, Henry F. Korth, and S. Sudarshan. Database System Concepts, 6th
Edition. McGraw Hill Education, 2010. [Referred for ER Diagram and Database Design in
Chapter 7]
3. Welling, Luke, and Laura Thomson. PHP and MySQL Web Development, 5th Edition. Pearson
Education. [Referred for PHP-MySQL connectivity in Chapter 6]