Download as pdf or txt
Download as pdf or txt
You are on page 1of 72

A

Major Project Report

On

VEHICLE MAINTENANCE SYSTEM

Submitted in partial fulfilment of the Requirements for the award of degree in

Bachelor of Technology

In

COMPUTER SCIENCE & ENGINEERING

By

R.BHAVANI 20681A0553

A.AKHILA 20681A0504

J.SHARMILA 20681A0522

K.RAKESH 20681A0526

D.SAI SUSHEEL 20681A0513

Under the Esteemed Guidance of

Mrs. D. SWARNA

(Assistant Professor)

Department of Computer Science & Engineering

CHRISTU JYOTHI INSTITUTE OF TECHNOLOGY & SCIENCE

Colombo Nagar, Yeshwanthapur, Jangoan-5016167, Telangana

2023-2024

xiii
CHRISTU JYOTHI INSTITUTE OF TECHNOLOGY & SCIENCE

Colombo Nagar, Yeshwanthapur, Jangaon-506167.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

2023– 2024

CERTIFICATE

This is to certify that it is a Bonafide record of project work entitled

“VEHICLE MAINTENANCE SYSTEM” carried out by R. Bhavani (20681A0553),

A. Akhila (20681A0504), J. Sharmila (20681A0522), K. Rakesh (20681A0526),

D. SaiSusheel (20681A0513) during the academic year 2023-2024, in partial fulfilment

for the requirement for the award of the Degree of Bachelor of Technology in Computer

Science and Engineering offered by Christu Jyothi Institute of Technology and Science,

Jangaon.

Project Co-Guide Project Guide HOD-CSE

Mrs.Ch.Saritha Mrs.D.Swarna Mr. M. RAMARAJU

Assistant Professor Assistant Professor Assistant Professor

External Examiner

ii
CHRISTU JYOTHI INSTITUTE OF TECHNOLOGY & SCIENCE

Colombo Nagar, Yeshwanthapur, Jangaon-506167.

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

2023 – 2024

DECLARATION

We hereby declare that the document entitled “ VEHICLE MAINTENANCE

SYSTEM” submitted to the Christu Jyothi Institute of Technology & Science in partial

fulfilment of the requirements for the award of the degree of Bachelor of Technology -

in Computer Science and Engineering is a record of an original work done by us under

the guidance of Mrs.D.Swarna, Asst. Prof. and Mrs Ch.Saritha, Asst. prof. , and this

document has not been submitted to any other university for the award of any other degree.

R. BHAVANI 20681A0553

A. AKHILA 20681A0504

J. SHARMILA 20681A0522

K. RAKESH 20681A0526

D.SAI SUSHEEL 20681A0513

iii
ACKNOWLEDGEMENT

On the submission of our project entitled “VEHICLE MAINTENANCE SYSTEM”

we would like to thank our Director Rev. Fr. D. VIJAYA PAUL REDDY for giving us

the opportunity to carry out our project work.

We endow our sincere thanks to Principal Dr. S. CHANDRASHEKAR REDDY for his

consistent cooperation and encouragement.

We would also like to extend our sincere thanks to Mr. M. RAMARAJU., Assistant

Professor, Head of the Department, Computer Science & Engineering, for his valuable

suggestions and motivating guidance during our project work.

We would like to extend our gratitude and sincere thanks to our guide Mrs.D.Swarna

and Mrs.Ch.Saritha, Department of Computer Science and Engineering for their

valuable and timely suggestions.

We are very thankful to our teachers for providing the required background during the

project work. We would also like to extend our gratitude to our friends and those who are

directly or indirectly helped us in completing our project work.

R. BHAVANI 20681A0553

A. AKHILA 20681A0504

J. SHARMILA 20681A0522

K. RAKESH 20681A0526

D. SAI SUSHEEL 20681A0513

iv
CHRISTU JYOTHI INSTITUTE OF TECHNOLOGY & SCIENCE

Colombo Nagar, Yeshwanthapur, Jangoan – 506167

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

Vision and Mission of the Institute

Vision

To admit and groom students from rural background and be a truly rural technical

institution, benefiting society and nation as a whole institute.

Mission

The mission of the institution is to create, deliver and refine knowledge. Being a rural

technical institute, we aim too:

1. Enhance our position to one of the best technical institutions and to measure our

performance against the highest defined standards.

2. Provide highest quality learning environment to our students for their greater

wellbeing so as to equip them with highest technical and professional ethics.

3. Produce engineering graduates fully equipped to meet the ever-growing needs of

industry and society.

v
CHRISTU JYOTHI INSTITUTE OF TECHNOLOGY & SCIENCE

Colombo Nagar, Yeshwanthapur, Jangoan – 506167

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

Vision and Mission of the Institute

Vision

To be a center of eminence to mould young, fresh minds into challenging computer

science professionals with ethical values.

Mission

1. Enrich the knowledge and wisdom with repository of books and modernized

laboratory aided by dedicated resources.

2. Organize training and activities on upcoming techniques, and inter-personal skills.

3. Develop the ability to provide sustainable solutions to real world situations with

collaborations

vi
CHRISTU JYOTHI INSTITUTE OF TECHNOLOGY & SCIENCE

Colombo Nagar, Yeshwanthapur, Jangoan – 506167

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

Program Educational Objectives

PEO 1 Graduates of B. Tech (CSE) are able to formulate, analyse, and solve hardware

and software problems within the constraints and pursue the research.

PEO 2 Demonstrate knowledge in core areas of computer science and related

engineering to comprehend engineering trade-offs to create novel products.

PEO3 Show the awareness of life-long learning needed for a successful professional

career and exhibit ethical values, excellence, leadership, and social responsibilities.

vii
CHRISTU JYOTHI INSTITUTE OF TECHNOLOGY & SCIENCE

Colombo Nagar, Yeshwanthapur, Jangoan – 506167

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

PROGRAM OUTCOMES
PO No Program Outcomes
PO1 Engineering knowledge apply the knowledge of mathematics, science, engineering
fundamentals, and an engineering specialization to the solution of complex engineering
problems.
PO2 Problem analysis identity, formulate, review research literature, and analyze complex
engineering problems reaching substantiated conclusions using first principles of
mathematics, natural sciences, and engineering sciences
PO3 Design/development of solutions design solutions for complex engineering problems and
design system components or processes that meet the specified needs with appropriate
consideration for the public health and safety, and the cultural, societal, and environmental
considerations.
PO4 Conduct investigations of complex problems use research-based knowledge and research
methods including design of experiments, analysis and interpretation of data, and synthesis
of the information to provide valid conclusions.
PO5 Modern tools usage Create, Select, and apply appropriate techniques resources, and modern
engineering and IT tools including predictions and modeling to complex engineering
activities with an understanding of the limitations.
PO6 The engineer and society apply reasoning informed by the contextual knowledge to assess
societal and environment contexts, and demonstrate the knowledge of, and need for
sustainable development.
PO7 Environment and sustainability understand the impact of the professional engineering
solutions in societal and environmental contexts, and demonstrate the knowledge of, and
need for sustainable development.
PO8 Ethics apply ethical principles and commit to professional ethics and responsibilities and
norms of the engineering practice.
P09 Individual and team work function effectively as an individual, and as a member or leader in
diverse teams, and in multidisciplinary settings
PO10 Communication communicates effectively on complex engineering activities with the
engineering community and with society at large, such as, being able to comprehend and
write effective reports and design documentation, make effective presentations.
PO11 Project management and finance demonstrate knowledge and understanding of the
engineering and management principles and apply these to one’s own work, as a member
and leader in a team, to manage projects and in multidisciplinary environments.
PO12 Life-long learning recognizes the need for, and have the preparation and ability to engage
and lifelong learning in the broadest context of technology change.

viii
CHRISTU JYOTHI INSTITUTE OF TECHNOLOGY & SCIENCE

Colombo Nagar, Yeshwanthapur, Jangoan – 506167

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

Program Specific Outcomes

PSO 1 Proficiency Skill: Understand, analyse and develop computer programs in the

areas related to algorithms, system software, multimedia, web design, big data analytics

and networking for efficient design of computer-based systems of varying complexity.

PSO 2 Problem-Solving Skill: Apply standard practices and strategies in software

project development using open-ended programming environments to deliver a quality

product for business success.

PSO 3 Successful Career and Entrepreneurship: Employ modern computer languages,

environments, and platforms in creating innovative career paths to be an entrepreneur and

a zest for higher studies

ix
ABSTRACT

Owners of vehicles can avoid unforeseen car problems by maintaining their vehicles

regularly. Early detection of vehicle concerns is crucial to preventing them from

developing into serious difficulties. Owners of vehicles frequently inquire about service

at auto shops. Vehicle technicians examine crucial parts of the vehicle and fix problems

