Project Inception - murradkh/Shabus-Home GitHub Wiki

Project Inception / Planning Page

Initial Feature List

  1. Login system - login system for the bus drivers
  2. Client identifying system
  3. Client identifying By Moovit user
  4. Coupon system
  5. Real Time system
  6. "Shekel per Kilometer" system
  7. NFC

Initial Planning

Iteration 0 : Scheduling a meeting with Academic adviser and CEO of Shabus, so we get to know each other closely, so far we create our own application repository on github. In Addition to the Wiki page used to document the whole development process. Then Contact the organisation representative to schedule a first meeting in order to discuss the features, setting the priorities of the requirements . by far we can build initial requirement specification document.(one week).

Iteration 1 : Starting the developing stage by building a login page (which will be considered as the home page of the application). Deciding a styling and layout method.(two weeks more or less).

Iteration 2 : Considering the information we've collected on the application so far, yet we can build passenger identification system , initialize the database of SHABUS and connect it to our application.Then build a screen that handles a MOOVIT passenger situation.(3 weeks).

Iteration 3 : Building a Coupon system ,and real Time system which uses GPS.And testing the functionality of the features that we have implemented so far. (3 weeks).

Iteration 4 : deploying a testing strategy (detailed at the bottom of the page) in order to test that hardware, since our application includes some features that involves hardware components. if works well, we can start implementing the hardware features of the application such as "Shekel per Kilometre" system.(two weeks)

Risk Management

Risk Severity Response
1 Unfamiliar development tools High 1. Consulting mr.Assaf and mr.Shay
2. Learning form the internet
2 Estimations High 1. Try to build work plan for advance and keep up with it
3 High expectations from client Medium Frequent communication with the client to match his exceptions to the team abilities
4 Unknown Hardware Medium 1. Hybrid app
2. Frequent communication with the client
5 Communication With the Client High Try to catch them on a several communication channel. approaching the association location as needed.
6 Code Loss Low Back up all the code in external cloud such as google drive,dropbox etc..
7 Unexpected requirement change High developing the application in a modulure way , so it can be flixeble for changing
8 New Technology low 1.Take an online Mean course
2.build prototype

Development

Tools

Angular CLI - for implementing the functionality and the style of the application.
Visual studio code - used as developing environment.
BootStrap - used for packaging the web application and launching it as a "Moblie" application.
Firebase - used for deploying our application to the internet during the whole developing stage. Rest API
Ionic
php-communicating with the server.

Version Control

The code will be synchronized all the time on our github (repository) so that the group members can be updated all the time .

Coding Convention

We'll be more or less strict to the coding standars of Angular which detailed here.

Initial Architecture

UseCase

Testing Strategy

While devloping the app we will bulid our own DB (Mock object) that will resemble the drivers and passengers DB and test our login (main part of the app) features.
After finishing 50% of the app features we will test it with the organization drivers and join one of them to a test ride, as consedering the driver's feedback.
Also, while developing stage, we'll schedule a meeting withe the CEO of SHABUS and his head engineer for hearing theirs feedbacks also.

⚠️ **GitHub.com Fallback** ⚠️