3 minute read

Revision History

1. Introduction

1.1 Purpose

Advertisement

The purpose of the KarPool app is that it reduces the number of cars driving on the university’s roads by combining many trips for those who have the same endpoint (school) into one trip using only one car.

• KarPool : give a general idea of the app and its features and the detailed requirements that the app should be built based on it.

• Version: 1.0

1.2 Document Conventions

The font that is used in this SRS is “Arial”. Some abbreviations that have been used in this SRS:

• SRS: software requirements specifications.

• Carpool/Carpooling: multiple people using the one car instead of using multiple cars.

• 2FA: 2 Factor Authentication.

1.3 Intended Audience and Reading Suggestions

This project targets people who are unable to take their children to school. The document is intended for developers and project managers. Developers will need this document to understand the documentation which will help them understand the pre-existing features so they can implement other new features that are integrated within the system. As for project managers, it guides them to understand the vision of the project and how it will work later down the line.

1.4 Project Scope

KarPool is an app aims to help parents who can’t drive their children to schools by sending them with other parents who’re heading to the same school/ neighborhood as their children’. The main goals of the system are to reduce morning traffic in campus, and to solve time conflicts KFUPM members face with their work and drooping their children. The objectives of the system are:

1- To make sure users using the app more often, KFUPM members should have a better experience using the app.

2- By making sure parents feel safe about the experience, more KFUPM members would use it.

1.5 References

Stack Overflow: https://stackoverflow.com/questions/20184055/what-if-any-is-thedifference-between-a-software-release-and-a-version/20184757.

2. Overall Description

2.1 Product Perspective

KarPool is a new product that comes to solve certain problems within the university compound. It started with observing that there are conflicts between the schedule of the university’s faculty and their children who need to go to school. Initially, the concept of ordering rides came from transportation apps, such as Uber, Kareem and Bolt.

2.2 Product Features

From the renter’s perspective: The product will allow the user to rent a driver who can drive the children of the user to the school by showing the driver’s information

From the driver’s perspective: The product will allow the driver to see who wants this service and have a choice of whether to accept it or not.

2.3 User Classes and Characteristics

The user classes that will be used are:

Renter:

1- Can request a service from the driver

2- Can navigate where the driver is until the children reach the school

3- Moderate technical expertise

4- Very important to satisfy

Driver:

1- Can accept ride requests

2- Interaction with the app is very low since they are driving

3- Low technical expertise

4- Very important to satisfy

Customer service:

1- Can communicate with the app users and help them with any issues

2- Have a certain administration

3- High technical expertise

4- Have to be fairly satisfied

2.4 Operating Environment

The app will be used in the KFUPM community. The hardware platform that the system will operate is ARM. It would be available on both iOS 14 and above and android 10 and above. The software does not require any external components.

2.5 Design and Implementation Constraints

The main constraint will be developing the system using Java and Flutter API. The system’s memory usage shall not exceed 75% of the hardware’s memory which means the program must work efficiently and not waste device’s resources. The system must comply with the regulations of the ministry of transportation.

As for using other technologies, the system will be using Microsoft’s Azure services to keep the system’s online services up and running.

Since 2FA is much more effective than passwords, the user can choose not to use passwords to log in and use 2FA instead, but they must verify their phone number before that. When it comes to implementing new security features, the developers must make sure that the user doesn’t lock themselves out of their account.

2.6 User Documentation

The app will have a tutorial at the first time launching for every user. A support number will be available within the app that can assets the user at any time. The software will have a wiki page explaining the features and how to use them. It will also have hint icons that explain what that feature is.

2.7 Assumptions and Dependencies

The development team has experience of integrating the commercial components which will be used later. The university has database servers capable of operating the system. Assuming the system can be operated in IOS and Android. The development team should know the latest regularities from the ministry of transposition and implement the system upon them. The system will assume that the architecture of the CPU is ARM, meaning it will not run on x86 or RISC. The system also assumes that the device has Java installed. The user’s account can be logged in by more than one device. KFUPM IT department allowing usage of the all KFUPM portal log in data to verify that all users of the app are KFUPM members.

This article is from: