Professional Documents
Culture Documents
DCIT 307, Group 2 SRS
DCIT 307, Group 2 SRS
Overview
Purpose
This software application is basically a courier software that is meant to enable users
to book in deliveries and have their packages delivered. Delivery will be done by
organizing customers' orders and allocating them to the nearest couriers. At the end
of the day, the customers should have received their packages, the couriers delivering
the packages should have been supported - provided the necessary details for
delivery and customer satisfaction should have taken place to ensure that the
customers have an appreciable customer experience.
Overall Description
The Courier Software consists of two (2) applications, one for the drivers and the other
for the customers. The application for the drivers will enable them to register, get
notified on nearby delivery requests, accept or decline requests, get the fastest route
for delivery and see the price after delivery. Customers, on the other hand, will be able
to register, enter a pickup location, request for couriers to deliver, see nearby available
couriers, see an estimated price for the delivery.
Functional Requirements
In a software engineering project, functional requirements can be defined as the
functionalities the product being built should have - what the project should do.
Upon discussion with the group members we came to the following functional
requirements for our courier service product. They will be divided into two
categories, functional requirements for the end user and for the delivery riders.
Users:
• Individuals or Businesses (End users) looking to Deliver or receive packages.
• Vehicle (Car and Motorcycle) drivers picking up and delivering packages from a
pick up point to drop off point.
Use-Case Diagram
1. Login:
Users can log into the system with valid credentials.
2. . Request for service:
A delivery or courier service is requested here.
3. Make payment:
Payment is made for the service here based on the user's request details.
5. Track package:
User tracks package using system.
6. Package delivered:
Package is delivered to the user's specified destination.
User Stories:
1. As an end user, I want to be able to request for a package to be delivered
So that, I can save the time and cost of driving to-and-fro.
Pre-condition: Valid user account.
Post-condition: Successful delivery of package.
Priority: HIGH
5. As an end user, I want to see the estimated time of the rider's arrival to the
pickup point once my request has been accepted
So that, I know when to expect the driver/rider's arrival.
Pre-condition: Pickup location entered successfully.
Post-condition: Prepared in time to meet the driver/rider.
Priority: LOW
6. As an end user, I want to be able to keep track of my package, from pickup to
drop-off.
So that, I know where my package is, while it's being delivered.
Pre-condition: Successful pickup by driver/rider.
Post-condition: Advantage of knowing where the package is.
Priority: HIGH
8. As a driver/rider, I want to know the pickup and drop off location of a package
So that, I can successfully pick up and drop off packages as requested.
Pre-condition: Users must provide pickup and drop off locations.
Post-condition: Successful delivery of package.
Priority: HIGH
11. As a driver/rider, I want to be able to view the price of delivering the package at
the end of the ride
So I can collect payment.
Pre-condition: Successful delivery of package.
Post-condition: Successful payment for package delivery.
Priority: HIGH
12. As a driver/rider, I want to be able to contact the user requesting the package
delivery and the person receiving the package.
So that, I can communicate the time of arrival at pick up and drop locations and
confirm requests.
Pre-condition: Accepted ride request.
Post-condition: Smooth pickup and drop-off of packages.
Priority: MEDIUM
Technologies To Be Used
1. React Native for both mobile applications
2. HTML, CSS, JavaScript for web app
3. PHP for the backend