Skip to content

Latest commit

 

History

History
143 lines (102 loc) · 5.96 KB

REQ_s269105.md

File metadata and controls

143 lines (102 loc) · 5.96 KB

Official Requirements Document

Authors: Mauro Perra

Date: 31/03/2020

Version: 2

Contents

Abstract

Drivers look for gas stations closest to them looking at the prices of the various gas stations in order of proximity. Drivers can check the prices of their favorite gas station.

The various operators of gas stations can register a new gas station with the prices, they can also make special discounts.

Stakeholders

Stakeholder name Description
Gas Station Operator Uses the application for register gas stations, prices and special discounts
Driver Uses the application in guest mode or log in in the personal area for search gas stations, look their prices and save eventualy favorite gas station (only for registered account)

Context Diagram and interfaces

Context Diagram

Context Diagram

Interfaces

Actor Logical Interface Physical Interface
Gas Station Operator GUI Screen, keyboard
Driver GUI Screen, keyboard

Stories and personas

Gianni is a driver who travels a lot for work. He travels for km and km, so the price of gasoline is important to him, because unfortunately the reimbursement given by his company is very limited. Each time he stops at the first petrol station, not knowing that maybe there is another cheaper petrol station ahead.

Alfred is a gas station operator of a little gas station. Since the big companies came to town, things have gone wrong for him. Every time he tries to make the best price, but nobody ever goes there because he have the last petrol station of a one-way street.

Gianni and Alfred will never meet if there was no application that tells Gianni that Alfred's price is the best.

Functional and non functional requirements

Functional Requirements

ID Description
FR1 Record gas station location
FR2 Record gas station prices
FR3 Record discounts of gas stations
FR4 Record favourite gas stations

Non Functional Requirements

ID Type (efficiency, reliability, .. see iso 9126) Description Refers to
NFR1 Usability Application should be used with no training by any drivers or gas stations operators All FR
NFR2 Precision Gas stations are placed with a good precision All FR
NFR3 Portability The application runs on MS Windows (7 and more recent) All FR
NFR4 Portability The application (functions and data) should be portable from a PC to another PC in less than 5 minutes All FR
NFR5 Localisation Decimal numbers use . (dot) as decimal separator

Use case diagram and use cases

Use case diagram

Case Diagram

Use Cases

Use case 1, UC1 - FR1 Record the gas station location

Actors Involved Gas Station Operator
Precondition Gas station GS exists
Post condition GS.location!=null
Nominal Scenario Gas Station Operator add the location of GS
Variants

Use case 2, UC2 - FR2 Record gas station prices

Actors Involved Administrator
Precondition Gas station GS exists
Post condition GS.prices>0.0
Nominal Scenario Gas Station Operator set GS prices
Variants

Use case 3, UC3 - FR3 Record discounts of gas station

Actors Involved Administrator
Precondition Gas station GS exists
Post condition GS.Ndisconunts>=0
Nominal Scenario Gas Station Operator add or remove a discount from the GS
Variants

Use case 4, UC4 - FR4 Record favourite gas station

Actors Involved Driver
Precondition Driver D exists, D.Nvisit>0, Gas station GS exists
Post condition D.favourite>=0
Nominal Scenario A Driver can add a GS into its favourite list
Variants

Relevant scenarios

Scenario 1

Scenario ID: SC1 Corresponds to UC4
Description Driver D visit a gas station GS and add it to its favourite list
Precondition Account of D exists (D is not guest user) and GS exists
Postcondition Number of visit increments and GS is added in D.favourite list
Step# Step description
1 Driver visit GS
2 Driver add the GS on favourite GSs
3 Driver can see immediatley the list of the favourite GSs,
their prices and their locations

Glossary

Class Diagram