You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Today life has become more and more dinamic and owning a car is useful or in many cases even necessary. But cars need fuel and their owners need to refuel; but where and at which cost? EZGas can help them.
The purpose of this application is to locate and display every gas station in the area together with the prices the gas station's owners apply. The driver can decide whether to go to a specific station and pay less or to go to the nearest station.
Stakeholders
Stakeholder name
Description
Driver
Uses the application to search for a gas station (the nearest or the cheaper) and reach it
Gas station owner
Can share informations and prices of his gas station
Map API
Locates the gas stations
Context Diagram and interfaces
Context Diagram
left to right directionactor :Driver: asausecase (EZGas) asuca--ucactor :Gasstationowner: asbb--ucactor :MapAPI: asmuc--m
Interfaces
Actor
Logical Interface
Physical Interface
Driver
GUI
Screen, keyboard,touchscreen
Gas station owner
GUI
Screen, keyboard,touchscreen
Map API
Web services
Internet connection
Stories and personas
Chandler is a pharmaceutical salesman, for his work he needs to drive a lot and has a tight schedule of appointments. For this reason when he needs to refuel his car he tries to reach the nearest gas station, in order to complete the operation as quickly as possible. Unfortunately, he has to travel to new cities and doesn't always know where to go and the whole process can be long. With EZGas he will be able to find the nearest gas station and save time.
Monica is a housewife with two children. She tries to spend the least possible on gas so that she can buy icecream to her boys with the money she saved from refueling. However the prices at gas stations change often and she's not able to keep track of which is the cheapest. EZGas will help her find the best one for her needs and help her save money.
Joey is a gas station owner. His business goes quite well but he knows that it could be even better if he could give his station more visibility. With EZGas he will be able to do so by sharing his position and the prices of the fuel, and by receiving good reviews from his customers.
Functional and non functional requirements
Functional Requirements
ID
Description
FR1
Manage the creation of an account
FR1.1
Manage the creation of driver's account
FR1.2
Manage the creation of gas station owner's accout
FR2
Manage the visualization of the map with the gas stations in the current position
FR3
Manage the view of bigger and smaller areas on the map
FR4
Manage the update of fuels prices by gas station owners
FR5
Record the reviews of drivers for a specific gas station
FR6
Record the position and prices of a gas station
FR7
Manage the creation of a new gas station
Non Functional Requirements
ID
Type (efficiency, reliability, .. see iso 9126)
Description
Refers to
NFR1
Usability
Application should be used with no training
FR1, FR2, FR3, FR4
NFR2
Performance
The localization of gas station should be complete in < 5 sec
FR2, FR3
NFR3
Portability
The application runs on Android (5.1 and more recent), iOS (13 and more recent), Chrome (79, 80) and Firefox (72)
All FR
Use case diagram and use cases
Use case diagram
left to right directionusecase (EZGas) asappactorDriverasdactor :Gasstationowner: asgactor :MapAPI: asmd-- (FR1.1Creationofdriver'saccount)
(FR1.1Creationofdriver'saccount) --appg-- (FR1.2Creationofgasstationowner'saccount)
(FR1.2Creationofgasstationowner'saccount) --appg-- (FR4Updateoffuelsprices)
(FR4Updateoffuelsprices) --appg-- (FR7Creationofnewgasstation)
(FR7Creationofnewgasstation) --appapp-- (Viewmap)
(Viewmap) --md-- (FR5Recordreviewofgasstation)
(FR5Recordreviewofgasstation) --app
Use Cases
Use case 1, UC1 - FR1.1 Creation of Driver account
Actors Involved
Driver
Precondition
The Driver isn't already registered
Post condition
The Driver is registered and his information are memorized
Nominal Scenario
The Driver opens the application and insert his personal data (email and password)
Variants
Use case 2, UC2 - FR1.2 and FR6 Creation of Gas station owner account
Actors Involved
Gas station owner
Precondition
The Gas station owner isn't already registered
Post condition
The Gas station owner is registered and his information are memorized
Nominal Scenario
The Gas station owner opens the application and insert his personal data (email and password) and the information about the gas station (position and types of fuels)
Variants
Use case 3, UC3 - FR4 Update of fuel prices
Actors Involved
Gas station owner
Precondition
The type of fuel to be updated exist in that gas station
Post condition
The cost of that type of fuel is updated for that station
Nominal Scenario
The Gas station owner opens the application and insert his personal data (email and password) and the new cost of the fuel
Variants
Use case 4, UC4 - FR5 Record review of gas station
Actors Involved
Driver
Precondition
The Driver and the gas station exist
Post condition
The gas station has a new review
Nominal Scenario
The Driver opens the application and insert his personal data (email and password) then select the gas station he wants to review and leave a comment
Variants
Relevant scenarios
Scenario 1
Scenario ID: SC1
Corresponds to UC1
Description
Driver D access the application and wants to create an accout
Precondition
D hasn't an account with the same email address
Postcondition
Account of D created
Step#
Step description
1
Driver opens the application and starts the registration procedure
2
Driver is required to insert his email
3
The email does not correspond to an existing account
4
Driver chooses a new password
Scenario 2
Scenario ID: SC2
Corresponds to UC1
Description
Driver D access the application and wants to create an accout
Precondition
D has an account with the same email address
Postcondition
Account of D not created
Step#
Step description
1
Driver opens the application and starts the registration procedure
2
Driver is required to insert his email
3
The email corresponds to an existing account
4
The system delivers an error message and interrupts the procedure
Scenario 3
Scenario ID: SC3
Corresponds to UC2
Description
Gas station owner G access the application and wants to create an accout
Precondition
G hasn't an account with the same email address
Postcondition
Account of G created
Step#
Step description
1
G opens the application and starts the registration procedure
2
G is required to insert his email
3
The email does not correspond to an existing account
4
G chooses a new password
5
G is required to insert the position of the gas station and the types of fuel
6
The gas station and its informations are saved
Scenario 4
Scenario ID: SC4
Corresponds to UC2
Description
Gas station owner G access the application and wants to create an accout
Precondition
G has an account with the same email address
Postcondition
Account of G not created
Step#
Step description
1
G opens the application and starts the registration procedure
2
G is required to insert his email
3
The email corresponds to an existing account
4
The system delivers an error message and interrupts the procedure
Scenario 5
Scenario ID: SC5
Corresponds to UC3
Description
Gas station owner G access the application and wants to update prices of fuels of his Gas station S
Precondition
G has an account
Postcondition
S's prices are modified
Step#
Step description
1
G opens the application and logs in
2
G is required to insert the new prices
3
The prices are modified
Scenario 6
Scenario ID: SC6
Corresponds to UC4
Description
Driver D access the application and wants to leave a review of a Gas station S