Skip to content

Latest commit

 

History

History
189 lines (143 loc) · 8.38 KB

REQ_s272561.md

File metadata and controls

189 lines (143 loc) · 8.38 KB

Official Requirements Document

Authors: Iman Ostovar

Date: 29/03/2020

Version: 1.1

Change history

Version Changes

Contents

Abstract

Some drivers may want to know the prices and the positions of the gas stations near them. Having this information, they can choose the best station among them. It is useful for managing their both fuel and pocket. Knowing this, a group of developers may want to build an application which allows them to find the proper gas station that better fit in their necessities by concerning some parameters like position, maximum distance and prices, and the specific fuel type. Gas station owners can update pieces of information about prices and positions to raise their chance to be chosen.

Stakeholders

Stakeholder name Description
Drivers Uses the application to choose among fuel stations (1000-10000 people)
Gas Station Owners use the application to share their prices and options, letting drivers know them
Map provider use the services from to share locations of stations
Databse provider use the services from to share save information among users

Context Diagram and interfaces

Context Diagram

left to right direction
actor EZGAS as a
a -- (Gas Staion owner)
a -- (Driver)
a -- (GPS Service Provider)
a -- (Map API)
a -- (Server)

Interfaces

Actor Logical Interface Physical Interface
Client GUI Toch Screen, keyboard
Server web services (functions to be described, data exchanged, SOAP + XML) internet connection
GPS Service Provider API GPS system on smartphones phone’s antenna for gps locationing

Stories and personas

Alice usually wakes up late in the morning. She drinks a couple of coffee and goes out to prevent being fired from being late at work. She has recently changed her house; as a result, she is no familiar with the local places. Moreover, she is a very economical woman to save money and buy an electric car. After being in her car, she found out he car almost runs out of the fuel. She was heard about a new application named EZGAS, which shows all gas stations and also sorts them by their prices. So she can easily download the app, turn on the gps, and using the internet to see all the near stations with their current prices. Jerry is a young owner of a newly opened gas station. He is an update man, trying to use technology in all his life and work as much as possible. He uses EZgas to let all drivers knew about his location and also low prices. A little description of his station is also included. Therefore he uses this application as an advertisement and makes his new station well-known. Thanks to the EZGAS, Alice filled her car's fuel tank as fast as possible and did not get fired. Jerry is also satisfied with raising a number of customers.

Functional and non functional requirements

Functional Requirements

ID Description
FR1 The Driver, shall be able to search for all gas station in chosen area
FR2 The Driver, shall be able to choose the fuel type in searching
FR3 The Driver, shall be able to sort gas station in both distance and price order
FR4 The Driver, shall be able to write a small comment about stations and also gives score
FR5 The Gas station Owner shall be able to update its prices, open hours and other parameters in database
FR6 The Gas station Owner shall be able to put special offers o special days or hours
FR7 The Gas station Owner shall be able to put some more detail about station options
FR8 The Gas station Owner should register and be authenticated
FR9 The Gas station Owner shall be able to edit his/her account any time
FR10 Both types of users shall be able to use a simple but different GUI for doing all the previous FRs
FR11 Both types of users, shall be able to report a bug via a bug system reporting.

Non Functional Requirements

ID Type (efficiency, reliability, .. see iso 9126) Description Refers to
NFR1 Usability Application should be used with no training by any colleague in the office All FR
NFR2 Performance All functions should complete in < 1 sec All FR
NFR3 Portability The application runs on both android and ios All FR
NFR4 Portability The application database should be accessed from all web browsers All FR
NFR5 Localisation Decimal numbers use. (dot) as decimal separator
NFR6 Localisation Prices and distances shall be able to change between different currencies and metrics

Use case diagram and use cases

Use case diagram

left to right direction
actor EZGAS as a
a -- (Database)
a -- (GPS)
actor "Gas Station owner"  as c
c -- a
actor Driver as b
b -- a
b -- (GPS)

Use Cases

Use case 1, UC1 - FR5-7 Gas station owner update database

Actors Involved Gas station owner
Precondition Having a registerd gas station, have an internet connection, have a smartphone or a computer
Postcondition Gas station is parameters has updated in database
Nominal Scenario The gas station information (location, kind of fuels supported, price, etc.) updated in database
Variants The lower prices stations will promote in the application for drivers

Use case 2, UC2 - FR8 Gas station owner add station to datatbase

Actors Involved Gas station owner
Precondition The owner has no account, have a scan of the station legal documents, having GPS provided location the station
Postcondition owner, make an account for his/her station
Nominal Scenario owner make new account and add his/her station to data base
Variants

Use case 3, UC3 - FR1-4 Driver find the suitable station

Actors Involved Driver
Precondition Driver has an internet connection, has a smartphone. knowing GPS provided location itself
Postcondition Drivers Car fuel bank is filled
Nominal Scenario Driver searches for near stations and chooses between them, and then routed to it
Variants No gas station fit in the driver needs, he has to update the parameters

Relevant scenarios

Scenario 1

Scenario ID: SC1 Corresponds to UC1&2
Description A gas station owner wants to add or upgrade his gas station information.
Precondition The gas station prices have changed
Postcondition Gas station information updated/added
Step# Step description
1 The gas station owner has to verify his identity (by sending a document or log in with account).
2 The gas station owner adds/updates the parameters and information about gas station
3 save and logout

Scenario 2

Scenario ID: SC2 Corresponds to UC3
Description One driver use EZGas to find a solution that fit his need.
Precondition Driver has EZGASS application and know the current location
Postcondition best local station will be founded to fill the tanks
Step# Step description
1 The drive set parameters in EZGAS
2 EZGas perform search
3 EZGas returns results
4 Driver chooses between recommended options
5 (optional)Driver Scores the station or leave a comment

The Glossary is attache as a picture with same name