1 of 23

Abuad Deliveries Web App

2 of 23

Group Members

OMORUYI DAVID OHUOBA - 20/ENG02/071

ADENIYI TOLULOPE GBOYEGA - 18/ENG02/008

ALANZA IJEOMA SHALOM - 18/SCI01/016

BITRUS JESSE JOSHUA - 19/ENG02/028

ABU DANIEL BABA - 18/ENG02/003

SAKA-SHENAYON OLANREWAJU - 18/ENG02/086

ETOK. NSIBIET-ABASI EDEM - 18/ENG02/028

IFIDI JOSHUA TENADOU - 18/ENG02/44

OGAR ADALIKWU -18/ENG02/069

3 of 23

Introduction

Abuad deliveries is a web application designed to allow users and drivers to sign up, log in, make deliveries and keep track of the status of the package. The web app will allow drivers receive delivery request from users and also allow users make delivery request, make payment and monitor the status of delivery

4 of 23

Abuad deliveries was developed using

MERN (MongoDB, Express, React and Node)

Html and CSS

5 of 23

Users

Driver

Student

Admin

6 of 23

Admin

  • Login
  • Admin can manage & update whole data
  • Manage Shipment
  • Add Shipper info, Receiver info and Shipment info.
  • Edit/Update Shipment
  • List all Shipment
  • Search By Consignment Number

7 of 23

Driver

Costumer

  • Login
  • Get Package pickup and delivery location with customer details

  • With Limited Access
  • Users can check status of their product after placing orders.

8 of 23

Development Process

The development process used was the Agile method

Agile software development refers to a group of software development methodologies based on iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams.

9 of 23

Analysis and design

USE CASE DIAGRAM

A use case diagram is a graphical depiction of the interaction among a system, often used in system analysis to identify, clarify and organize system requirements

10 of 23

USE CASE DIAGRAM

11 of 23

Implementation

Front-end Development

After the aesthetic designs were made, they were implemented by the front-end team which made use of React, Redux, and CSS. React was used as the library that provided jsx components that allowed us to write HTML structured code in a more efficient way. Redux was used to manage the global state of the website which contributed to the authentication and authorization system, payment system (with Paystack), mailing services, and tracking features. Lastly, vanilla CSS was used to design the website with animations and transitions to keep the users engaged.

12 of 23

Implementation

Backend Development

Node,js, Express, and custom REST APIs were utilized to make our application dynamic. With the server built from scratch on the node.js and express framework, custom REST APIs were built to allow interaction with the front end and the NoSQL Mongo DB Atlas Cloud database sending and receiving requests between the client and the server (which in turn queried the database)

13 of 23

Devops

DevOps

For scalability reasons, a PaaS cloud-based cloud hosting platform was utilized - Heroku. Heroku is built on the Amazon EC2 Elastic Beanstalk technology (The leading cloud service platform in the industry). This allowed for higher performance and increased scalability for the software.

14 of 23

15 of 23

16 of 23

17 of 23

18 of 23

19 of 23

System Architecture

user

Delivery app

driver

Database

Retrieve Orders

Admin

Tracking System

20 of 23

Testing

Testing is vital for the success of any software no system is perfect . Testing is also carried in two phases .first phase is during software engineering and the final phase after the software is completed. This system testing verifies that the whole set of programs hanged together.

21 of 23

Testing Result

The tests carried out during the coding process was unit testing using jest enzyme carried out by the coder.

Integration and system tests were also carried out during the development process

Apart from the tests carried out during the development process, after the project was concluded a functionality test was manually carried out by the tester.

Some non functional tests like load test using jmeter, performance and speed test using google chrome’s lighthouse tool.

22 of 23

Challenges Faced

Cost of Hosting

Difficulty in Collaboration

Some Members had to freshly learn the programming language from scratch

23 of 23

THANK YOU!!!!