Dashboard for a Water Bottle Distributor
Tags: octograd2020
Published: 2020-05-21 14:00:47

[Comment]: # (All of this is placeholder text. Use this format or any other format of your choosing to best describe your project and experience.)

[Note]: # (If you used the GitHub Student Developer Pack on your project, add the "#githubsdp" tag above. We’d also love to know which services you used and how you used it!)

## My Final Project
At present, American Premium Water Systems is using a manual technique to find for its customers to deliver water cans where Route man (Person who is in charge of a delivery truck) manually finds for customers using addresses, writes down delivery information and also manually writes down receipts. The data is then entered to an internal system in the organization by referring to these receipts. This process is hectic and non-productive for the company. 

To overcome this issue, the client suggests to develop a system which consists of an android application which will be used by the route man to reduce manual work and also a web application which tracks down deliveries done by various route men. 

## Link to Code

{% github Kushiya/American-Water-Management-System-Dashboard no-readme %}

## How I built it

###Project Definition

####Objectives
The primary goal of the project is to develop a system to facilitate and make water delivery process easier and productive for the client. This will help the client to replace current manual methods practised in the process of water delivery. 

####Scope and Deliverables
The scope of the system includes an android application which helps route man to find for customers and also includes forms where delivery details can be inserted. The inserted details will be stored in a database. And a web application for the company to view delivery data and be productivity of deliveries. 

####Constraints and assumptions
It is assumed based on the initial conversation with the client that the project cannot be tested feature wise with real deliveries using route man as it could disturb the flow of the daily deliveries. 
The assumed target date for the completion of the project is 10th April 2020. 

###Outline Business Case
The project brings out several benefits for the business of the client. At first it allows route men to easily find the customers and completely replace manual writing practices with inputs in the application, thus, makes deliveries more productive by saving time and reduced errors in entered data as validations will be present. 

The management team who handles deliveries will also be benefited by the project as they can keep live track of all route men and all activities done by them. Management can also completely terminate manual data entries as data entered by route men will be automatically entered to the system as well based on several calculations

The project is necessary for the organization to increase productivity in their water deliveries and track down non-productive and improper deliveries to increase customer satisfaction. The project terminates all required manual written inputs in the process of delivery which saves time and gives quality and error prone data. 

###Customer’s Quality Expectations
•The system needs to ensure that it is secured and safe as it deals with sensitive data of the organization.
•The android and web application should have a very user friendly design.
•The validations in the application should be proper so that incorrect data will not be inserted
•The applications should work fast and be able to work with minimal lag

###Method/Tool Performance
The project delivers 2 main deliverables which are an android application and web application. The applications are developed using various tools and below are performance summaries of those tools. 

Android Studio – Was used as the IDE to develop the android application. The IDE had many features and also has support for Flutter plugin which made the development easier.

Postman – This is an API testing tool which was helpful in testing the API developed for the android and web applications. The performance of the tool was good as it supported multiple request formats.

Visual Studio Code – This is an IDE which was used for the development of the web application. The IDE contains live server, Code completion and other features which helped in the development.

## Additional Stories

###Management/Quality Process Assessment
The project was thoroughly managed in several aspects for each stage. Given below are some of the major key points which can be used to assess the level of management

•The project was delivered successfully according to the given timeframe.
•The project manager was responsible for monitoring all team members and getting the work done accordingly
•The developers experience helped to deliver a project which was adhering to exact client requirements
•The board meetings were conducted with all members of the team which helped to make sure all team members are in track with the project
•The quality analyst made sure that the products developed in each stage is tested thoroughly and adheres to the client’s expectations.
•The technical writer kept records of all documents and updated them as necessary

###Deviations
The project was developed according to the initial requirements given by the client and there weren’t any major changes. However, some minor changes in the project are as follows
•The theme colour of the application was changed.
•The printing feature of the application was postponed
•Some minor UI changes were made.

###Project Issues
The major issue faced by the project is the outbreak of the pandemic and lockdown in the country. The client was no longer having severe interest in the project and meetings with client was not possible. However, the client was contacted and explained on the progress of the project and was made to get along with the project.

The client also had a firewall problem and therefore revoked all credentials to their server. Therefore, the developers and tester could not access the backend database hosted in the server. This issue was solved by adding mock data to the application and website until credentials were revoked

The receipt feature of the android application had a dependency of a handheld printer. Since the client could not provide the resource, The client had said to postpone the feature and complete it once the resource is available. 

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/mjvlpjhx2ik6rc5a4g03.png)
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/pph7wn4vmjywwgrdv4a6.png)

[Final Note]: # (CONGRATULATIONS!!! You are amazing!)