Documente Academic
Documente Profesional
Documente Cultură
PROJECT SUPERVISOR
Mian Muhammad Munir ud Din
GROUP MEMBERS
Khubaib Muzammal 2013-I-259 9849/988
Hassan Naveed 2013-I-216 9843/940
M. Umer Arif 2013-I-224 9785/948
This is to certify that Khubaib Muzammal (Roll No. 9849/988), Hassan Naveed (Roll No.
9843/940) and M. Umer Arif (Roll No. 9785/948) members of group no. 15 have worked on and
completed their software project at Govt. Islamia College, Civil Lines, Lahore affiliated with
University of the Punjab, Lahore in fulfillment of the requirements for the degree of BSIT under
In my opinion, it is satisfactory and up to the mark and therefore fulfills the requirements of BS
Information Technology.
Accepted By:
___________________
I
“AND HOLD FIRMLY TO THE ROPE OF ALLAH TOGETHER AND DON’T
BECOME DIVIDED”
DEDICATION
This work is dedicated to our supervisor, Sir Munir ud Din without his caring support it would
not have been possible. Who gave us the new concepts and methods to complete the project,
without his effort we would have never complete our project within a given deadline from
University and specially dedicated to memory of our parents. They have never failed to give us
financial and moral support, by giving all which we needed during the time we studied and
developing our system and for teaching us that even the largest task can be accomplished if it is
done one step at a time, who passed on a love of reading and respect for education, all group
members also cooperated with each other to complete this project in time, and many relatives
II
ACKNOWLEDGEMENT
Up and above, everything, all appreciation to Allah Almighty, the compassionate and merciful,
Who enabled us to elucidate a drop from the existing ocean of knowledge, countless salutation
be upon the Holy Prophet Muhammad (Sallallaho Alaihe wa Aalehi Wassalam), the city of
knowledge, Who has guided our “Ummah” to seek knowledge from cradle to grave.
We truly acknowledge the cooperation and help given by Project CS department, GICCL. It has
been a constant source of guidance throughout the course of this project. It is quite delectable
and to becoming to avail of this most propitious opportunity to articulate with utmost
gratification, our profound and intense sense if indebtedness to our affectionate Supervisor, Prof.,
Lecturer, Govt. Islamia College Civil Lines Lahore. Their proficient counseling, valuable
consummate advice and thought-provoking instruction in piloting this project. Special thanks for
We express our thankful feeling to our friends and families whose silent support led us to
1- Khubaib Muzammal
2- Hassan Naveed
3- M. Umer Arif
III
Table of Contents
ABSTRACT ............................................................................................................................................... VI
PROJECT PROPOSAL............................................................................................................................. 1
1. Introduction ........................................................................................................................................ 1
2. Literature Review ............................................................................................................................... 2
3. Methodology.......................................................................................................................................... 4
INTRODUCTION & BACKGROUND.................................................................................................... 6
1.1 Project Overview Statement .......................................................................................................... 6
1.2 Introduction to SPMS ........................................................................................................................ 6
1.3 Problem Statement ............................................................................................................................. 7
1.4 Product Function ................................................................................................................................ 8
1.5 Feasibility Study ................................................................................................................................. 9
1.6 Background ....................................................................................................................................... 11
1.7 Operating Environment ................................................................................................................... 12
1.8 Tools and Technologies/Languages................................................................................................. 12
REQUIREMENTS GATHERING & PLANNING ............................................................................... 13
2.1 Functional Requirements ................................................................................................................. 13
2.2 Non-Functional Requirements ........................................................................................................ 14
2.3 System Requirements ....................................................................................................................... 15
2.4 Gantt Chart ....................................................................................................................................... 16
Analysis & Design ..................................................................................................................................... 17
3.1 System Architecture ......................................................................................................................... 17
3.2 Data Flow Diagrams ......................................................................................................................... 17
3.3: Use Case Modeling ............................................................................................................................ 19
3.4 Domain Model..................................................................................................................................... 35
3.5 State Diagram ..................................................................................................................................... 36
3.6 Sequence Diagrams .......................................................................................................................... 37
3.7 Class Diagram ..................................................................................................................................... 51
3.8 Database Diagram: .......................................................................................................................... 52
3.9 Data Dictionary: ................................................................................................................................. 53
3.10 User Interface Design ..................................................................................................................... 57
IMPLEMENTATION .............................................................................................................................. 69
TESTING & RESULTS ........................................................................................................................... 75
5.1 Project Test Plan: ............................................................................................................................. 75
5.2 Test Cases .......................................................................................................................................... 79
IV
SYSTEM EVALUATION........................................................................................................................ 86
CONCLUSIONS & FURTHER WORK ................................................................................................ 88
USER GUIDE ........................................................................................................................................... 90
8.1 User Guide Contents .......................................................................................................................... 90
8.2 Detailed Description of User Guide .................................................................................................. 90
BIBLIOGRAPHY..................................................................................................................................... 94
APPENDICCES........................................................................................................................................ 95
V
ABSTRACT
In recent times, parking management influences drivers search time and cost for parking spaces,
parking revenue, and traffic congestion. In this project, we study state-of-the-art parking policies
in smart parking management systems (SPMS), and show that the smart parking system needs to
be “smarter”. Our design goals of the smart parking systems include: Simplify the operations of
parking systems, improve drivers’ satisfaction, increase parking revenue, and alleviate traffic
congestion without the use of hardware resources. We then model the behavior of both service
providers and drivers in smart parking systems, and explore the dynamic pricing scheme (per
hour) besides static (per day) to achieve the goals in smart parking system design. Furthermore,
we design and implement a prototype of Smart Parking System that automatically allots a
specific parking slot for a vehicle from the available slots as well as provides the functionality of
manual slot allocation. The System also provides the functionality of storing records of incoming
and outgoing vehicles and later on checking reports like strength and revenue in the form of
VI
Project Proposal
PROJECT PROPOSAL
1. Introduction
The concept of Smart parking management system (SPMS) highlights the standard of shopping
malls, schools, multi-national Companies which are one of the most important features of any
type of company. This paper focuses on the less man power and an automated system.
In our solution, as the car will enter and exit the parking lot, the records will be maintained in the
log file of the service provider. System will check and allot a specific slot from free slots to each
vehicle at the time of entry, so as to make an easy parking instead of searching for the parking
slot, which may lead to traffic congestion. Each parker will be provided a slip upon entry into
parking lot on which vehicle (car) detail (i.e. registration no. etc.), arrival time and allotted slot
are displayed. All this process is automatic except the service provider has to enter registration
number.
Data maintained by the SPMS in the form of logs includes vehicle details, in-time and out-time
of the vehicle, total stay time (i.e. total time between in-time and out-time), which is done at the
The parker will check out (pay the price) at the time of exit so at that time software will store
out-time and total stay time. The system will provide the option of static as well as dynamic
The system in question i.e. SPMS aims to provide a low cost, easy, simple implementation
catering the needs of medium level parking operators by eliminating the need of hardware,
systems into single software. Once the system is implemented successfully it can be later
extended to other robust features as the need arises and resources allow so.
2. Literature Review
Currently there are different type of parking software with different functionalities are available
in the market. A short review of those systems (functions, tools and technologies) is presented
below.
• Integration of access control and security features such as “Automatic Number Plate
and others
• Traffic Barriers
• Advance data analytics, supported by data scientists and subject matter experts, including
data-driven decision-making
• Ticket Violators
This system takes a different approach by introducing different types of permits and managing
parking accordingly.
Different types of permits include residential permits, merchant permits, city employees, bulk
Set-up, update a variety of permit types in multiple locations/ zones, permit series
number ranges
Maintain a history of all permit transactions entered into the system. Entries are
automatically date/time-stamped and available for the user to display and review [4]
A review of all these systems makes it clear that some features are overlapping, while many of
these are too much expensive and most features offered thereby are of no need to medium sized
parking operators. Our SPMS aims to provide a low cost, easy, simple implementation catering
the needs of medium level parking by eliminating the need of hardware, without compromising
on performance. It integrates useful features provided by different systems into single software.
Once the system is implemented successfully it can be later extended on to other robust features
3. Methodology
The work of the system starts at the entry of car, when a car reaches the parking, parking
attendant will type the registration no. of vehicle in the system, then the details will be printed on
slip which will be given to parker and will also be stored in the database. Besides storing the
registration number system will also record in-time of car in the database. The system will also
automatically allot a specific slot to each car. The system will assign slots in an order by simply
incrementing slot no. each time. The in-time and allotted space will be printed on slip along with
detail of car as well as stored in the database along with record of car. The system has also option
The system will store logs for each car in the parking with the above mentioned details. The logs
will be in the form of list in which each entry corresponds to a vehicle parked in the lot. The
details of any car can be viewed by opening the relevant list item. The system will also show
total no. of slots, available/free slots and reserved/filled slots in form of counters.
At the time when a car leaves the parking the check-out process will be executed. The car driver
will return the slip to parking attendant along with the parking fee. The parking attendant will
then enter the relevant slot and will proceed to check-out upon which out-time and total stay time
will be calculated and the entry for that vehicle will removed from the current status grid view of
the software.
As it is usually seen, that some people park cars on daily basis in parking, because they might be
working in a nearby office, or because of some other reason. The system accommodates such
parkers by offering them option of monthly payment by opening an account for them. In this
process, the parker will pay parking fee in advance for the whole month, quarter of year, half
year or whole, an account will be opened in the system for such a parker in which payment
record will be stored and in this way parker will be saved from process of paying daily. At end of
the month the balance will be zeroed and parker will have to pay for next month again.
As mentioned earlier in the introduction the system also provides functionality of dynamic
pricing optionally the out time and stay time will help system calculate the fee of parking base on
the total stay time e.g. if we charge 3 rupees for one hour and a parker parks the car for 8 hours
the system will calculate 24 Rs based on the total stay time generated.
References
1. Traffic Tech (Gulf) W.L. L. Parking Management Systems. (n.d.). Retrieved from
www.traffic-tech.com/pdf/Parking_Management_Profile.pdf
CHAPTER 1
• Pricing management(Dynamic/Static)
We will consider our project successful if we make a Smart Parking Management System
Check In
Check Out
Subscriptions
As the car enters and exits the parking lodge the records are maintained in the log file of the
service provider. System checks and allots a specific slot from free slots to each vehicle at the
time of entry, so as to make an easy parking instead of searching for the parking slot, which may
lead to traffic congestion. Each parker will be provided a slip upon entry into parking lot on
which vehicle (car) detail (i.e. registration no., owner etc.), arrival time and allotted slot are
displayed. All this process is automatic except the service provider has to enter registration
number.
Data maintained by the SPMS in the form of logs includes vehicle details, in-time and out-time
of the vehicle, total stay time (i.e. total time between in-time and out-time) and number of time
the vehicle visited the parking area which is done at the time of entry and exit of vehicle
automatically.
The parker will check out (pay the price) at the time of exit so at that time software stores out-
time and total stay time. The system provides the option of static (per day) as well as dynamic
(per hour) pricing. The system will provide the option of monthly payment to accommodate
infrastructure, some only offering ticketing and violations management while some offering
mobile applications for pre reservation and easy payment methods. Seldom has a system
provided all these features at the same time. A review of all these systems makes it clear that
parking systems offer varying features with some features overlapping, while many of these are
too much expensive and most features offered thereby are of no need to medium sized parking
operators. Our SPMS aims to provide a low cost, easy, simple implementation catering the needs
performance. It integrates useful features provided by different systems into single software.
Once the system is implemented successfully it can be later extended on to other robust features
type the registration no. of vehicle in the system. The record will then be used to print the
information on slip and will also be stored in the database. Besides storing the record of vehicles
the system will also record in-time of car in the database. The system will also automatically
allot a specific slot to each car. The system will assign slots in an order by simply incrementing
slot no. each time or it will provide attendant the option to allot slot manually. The in-time and
allotted space will be printed on slip along with excise detail of car as well as stored in the
The system stores logs for each car in the parking with the above mentioned details. The logs are
in the form of list in which each entry corresponds to a vehicle parked in the lot. The system also
shows total number of slots, available/free slots and reserved/filled slots. At the time when a car
leaves the parking the check-out process will be executed. The car driver will return the slip to
parking attendant along with the parking fee. The parking attendant will then select type of
vehicle and enter relevant slot number and will then proceed to check-out upon which out-time
and total stay time is calculated and the entry for that vehicle is removed from the grid view
Some people park cars on daily basis in a parking because they might be working in a nearby
office, or because of some other reason. The system accommodates such parkers by offering
them option of monthly payment by opening an account for them. In this process, the parker will
pay parking fee in advance for the whole month, quarter of year, half year or whole, an account
will be opened in the system for such a parker in which payment record will be stored and in this
way parker will be saved from process of paying daily. At end of the subscription term the
parker will have to pay again to renew subscription. Special offers can be offered to such parkers
As mentioned earlier in the introduction the system also provides functionality of dynamic
pricing optionally the out time and stay time will help system calculate the fee of parking based
on the total stay time e.g. if we charge 3 rupees for one hour and a parker parks the car for 8
hours the system will calculate 24 Rs based on the total stay time calculated.
The language used in this software is C# which is part of .Net platform. For the development of
this project structure we will use different tools like Visual studio, SQL server which are easily
available in the market. This Project is feasible as we have all resources that are necessary. The
required tools and team effort will make it possible to accomplish the project.
Economically the project is reasonable. This software can easily be engineered using the already
available tools in the software market. Most of the tools are freeware software. Our software can
be deployed at any sort of organization at a reasonable cost, because it has been built according
to market situation where less money can be applied to get full use of it. The project has some
characteristics such as low budget software building and less man power required these
characteristics will make this software economically feasible and cost effective.
To complete this project assets and appropriate time have been spent. Project is divided into
work breakdown structure to complete within given time. Tasks are then divided into all group
members to complete it in a systematic approach, within the time limit. Our Software will be
• Initialization Stage
• Intermediate Stage
• Finalization Stage
Initialization stage consists of Dashboard and “Check In” and “Check Out” functionalities. The
intermediate stage consists of subscription and logs features. Finalization Stage consist of
SPMS is desktop based application for managing parking operations. The development process
of software is well feasible because we have all resources software as well as hardware needed.
We are providing a user-friendly infrastructure to perform actions on it. It will provide easy
control to the user. Application GUI is easy to use for everyone. Usability is an important feature
of this application. Our software has a good performance. It can perform all operations at good
All these resources are easily available for development online. They are mostly freeware
software.
Our Software does not contain any un-ethical or vulgar content. It does not hurt sentiments of
any culture, person or religion. It does not evoke any legal issues neither it does contain any
pirated materials. If any freeware resource used in the project references have been given.
1.6 Background
We have studied different systems and there features in literature review, a careful study tells us
that they offer slightly different objectives, while many of these are too much expensive and
most features offered thereby are of no need to medium sized parking operators. Our SPMS aims
to provide a low cost, easy, simple implementation catering the needs of medium level parking
In IT Tower
The company cannot maintain the daily basis of parking records without computerized system.
The manual system cannot tell the exact value of revenue being generated by a parking lot. There
is no a slot allocation mechanism system due to which user faces difficulty to park the vehicle. In
manual parking system they cannot track number of vehicles parked at any time and many such
indicators. Moreover reports about total number of vehicles visits in a specific time span i.e. day,
We aim to provide a computerized solution to the target organization that has the capacity to
manage parking functions more smoothly and efficiently besides providing many more benefits
Data maintainability is the main feature any parking company would like to have because it
provides many useful functions such as security, viewing reports etc. Moreover slot allocation is
another primary feature we are covering; the software provides option of manual as well as
Pricing and receipt management is another feature covered by this software per hour as well as
per day pricing schemes are offered. Hence the software provides many useful features that will
• C#
• SQL
CHAPTER 2
• Slip Issuance
Data Maintenance:
Data maintenance is important thing in any type of software where our old parking records are
saved in database and we can find old record later on from logs window. We can find the
Slip Issuance:
As the vehicle enters in the parking area the parking receipt will be given to the customer which
includes some details i.e. slot#, registration#, entry date/time, charges etc.
Slot Management:
Slot management has an importance in our parking software, two types of slot management
Automatic
Manual
Automatic slot management means the software automatically allocates the slot to the customer
whereas in manual slot allocation the parking attendant has the facility to allocate the slot to the
Pricing Management:
Dynamic pricing means the pricing strategy of parking should be of per hours pricing whereas in
static pricing means the pricing strategy of parking area should be of full day pricing.
Reports:
Strength reports
Revenue reports
• The system can provide automatic service of parking and calculating charge.
2.2.2 Reliability
The system is reliable and data is not lost if failure happens. The system will recover from a
2.2.3 Usability
Operators can easily learn how to use it. He can even use the system without training with some
2.2.4 Safety
CHAPTER 3
Corresponding
GUI
BLL
DAL
DFD level 0
Subscribe Subscription
Logs View Logs
CheckOut
CheckedOut
Attendant Attendant
CheckIn SPMS CheckedIn
DFD Level 1:
Subscribed
Subscription
Check Logs
Logs
Show Status ,Show Counter, Map
Home
Log Details Update
Map
Update
CheckOut
Give Slot# Counter
Slot is Free
Brief description
In this use case, when a vehicle enters parking area. Parking attendant of parking area will have a
look at its number plate vehicle, select type in software and enter registration number.
Precondition
Basic flow
When any vehicle enter in parking area. The parking attendant will see vehicle number plate.
Enter its type and enter its registration number .The information is then stored in storage area of
our software.
Flow of events:
2. Enter Registration No
Alternate flows
Post conditions
In this use case, when any vehicle enters parking area. Parking Attendant of Parking Area will
Precondition
Basic flow
As the vehicle enter in parking area. The Parking Attendant will see vehicle number plate. Enter
its type, registration number, and slot number to allocate. The information is then stored in
Flow of events:
Alternate flows
Post conditions
As the vehicle enter in parking area. The attendant will enter vehicle credentials and click check
in button. After clicking button a receipt will be generated with complete details about vehicles
including its registration number, date time in, date time out as well as price is printed on receipt.
Preconditions
Basic flow
When Attendant enter registration number and then click button. After clicking button this
Alternate flow
Post conditions
Brief Description
The main purpose of this use case is to remove vehicle details from software grid view
Precondition
Basic Flow
When a vehicle (i.e. car or bike) will leave parking area, then attendant first clicks on
“CheckOut” button. A new checkout window is open in which two things must be essential. First
one is to select type of vehicle type (Whether it is Car or Bike) and then second one is its slot
number which it leaves. When these two things are successfully provided to software by
attendant, then attendant clicks on a button in this window. Which is named “Proceed To
Alternate Flow
Post Condition
Brief description
Logs check contains the old records related parking details. This use case is very helpful for
Preconditions
Basic flow
In our home screen a button whose name is “Logs”. The attendant clicks on the button. A new
window is opened that contains old records of vehicles. There are two date time pickers shown
on this window. One picker name is “From” and other picker name is “To”. In “From” picker we
enter date of starting date from which you want to see records and In “To” picker we enter finish
Alternate flow
Post conditions
No post condition.
1. View Subscriber
Brief description
Precondition
Basic flow
The main purpose of View Subscriber is that parking attendant will be able to see the records of
Subscribers. When he clicks on “Subscription” button in main window a new window is open
Alternate flow
Post condition
2. Add Subscriber
Brief Description
The main purpose of this use case is to provide facility to those customers who park daily. We
will provide the opportunity to create their accounts by entering their necessary details like
name, guardian Name, ‘CNIC’, address, vehicle type and as well as vehicle registration number ,
Precondition
No precondition required.
Basic Flow
For this purpose Attendant will first Click on Subscription button that shown button right of the
page. When he will click on this button a new window is open on screen. In this window
attendant will see “Add Subscribe” button on top left of screen. By clicking this button a new
subscription form is open. In this form attendant will enter the complete details upcoming
subscriber like its name, its guardian name, its ‘CNIC’, its address, its vehicle type and as well as
its vehicle registration number , subscription types and amount etc. And then Click Submit
Alternate Flow
Post Condition
3. Edit Subscriber
Brief Description
The main purpose of this use case is to provide facility to our subscriber that they will change
their account details in some circumstances. Some necessary details like their vehicle type
change / update their new vehicle type, similarly change their address/ update their new address,
Precondition
Basic Flow
When attendant start software. He will be able to see “Subscription” button on bottom right of
the main window. When attendant click this button a new subscription window form is open. In
this window form he will see existing subscriber details. On each subscriber details he will see
“Edit” button. By clicking on this button a new window will open up. In this window form he
will update subscriber’s desired details and then click “Submit” button.
Alternate Flow
Post Condition
After this subscriber details are successfully updated according to its needs and desire.
4. Delete Subscriber
Brief Description
If any subscriber is not interested in our services and he wants to “Un-Subscribe”. So we provide
Precondition
Basic Flow
An attendant first Click on Subscription button. A Subscription window is open. In this window.
Attendant will be able to see the Records of Existing Subscribers. On each Subscriber he will see
“Delete” Button. If desired Subscriber want to be unsubscribe An attendant first Selects it’s
Alternate Flow
If user choses cancel button from prompt confirmation then record is not deleted.
Post Condition
Brief description
Attendant or management can see reports i.e. statistics in form of figures and charts.
Precondition
Basic flow
The user clicks “Reports” button from main window. Reports window is shown with two options
where i.e. “Strength Report” and “Revenue Report”. Then he selects one of those options then
report is generated in new window that contains many different options for timespan of reports.
Alternate flow
No alternate available.
Post condition
Brief Description
The main purpose of this use case is to set settings to assign a slot to vehicle i.e. by using
generally set two types of slot allocation setting “automatic” and “manual”.
Precondition
There is no pre-condition.
Basic Flow
When a vehicle enters the parking area, attendant first checks in it. In our software we provide
two types of slot settings. First one is automatic and second one is manual. It will depend upon
attendant which setting he chooses for slot allocation (automatic / manual). In our software
“configuration” menu bar is shown on top of scre en. When attendant open it a pop-up
window is shown on screen select type of slot allocation setting, one option is selected from two
Alternate Flow
Post Condition
If you choose “automatic” slot allocation setting, then software automatically assign free slots to
vehicles but if you choose “manual” slot allocation setting then in case attendant provide
An attendant will be able to see the filled slot details. Simply mean that he will click on filled
Precondition
Basic Flow
When vehicle comes in parking lot. An attendant must check in first. After check in its detail go
in grid view and as well as in map to corresponding that Slot Number on which its park. So it is
easy way for attendant that he can be able to see particular slot detail on which that vehicle park.
Alternate Flow
No Alternate available.
Post condition
Brief Description
The main purpose of this setting is to set parking rates (dynamic/static). From which method we
can get parking charges. Here in our software there are two standard types of parking rates i.e.
Precondition
Basic Flow
In our Software a “Configuration” menu shown on top of software. When attendant clicks rates
from configuration’s sub menu. A new Pop-Up window shows up on screen. In which attendant
set rates of parking (like Dynamic / Static). A “Save” button show on below pop-up Window.
Alternate Flow
Post Condition
CheckIn Auto
Enter Registration No
If Subscribed == True
Click Subscribed Button
Enter Account Number GUI : Receipt
Save Record
Record Saved
Successfully CheckedIn
CheckIn Manual
Enter Registration No
If Subscribed == True
Click Subscribed Button
Enter Account Number
Save Record
Record Saved
Successfully CheckedIn
CheckOut
Update DB
Record Updated
Successfully CheckedOut
View Subscription
Add Subscriber
User : Attendant GUI : Main GUI:Subscription GUI: New Subscription DB : MS SQL Server
Edit Subscriber
User : Attendant GUI : Main GUI : Subscription GUI : Edit Subscriber DB : MS SQL Server
Retreive data
Click specific Edit button from Gridview of record/row you want to Edit
Record Updated
Delete Subscriber
Retrieve Records
Click specific Delete button of user/row from Gridview you want to Delete
Delete Record
Logs Check
Fetch Records
Print Receipt
Receipt Printed
Receipt:
Slot No.
Registration No.
Vehicle Type
Date
TimeIn
Rate Setting
Update Setting
Settings Saved
CheckIn Vehicle
Revenue Reports
User : Attendant GUI : Main GUI: Reports GUI:Revenue Report DB : MS SQL Server
Gets Data
Strength Report
User : Attendant GUI : Main GUI: Reports GUI : Strenth Report DB : MS SQL Server
Gets Data
bikes.
the bikes.
bikes.
not.
customer.
cars.
of the cars.
cars.
not.
customer.
4. DateTimeIn Datetime2(7) It stores the date and the entry time of the
vehicles.
6. DateTimeOut Datetime2(7) It stores the date and the exit time of the
vehicles.
The overall structure of the application is relatively simple, as shown in the following diagram.
Note: Numbers in the diagram provide a cross-reference to individual screens described in this
document.
Every Structure has its own importance and has been shown below with the original screenshots
Navigation:
Pages are displayed in a single browser window, which are shown in a pop-up. The pop-up
Descriptions
This major part of the document contains detailed descriptions of each screen in Smart Parking
Description:
The Main form of application contains all the user interface design of our application.
Navigation:
When you open the Smart Parking Management System (SPMS), the main form of application
opens.
Elements:
It shows the
Parking Counters
Gridviews
Map
Vehicle Selection
CheckIn Elements
CheckOut Button
Reports Button
Subscriptions Button
Logs Button
Description:
The receipt form of our application is the receipt which we give when the customer park the car,
Registration No.
Vehicle Type
Date
TimeIn
Navigation:
The navigation to receipt form is that when we select the vehicle type and write the reg no then
click on the checkin button the receipt form is open to print the receipt.
Elements:
Registration No.
Vehicle Type
Date
TimeIn
Description:
Whenever a car/bike wants to leave our parking area the checkout process is executed. The way
to checkout is that we want to enter the slot no of the registered car/bike to checkout that vehicle.
Navigation:
The navigation to checkout form is that you click the checkout button to open the checkout
window.
Element:
Description:
The About menu form of our application tell about the software we are using, about the
developers, credits and the parking rules that are implemented in a parking areas.
Navigation:
The navigation to about menu form is at the top of the application near configuration button.
Elements:
About Software
About Developer
Credits
Rules
Description:
The Configuration form of our application tells the pricing schema of our applications that we
Navigation:
The navigation to configuration is also at the top of the application like the about menu form.
Elements:
Description:
The Price rate setting form of our parking application has the facility that make the organization
to select which rates of parking they wants. They can put dynamic rates which can be a hours
rates or They can put a static rates which is static for a full day park.
Navigation:
The navigation to price rate setting is at the top of the application. You have to select the
configuration menu pricing will open then you have select the rate button to open the price rate
setting.
Elements:
Description:
The Logs form of our application helps the attendants to see the old records of parking area. It
also has the facility to filter the date that from which date you want the data of parking.
Navigation:
The navigation to logs form is that you have to select the log button to open the logs window.
Elements:
Filters
Search Button
Description:
The Main Subscription form of our application have the subscribed customer’s data. If the
parking attendant wants to check the data of a subscribed customer he has to click the
subscription button.
Navigation:
The navigation to main subscription form is to click the subscription button than the main
Elements:
Edit
Delete
Description:
The “New Subscription” form of our application helps the attendant to make new subscriptions
of customers. When a customer wants a subscription the attendant click the “add new"
Navigation:
The navigation to new subscription window is that to click at the subscriptions button than you
have to click at the new subscription to open the new subscription window.
Elements:
Customers Details
Customer Name
Guardian Name
CNIC
Contact No.
Address
Vehicle Details
Car
Bike
Reg No.
Subscription Types
Monthly
Quarterly
Half-Yearly
Yearly
Amountpaid
Description:
The reports form of our application helps the attendants to see the records of parking data details
in a parking lot. In reports system you have the facility to check the reports of two types like
Strength Reports
Revenue Reports
Navigation:
The navigation to the reports window is that to click at the reports button which is at the main
form of application and then we select type of report after which we are redirected to report
generation form.
Elements:
Daywise button
Monthly button
Yearly button
Chart
Counters
Update button
CHAPTER 4
IMPLEMENTATION
Smart Parking Management System has been written in layered architecture i.e it has been
insured that user interface and business logic is separated from sql queries i.e. data access layer
has been implemented using separate dal classes for each functionality.
UI+BLL:
• SPMSMain
• CheckOutForm
• SlotAllocationForm
• ReceiptForm
• Logs
• SubscriptionsMain
• NewSubscription
• Reports
• Report Generation
• Pricetypesettingsform
• ratesettingsform
• slotallocationsetting
• filledslotdetails
SPMSMain:
The SPMSMain form is the home page of SPMS which consist of features which are given
below:
Parking counters
Maps
Bike/Car Gridviews
Registration Credentials
CheckIn/CheckOut Functionality
Logs
Reports
Subscription
CheckOut:
This form includes checkout functionality of the software. It has to select the type of a vehicle to
SlotAllocationForm:
This form consist of input box in which attendant enter the slot no given by the customer to park
ReceiptForm:
This form is generated when we enter the registration credentials and click on the parking receipt
to print it. The receipt we have implemented contains following details of the vehicle like,
• Date
• TimeIn
• Slot No
• Registration No
• Parking Fee
• Vehicle Type
Logs:
It has the old records of the application. If we want to search the parking data from different
dates than this software provides the facility to filter the data on different dates then click on the
SubscriptionsMain:
The Main Subscription form of our application have the subscribed customer’s data. If the
parking attendant wants to check the data of a subscribed customer he has to click on the
subscription button. It also gives the facility to edit the existing customer’s details, add new
NewSubscription:
The New Subscription form of our application helps the attendant to make new subscriptions of a
customers. When a customer wants a subscriptions the attendant click the add new subscriptions
window and write the details of the customer. It consist of different input boxes where the
attendant enter the customer’s details to make new subscription. It includes some details like:
• Customer Name
• Guardian Name
• CNIC
• Contact No
• Address
• Vehicle Type
• Registration No
• Subscription Type
• Amount Paid
Reports:
• Strength Reports
• Revenue Reports
Strength reports are those type of reports where the software provides the knowledge of how
Revenue reports are those type of reports where the software provides the knowledge of how
Report Generation:
ratesettings:
In dynamic rate setting , rates are set according to the hours parking rules for both bikes and cars.
Whereas in static rate setting rates are set according to full day parking rules for both bikes and
cars.
slotllocationsetting:
In automatic slot allocation setting, the software automatically allocate the slot to the registered
vehicle.
Whereas in manual slot allocation setting, there is a choice for both of the attendant and
FilledSlotDetails:
In this form our software provides some essential details of filled slot include:
• Vehicle type
• Registration#
• Arrival Date/Time
• Subscribed Customer
• Account #
Vehicle type show the type of vehicle that is parked on fill slot. Registration No that is unique
for each vehicle which create uniqueness of each vehicle. Arrival Date/Time indicate that time in
which such vehicle come on it slot. Subscribed Customer indicate that the owner of parked
vehicle is our regular customer or Not?. If owner of vehicle is our subscribed customer then
DAL:
• check_inoutdal
• logsdal
• mappingdal
• receiptdal
• reportsdal
• subscriptiondal
check_inoutdal:
“check_inoutdal” access the data using SQL queries for SPMSMain and CheckOut form mainly
logsdal:
“logsdal” access the data from logs form using SQL queries
mappingdal:
“mappingdal access the data for SPMSMain, filledslotdetails and slot allocation form using SQL
queries.
receiptdal:
Receiptdal access the data from db using SQL queries for receipt form.
reportsdal:
subscriptiondal:
CHAPTER 5
Overview
Test Plan Objectives To ensure that the Smart Parking Management System will:
business operations.
specifications.
technology Environment.
unique.
Table 5.2
Test Risks/Issues
Any changes to High(to schedule and Loss of test cases Export data prior to any
Table 5.3
Test Scope
Features to be Tested All features, forms, reports and interfaces affected by the Smart Parking
CheckIn
CheckOut
Logs
Subscriptions
Reports
Configurations
Table 5.4
Test Methodologies
Testing Approach The following approach will be used to test the Smart Parking Management
System
Unit, integration & system testing will be conducted to provide an initial
stable testing environment as follows:
Unit Testing: Ensure the correct functionality of individual units of software.
• Integration Testing: Ensure operability of Smart parking management
system within each of the new modules.
• System Testing: Ensure that all the test databases are accessible for
testing
Test cases are devised.
Test Documents The following test documents will be created and maintained throughout the
project lifecycle:
Test Plan
Master test case lists for each of the following functional units: Login,
Search, Subscribe, Review, Publish, Update status, Logout.
Test case scripts for each test case recorded in the master test case list
Log of all problems encountered during the testing phase of the Project.
Test Case Pass/Fail Criteria Each Test Case will be evaluated against the acceptance criteria as outlined
in the test case scripts to determine if the test passed or failed. In the case of
a failure, the tester will assign a severity to the problem using the
appropriate priority rating system established within Tracker for each
application.
Suspension / Resumption Test Cases that do not run to completion will be evaluated on a case by case
Criteria basis to determine if the testing must start over or resume at the point where
the failure occurred. In extremely long test cases, checkpoints will be
established for resumption in the middle of a test case where appropriate. In
general, a test may be resumed in the middle when the error is not Critical.
Problem Logging / Errors identified through testing will be logged. Resolved the problem
Resolution according to the deemed Severity level and update the master test case list.
Once the problem has been fixed record the resolution in the database.
The failed test cases will be Retested using the same test case script that
detected the error in order to verify that problem has been rectified.
Table 5.5
Resources
Muzammal
Updated
Test Activities
No.
Vehicle Type
registration no
button.
Muzammal
Updated
Test Activities
No.
Vehicle Type
Slot no
button checkedout
Muzammal
Updated
Test Activities
No.
button
old records
to filter data
successfully
Test Activities
Test Activities
Muzammal
Updated
Test Activities
No.
subscriber button on
subscription form
Muzammal
Updated
Test Activities
No.
CHAPTER 6
SYSTEM EVALUATION
• Pricing management(Dynamic/Static)
We now analyze the extent this project was successful in achieving objectives.
Our software SPMS has the approach that will help the parking business to flourish.
Whenever a vehicle has been entered the parking lot, the system will write the registration no of
the vehicle and CheckIn that vehicle. When a car has been successfully checked in the data has
been maintained in the database and we can check these data through logs, hence our objective
As far as parking space/slot management is concerned when a vehicle enters the parking area
two types of flows can happen. There will be automatic slot selection or there will be manual slot
selection. In case of manual slot allocation the attendant select the no of slots to assign. The
objective of pricing management has the importance that the parking company has the benefit of
having two types of pricing in the software. Dynamic pricing is that pricing which is changing
after some time whereas the static pricing is not changing. We charge the parking fee through
The vehicle that entered the parking area has been recorded in our database. The records has
been maintained in Reports form, we can check the records of vehicles by Strength records and
by Volume of records. The records has been maintained in a way that you can check it in daily ,
The scope of our software is different from others in such a way that we examined that parking
system offer varying features with some features overlapping, while many of these are too much
expensive and most features offered thereby are of no need to medium sized parking operators.
Our SPMS aims to provide a low cost, easy, simple implementation catering the needs of
performance. It integrates useful features provided by different systems into one software.
• As we use software to allocate slots, we can track the current status of parking slots
• Computerized Receipt will be given , which reduces the time of writing receipt
CHAPTER 7
As far as the overall project objectives we have achieved desired goals and during the course of
project we have learned a lot, it was a great experience in which taught us team work, working
with respect to schedule and gave us practical touch by providing opportunity to implement
theoretical ideas and subjects into practice, but as with any other project ours also has some type
development.
The main problem that we faced in our project during making is the manual and automatic
slot selection of the vehicle at the same time. The idea is that we can make the software to
automatically allocate the parking slot to the vehicle and also we can make it do manual slot
allocation, but this makes some kind of difficulty. We have provided configuration menu to
change slot allocation type at any time, but suppose if we start software and keep checking in
using manual option i.e. attendant allocating slot# and after some time we change option to
automatic allocation, and e.g. previous slots filled were 2, 3, 4, 5, now software has to detect
which 1st slot is free i.e. “1”, and that was very tough algorithm to make, and also it forced us
Solution:
We solved this problem by giving a variable value 1 and checking if corresponding slot#
is filled in db, incrementing its values repeating process again and again until we find
o We have not included the facility of integrating hardware resources such as sensors, barriers
in the software some may regard it as a limitation but we have done it willfully.
Further work:
We plan to further add QR codes to the printed receipts as it will speed up the process
of checkout by just scanning QR code. Now a days QR codes can even be scanned by
We plan to access the vehicle details through excise website and store it in our
solutions.
We plan to connect our software with a LED to display dynamic calculated price at
the time of checkout. At the moment our software only displays the parking price to
attendant only.
o We plan to integrate our software with the specialized cameras that will take picture of
CHAPTER 8
USER GUIDE
8.1 User Guide Contents
Our Software SPMS contain some different User manuals. That given below:
1. Counter
2. Maps
4. CheckIn
5. Checkout
6. Subscription
7. Logs
8. Reports
9. About
10. Configurations
As we usually know that simply “Counter” means to count number of things. But here counter
indicate that how many numbers of cars and bikes are parked in our parking Area. If any vehicle
comes in our parking area for example a car come a parking attendant of our parking area (enter
its types and registration number) check in. As Attendant “CheckIn” it’s details. Counter shows
current number of cars Park in parking area. If number of cars was 20 before this car enter. Then
after check in the current car details then the number of cars increment from 20 to 21. So counter
shows 21 cars park at time. Same dealing repeated for bikes Counter.
Maps:
Here Maps really mean Our “Parking map”. In our software we provide map’s facility to our
customer. Maps easily show to our customers that how they parked their vehicles (i.e. car, bike)
park. Generally map shows number of slots to our customer. We define 50 50 partition of slots.
50 reserved for Cars and 50 Reserved for Bikes. Map uses two colors i.e. green, red. If Map
show “GREEN” color on slot its mean. Such slot is Free for every Vehicle. If map show “RED”
color on slot then its mean such slot is reserved/ i.e. Vehicle is parked.
In our homepage there are two grid views are shown. One represent for car park status. And
another one is represent for Bike Park Status. These grid views contains vehicle Registration
Number, Current Date, Current Time In , Current Time Out Slot# etc. These grid views are
showing current numbers of vehicles with details (i.e. cars or bikes) are parked. After checking
Check In:
In our software this process consist of Two sub processes. First one is Selection type of Vehicle
(Whether it is Car Or Bike). If Vehicle is Bike then our Parking attendant will select its type
“Bike “from software. And second one is enter Registration No. After complete selection type.
Parking attendant enter its Registration No. Because “Registration No” is unique for every
Vehicle. After enter “Registration No.” Such Vehicle is successfully “CheckIn”. After
Check Out:
In our software we provide facility of check out Vehicle. This process is based on two things.
One is to select Vehicle type. And second one is to provide current number of slot in which it’s
stand. Checkout process is done only when such vehicle will leave our parking area. For example
if Vehicle is Car. And its Reg No is “XYY-12-1234” and is parked on slot No 4. And when it
leave our parking Area. We will enter its Slot No. Then we click on “proceed to Checkout
“button in Checkout window. After Click button. Such Vehicle is successfully Checkout.
Subscription:
In our Software you will see “Subscription” button on bottom left of homepage. Click this
button. After clicking this button new window show in our homepage. The main purpose of this
button is to provide facility to those customers whom they park their vehicles on regular basis
and as well as pay on regular basis. So instead of paying on regular basis, they pay parking
Charges only one time in month. And park their vehicles on daily Basis. In subscription Window
“Add new” button on top of Window. By clicking this event we can create new subscriber
account by entering customer details, Vehicle Details, And Subscription Type and as well
Amount paid etc. Moreover we provide facility for customers that they can edit their account for
some circumstances (like change vehicle, change address, Change Contact# etc.). For this
purpose Edit button place with each record by using this button attendant can easily update the
records of existing subscribers in such types of circumstances. More if any customer would not
to take advantage our services/ they want to unsubscribe. So we provide facility of Delete such
customer. For this purpose delete button place with edit button on each subscriber record. By
clicking this button we will delete its record. And such customer will unsubscribed.
Logs:
In our software we provide facility of Logs Check. In our Software home page we provide
“Logs” button on bottom left. If an attendant want to see old parking records, then he will click
on this button. Logs window will be open. In this window attendant will be able to see particular
Vehicle records from date to date, from current month to next coming month. An attendant enter
current Date in “From text bar” to “To text bar” to that past date and then click on Search button.
In this window we see complete old records of vehicles with its registration No, Type, Entry date
Time, Exit date time and as well as we can see that such customer whom owner of such vehicle
is our subscribed customer? Or Not? If such customer is our Subscribed Customer then we can
Reports:
Our software provide facility of reports. For this purpose “Reports” button show on bottom
In our homepage you will see about menu bar on top. When attendant click on this menu bar.
Attendant will see 4 basic things i.e about software, about developers, Credit, Rules. In “About
software” Tab attendant will see complete brief information about software (i.e. its complete
detail working of its each module). In “About developer” attendant will see complete detail
introduction about developer/ Authors including its (Professional skills, what kind of tools that
he will use.
Configuration:
In our Home page you will see Configuration Menu bar. This menu bar consist of parking Price
related Vehicles (whether it is Car or it is Bike). When attendant open this menu bar. Then he
will select pricing. A new window is open. Attendant fix can parking rate of vehicle (whether it
is car or bike) according to its type of price that he select. One thing remember here is that both
car and bike are separate price selection and separate parking rate fix.
CHAPTER 9
BIBLIOGRAPHY
o Capterra. The Smart Way to Find Business Software. (n.d.). Retrieved from
https://www.capterra.com/parking-management-software
o Bow Valley College. RGO Library & Lerning Commons Retrieved from
https://bowvalleycollege.libguides.com/apa-style/website
CHAPTER 10
APPENDICCES
https://drive.google.com/open?id=1-8Ozcjyz30zySauLO3yBFSchRPJ1ryNS
The information in this section explains how the report should look. Set them up on a word
processor and use them throughout the preparation of the document than to attempt a major
Length:
There is no hard rule about overall length because this will vary with each project depending on
the nature of the work. For a B.Eng. report, approximately 120 pages, including tables and
appendices is an acceptable upper limit. Ask advice from your supervisor and remember,
Paper:
The entire report must be submitted on A4 size paper. Printing. The report should be printed on
one side of each page only. The print quality should be dark and clear.
Margins:
Justification:
Right and left margins should be justified (giving a straight edge to the text on both sides).
Size:
Use a Times New Roman or similar style font, point size 12 for most of the document.
Pagination:
The report must carry sequential pagination throughout, including appendices. The page number
should be on the top right margin of each page. The title page is counted in the numbering, but
Page Breaks:
Try to ensure that these occur in sensible places. There is no need to take a new page for each
main section heading but you should do so for new chapters. Never let a page break separate the
last line of a paragraph. Try to ensure that, if possible, enumerated lists (a, b, c etc.) are not split
across pages.
Header:
A header should be placed at the top of each page apart from the title page. In addition to the
page number, the document header should include the candidate’s name, qualification sought and
calendar year.