Python代写-1COMP9900
时间:2022-04-12
1COMP9900
INFORMATION TECHNOLOGY PROJECT
Assessment Submission for
Project Proposal
Project Title: Car Space Sharing System
Group Name:
9900-T14P-RD team
NAME E-MAIL ID ROLE
Zichen JIANG zichen.jiang@student.unsw.edu.au Z5238882
Scrum Master
and Front end
Yuhao LI yuhao.li1@student.unsw.edu.au Z5233946 Front end
Yu DU z5231856@ad.unsw.edu.au Z5231856 Front end
Qinze LI z5092850@ad.unsw.edu.au Z5092850 Back end
Mentor:
Jingcheng Li
Lab Time:
T14P Tue 14:00-16:00
Submission Date:
2022/03/07
2Table of content
1. Overview........................................................................................................................................3
1.1. Problem Description.........................................................................................................3
1.2. Competitor Analysis and Potential Solutions...............................................................3
2. Design and Architecture..............................................................................................................4
2.1. System Architecture.........................................................................................................4
2.1.1. Back-end:.............................................................................................................4
2.1.2. Front-end:............................................................................................................4
2.1.3. Database:............................................................................................................ 5
2.2. Page Structure..................................................................................................................5
3. User Stories and Sprints.............................................................................................................9
3.1. Sprint Schedule.................................................................................................................9
3.2. Sprint 1 backlog..............................................................................................................10
3.3. Product backlog..............................................................................................................10
3.4. User stories......................................................................................................................11
3.5. Objectives that the user stories meet......................................................................... 19
4. Interface and Flow Diagrams...................................................................................................20
5. REFERENCE..................................................................................................................... 25
31. Overview
1.1.Problem Description
The difficulty of parking has become a major problem in urban areas in both developed and
developing countries. With the rapid growth of car ownership, many cities are facing the
problem of insufficient parking spaces and the imbalance of parking supply and demand,
which can be considered as the initial cause of the parking problem in metropolises(Ibrahim,
Hossam El-Din,2017). Meanwhile, the traffic police department has set many roads as
no-parking sections to alleviate urban road congestion, which also emphasizes the demand for
parking spaces. Sharing private parking spaces during free time has shown great potential for
addressing the problems mentioned above(Dou An,2020). The most important point about
shared parking spaces is to improve the efficiency of resource allocation, separate ownership
and use rights, and improve the utilization of parking spaces.
1.2.Competitor Analysis and Potential Solutions
However, most of the vacant parking spaces in the existing sharing products are for long-term
and short-term rentals, which limits the flexibility of parking spaces to a certain extent.
Parkhound
The parkhound only provides two types of rentals, one is Daily and the other one is monthly.
Generally, the users who have private cars and private parking spaces will not rent their car
space, which also reduces parking space utilization. We hope that companies and
householders could offer their own parking stalls and/or driveways for renting in the unused
time(Said, A. M., 2021). Compared with this product, our platform could arrange private
parking rental according to the period used by themselves.
Oscar
The Oscar have provided a rental by hours but there are no incentive mechanisms. How to
keep user active is an important point in promoting the use of this platform. We have
developed some incentive mechanisms to incentivize users like giving allowance to the
providers with outstanding reviews and fee discount to the consumer with good reputation.
Besides, compared with these two platforms, they do not provide a time-saving mechanisms to
reduce the searching time. For an example, the users need to make a parking order around
their destination , which is inconvenient by searching their requirement one by one if they are
in a hurry. We have designed an auto pairing function like Uber, generating orders from the
database in real-time.
42.Design and Architecture
2.1.System Architecture
The architecture of the whole system can be roughly divided into the following three layers:
data layer, business layer, and presentation layer. This layered architecture makes the entire
project structure clear, and at the same time it is convenient to test the effect of different
components in different layers.
2.1.1.Back-end:
We decide to use Django as the framework that follows the MVC design pattern for our
platform. It enables clean coding and reduces the complexity of web development. Django
development is popular for its "batteries included" philosophy. It provides many common
functions for web development, saving us from having to write code for each function. Besides,
the Django web framework also provides advanced features such as ORM, database
migrations, user authentication, admin panels and forms.
2.1.2.Front-end:
React is a relatively mainstream front-end framework. The React framework has the following
advantages:
1. Declarative design − React adopts the declarative paradigm, which can easily describe the
application.
2. Efficient − React minimizes interaction with the DOM by emulating the DOM.
3. Flexible − React works well with known libraries or frameworks.
5At the same time, our team members are familiar with the React framework, so we chose to
use the React framework in this project
Bootstrap is a very popular and concise, intuitive and powerful front-end development
framework, including HTML, CSS and JS basic frameworks, excellent responsive layout, and
better compatibility with mobile devices, so as to quickly develop WEB projects and improve
the efficiency of web development
2.1.3.Database:
The SQL language used by MySQL is the most commonly used standardized language for
accessing databases. MySQL database has the advantages of small size, fast speed, low total
cost of ownership, open-source code, etc.
2.2.Page Structure
Admin user accessible pages:
Admin Login Page: This page allows admin to log in to car space management system.
Admin Home Page: This page is the first page once admin log in. Car space List is showed on
this page. Admin can manage all the car space in the system, including their space number,
description, location, size, dock-able time, fee.
Orders List Page: This page allows admin to check all the orders from general users. Admin
can view the details of each order and manage order status.
Users List Page: This page allows admin to check all details from general users. Admin can
modify the impertinent information from general users.
6Coupon Management Page: This page allows admin to send some coupon to customers who
have a good reputation.
General users’ accessible pages:
Register Page: This page allows people to register new account to complete leasing car
space business.
General User Login Page: This page allows customers to log in to user home page , and
allows providers to log in to user profile page.
User Home Page: This page is the first page once customers log in. This page shows the car
space list. Showed car space is recommended from system. General users can filtrate car
space on the basis of users’ demand. Moreover, users can also search for qualified parking
Spaces according to their own demands.
Search Page: This page allows customers to search car space according to their address in
which they want to park.
Car space detail Page: This page allows general users to view more details of a car
space.General users can add the car space which they want to favorite list.
Car space favorite Page: This page allows general users to browse all the car space which
been added in favorite list, and they can remove car space from list.
7Customer Order List Page: This page allows general users to view all previous orders. This
page shows the order details including fee,time slot, order number and so on. Moreover, users
can continue to pay unfinished order.
User Profile Page: This page allows general users to view their own user information.
Edit User Profile Page: This page allows general users to change their e-mail, contact
number and
shipment address.
Change User Password Page: This page allows general users to change their log in
password.
Order History Page: This page allows general users to browse their order history list, and
choose to make an order again.
Black list Page: This page shows blacklist of one user, specifically those with whom the user
has a history of unhappy transactions.
2.3 Database Design
To implement all the features in the project and meet the requirement of front-end team, we
designed 7 tables.
• Table ‘User’ contains user id, user name, password ,other personal information and car
space information.
8‘people_type’ is used to distinguish admin and user. (people_type=0 is admin, while
rule_type=1 presents user.)
‘size_type’ is used to sort car space type.(different numbers represent car space of different
sizes.)
‘state’ is used to distinguish whether car space is usable.
‘car_type’ is used to sort car type.(different numbers represent vehicles of different sizes.)
• Table ‘Carspace’ contains information about car space id, location, price, car space
description and etc.
• Table ‘order’ and ‘order_detail’ are used to store order information. And it can include the
status of orders,price, total time and etc.
‘measurement’ represent different units of measurement for parking times,such as hour, day,
week, month, year.
• Table ‘favorite’ is used to store cars pace_id for each user including details of each car
space.
• Table ‘carspace’ is used to distinguish car space size.
• Table ‘user_carspace' is intermediate table.
93.User Stories and Sprints
3.1.Sprint Schedule
Our team plan to break project into three sprints. Each sprint has a specific goal, and the table
also contains the start and end times for each sprint.
Our team is scheduled to meet every Tuesday and Friday. Each session lasts about 20
minutes. During the meeting, we will mainly discuss work processing and current issues and
assign tasks.
Week Duration Goal & Checkpoint Description
Week1 2.14 – 2.20
Set up Jira platform/discuss
projects
Decide our project is Car Space
Sharing System
Week2 2.21 – 2.27
Identify function/make
schedule/define tasks
Discuss basic function/Sprint
one/user stories
Week3 2.28 – 3.6
Investigate novel points/software
Architecture
Background/Technology/
Architecture
Week4 3.7 – 3.13
Proposal Submission
Start Sprint one
Account
management/environment
setting/Database connection
Week5 3.14 – 3.20
End Sprint one
Progressive Demo A
Start Sprint 2
Functional and Integration test
Auto matching system/Rent
System/Map API
Week6 3.21 – 3.27
Develop and check current
system
Coupon system/ Auto matching
system
Week7 3.28 - 4.3
End Sprint two
Retrospective A
Start Sprint 3
Functional and Integration test
Payment and bill system
Week8 4.4 – 4.10
Progressive Demo B
End Sprint 3
Functional and Integration test
Week9 4.11 – 4.17 Retrospective B
Layout modification and
Debugs/prepare presentation
Week10 4.18 - 4.24 Project demonstration Presentation
10
3.2.Sprint 1 backlog
3.3.Product backlog
11
3.4.User stories
1. Account register
User story ID & Name US01: Account register
User story
As a consumer, I want to register a new account
with a user ID, so that my account cannot be
accessed without permission.
Goal Set up a personal account on the website.
Actors All users(consumer,provider)
Acceptance Criteria
Users can create their own account and use this
account to log in, rent spaces, and reserve parking
spaces. No one else can access this account
without permission
2. Account Login
User story ID & Name US03: Login
User story
As a user, I want to log in to the platform by
entering my account password
Goal Users can login their accounts
Actors All users(consumer,provider)
Acceptance Criteria
After the user registers the account, enter the login
page. After entering the account number and
password and selecting the user identity (customer
or provider) to complete the login
3. Account Logout
User story ID & Name US04: Logout
12
User story
As a user I want to log out of my account so that I
can log into another account
Goal Users can logout their accounts
Actors All users(consumer,provider,admin)
Acceptance Criteria
After the user logs out, users need to re-enter the
account password to log in to another account.
After logging out, the system automatically jumps
to the main page
4. Account management
User story ID & Name US02: set or modify the password
User story
As a user, I want to set a password for my account
so that I can log in to my account safely
Goal User can edit his passwords.
Actors All users(consumer,provider,admin)
Acceptance Criteria
Passwords should be complex to meet the security
specifications.(Password must contain numbers
and capital letters)
The password cannot appear three or more
consecutive times with the same number or letter
5. Personal information management
User story ID & Name US05: personal information management.
User story
As a user, I would like to change my personal
information such as username, address, etc. to
ensure that my personal information is correct
Goal
Users can view and update their personal
information.
Actors All users(consumer,provider,admin)
Acceptance Criteria
After logging in, the user can click the Modify
Personal Information button to jump to the personal
information page for modification. Changed
information needs to be displayed in the correct
area
13
6. View of parking spaces
User story ID & Name US06:View a list of parking spaces
User story
As a consumer, I want to view the list of available
car spaces, so that I can make an order for car
space by my preference.
Goal
Consumers can clearly see all available parking
spaces, making it easier for them to make choices
Actors Consumer
Acceptance Criteria
The system provides a search bar, after entering
the parking destination, the system automatically
recommends all available parking spaces within
5km
User story ID & Name US07:View details of all available parking spaces
User story
As a consumer, I want to check the details of a
parking space, so that I can check the suitability for
my requirement, like the address, availability, and
worth per hour/day.
Goal
Consumer can make the best choice according to
the detailed information of the parking space
Actors Consumer
Acceptance Criteria
In the list of available parking spaces, click details
to view the specific information of each parking
space (location, price, feedback,etc.)
7. Reserve or cancel a parking space
User story ID & Name US08: Reserve parking space
User story
As a customer, I would like to reserve a parking
space in advance to ensure that I have a place to
park when I arrive at my destination
Goal
Customers can reserve parking spaces in advance
according to the itinerary
Actors Consumer
Acceptance Criteria
A parking space can only be reserved once at the
same time, and the reserved parking space will not
be recommended to other customers
14
User story ID & Name US09: Cancel parking space
User story
As a consumer, I want to be able to cancel the
booked car space, so that I can avoid a penalty for
untrustworthy.
Goal
Customer cancels appointment due to itinerary
change
Actors Consumer
Acceptance Criteria
Customers who click to cancel the appointment can
cancel the appointment without responsibility within
half an hour after the appointment. If the
cancellation is overdue, the system will
automatically charge 15% of the rent as a penalty.
Cancelled parking spaces can reappear in other
consumers' lists
8. Favorite list for parking spaces
User story ID & Name US10: add a parking space to a favorite list
User story
As a consumer, I want to add a parking space to a
favorite list, so that I can reorder it conveniently.
Goal
It is convenient for customers to find their favorite
parking space
Actors Consumer
Acceptance Criteria
Customers can add one or more spaces to their
favorites list (the limit is 5, if the limit is exceeded
the oldest added space will be removed)
9. Orders history
User story ID & Name US011: view orders(consumer)
User story
As a consumer, I want to access the order history,
so that I can check the parking records and
payment information.
Goal
It is convenient for customers to check historical
orders
Actors Consumer
Acceptance Criteria
In the historical order, the system will display all the
order details of the customer in the past six months
(including time and price, etc.)
15
User story ID & Name US012: view orders(admin)
User story
As an admin, I want to view the bill of each order,
so that I can count the service fee.
Goal
It is convenient for administrators to count service
costs
Actors Admin
Acceptance Criteria
In all orders, administrators can view the details of
all orders on the platform in the past year, as well
as the total order amount
10. Feedback
User story ID & Name US13: Feedback(customer)
User story
As a consumer, I want to write feedback for car
space, so that I can help the website to improve
user experience.
Goal Find out how satisfied customers are with this order
Actors Consumer
Acceptance Criteria
After the user has paid the order, the system will
pop up a feedback form, customers can rate this
order and write comments, and the scoring
information and feedback content will be
synchronized to the parking space information for
other customers to view.
User story ID & Name US14: Feedback(provider)
User story
As a consumer, I want to write feedback for car
space, so that I can help the website to improve
user experience.
Goal
Help providers better assess customer
creditworthiness
Actors Provider
Acceptance Criteria
After the customer pays for the order, the provider
can score the customer according to the behavior
of the customer, so as to distinguish the customer
reputation
16
11. Car space information register or edition
User story ID & Name US15:register/edit car space information
User story
As a provider, I want to register/edit car space
information so that I can rent my car space to
others (price, environment etc.).
Goal
It is convenient for providers to update their parking
spaces in time
Actors Provider
Acceptance Criteria
Changed information needs to be synchronized to
the database to ensure that customers can see the
changed information within 10 minutes
12. Blacklist for consumer with low credit
User story ID & Name US16: blacklist
User story
As a provider, I want to have a blacklist, so that I
can avoid disputes and car space rented by
untrustworthy person.
Goal
Block users with low reputation to avoid
unnecessary conflicts between customers and
providers
Actors Provider
Acceptance Criteria
All parking spaces for this provider will not be
visible to blockers
13. Admin login
User story ID & Name US17: Admin login
User story
As an administrator, I want to log in to the
administrator's dedicated page to facilitate my
management operations
Goal Admin login via private url
Actors Admin
17
Acceptance Criteria
Administrators can log in through a private url and
obtain administrator privileges
14. Discount settings
User story ID & Name US18: set discount
User story
As a provider, I want to set a discount for the
parking price, so that I can attract more consumers.
Goal Set discounts to attract more customers
Actors Provider
Acceptance Criteria
Parking space providers can set discounted
parking spaces, and the discounted parking spaces
will be displayed on the customer page
15. Parking space labs
User story ID & Name US19:Label the parking space
User story
As an admin, I want to assign different tags for
registered car spaces with the space number,
description, location, size, dock-able time, fee so
that I satisfy different queries.
Goal
It is convenient for users to find suitable parking
spaces according to the label
Actors Admin
Acceptance Criteria
The label attached by the administrator will be
displayed correctly in the position of the parking
space information.
16. Users information management
User story ID & Name
US20:View and edit user and parking space
information
18
User story
As an admin, I want to ensure that the rental
information is true and reliable, so that I can block
the fake information with report.
Goal
Facilitate the management of customer and
provider information to ensure the authenticity of
the information
Actors Admin
Acceptance Criteria
After logging in, the administrator can view all the
information of all customers and parking spaces. If
there is any untrue information, you can delete or
modify it yourself.
17. Coupon for consumer
User story ID & Name US21:customer buy coupon
User story
As a long-term customer of the platform, I want to
save money by buying some coupons
Goal
Saving money for customers who use the platform
for a long time can better retain customers
Actors customer
Acceptance Criteria
Customers can get coupons by purchasing and use
them when paying for orders. The purchased
coupons are stored in the column of wallet
User story ID & Name US22:Admin rewards Coupon
User story
As an admin, I want to reward customers with good
credit by issuing coupons (based on feedback
evaluation)
Goal Urge users to maintain a good credit score
Actors Admin
Acceptance Criteria
The coupons issued by the administrator are stored
in the customer's wallet, and the coupons become
invalid after the customer pays and uses them.
19
18. Auto match(Recommendation for consumer)
User story ID & Name US23: Auto match the most satisfied parking spots
User story
As a consumer, I want to find parking space quicky
so that I can deal with some emergency without
parking problem
Goal
Find a proper parking space quickly
Actors Consumer
Actors consumer
Acceptance Criteria
The platform would generate an order within 5
minutes based on consumer’s requirement.
3.5.Objectives that the user stories meet
1. Users can login, logout or register account with username, password and other personal
information, and all account information can be modified after registration.
Achieved by user stories: US01, US02, US03, US04, US05
2. After logging in, the administrator can classify parking spaces, view and modify user and
parking space information, distribute coupons and view historical orders
Achieved by user stories:US12, US17, US19,US20,US22.
3. Customers can search to see the list of nearby parking spaces, or choose the system to
automatically match the parking spaces
Achieved by user stories: US06, US07, US23
4. Customers can reserve or cancel the reserved parking space according to their own
itinerary, and can also add their frequently used parking spaces to the favorite list.
Achieved by user stories: US08, US09, US10
5. Customers can view their historical orders and rate the provider after completing each
order. Customers can also choose to buy coupons and deposit them into their wallets.
Achieved by user stories: US11, US13, US21
6. Providers can modify their own parking space information, rate customers after completing
the order, and have the power to block customers, and can also set discount information
for their own parking spaces.
Achieved by user stories: US14, US15, US16
20
4. Interface and Flow Diagrams
Diagram 1
After the user fills in the registration information, select the user identity, read and
agree to the agreement terms, click register to complete the registration and then
users could log in with users’ account.
21
Diagram 2
Three types for login: customer, provider and administrator. Users can log in the web
by selecting their own login identity and entering account information.
22
Diagram 3
Users can access the to the main page after they sign in, and click profile to view the
profile page. And they could view and edit the personal information.
Then they could chick the sub page to view the vehicle list and choose to register a
new vehicle’s information.
23
This page displays the user's remaining balance and coupons held, and consumers
could add a bank card for the payment.
Diagram 4
24
After the authentication, admin can view historical orders and user details through
order list and user list.
25
5. REFERENCE
Ibrahim, Hossam El-Din, Car Parking Problem in Urban Areas, Causes and Solutions
(November 25, 2017). 1st International Conference on Towards a Better Quality of
Life, 2017, Available
at
SSRN: https://ssrn.com/abstract=3163473 or http://dx.doi.org/10.2139/ssrn.3163473
D. An, Q. Yang, D. Li, W. Yu, W. Zhao and C. -B. Yan, "Where Am I Parking: Incentive
Online Parking-Space Sharing Mechanism With Privacy Protection," in IEEE
Transactions on Automation Science and Engineering, vol. 19, no. 1, pp. 143-162,
Jan. 2022, doi: 10.1109/TASE.2020.3024835.
Said, A. M., Kamal, A. E., & Afifi, H. (2021). An intelligent parking sharing system for
green and smart cities based IoT. Computer Communications, 172, 10-18.


essay、essay代写