to make sure they are in good condition and won't break down suddenly. The study was

carried out by the researchers to evaluate the everyday activities and transactions carried

out in auto repair facilities. The researchers gathered preliminary data and discovered that

the majority of auto repair companies or garages still handle their daily transactions

manually. Customer records are still entered manually, as are transactions with clients,

tracking of vehicle repairs as they are made, updates on vehicle services, and billing. The

functioning of the garage and the response time to client inquiries will be slowed by the

ongoing usage of manual procedures.

The researchers have identified a need to modernize how auto repair shops work.

Customers and car garages will both profit from the system's installation. Utilizing the

technology to run the company will help car garages expand and improve operational

efficiency. Customers may do business for car service easily and comfortably.

x
Table of Contents

1.INTRODUCTION ........................................................................................................ 1

2.LITERATURE SURVEY ............................................................................................ 3

3.SYSTEM ANALYSIS .................................................................................................. 5

3.1 EXISTING SYSTEM ................................................................................ 5


3.2 PROPOSED SYSTEM .............................................................................. 6
3.3 METHODOLOGY ................................................................................... 9
4.SYSTEM DESIGN ..................................................................................................... 12

4.1 DATA FLOW DIAGRAM ....................................................................... 12


4.2 UML DIAGRAMS ................................................................................. 13
4.2.1. USECASE DIAGRAM ...................................................................... 14
4.2.2 SEQUENCE DIAGRAM .................................................................... 15
4.2.3 CLASS DIAGRAM ........................................................................... 16
4.2.4 ACTIVITY DIAGRAM ...................................................................... 17
5. HARDWARE AND SOFTWARE REQUIREMENTS ......................................... 18

5.1 HARDWARE REQUIREMENTS ............................................................. 18


5.2 SOFTWARE REQUIREMENTS .............................................................. 18
6.CODE TEMPLATES ................................................................................................ 19

6.1 PYTHON CODE .................................................................................... 19


6.2 HTML CODE ........................................................................................ 40
7.TESTING TECHNIQUES ........................................................................................ 44

7.1 UNIT TESTING ..................................................................................... 45


7.2 INTEGRATION TESTING ...................................................................... 45
7.3 FUNCTIONAL TESTING ....................................................................... 45
7.4 PERFORMANCE TESTING .................................................................... 45
7.5 BOUNDARY TESTING.......................................................................... 45

xi
7.6 EQUIVALENCE CLASS TESTING ......................................................... 46
7.7 REGRESSION TESTING ........................................................................ 46
7.8 USER ACCEPTANCE TESTING ............................................................. 46
8.OUTPUT SCREEN .................................................................................................... 47

9.CONCLUSION........................................................................................................... 50

10.FUTURE SCOPE ..................................................................................................... 51

11.REFERENCES ......................................................................................................... 52

xii
List of Figures

Figure 1: System Architecture…………………………………………………..10

Figure 2: Data Flow Diagram……………………………………………….…..12

Figure 3: Use Case Diagram…………………………………………………….14

Figure 4: Sequence Diagram …………………………………………………....15

Figure 5: Class Diagram……………………………………..…………………..16

Figure 6: Activity Diagram……………………………..…………………….....17

Figure 7: Home Page……………….……….…………………………………..47

Figure 8: Customer Signup……………………………………………………...47

Figure 9: Customer Loginpage …………………………………………………48

Figure 10: Customer Dashboard……………………………………………..….48

Figure 11: Mechanic Dashboard ………………………………………………..49

Figure 12: Admin Dashboard……………………………………………………49

xiii
xii2
1.INTRODUCTION

Vehicles now play a significant role in daily life. The vast majority of individuals

commute daily using the automobile. However, car maintenance is frequently disregarded.

Regular maintenance helps ensure that the car runs smoothly and that fuel is used

effectively. Another issue is that when automobiles are taken in for servicing or

maintenance, it is presumed that repairs would be made carefully, but it has been noted

that multiple vehicle accidents occur each year as a result of the neglect of repair facilities

and car dealers.

When the car is handed over for repair, the problem of confidence is crucial. Customers

are frequently taken advantage of under the name of service. A serious issue is the

replacement of original parts with outdated ones. Additionally, it might be challenging

for clients to confirm that the service providers are doing the tasks for which they are

paying. Service providers take advantage of this circumstance and overcharge customers.

The practice of "periodic vehicle maintenance," which mandates that the vehicle have

periodic servicing and maintenance, is widely used.

A vehicle's service life is typically determined by either a predetermined time frame or

the mileage traveled. Generally speaking, it is advised to get the car serviced every six

months or 10,000 kilometers. However, the problem with "periodic vehicle maintenance"

is that it's difficult to determine which parts need to be repaired or replaced, which might

lead to repairs or replacements of parts that are still in good shape. Predictive vehicle

maintenance proves useful in this situation. This data is obtained from numerous built-in

or customized sensors in the car that are used to keep track of the condition of various

components. To analyze and make decisions, this data is relayed via the internet, and the

1
chance of failure in the future is then predicted. When a consumer uses this approach to

choose when to service their automobile and which part to fix, it saves them a lot of time

and money since it gives them transparency. A certain system could occasionally require

maintenance or repair before the next scheduled due date. The solution effectively

manages this problem since the user instantly receives a warning on their mobile

application. This prevents the buyer from having to pay more money for the additional

damage the

automobile would have sustained if the defective item had been driven. Given that the

service center already has cameras installed, our solution makes advantage of such

infrastructure. Following is a description of the following portions of the essay: The

system's operational mechanism is explained in Section II. This study explains how

forecasting may be used to anticipate a vehicle's failure.

2
2.LITERATURE SURVEY

1."A Study on the recent Advancements in Online Surveying" by Dr. C K Gomathy:This

paper likely explores the latest developments in online surveying techniques, indicating

a shift towards digital methodologies in data collection and analysis.It may discuss the

advantages of online surveys over traditional methods, such as cost-effectiveness, broader

reach, and faster data processing.The paper could also address challenges associated with

online surveying, such as data security, sample representation, and respondent

bias.Potential areas of application for online surveying discussed could include market

research, academic studies, and social science research.

2."A Study On Employee Safety And Health Management" by Dr. C.K.Gomathy and C

K Hemalatha:This paper likely focuses on strategies and practices for managing

employee safety and health in the workplace.It may discuss various aspects of safety

management, including risk assessment, hazard identification, and regulatory

compliance.The paper could explore the role of technology in enhancing workplace safety,

such as the use of IoT devices, wearable technology, and data analytics.Practical

implications for organizations aiming to improve their safety and health management

systems may be highlighted, along with potential benefits such as reduced accidents,

improved employee morale, and legal compliance.

3."A Study on the Effect of Digital Literacy and Information Management" by Dr. C K

Gomathy:This paper likely investigates the impact of digital literacy and information

management practices on individuals and organizations.It may discuss the importance of

digital skills in the contemporary digital age, including abilities such as information

retrieval, critical evaluation, and digital communication.The paper could explore

3
strategies for improving digital literacy among different demographic groups, such as

students, professionals, and senior citizens.Potential benefits of enhanced digital literacy

and effective information management may include increased productivity, better

decision-making, and improved access to opportunities.

4."An Effective Innovation Technology In Enhancing Teaching And Learning Of

Knowledge Using ICT Methods" by Dr. C K Gomathy:This paper likely focuses on

innovative ICT (Information and Communication Technology) methods for enhancing

teaching and learning experiences.It may discuss various technologies and tools used in

education, such as online learning platforms, multimedia resources, and educational

software.The paper could explore the benefits of integrating ICT into pedagogical

practices, including personalized learning, interactive engagement, and accessibility for

diverse learners.Practical examples of successful ICT implementations in educational

settings may be provided, along with considerations for effective implementation and

integration into curricula.

5."Supply chain-Impact of importance and Technology in Software Release

Management" by Dr. C K Gomathy:This paper likely examines the role of technology in

software release management within supply chain operations.It may discuss the

importance of efficient software release processes for ensuring the timely delivery of

products and services.The paper could explore various technologies and methodologies

used in software release management, such as version control systems, continuous

integration/delivery, and agile practice.

4
3.SYSTEM ANALYSIS

3.1 EXISTING SYSTEM

The existing vehicle maintenance system suffered from inefficiency, communication

gaps, and data management challenges due to its reliance on manual processes and basic

software solutions.The following limitations can hinder productivity, customer

satisfaction, and business growth.Therefore, there is a need to upgrade the system to a

more robust and integrated solution to address these shortcomings and improve overall

operational efficiency and customer experience.

Disadvantages

1.Manual Processes: Many existing systems rely heavily on manual data entry and

paper-based documentation, leading to inefficiencies, errors, and delays in service

scheduling and record-keeping.

