Professional Documents
Culture Documents
GC University, Faisalabad.
Automobile Accountant
Abstract
This is a live project which was developed for a local CAR Agent.
It is useful to the Agent to maintain the Customers details, Sales Details, Company
items and services and also CAR Details. If any customer buy a CAR in loan that
persons CAR will recognizes with the help of CAR no.CAR Recognition System,
which will cover the following modules The agent will enter the CAR No It will
help the user to search the CAR details and the required details of the customer
.The agent enters the customer details and maintain company details.Regarding the
registration module, it contains the information about newly joined User details
like name of the user, password etc. CAR Details module contains the details like
Name of the CAR, send from, send to etc. Billing and Payment Detail will contain
the details like Actual Amount to be paid, emi. Searching is having the details of
the customer. Any agent will login and search the details of the customer it will
show all details like customer Details, CAR name, payment type etc.This
“Automobile Accountant” project mainly contains the CAR information and loan
recovering details. The CAR is purchased that CAR amount will be cleared or not.
It will clear then its ok. Other wise the agent will search the details of the customer
and recover the loan.
CHAPTER-1
1. Introduction
2. Stakeholders
3. Users of the system
4. Functional Requirements
a. List of Functional Requirements
b. Description of each requirement in Requirement Shell
5. Nonfunctional Requirements
6. Schedule of Project
CHAPTER-2
ANALYSIS
CHAPTER-3
DESIGN
CHAPTER-4
Implementation
CHAPTER-5
Testing
1. Test Cases
GLOSSARY
CHAPTER-1
The existing tools do not consider all the factors that affect a project directly.
The entire process is built upon using just one or two parameters which do not give
us complete and desired results. So we need a system where we can deliver the
correct results that would ultimately lead to a position where the overall cost and
time will be consolidated. . No specific training is required for the distributors to
use this application. They can easily use the tool that decreases manual hours
spending for normal things and hence increases the performance. It is very easy to
record the information of online sales and purchases in the databases Firstly, the
customers or the users need to sign up for the system before ordering the cars.
Secondly, the can login with their email and password that the entered. They can
see the list of cars according to their brands. If they like it they can book cars. After
that admin will see the orders and provide them if they had. Admin has the
authority to add new cars. The administrator can see all the orders done by the
customers with the car Model, customer id and name and also the date that they
order.
Stakeholders
System Model
All the facts and figures related to a car of each model is present in this module & the viewer
can view this module after login into the system. New car details and existing car details are
added into this module. Lists of all the cars are available inside this module.All the details of the
company are added into the module. Along with the existing details, new details are also added
into this module about the company and various new companies are being updated by the
admin of the system, frequently. Via this module, the user or customer of this system can book
the cars for them. If they are not willing to book the car, then they can atleast book a test drive
for themselves. All the previous booking details are available through this module. Admin can
update the details as per the need. This module is designed specifically for the customers. They
can login into the system after getting their credentials. This module keep track of each and
every customer and all the information related to each customer is being added into this
module. This module is updated timely by the admin of this system.
Functional Requirments
As can be seen in the system model diagramed above, each of the three system components
essentially provides a layer of isolation between the end user and the database. The motivation
behind this isolation is twofold. Firstly, allowing the end user to interact with the system through
a rich interface provide a much more enjoyable user experience, particularly for the non-
technical users which will account for the majority of the system’s users. In addition, this
isolation layer also protects the integrity of the database by preventing users from taking any
action outside those which the system is designed to handle. Because of this design pattern, it is
essential to enumerate exactly which functions a user will be presented and these functions are
outlined below, grouped by component.
Login/logout
Can review brands of cars
Can review the cars of specific brand
Can see the details of specific brand
Can order the car of specific brand
Admin
Login/logout
Can see the cars currently available in showroom
Can add more cars
Can review orders
Can add new brand
Requirement Name: User Login
Customer 8 Customer 2
Satisfaction: Dissatisfaction:
Supporting Materials: NA
History: NILL
Table1.2:User Login
Requirement Name: Can review brands of cars
Originator: User
When requested
Fit Criterion:
Customer Customer
7 3
Satisfaction: Dissatisfaction:
Supporting
NA
Materials:
History: NILL
Originator: User
When requested
Fit Criterion:
Customer Customer
7 3
Satisfaction: Dissatisfaction:
Supporting
NA
Materials:
History: NILL
Originator: User
When requested
Fit Criterion:
Customer Customer
7 3
Satisfaction: Dissatisfaction:
Supporting
NA
Materials:
History: NILL
Originator: User
When requested
Fit Criterion:
Customer Customer
7 3
Satisfaction: Dissatisfaction:
Supporting
NA
Materials:
History: NILL
Admin :
Requirement Name: Admin Login
Requirement #: Req01 Requirement Type: Functional
Customer 9 Customer 1
Satisfaction: Dissatisfaction:
Supporting Materials: NA
History: NA
Table :Admin Login
Requirement Name : Can see the cars currently available in showroom
Originator: Admin
When requested
Fit Criterion:
Customer Customer
7 3
Satisfaction: Dissatisfaction:
Supporting
NA
Materials:
History: NILL
Originator: Admin
When requested
Fit Criterion:
Customer Customer
7 3
Satisfaction: Dissatisfaction:
Supporting
NA
Materials:
History: NILL
Originator: Admin
When requested
Fit Criterion:
Customer Customer
7 3
Satisfaction: Dissatisfaction:
Supporting
NA
Materials:
History: NILL
When requested
Fit Criterion:
Customer Customer
7 3
Satisfaction: Dissatisfaction:
Supporting
NA
Materials:
History: NILL
Non-functional Requirements
User Interface
Our Web Application has a formal and decent look, does not have any shocking colors,
each and every written thing is prominent and well-managed. The instructions given are easy and
have clear meaning.
Fast Response Time
Using this App in case of enter data, system shall response fast and relative to the
content.
Ease of use
It is easily understandable and easy to use ADMIN PANEL and USER PANEL.
Ease of learning
We provide the complete documentation of this project that is helpful for the users of this
project that how to use this product.
Understandability
We should use understandable icons and buttons that will be self-explanatory and the
interface of the App is not complex.
Speed and latency
• System is reliable
• It will be available for 24 hours for the user
• It will be accurate
• It will be reusable
• It will be understandable
• It will be flexible
• It will be testable
Longevity
We are using React.js and PHP environment along with My SQL Database that are easy,
understandable and flexible tools so our system will perform its working for maximum of its
capacity.
CHAPTER-2
ANALYSIS
Login/logout
2.1 Use Case Model (User)
Coding:
App.js
import React, { Component } from 'react';
// User Components
// Admin Components
componentDidMount(){
this.props.getCars();
this.props.getMessages();
render() {
return (
<div className="App">
<Router>
<div>
<Switch>
<div>
<AdminNavigatioBar />
</div>
)} />
<div>
<NavigationBar />
<TopSearchBar {...props}/>
<FooterTop />
<FooterBottom />
</div>
)} />
</Switch>
</div>
</Router>
</div>
);
function mapDispatchToProps(dispatch){
return{
Car.js
import React from 'react';
return (
<div>
<Row>
<Col md="12">
<h4>
<Link to={`/cars/${car.id}`}>
</h4>
</div>
<div className="card-body">
<Row>
<Col md="5">
</Col>
<Col md="4">
<Table className="striped">
<tbody>
<tr>
<td>Engine:</td>
<td>{car.engine}</td>
</tr>
<tr>
<td>Drive Type:</td>
<td>{car.drive_type}</td>
</tr>
<tr>
<td>Body:</td>
<td>{car.body_type}</td>
</tr>
<tr>
<td>Exterior Color:</td>
<td>{car.ext_color}</td>
</tr>
<tr>
<td>Interior Color:</td>
<td>{car.int_color}</td>
</tr>
<tr>
<td>Transmission:</td>
<td>{car.transmission}</td>
</tr>
<tr>
<td>VIN:</td>
<td>{car.vin}</td>
</tr>
</tbody>
</Table>
</Col>
<Col md="3">
<Table className="striped">
<tbody>
<tr>
<strong>
MSRP:
</strong>
</td>
<strong>
${car.price}
</strong>
</td>
</tr>
<tr>
</tr>
<tr>
<td className="text-primary text-right">
<strong>
Total:
</strong>
</td>
<strong>
${car.price-car.price*car.sale/100}
</strong>
</td>
</tr>
<tr>
</tr>
<tr>
</tr>
<tr>
<td className="text-right"></td>
<td className="text-right">
<Link to={`/cars/${car.id}`}>
</Link>
</td>
</tr>
</tbody>
</Table>
</Col>
</Row>
</div>
</div>
</Col>
</Row>
</div>
);
};
Admin.js
this.props.deleteCar(id);
}
render(){
return(
<tr>
<th scope="row">{car.id}</th>
<td>{car.year}</td>
<td>{car.make}</td>
<td>{car.model}</td>
<td>{car.body_type}</td>
<td>{car.int_color}</td>
<td>{car.price}</td>
<td>
<Link to={`/admin/editcar/${car.id}`}>
</Link>
</td>
<td><Icon
className="text-danger"
icon={bin}
onClick={(e)=>this.handleDelete(car.id)}
/></td>
</tr>
)
}) : null;
return(
<div className="container">
<br/>
<Row>
<Col md="4">
<TotalMessage totalMessages={totalMessages}/>
</Col>
<Col md="4">
</Col>
<Col md="4">
<Specials specials={specials}/>
</Col>
</Row>
<br/>
<div className="card-body">
<Table hover>
<thead className="text-success">
<tr>
<th>ID</th>
<th>YEAR</th>
<th>MAKE</th>
<th>MODEL</th>
<th>BODY</th>
<th>COLOR</th>
<th>PRICE</th>
<th>STATUS</th>
<th>EDIT</th>
<th>DELETE</th>
</tr>
</thead>
<tbody>
{inventory}
</tbody>
</Table>
</div>
</div>
</div>
);
}
function mapStateToProps(state, props){
return{
cars: state.cars,
messages: state.messages
Index.php
<!DOCTYPE HTML>
<html>
<head>
<title>Car Showroom</title>
</head>
<body>
<div class="header">
<div class="wrap">
<div class="header-bot">
<div class="logo">
</div>
<div class="cart">
<div class="menu-main">
<ul class="dc_css3_menu">
<li><a href="about.html">About</a></li>
<li><a href="services.php">Brands</a></li>
<li><a href="contact.php">Contact</a></li>
<li><a href="login.php">Login</a></li>
<li><a href="register.php">Signup</a></li>
</ul>
<div class="clear"></div>
</div>
</div>
<div class="clear"></div>
</div>
</div>
</div>
<div class="main">
<div class="content-box1">
<div class="wrap">
<div class="banner2">
</div>
</div>
</div>
</div>
<div class="main-content">
<div class="wrap">
<div class="main-box">
<div class="grid_desc">
<p class="title">TOYOTA</p>
</div>
<div class="Details">
<div class="grid_desc">
<p class="title">AUDI</p>
</div>
<div class="Details">
</div>
<div class="grid_desc">
<p class="title">BMW</p>
</div>
<div class="Details">
</div>
<div class="col_1_of_4 span_1_of_4">
<div class="grid_desc">
<p class="title">CHEVROLET</p>
</div>
<div class="Details">
</div>
<div class="clear"></div>
</div>
</div>
</div>
</div>
<div>
<a href="services.php" style="border: 1px black solid; margin-left: 65px;"> <b>Click here for more
brands ...</b></a>
</div>
<br><br>
<div class="footer">
<div class="wrap">
<div class="footer-top">
<h3>Our Company</h3>
<div class="f_menu">
<ul>
</ul>
</div>
</div>
</div>
<h3>Get in touch</h3>
<ul class="follow_icon">
<li><a href="https://www.google.com"
style="opacity: 1;"><img src="images/follow_icon.png" alt=""></a></li>
<li><a href="#" style="opacity: 1;"><img
src="images/follow_icon1.png" alt=""></a></li>
</ul>
<p>+1 111-111-1111</p>
<span>support@autoexpress.com</span>
</div>
</div>
<div class="clear"></div>
</div>
</div>
</div>
</body>
</html>
(Sample of Requirement Shell)
Req01 Functional
Requirement #: Requirement Type:
This requirement enables users to manage users of the system. Admin can
add new users, delete old users and update users info.
Description:
To manage users
Rationale:
5 10
Customer Customer
Satisfaction: Dissatisfaction:
3 Nil
Priority: Conflicts:
Supporting NA
Materials:
History:
(Sample of Fully dressed Format of Use Case)
UC # Ref: Req. #
UC Name
Description
Actor (s)
Stakeholders
Preconditions
Success Guarantee
2.
Extensions
Special requirements
Frequency of
Occurrence
Miscellaneous
Test Case Template
Test Case #: Test Case Name:
System: Sub System:
Pre-Condition:
Comments ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------