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
Nowadays the price of fuel per liter varies widely from gas station to an other. In fact, once the cheapest station is found, drivers no longer tend to change it, even if the price become no more convenient.
A team of software developers has come up with a way to facilitate the search for the nearest and cheapest gas station.
EZGas was born from this idea, in fact it is a crowdsourcing service that allows drivers to collect prices of fuels in different gas stations and locate them in an area, along with the prices they practice.
Stakeholders
Stakeholder name
Description
Driver
He/She uses the application to locate nearest gas stations and to insert or update gas price information
Gas Stations Managers
They are interested in being always up to date to the price of competitors in the same area but they haven't an account and can't modify informations
EZGas Developers
They are responsible for any issue and have to monitor user experience to prevent problems and improve the system
Map System
Affects the outcome of the EZGas application by changing the API
Context Diagram and interfaces
Context Diagram
Interfaces
Actor
Logical Interface
Physical Interface
Driver
GUI
Screen, keyboard
Gas Station Manager
GUI
Screen, keyboard
Map System
Internet Connection
API
Stories and personas
Marco is a businessman living in Rome. His job forces him to drive around the city all day with his car and he has often to refuel. Thanks to EZGas, he is always able to find a closer and convenient gas station, without having to remember the price of the various stations every time. While refueling, he checks if the price on the application is updated and if it isn't, he updates it.
Julia is on vacation in Rome. During these days she decides to take a rental car to visit the city. Since she doesn't know the city and is afraid of wasting too much time and money looking for gas stations, she searches on EZGas for those that were most comfortable to reach, comparing the prices they practice. Fortunately, she immediately finds a very convenient station, thanks to Marco who have just updated the price.
George is gas station manager in London and he was really worried for his job becouse his activity was not very known in his area. He found EZGas and by seeing the nearby stations, finally realized that he should lower the price to be more competitive. Now in George's gas station there are many customers queuing to refuel and he is always up to date to the price of competitors in his area.
Functional and non functional requirements
Functional Requirements
ID
Description
FR1
Manage driver user account
FR1.1
Create User
FR1.2
Edit User
FR1.3
Delete User
FR2
Log in
FR3
Log out
FR4
Handle view a map considering the user's location
FR5
Handle highlighting of the gas stations in the map with the price they pratice
FR6
Handle update of the map of gas stations prices
FR7
Handle adding of a gas station price
FR8
Handle updating of a gas station price
Non Functional Requirements
ID
Type (efficiency, reliability, .. see iso 9126)
Description
Refers to
NFR1
Usability
Application should be used with no training by any user
All FR
NFR2
Efficiency
Functions should complete in < 2 sec
FR4 - FR7
NFR3
Efficiency
Functions should complete in < 0.5 sec
All remaining FR
NFR4
Portability
The application runs on Android ( 5.0 or recent )
All FR
NFR5
Portability
User's data should be loaded on login on different devices
FR2
Use case diagram and use cases
Use case diagram
Use Cases
Use case 1, UC1 - FR1 Manage user account
Use case 1.1, UC1.1 - FR1.1 Create User
Actors Involved
Driver
Precondition
Internet Connection enabled
Post condition
Account added to the database
Nominal Scenario
User inserts some personal info and credentials, Verify by e-mail
Variants
E-mail already used for other account, issue warning
Use case 1.2, UC1.2 - FR1.2 Edit User
Actors Involved
Driver
Precondition
Internet Connection enabled, User Logged in
Post condition
Account updated and committed to the database
Nominal Scenario
User updates personal info
Variants
Use case 1.3, UC1.3 - FR1.3 Delete User
Actors Involved
Driver
Precondition
Internet Connection enabled, User Logged in
Post condition
Account removed from the database
Nominal Scenario
User deletes his account
Variants
Use case 2, UC2 - FR4 Handle view a map considering the user's location
Actors Involved
Driver, Gas Station Manager
Precondition
Internet Connection enabled, GPS enabled
Post condition
Nominal Scenario
User navigates the map in the application from his GPS position
Variants
Use case 3, UC3 - FR5 Handle highlighting of the gas stations in the map with the price they pratice
Actors Involved
Driver, Gas Station Manager
Precondition
Internet Connection enabled, GPS enabled
Post condition
Gas station is selected and more info are showed
Nominal Scenario
Highlight point on the map by pressing on a gas station
Variants
Use case 4, UC4 - FR6 Handle update of the map of gas stations prices
Actors Involved
Driver, Gas Station Manager
Precondition
Internet Connection enabled, GPS enabled
Post condition
Nominal Scenario
By pressing on refresh, prices on the map will be updated
Variants
Use case 5, UC5 - FR7 Handle adding of a gas station price
Actors Involved
Driver
Precondition
Gas Station selected, User Logged in
Post condition
Gas station price committed to the database
Nominal Scenario
User selects a gas station on the map and adds a price
Variants
update a gas station price (FR8)
Relevant scenarios
Scenario 1
Scenario ID: SC1
Corresponds to UC5
Description
Insert new gas station price
Precondition
Driver login, Internet Connection enabled, GPS enabled
Postcondition
Gas station price added, Gas station appears on the the map with its price label
Step#
Step description
1
Driver navigates the map
2
Driver selects the gas station
3
Driver chooses a price to add
4
Driver confirm the insertion
Scenario 2
Scenario ID: SC2
Corresponds to UC5
Description
Update gas station price
Precondition
Driver login, Internet Connection enabled, GPS enabled