2.Limited Accessibility: Some systems may not offer convenient access for users, such

as service technicians or vehicle owners, who may need to access information remotely

or via mobile devices

3.Lack of Integration: Integration with other systems, such as inventory management or

billing, may be lacking, leading to disjointed workflows and redundant data entry.

4.Poor Usability: Complex interfaces or outdated user experiences can make it difficult

for users to navigate the system effectively, leading to frustration and decreased

productivity.

5
5.Inadequate Scalability: Legacy systems may struggle to accommodate growth in data

volume or user base, leading to performance issues and system downtime during peak

usage periods.

6.Security Vulnerabilities: Older systems may lack robust security features, putting

sensitive customer data at risk of unauthorized access or breaches.

7.Limited Reporting and Analytics: Without comprehensive reporting and analytics

capabilities, it can be challenging for managers to assess service performance, identify

trends, and make data-driven decisions for business improvement.

3.2 PROPOSED SYSTEM

The proposed Vehicle Maintenance System (VMS) addresses these shortcomings by

introducing a comprehensive, automated solution that streamlines the entire maintenance

process:

VMS automates job scheduling, parts inventory management, and service tracking,

leading to increased efficiency and reduced turnaround times for maintenance tasks.

The system provides secure, web-based access to stakeholders, enabling them to retrieve

and update information from anywhere at any time.

Improved Transparency: VMS offers real-time visibility into job statuses, service

histories, and billing details, fostering transparency and trust between service providers

and customers. By automating repetitive tasks and centralizing data management, VMS

reduces administrative workload, allowing staff to focus on delivering high-quality

services. The user-friendly interface, timely communication, and transparent processes of

VMS contribute to higher customer satisfaction by ensuring prompt service delivery,

clear billing, and consistent service quality.

6
Overall, the proposed VMS represents a significant advancement over the existing

manual system, offering numerous advantages in terms of efficiency, accessibility,

transparency, administrative overhead, and customer satisfaction.

Advantages

1. Improved Efficiency: The system streamlines maintenance workflows by automating

scheduling, work order creation, and parts management, reducing manual paperwork and

administrative tasks. This efficiency translates to quicker turnaround times for

maintenance tasks and reduced vehicle downtime.

2. Enhanced Vehicle Reliability: Regular maintenance is essential for keeping vehicles in

optimal condition and preventing unexpected breakdowns. With a maintenance system in

place, timely servicing and inspections can be scheduled, ensuring that vehicles are well-

maintained and reliable.

3. Cost Savings: Proactive maintenance reduces the likelihood of major repairs or

component failures, which can be costly to repair or replace. By identifying and

addressing issues early, the system helps minimize repair expenses and extends the

lifespan of vehicles, resulting in long-term cost savings.

4. Improved Safety: Regular maintenance not only enhances vehicle performance but also

contributes to improved safety on the road. By ensuring that vehicles are properly

maintained and meet safety standards, the system helps mitigate the risk of accidents and

injuries caused by mechanical failures

5. Compliance Management: Many industries have regulatory requirements or standards

governing vehicle maintenance and safety. A maintenance system helps ensure

compliance with these regulations by maintaining comprehensive maintenance records,

facilitating inspections, and generating compliance reports

7
6. Optimized Inventory Management: Efficient parts and inventory management ensure

that necessary components are always available when needed for maintenance tasks,

reducing downtime caused by waiting for parts to be ordered or delivered.

7. Data-Driven Decision Making: The system collects and analyzes data on maintenance

activities, vehicle performance, and costs, providing valuable insights for decision-

making. Fleet managers can use this data to optimize maintenance schedules, identify

trends, and make informed decisions to improve operational efficiency

8. Enhanced Customer Satisfaction: For service providers, a well-maintained fleet

translates to satisfied customers. By minimizing vehicle downtime and ensuring reliable

transportation services, the system helps maintain high levels of customer satisfaction and

loyalty.

9. Real-Time Monitoring and Alerts: Integration with diagnostic tools and sensors enables

real-time monitoring of vehicle health and performance. The system can generate alerts

for potential issues, allowing proactive maintenance actions to be taken before problems

escalate.

10. Scalability and Flexibility: As fleets grow or business needs change, the system can

easily scale to accommodate additional vehicles and users. Its flexible architecture allows

for customization to meet specific requirements and adapt to evolving maintenance

practices and technologies.

8
3.3 METHODOLOGY

The building of the Vehicle Service Management System in Django is suggested in this

essay. The solution will streamline the administrative tasks related to handling business

transactions in a car garage. The following transactions are included in the list: recording

customer records, tracking the status of car repairs, updating vehicle service orders,

managing vehicle service schedules, maintaining maintenance logs, dealing with

customers, and billing. The suggested idea would do away with manual processes and

transactions in auto repair facilities. The system will operate as a hub for transactions that

can be accessed by clients and technicians working on vehicles, as well as monitored

by an administrator. The suggested strategy would boost operational effectiveness and

overall client happiness when it comes to receiving car service. 1Time-consuming: Since

the initial booking and charge estimation are handled directly by the website, less time is

needed to visit the store and complete these tasks. Simple to use: Since it is a website, the

client may access it without downloading any apps to their phone. The user doesn't need

a laptop to open the website because it is also mobile-accessible. 3. Online customer

system: The client won't need to travel since the website will facilitate the online

completion of tasks. The goal of the vehicle services is to give system users better

information so they can maintain their sales, purchases, and stock information more

effectively.

9
Figure 1: System Architecture

Modules

1. Admin Module

2. Customer Module

3. Mechanic Module

1.Admin Module

Dashboard: The admin may view all of the details in this part, including the total number

of users registered, total inquiries, total mechanics, and total services. Using a customer's

10
phone number, email address, or contact number, the administrator can search inquiries

in this section. Service Search: The administrator can use the phone number, email

address, or contact number of a client to search for services in this area. Mechanics: The

administrator can control mechanics in this area (add, delete, and update). the type of

vehicle. The administrator can control the vehicle category in this area (add, delete and

update) Reg Users: The administrator can examine and edit user details in this area.

Service Demand: The administrator may add service charges (service fee and any extra

parts fees that may apply) in this area. Based on status, the admin may view services

(pending services, rejected services, and complete services). Admins can also approve

pending policies. Client Inquiry The administrator can answer client inquiries in this

section as well as view inquiries to which no customers have responded.

2. Customers Module

Dashboard Enquiry: Here, the user may complete the form and see whether or not his

inquiry has received a response (which is done by the admin). Service Request: In this

part, the user may complete the service form, check the progress of the service, see how

much is being charged for the service, and print an amount slip (which is done by the

admin). Users may also change their passwords, retrieve their passwords, and update their

profiles.

3.Mechanics Module

The mechanic may examine the tasks the admin has assigned him in this section. He

can also look up the attendance record. The vehicle's state is updated by the mechanic

module, including whether or not it has been fixed.

11
4.SYSTEM DESIGN

4.1 DATA FLOW DIAGRAM

A Data Flow Diagram (DFD) is a graphical representation that illustrates the flow of data

within a system. This diagram shows how the flow of the project moves on from vehicle

servicing maintained by admin to mechanics and customers.

Here, the customer who engages with creating services for their vehicle problems and

mechanics who handles the requests of the service by customers and admin who overlook

all the work done by mechanics and feedback from the customers.

Figure 2: Data Flow Diagram

12
4.2 UML DIAGRAMS

UML diagram is a diagram based on the UML (Unified Modelling Language) that is used

to visually describe a system, including its major actors, roles, actions, artifacts, or classes,

in order to better understand, edit, maintain, or document system information. UML

stands for Unified Modeling Language. UML is a standardized general-purpose modeling

language in the field of object-oriented software engineering. The standard is managed,

and was created by, the Object Management Group.

The goal is for UML to become a common language for creating models of object oriented

computer software. In its current form UML is comprised of two major components: a

Meta-model and a notation. In the future, some form of method or process may also be

added to; or associated with, UML. The UML is a very important part of developing

objects oriented software and the software development process. The UML uses mostly

graphical notations to express the design of software projects.

13
4.2.1. USECASE DIAGRAM

A Use case Diagram is used to present a graphical overview of the functionality provided

by a system in terms of actors, their goals and any dependencies between those use cases.

Use case diagram consists of two parts: Use case: A use case describes a sequence of

actions that provided something of measurable value to an actor and is drawn as a

horizontal ellipse. Actor: An actor is a person, organization or external system that plays

a role in one or more interaction with the system.

Figure 3: UseCase Diagram

14
4.2.2 SEQUENCE DIAGRAM

A Sequence diagram is a kind of interaction diagram that shows how processes operate

with one another and in what order. It is a construct of Message Sequence diagrams are

sometimes called event diagrams, event sceneries and timing diagram.

Figure 4: Sequence Diagram

15
4.2.3 CLASS DIAGRAM

A class diagram is a type of static structure diagram in the Unified Modeling Language

(UML) that depicts the structure of a system by showing the classes, their attributes,

methods, relationships, and constraints. It provides a visual representation of the various

entities and how they interact within the system.

Figure 5: Class Diagram

16
4.2.4 ACTIVITY DIAGRAM
Activity diagram is a graphical representation of workflows of stepwise activities and

actions with support for choice, iteration and concurrency. An activity diagram shows the

overall flow of control.

The most important shape types:

● Rounded rectangles represent activities.

● Diamonds represent decisions.

● Bars represent the start or end of concurrent activities.

● A black circle represents the start of the workflow.

● An encircled circle represents the end of the workflow.

Figure 6: Activity Diagram

17
5. HARDWARE AND SOFTWARE REQUIREMENTS

A Software Requirements Specification (SRS) is a document that specifies the functional

and non-functional requirements of a software system. It often comprises a description of

the system's features, restrictions, and performance needs, as well as any external

interfaces and dependencies.

The SRS document acts as a template for the development team and a foundation for

validating that the system satisfies the demands of the stakeholders. Some significant

components to consider are functional requirements, dysfunctional requirements, user

interface, data needs, and performance.

5.1 HARDWARE REQUIREMENTS

• Computer
• Operating System
• Memory (RAM)
• Network Connectivity

5.2 SOFTWARE REQUIREMENTS

• Python 3.8 : Backend


• Django Framework : Frontend
• SQLite Database : Data Storage

18
6.CODE TEMPLATES

6.1 PYTHON CODE

from django.db import models

from django.contrib.auth.models import User

# Create your models here.

class Customer(models.Model):

user=models.OneToOneField(User,on_delete=models.CASCADE)

profile_pic=
models.ImageField(upload_to='profile_pic/CustomerProfilePic/',null=True,blank=True)

address = models.CharField(max_length=40)

mobile = models.CharField(max_length=20,null=False)

@property

def get_name(self):

return self.user.first_name+" "+self.user.last_name

@property

def get_instance(self):

return self

def _str_(self):

return self.user.first_name

class Mechanic(models.Model):

user=models.OneToOneField(User,on_delete=models.CASCADE)

profile_pic=
models.ImageField(upload_to='profile_pic/MechanicProfilePic/',null=True,blank=True)

19
address = models. CharField(max_length=40)

mobile = models.CharField(max_length=20,null=False)

skill = models.CharField(max_length=500,null=True)

salary=models.PositiveIntegerField(null=True)

status=models.BooleanField(default=False)

@property

def get_name(self):

return self.user.first_name+" "+self.user.last_name

@property

def get_id(self):

return self.user.id

def _str_(self):

return self.user.first_name

class Request(models.Model):

cat=(('two wheeler with gear','two wheeler with gear'),('two wheeler without


gear','two wheeler without gear'),('three wheeler','three wheeler'),('four wheeler','four
wheeler'))

category=models.CharField(max_length=50,choices=cat)

vehicle_no=models.PositiveIntegerField(null=False)

vehicle_name = models.CharField(max_length=40,null=False)

vehicle_model = models.CharField(max_length=40,null=False)

vehicle_brand = models.CharField(max_length=40,null=False)

problem_description = models.CharField(max_length=500,null=False)

date=models.DateField(auto now=True)

20
cost=models.PositiveIntegerField(null=True)

customer=models.ForeignKey('Customer', on_delete=models.CASCADE,null=True)

mechanic=models.ForeignKey('Mechanic',on_delete=models.CASCADE,null=True)

stat=(('Pending','Pending'),('Approved','Approved'),('Repairing','Repairing'),('Repairing
Done','Repairing Done'),('Released','Released'))

status=models.CharField(max_length=50,choices=stat,default='Pending',null=True)

def _str_(self):

return self.problem_description

class Attendance(models.Model):

mechanic=models.ForeignKey('Mechanic',on_delete=models.CASCADE,null=True)

date=models.DateField()

present_status = models.CharField(max_length=10)

class Feedback(models.Model):

date=models.DateField(auto_now=True)

by=models.CharField(max_length=40)

message=models.CharField(max_length=500)

from django.shortcuts import render,redirect,reverse

from . import forms,models

from django.db.models import Sum

from django.contrib.auth.models import Group

from django.http import HttpResponseRedirect

from django.contrib.auth.decorators import login_required,user_passes_test

from django.conf import settings

from django.db.models import Q

21
def home_view(request):

if request.user.is_authenticated:

return HttpResponseRedirect('afterlogin')

return render(request,'vehicle/index.html'

#for showing signup/login button for customer

def customerclick_view(request):

if request.user.is_authenticated:

return HttpResponseRedirect('afterlogin')

return render(request,'vehicle/customerclick.html')

#for showing signup/login button for mechanics

def mechanicsclick_view(request):

if request.user.is_authenticated:

return HttpResponseRedirect('afterlogin')

return render(request,'vehicle/mechanicsclick.html')

#for showing signup/login button for ADMIN(by sumit)

def adminclick_view(request):

if request.user.is_authenticated:

return HttpResponseRedirect('afterlogin')

return HttpResponseRedirect('adminlogin')

def customer_signup_view(request):

userForm=forms.CustomerUserForm()

customerForm=forms.CustomerForm()

mydict={'userForm':userForm,'customerForm':customerForm}

22
if request.method=='POST':

userForm=forms.CustomerUserForm(request.POST)

customerForm=forms.CustomerForm(request.POST,request.FILES)

if userForm.is_valid() and customerForm.is_valid():

user=userForm.save()

user.set_password(user.password)

user.save()

customer=customerForm.save(commit=False)

customer.user=user

customer.save()

my_customer_group = Group.objects.get_or_create(name='CUSTOMER')

my_customer_group[0].user_set.add(user)

return HttpResponseRedirect('customerlogin')

return render(request,'vehicle/customersignup.html',context=mydict)

def mechanic_signup_view(request):

userForm=forms.MechanicUserForm()

mechanicForm=forms.MechanicForm()

mydict={'userForm':userForm,'mechanicForm':mechanicForm}

if request.method=='POST':

userForm=forms.MechanicUserForm(request.POST)

mechanicForm=forms.MechanicForm(request.POST,request.FILES)

if userForm.is_valid() and mechanicForm.is_valid():

user=userForm.save()

23
user.set_password(user.password)

user.save()

mechanic=mechanicForm.save(commit=False)

mechanic.user=user

mechanic.save()

my_mechanic_group = Group.objects.get_or_create(name='MECHANIC')

my_mechanic_group[0].user_set.add(user)

return HttpResponseRedirect('mechaniclogin')

return render(request,'vehicle/mechanicsignup.html',context=mydict)

#for checking user customer, mechanic or admin(by sumit)

def is_customer(user):

return user.groups.filter(name='CUSTOMER').exists()

def is_mechanic(user):

return user.groups.filter(name='MECHANIC').exists()

def afterlogin_view(request):

if is_customer(request.user):

return redirect('customer-dashboard')

elif is_mechanic(request.user):
accountapproval=models.Mechanic.objects.all().filter(user_id=request.user.id,status=Tr
ue)

if accountapproval:

return redirect('mechanic-dashboard')

else:

return render(request,'vehicle/mechanic_wait_for_approval.html')

24
else:

return redirect('admin-dashboard')

@login_required(login_url='adminlogin')

def admin_dashboard_view(request):

enquiry=models.Request.objects.all().order_by('-id')

customers=[]

for enq in enquiry:

customer=models.Customer.objects.get(id=enq.customer_id)

customers.append(customer)

dict={

'total_customer':models.Customer.objects.all().count(),

'total_mechanic':models.Mechanic.objects.all().count(),

'total_request':models.Request.objects.all().count(),

'total_feedback':models.Feedback.objects.all().count(),

'data':zip(customers,enquiry),

return render(request,'vehicle/admin_dashboard.html',context=dict)

@login_required(login_url='adminlogin')

def admin_customer_view(request):

return render(request,'vehicle/admin_customer.html')

@login_required(login_url='adminlogin')

def admin_view_customer_view(request):

customers=models.Customer.objects.all()

25
return render(request,'vehicle/admin_view_customer.html',{'customers':customers})

@login_required(login_url='adminlogin')

def delete_customer_view(request,pk):

customer=models.Customer.objects.get(id=pk)

user=models.User.objects.get(id=customer.user_id)

user.delete()

customer.delete()

return redirect('admin-view-customer')

@login_required(login_url='adminlogin')

def update_customer_view(request,pk):

customer=models.Customer.objects.get(id=pk)

user=models.User.objects.get(id=customer.user_id)

userForm=forms.CustomerUserForm(instance=user)

customerForm=forms.CustomerForm(request.FILES,instance=customer)

mydict={'userForm':userForm,'customerForm':customerForm}

if request.method=='POST':

userForm=forms.CustomerUserForm(request.POST,instance=user)

customerForm=forms.CustomerForm(request.POST,request.FILES,instance=customer)

if userForm.is_valid() and customerForm.is_valid():

user=userForm.save()

user.set_password(user.password)

user.save()

customerForm.save()

26
return redirect('admin-view-customer')

return render(request,'vehicle/update_customer.html',context=mydict)

@login_required(login_url='adminlogin')

def admin_add_customer_view(request):

userForm=forms.CustomerUserForm()

customerForm=forms.CustomerForm()

mydict={'userForm':userForm,'customerForm':customerForm}

if request.method=='POST':

userForm=forms.CustomerUserForm(request.POST)

customerForm=forms.CustomerForm(request.POST,request.FILES)

if userForm.is_valid() and customerForm.is_valid():

user=userForm.save()

user.set_password(user.password)

user.save()

customer=customerForm.save(commit=False)

customer.user=user

customer.save()

my_customer_group = Group.objects.get_or_create(name='CUSTOMER')

my_customer_group[0].user_set.add(user)

return HttpResponseRedirect('/admin-view-customer')

return render(request,'vehicle/admin_add_customer.html',context=mydict)

@login_required(login_url='adminlogin')

def admin_view_customer_enquiry_view(request):

27
enquiry=models.Request.objects.all().order_by('-id')

customers=[]

for enq in enquiry:

customer=models.Customer.objects.get(id=enq.customer_id)

customers.append(customer)

return
render(request,'vehicle/admin_view_customer_enquiry.html',{'data':zip(customers,enqui
ry)})

@login_required(login_url='adminlogin')

def admin_view_customer_invoice_view(request):

enquiry=models.Request.objects.values('customer_id').annotate(Sum('cost'))

print(enquiry)

customers=[]

for enq in enquiry:

print(enq)

customer=models.Customer.objects.get(id=enq['customer_id'])

customers.append(customer)

return
render(request,'vehicle/admin_view_customer_invoice.html',{'data':zip(customers,enqui
ry)})

@login_required(login_url='adminlogin')

def admin_mechanic_view(request):

return render(request,'vehicle/admin_mechanic.html')

28
@login_required(login_url='adminlogin')

def admin_approve_mechanic_view(request):

mechanics=models.Mechanic.objects.all().filter(status=False)

return
render(request,'vehicle/admin_approve_mechanic.html',{'mechanics':mechanics})

@login_required(login_url='adminlogin')

def approve_mechanic_view(request,pk):

mechanicSalary=forms.MechanicSalaryForm()

if request.method=='POST':

mechanicSalary=forms.MechanicSalaryForm(request.POST)

if mechanicSalary.is_valid():

mechanic=models.Mechanic.objects.get(id=pk)

mechanic.salary=mechanicSalary.cleaned_data['salary']

mechanic.status=True

mechanic.save()

else:

print("form is invalid")

return HttpResponseRedirect('/admin-approve-mechanic')

return
render(request,'vehicle/admin_approve_mechanic_details.html',{'mechanicSalary':mech
anicSalary})

@login_required(login_url='adminlogin')

def delete_mechanic_view(request,pk):

mechanic=models.Mechanic.objects.get(id=pk)

29
user=models.User.objects.get(id=mechanic.user_id)

user.delete()

mechanic.delete()

return redirect('admin-approve-mechanic')

@login_required(login_url='adminlogin')

def admin_add_mechanic_view(request):

userForm=forms.MechanicUserForm()

mechanicForm=forms.MechanicForm()

mechanicSalary=forms.MechanicSalaryForm()

mydict={'userForm':userForm,'mechanicForm':mechanicForm,'mechanicSalary':mechan
icSalary}

if request.method=='POST':

userForm=forms.MechanicUserForm(request.POST)

mechanicForm=forms.MechanicForm(request.POST,request.FILES)

mechanicSalary=forms.MechanicSalaryForm(request.POST)

if userForm.is_valid() and mechanicForm.is_valid() and


mechanicSalary.is_valid():

user=userForm.save()

user.set_password(user.password)

user.save()

mechanic=mechanicForm.save(commit=False)

mechanic.user=user

mechanic.status=True

mechanic.salary=mechanicSalary.cleaned_data['salary']

30
mechanic.save()

my_mechanic_group = Group.objects.get_or_create(name='MECHANIC')

my_mechanic_group[0].user_set.add(user)

return HttpResponseRedirect('admin-view-mechanic')

else:

print('problem in form')

return render(request,'vehicle/admin_add_mechanic.html',context=mydict)

@login_required(login_url='adminlogin')

def admin_view_mechanic_view(request):

mechanics=models.Mechanic.objects.all()

return render(request,'vehicle/admin_view_mechanic.html',{'mechanics':mechanics}

@login_required(login_url='adminlogin')

def delete_mechanic_view(request,pk):

mechanic=models.Mechanic.objects.get(id=pk)

user=models.User.objects.get(id=mechanic.user_id)

user.delete()

mechanic.delete()

return redirect('admin-view-mechanic')

@login_required(login_url='adminlogin')

def update_mechanic_view(request,pk):

mechanic=models.Mechanic.objects.get(id=pk)

user=models.User.objects.get(id=mechanic.user_id)

userForm=forms.MechanicUserForm(instance=user)

31
mechanicForm=forms.MechanicForm(request.FILES,instance=mechanic)

mydict={'userForm':userForm,'mechanicForm':mechanicForm}

if request.method=='POST':

userForm=forms.MechanicUserForm(request.POST,instance=user)

mechanicForm=forms.MechanicForm(request.POST,request.FILES,instance=mechanic
)

if userForm.is_valid() and mechanicForm.is_valid():

user=userForm.save()

user.set_password(user.password)

user.save()

mechanicForm.save()

return redirect('admin-view-mechanic')

return render(request,'vehicle/update_mechanic.html',context=mydict)

@login_required(login_url='adminlogin')

def admin_view_mechanic_salary_view(request):

mechanics=models.Mechanic.objects.all()

return
render(request,'vehicle/admin_view_mechanic_salary.html',{'mechanics':mechanics})

@login_required(login_url='adminlogin')

def update_salary_view(request,pk):

mechanicSalary=forms.MechanicSalaryForm()

if request.method=='POST':

mechanicSalary=forms.MechanicSalaryForm(request.POST)

if mechanicSalary.is_valid():

32
mechanic=models.Mechanic.objects.get(id=pk)

mechanic.salary=mechanicSalary.cleaned_data['salary']

mechanic.save()

else:

print("form is invalid")

return HttpResponseRedirect('/admin-view-mechanic-salary')

return
render(request,'vehicle/admin_approve_mechanic_details.html',{'mechanicSalary':mech
anicSalary})

@login_required(login_url='adminlogin')

def admin_request_view(request):

return render(request,'vehicle/admin_request.html')

@login_required(login_url='adminlogin')

def admin_view_request_view(request):

enquiry=models.Request.objects.all().order_by('-id')

customers=[]

for enq in enquiry:

customer=models.Customer.objects.get(id=enq.customer_id)

customers.append(customer)

return
render(request,'vehicle/admin_view_request.html',{'data':zip(customers,enquiry)})

@login_required(login_url='adminlogin')

def change_status_view(request,pk):

adminenquiry=forms.AdminApproveRequestForm()

33
if request.method=='POST':

adminenquiry=forms.AdminApproveRequestForm(request.POST)

if adminenquiry.is_valid():

enquiry_x=models.Request.objects.get(id=pk)

enquiry_x.mechanic=adminenquiry.cleaned_data['mechanic']

enquiry_x.cost=adminenquiry.cleaned_data['cost']

enquiry_x.status=adminenquiry.cleaned_data['status']

enquiry_x.save()

else:

print("form is invalid")

return HttpResponseRedirect('/admin-view-request')

return
render(request,'vehicle/admin_approve_request_details.html',{'adminenquiry':adminenq
uiry})

@login_required(login_url='adminlogin')

def admin_delete_request_view(request,pk):

requests=models.Request.objects.get(id=pk)

requests.delete()

return redirect('admin-view-request')

@login_required(login_url='adminlogin')

def admin_add_request_view(request):

enquiry=forms.RequestForm()

adminenquiry=forms.AdminRequestForm()

mydict={'enquiry':enquiry,'adminenquiry':adminenquiry}

34
if request.method=='POST':

enquiry=forms.RequestForm(request.POST)

adminenquiry=forms.AdminRequestForm(request.POST)

if enquiry.is_valid() and adminenquiry.is_valid():

enquiry_x=enquiry.save(commit=False)

enquiry_x.customer=adminenquiry.cleaned_data['customer']

enquiry_x.mechanic=adminenquiry.cleaned_data['mechanic']

enquiry_x.cost=adminenquiry.cleaned_data['cost']

enquiry_x.status='Approved'

enquiry_x.save()

else:

print("form is invalid")

return HttpResponseRedirect('admin-view-request')

return render(request,'vehicle/admin_add_request.html',context=mydict)

@login_required(login_url='adminlogin')

def admin_approve_request_view(request):

enquiry=models.Request.objects.all().filter(status='Pending')

return render(request,'vehicle/admin_approve_request.html',{'enquiry':enquiry})

@login_required(login_url='adminlogin')

def approve_request_view(request,pk):

adminenquiry=forms.AdminApproveRequestForm()

if request.method=='POST':

adminenquiry=forms.AdminApproveRequestForm(request.POST)

35
if adminenquiry.is_valid():

enquiry_x=models.Request.objects.get(id=pk)

enquiry_x.mechanic=adminenquiry.cleaned_data['mechanic']

enquiry_x.cost=adminenquiry.cleaned_data['cost']

enquiry_x.status=adminenquiry.cleaned_data['status']

enquiry_x.save()

else:

print("form is invalid")

return HttpResponseRedirect('/admin-approve-request')

return
render(request,'vehicle/admin_approve_request_details.html',{'adminenquiry':adminenq
uiry})

@login_required(login_url='adminlogin')

def admin_view_service_cost_view(request):

enquiry=models.Request.objects.all().order_by('-id')

customers=[]

for enq in enquiry:

customer=models.Customer.objects.get(id=enq.customer_id)

customers.append(customer)

print(customers)

return
render(request,'vehicle/admin_view_service_cost.html',{'data':zip(customers,enquiry)})

@login_required(login_url='adminlogin')

def update_cost_view(request,pk):

36
updateCostForm=forms.UpdateCostForm()

if request.method=='POST':

updateCostForm=forms.UpdateCostForm(request.POST)

if updateCostForm.is_valid():

enquiry_x=models.Request.objects.get(id=pk)

enquiry_x.cost=updateCostForm.cleaned_data['cost']

enquiry_x.save()

else:

print("form is invalid")

return HttpResponseRedirect('/admin-view-service-cost')

return
render(request,'vehicle/update_cost.html',{'updateCostForm':updateCostForm})

@login_required(login_url='adminlogin')

def admin_mechanic_attendance_view(request):

return render(request,'vehicle/admin_mechanic_attendance.html')

@login_required(login_url='adminlogin')

def admin_take_attendance_view(request):

mechanics=models.Mechanic.objects.all().filter(status=True)

aform=forms.AttendanceForm()

if request.method=='POST':

form=forms.AttendanceForm(request.POST)

if form.is_valid():

Attendances=request.POST.getlist('present_status')

date=form.cleaned_data['date']

37
for i in range(len(Attendances)):

AttendanceModel=models.Attendance()

AttendanceModel.date=date

AttendanceModel.present_status=Attendances[i]

print(mechanics[i].id)

print(int(mechanics[i].id))

mechanic=models.Mechanic.objects.get(id=int(mechanics[i].id))

AttendanceModel.mechanic=mechanic

AttendanceModel.save()

return redirect('admin-view-attendance')

else:

print('form invalid')

return
render(request,'vehicle/admin_take_attendance.html',{'mechanics':mechanics,'aform':afo
rm})

@login_required(login_url='adminlogin')

def admin_view_attendance_view(request):

form=forms.AskDateForm()

if request.method=='POST':

form=forms.AskDateForm(request.POST)

if form.is_valid():

date=form.cleaned_data['date']

attendancedata=models.Attendance.objects.all().filter(date=date)

38
mechanicdata=models.Mechanic.objects.all().filter(status=True)

mylist=zip(attendancedata,mechanicdata)

return
render(request,'vehicle/admin_view_attendance_page.html',{'mylist':mylist,'date':date})

else:

print('form invalid')

return render(request,'vehicle/admin_view_attendance_ask_date.html',{'form':form})

@login_required(login_url='adminlogin')

def admin_report_view(request):

reports=models.Request.objects.all().filter(Q(status="Repairing Done") |
Q(status="Released"))

dict={

'reports':reports,

return render(request,'vehicle/admin_report.html',context=dict)

@login_required(login_url='adminlogin')

def admin_feedback_view(request):

feedback=models.Feedback.objects.all().order_by('-id')

return render(request,'vehicle/admin_feedback.html',{'feedback':feedback

#!/usr/bin/env python

"""Django's command-line utility for administrative tasks."""

import os

import syS

39
def main():

os.environ.setdefault('DJANGO_SETTINGS_MODULE',
'vehicleservicemanagement.settings')

try:

from django.core.management import execute_from_command_line

except ImportError as exc:

raise ImportError(

"Couldn't import Django. Are you sure it's installed and "

"available on your PYTHONPATH environment variable? Did you "

"forget to activate a virtual environment?"

) from exc

execute_from_command_line(sys.argv)

if _name_ == '_main_':

main()

6.2 HTML CODE

<!DOCTYPE html>

<html>

<head>

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-


awesome/4.7.0/css/font-awesome.min.css">

<style>

footer {

padding: 0px 0px 0px 0px;

40
background-color: #4f55c7;

margin: 0px;

.fa {

padding: 20px;

font-size: 23px;

width: 60px;

text-align: center;

text-decoration: none;

margin: 5px 2px;

border-radius: 50%;

.fa:hover {

opacity: 0.5;

text-decoration: none;

.fa-facebook {

background: #3B5998;

color: white;

margin-top: 30px;

.fa-whatsapp {

background: #25d366;

41
color: white;

.fa-twitter {

background: #55ACEE;

color: white;

.fa-instagram {

background: #125688;

color: white;

p{

text-align: center;

</style>

</head>

<footer>

<p>

<a href="https://facebook.com/" class="fa fa-facebook"></a>

<a
href="https://api.whatsapp.com/send?phone=919572181024&text=Hello%20Sumit.%0
d%0aHow%20are%20you%20%3f%0d%0aI%20came%20from%20your%20website.&
source=&data=#" class="fa fa-whatsapp"></a>

<a href="https://instagram.com/" class="fa fa-instagram"></a>

<a href="https://twitter.com/" class="fa fa-twitter"></a>

42
</p>

<br>

<div class="container">

<div class="row">

<div class="col-md-12 col-sm-12">

<div style="color:#ffffff;" class="wow fadeInUp footer-copyright">

<p>Made in India <br>

Copyright &copy; 2020 Vehicle Service Management </p>

</div>

</div> </div>

</div></footer>

</html>

43
7.TESTING TECHNIQUES

TESTING
Testing is a process of executing a program with the intent of finding an error. A good

test case is one that has a high probability of finding an as-yet –undiscovered error. A

successful test is one that uncovers an as-yet- undiscovered error. System testing is the

stage of implementation, which is aimed at ensuring that the system works accurately and

efficiently as expected before live operation commences. It verifies that the whole set of

programs hang together. System testing requires a test consists of several key activities

and steps for run program, string, system and is important in adopting a successful new

system. This is the last chance to detect and correct errors before the system is installed

for user acceptance testing.

The software testing process commences once the program is created and the

documentation and related data structures are designed. Software testing is essential for

correcting errors. Otherwise the program or the project is not said to be complete.

Software testing is the critical element of software quality assurance and represents the

ultimate the review of specification design and coding. Testing is the process of executing

the program with the intent of finding the error. A good test case design is one that as a

probability of finding an yet undiscovered error. A successful test is one that uncovers an

yet undiscovered error. Any engineering product can be tested in one of the two ways:

of the project with the help of the user by negotiating to establish a method for resolving

deficiencies. Thus the proposed system under consideration has been tested by using

validation testing and found to be working satisfactorily. Though there were deficiencies

in the system they were not catastrophic.

44
7.1 UNIT TESTING

Purpose: To verify the correctness of individual components (functions, methods, classes)

in your code.

How: Write test cases for each function or method to ensure they behave as expected.

Framework: You can use the Pytest framework1 for efficient and effective unit testing.

7.2 INTEGRATION TESTING


Purpose: To verify that different components of your system work together correctly.

How: Test interactions between modules, APIs, and database connections.

Example: Ensure that the vehicle information is correctly stored in the database when a

new vehicle is added through the user interface.

7.3 FUNCTIONAL TESTING


Purpose: To validate the system’s functionality from an end-user perspective.

How: Create test scenarios that simulate real-world usage.

Example: Test the process of booking a vehicle service appointment, including input

validation and error handling.

7.4 PERFORMANCE TESTING

Purpose:Evaluate system performance under load. Test scenarios like:

How:Adding a large number of vehicles to the system.

Example:Simulating heavy traffic during peak hours.

7.5 BOUNDARY TESTING


Purpose: To test values at the boundaries of input domains.

45
How: Identify edge cases (minimum, maximum, and critical values) and test them.

Example: Test the system’s behavior when a vehicle’s mileage exceeds a certain

threshold.

7.6 EQUIVALENCE CLASS TESTING


Purpose: To group input values into equivalence classes and test representative values

from each class.

How: Divide input values into classes based on their behavior.

Example: Test different vehicle types (e.g., sedan, SUV, truck) to ensure consistent

handling across classes.

7.7 REGRESSION TESTING


Purpose: To ensure that new changes do not break existing functionality.

How: Re-run existing test cases after making updates to the codebase.

Example: After adding a new feature (e.g., spare parts inventory management), verify that

existing features (e.g., customer billing) still work correctly.

7.8 USER ACCEPTANCE TESTING


User acceptance of the system is key factor for the success of any system. The system

under consideration is tested for user acceptance by constantly keeping in touch with

prospective system and user at the time of developing and making changes whenever

required. This is done in regarding to the following points.

● Input screen design.

● Output screen design

46
8.OUTPUT SCREEN

Figure 7: Home page

Figure 8: Customer Signup

47
Figure 9: Customer Loginpage

Figure 10: Customer Dashboard

48
Figure 11: Mechanic Dashboard

Figure 12: Admin Dashboard

49
9.CONCLUSION

Vehicles need to be serviced to ensure that they are in good shape and function well.

The result of the study showed that the developed system met the needs and requirements

of the respondents and intended users.

The result showed that the respondents rated the system satisfactorily in terms of user

acceptability, effectiveness, quality, productivity, and reliability.

The system will both benefit vehicle garages and customers. For vehicle garages, utilizing

the system to operate the business will help them grow and increase business efficiency.

For customers, can easily and conveniently make transactions for vehicle servicing.

By optimizing operations and enhancing customer satisfaction, the vehicle maintenance

system contributes to the long-term sustainability of both vehicle garages and the

automotive industry as a whole. Sustainable practices not only benefit the environment

but also foster stability and resilience in the face of economic fluctuations and market

changes. This system has a positive impact on the local community by creating

employment opportunities, supporting small businesses, and promoting economic growth.

As vehicle garages thrive, they contribute to the overall prosperity and well-being of the

communities they serve, fostering a cycle of mutual benefit and support.

50
10.FUTURE SCOPE

This software eliminates manual labor and any associated issues. It is a simple

approach to learning more about the many products that are available at supermarkets.

The company, product id, product name, and the number of quantities available are

the only information that is often provided when we seek information on a certain

product. After receiving the information, we may reach the product firm's website by

simply clicking on the name of the product. The option for searching is the next

improvement we can make.

From our website, we may easily search for a certain product firm. These two

improvements are the best we can come up with for now.

51
11.REFERENCES

[1] Dr.C K Gomathy, Article: A Study on the recent Advancements in Online Surveying ,

International Journal of Emerging technologies and Innovative Research ( JETIR )

Volume 5 | Issue 11 | ISSN : 2349-5162, P.No:327-331, Nov-2018.

[2] Dr.C.K.Gomathy,C K Hemalatha, Article: A Study On Employee Safety And Health

Management International Research Journal Of Engineering And Technology (Irjet)-

Volume: 08 Issue: 04 | Apr 2021.

[3] Dr.C K Gomathy, Article: A Study on the Effect of Digital Literacy and information

Management, IAETSD Journal for Advanced Research In Applied Sciences, Volume 7

Issue 3, P.No-51-57, ISSN NO: 2279-543X, Mar/2018.

[4] Dr.C K Gomathy, Article: An Effective Innovation Technology In Enhancing

Teaching And Learning Of Knowledge Using Ict Methods, International Journal Of

Contemporary Research In Computer Science And Technology (Ijcrcst) E-Issn: 2395-

5325 Volume3, Issue 4,P.No-10-13, April ’2017.

[5] Dr.C K Gomathy, Article: Supply chain-Impact of importance and Technology in

Software Release Management, International Journal of Scientific Research in Computer

Science Engineering and Information Technology (IJSRCSEIT ) Volume 3 | Issue 6 |

ISSN : 2456-3307, P.No:1-4, July-2018.

52
ISSN (Online) 2581-9429
IJARSCT
International Journal of Advanced Research in Science, Communication and Technology (IJARSCT)
International Open-Access, Double-Blind, Peer-Reviewed, Refereed, Multidisciplinary Online Journal
Impact Factor: 7.53 Volume 4, Issue 2, May 2024

Vehicle Maintenance System using Python


D Swarna1, R Bhavani2, A Akhila3, J Sharmila4, K Rakesh5, D Saisusheel6
Assistant Professor, Department of Computer Science & Engineering1
UG Students, Department of Computer Science and Engineering2,3,4,5,6
Christu Jyothi Institute of Technology & Science, Jangaon, Telangana, India

Abstract: Owners of vehicles can avoid unforeseen car problems by maintaining their vehicles regularly.
Early detection of vehicle concerns is crucial to preventing them from developing into serious difficulties.
Owners of vehicles frequently inquire about service at auto shops. Vehicle technicians examine crucial
parts of the vehicle and fix problems to make sure they are in good condition and won't break down
suddenly. The study was carried out by the researchers to evaluate the everyday activities and transactions
carried out in auto repair facilities. The researchers gathered preliminary data and discovered that the
majority of auto repair companies or garages still handle their daily transactions manually. Customer
records are still entered manually, as are transactions with clients, tracking of vehicle repairs as they are
made, updates on vehicle services, and billing. The functioning of the garage and the response time to client
inquiries will be slowed by the ongoing usage of manual procedures. The researchers have identified a need
to modernize how auto repair shops work. Customers and car garages will both profit from the system's
installation. Utilizing the technology to run the company will help car garages expand and improve
operational efficiency. Customers may do business for car service easily and comfortably

Keywords: vehicles

I. INTRODUCTION
Vehicles now play a significant role in daily life seen. The vast majority of individuals commute daily using the
automobile. Regular maintenance helps ensure that the car runs smoothly and that fuel is used effectively. Another
issue is that when automobiles are taken in for servicing or maintenance, it is presumed that repairs would be made
carefully, but it has been noted that multiple vehicle accidents occur each year as a result of the neglect of repair
facilities and car dealers.
When the vehicle is handed over for repair, the problem of confidence is crucial. Customers are frequently taken
advantage of under the name of service. A serious issue is the replacement of original parts with outdated ones.
Additionally, it might be challenging for clients to confirm that the service providers are doing the tasks for which they
are paying. Service providers take advantage of this circumstance and overcharge customers. The practice of "periodic
vehicle maintenance," which mandates that the vehicle have periodic servicing and maintenance, is widely used.
A vehicle's service life is typically determined by either a predetermined time frame or the mileage travelled. Generally
speaking, it is advised to get the car serviced every six months or 10,000 km. However, the problem with "periodic
vehicle maintenance" is that it's difficult to determine which parts need to be repaired or replaced, which might lead to
repairs or replacements of parts that are still in good shape. Predictive vehicle maintenance proves useful in this
situation. This data is obtained from numerous built-in or customized sensors in the car that are used to keep track of
the condition of various components. To analyze and make decisions, this data is relayed via the internet, and the
chance of failure in the future is then predicted. When a consumer uses this approach to choose when to service their
automobile and which part to fix, it saves them a lot of time and money since it gives them transparency. A certain
system could occasionally require maintenance or repair before the next scheduled due date. The solution effectively
manages this problem since the user instantly receives a warning on their mobile application. This prevents the buyer
from having to pay more money for the additional damage the
automobile would have sustained if the defective item had been driven. Given that the service center, already has
cameras installed, our solution makes advantage of such infrastructure.

Copyright to IJARSCT DOI: 10.48175/IJARSCT-18194 624


www.ijarsct.co.in
ISSN (Online) 2581-9429
2581
IJARSCT
International Journal of Advanced Research in Science, Communication and Technology (IJARSCT)
International Open-Access,
Access, Double
Double-Blind, Peer-Reviewed, Refereed, Multidisciplinary Online Journal
Impact Factor: 7.53 Volume 4, Issue 2, May 2024

II. PROBLEM DEFINITION


This solution will streamline the administrative tasks related to handling business transactions in vehicles garage. The
following transactions are included in the list: recording customer records, tracking the status of car repairs,
updating vehicle
hicle service orders, managing vehicle service schedules, maintaining maintenance logs, dealing with
customers, and billing. The suggested idea would do away with manual processes and transactions in auto repair
facilities. The system will operate as a hub for transactions that can be accessed by clients and technicians working
on vehicles, as well as monitored by an administrator. The suggested strategy would boost operational
effectiveness and overall client happiness when it comes to receiving car service.

III. MOTIVATION
Since the initial booking and charge estimation are handled directly by the website, less time is needed to visit the store
and complete these tasks. the client may access it without downloading any apps to their phone. The user doesn't need a
laptop to open the website because it is also mobile-accessible.
mobile

IV.
I SYSTEM ARCHITECTURE
The building of the Vehicle Service Management System in Django is suggested in this essay. The solution will
streamline the administrative
tive tasks related to handling business transactions in a car garage. The following transactions
are included in the list: recording customer records, tracking the status of car repairs, updating vehicle service
orders, managing vehicle service ce schedules, maintaining maintenance logs, dealing with customers, and billing. The
suggested idea would do away with manual processes and transactions in auto repair facilities. The system will
operate as a hub for transactions that can be accessed by clients and technicians working on vehicles, as well as
monitored by an administrator. The suggested strategy would boost operational effectiveness and overall client
happiness when it comes to receiving car service. 1Time-consuming:
1Time Since the initial booking and charge estimation
are handled directly by the website, less time is needed to visit the store and complete these tasks.Regular
tasks.Regular maintenance
is essential for keeping vehicles in optimal condition and preventing unexpected breakdowns. With a maintenance
system in place, timely servicing and inspections can be scheduled, ensuring that vehicles are well well-maintained and
reliable.

Figure 1: System Architecture

V. PROPOSED SYSTEM
The proposed Vehicle Maintenance System (VMS) addresses these shortcomings by introducing a comprehensive,
automated solution that streamlines the entire maintenance process:

Copyright to IJARSCT DOI: 10.48175/


10.48175/IJARSCT-18194 625
www.ijarsct.co.in
ISSN (Online) 2581-9429
IJARSCT
International Journal of Advanced Research in Science, Communication and Technology (IJARSCT)
International Open-Access, Double-Blind, Peer-Reviewed, Refereed, Multidisciplinary Online Journal
Impact Factor: 7.53 Volume 4, Issue 2, May 2024

VMS automates job scheduling, parts inventory management, and service tracking, leading to increased efficiency and
reduced turnaround times for maintenance tasks.
The system provides secure, web-based access to stakeholders, enabling them to retrieve and update information from
anywhere at any time.
Improved Transparency: VMS offers real-time visibility into job statuses, service histories, and billing details, fostering
transparency and trust between service providers and customers. By automating repetitive tasks and centralizing data
management, VMS reduces administrative workload, allowing staff to focus on delivering high-quality services. The
user-friendly interface, timely communication, and transparent processes of VMS contribute to higher customer
satisfaction by ensuring prompt service delivery, clear billing, and consistent service quality.
Overall, the proposed VMS represents a significant advancement over the existing manual system, offering numerous
advantages in terms of efficiency, accessibility, transparency, administrative overhead, and customer satisfaction.

VI. MODULES USED


1. Admin Module
Dashboard: The admin may view all of the details in this part, including the total number of users registered, total
inquiries, total mechanics, and total services. Using a customer's phone number, email address, or contact number, the
administrator can search inquiries in this section. Service Search: The administrator can use the phone number, email
address, or contact number of a client to search for services in this area. Mechanics: The administrator can control
mechanics in this area (add, delete, and update). the type of vehicle. The administrator can control the vehicle category
in this area (add, delete and update) Reg Users: The administrator can examine and edit user details in this area. Service
Demand: The administrator may add service charges (service fee and any extra parts fees that may apply) in this area.
Based on status, the admin may view services (pending services, rejected services, and complete services). Admins can
also approve pending policies. Client Inquiry The administrator can answer client inquiries in this section as well as
view inquiries to which no customers have responded.

2. Customers Module
Dashboard Enquiry: Here, the user may complete the form and see whether or not his inquiry has received a response
(which is done by the admin). Service Request: In this part, the user may complete the service form, check the progress
of the service, see how much is being charged for the service, and print an amount slip (which is done by the admin).
Users may also change their passwords, retrieve their passwords, and update their profiles.
3.Mechanics Module
The mechanic may examine the tasks the admin has assigned him in this section. He can also look up the attendance
record. The vehicle's state is updated by the mechanic module, including whether or not it has been fixed.

VII. ACTIVITY DIAGRAM


Activity diagram is a graphical representation of workflows of stepwise activities and actions with support for choice,
iteration and concurrency. An activity diagram shows the overall flow of control.
The most important shape types:
 Rounded rectangles represent activities.
 Diamonds represent decisions.
 Bars represent the start or end of concurrent activities.
 A black circle represents the start of the workflow.
 An encircled circle represents the end of the workflow.

Copyright to IJARSCT DOI: 10.48175/IJARSCT-18194 626


www.ijarsct.co.in
ISSN (Online) 2581-9429
2581
IJARSCT
International Journal of Advanced Research in Science, Communication and Technology (IJARSCT)
International Open-Access,
Access, Double
Double-Blind, Peer-Reviewed, Refereed, Multidisciplinary Online Journal
Impact Factor: 7.53 Volume 4, Issue 2, May 2024

Figure 2: Activity Diagram

VIII. RESULTS

Figure 3: Home page

Figure 4: Customer Signup

Copyright to IJARSCT DOI: 10.48175/


10.48175/IJARSCT-18194 627
www.ijarsct.co.in
ISSN (Online) 2581-9429
2581
IJARSCT
International Journal of Advanced Research in Science, Communication and Technology (IJARSCT)
International Open-Access,
Access, Double
Double-Blind, Peer-Reviewed, Refereed, Multidisciplinary Online Journal
Impact Factor: 7.53 Volume 4, Issue 2, May 2024

Figure 5: Customer Login page

Figure 6: Customer Dashboard

Figure 7: Mechanic Dashboard

Figure 8: Admin Dashboard

IX. CONCLUSION
Vehicles need to be serviced to ensure that they are in good shape and function well.
The result of the study showed that the developed system met the needs and requirements of the respondents and
intended users.
Copyright to IJARSCT DOI: 10.48175/
10.48175/IJARSCT-18194 628
www.ijarsct.co.in
ISSN (Online) 2581-9429
IJARSCT
International Journal of Advanced Research in Science, Communication and Technology (IJARSCT)
International Open-Access, Double-Blind, Peer-Reviewed, Refereed, Multidisciplinary Online Journal
Impact Factor: 7.53 Volume 4, Issue 2, May 2024

The result showed that the respondents rated the system satisfactorily in terms of user acceptability, effectiveness,
quality, productivity, and reliability.
The system will both benefit vehicle garages and customers. For vehicle garages, utilizing the system to operate the
business will help them grow and increase business efficiency. For customers, can easily and conveniently make
transactions for vehicle servicing.
By optimizing operations and enhancing customer satisfaction, the vehicle maintenance system contributes to the long-
term sustainability of both vehicle garages and the automotive industry as a whole. Sustainable practices not only
benefit the environment but also foster stability and resilience in the face of economic fluctuations and market changes.
This system has a positive impact on the local community by creating employment opportunities, supporting small
businesses, and promoting economic growth. As vehicle garages thrive, they contribute to the overall prosperity and
well-being of the communities they serve, fostering a cycle of mutual benefit and support.

REFERENCES
[1] Dr.C K Gomathy, Article: A Study on the recent Advancements in Online Surveying , International Journal of
Emerging technologies and Innovative Research ( JETIR ) Volume 5 | Issue 11 | ISSN : 2349-5162, P.No:327-331,
Nov-2018.
[2] Dr.C.K.Gomathy,C K Hemalatha, Article: A Study On Employee Safety And Health Management International
Research Journal Of Engineering And Technology (Irjet)- Volume: 08 Issue: 04 | Apr 2021.
[3] Dr.C K Gomathy, Article: A Study on the Effect of Digital Literacy and information Management, IAETSD
Journal for Advanced Research In Applied Sciences, Volume 7 Issue 3, P.No-51-57, ISSN NO: 2279-543X, Mar/2018.
[4] Dr.C K Gomathy, Article: An Effective Innovation Technology In Enhancing Teaching And Learning Of
Knowledge Using Ict Methods, International Journal Of Contemporary Research In Computer Science And Technology
(Ijcrcst) E-Issn: 2395-5325 Volume3, Issue 4,P.No-10-13, April ’2017.
[5] Dr.C K Gomathy, Article: Supply chain-Impact of importance and Technology in Software Release Management,
International Journal of Scientific Research in Computer Science Engineering and Information Technology
(IJSRCSEIT ) Volume 3 | Issue 6 | ISSN : 2456-3307, P.No:1-4, July-2018.

Copyright to IJARSCT DOI: 10.48175/IJARSCT-18194 629


www.ijarsct.co.in

You might also like