HeaderSIS.jpg

IS480 Team wiki: 2016T2 ProgneSIS FinalWiki

From IS480
Jump to navigation Jump to search
Progensis.png
Team Prognesis Icon Home.png

HOME

  Team Prognesis Icon AboutUs.png

ABOUT US

  Team Prognesis Icon Overview.png

PROJECT OVERVIEW

  Team Prognesis Icon ProjectManagement.png

PROJECT MANAGEMENT

  Team Prognesis Icon Documentation.png

DOCUMENTATION

 
Main Wiki Mid Term Wiki Final Wiki


Project Progress Summary

Finals slides

Deployed Link: http://versafleet-analytics.herokuapp.com/

Project Highlights

Our project schedule is divided into 13 iterations

  • 4 user testing, 2 with actual users & 2 with potential users
  • Current iteration: 12
  • Iteration 12: 03 April 2016 - 16 April 2016
  • Major changes in requirements resulted in re-scoping in iteration 3-4 and hence major changes in schedule
  • User Testing 1 was delayed by a month as a result of re-scoping
  • List of requirement changes
    • Different metrics was replaced with different dimensions and granularity levels for Delivery Fulfilment Rate
  • Working very closely with our client to help us better design our calculations algorithm
  • To even out the workload, members who contributed lesser (in terms of hours) made up during later iterations
  • User Testing 3 was delayed so that improvements can be made prior to UT3 and UT4
    • Improvements: 1) Screen scraping, 2) Inclusion of mean for Delivery Fulfilment Rate, 3) Change in calculation method for graph to better represent data, 4) Selection of information to be displayed in table


Project Management

Project Status

Task/Function/Features Status Confident Level (0-1) Comment
Login/Logout/Registration Fully deployed and tested 100% 1 Minh & Yi Xuan
Accounts Settings (User Module) Fully deployed and tested 100% 1 Claudia, Minh & Yi Xuan
Customer Settings (User Module) Fully deployed and tested 100% 1 Claudia, Minh & Yi Xuan
Integrate with VersaFleet Fully deployed and tested 100% 1 Minh, Yi Xuan & Jason
Overall Deliver Fulfilment Rate(DFR) Fully deployed and tested 100% 1 Claudia, Minh, Yi Xuan & Jason
DFR by drivers Fully deployed and tested 100% 1 Claudia, Minh, Yi Xuan & Jason
DFR for customers Fully deployed and tested 100% 1 Claudia, Minh, Yi Xuan & Jason
DFR by pickup region Fully deployed and tested 100% 1 Claudia, Minh, Yi Xuan & Jason
DFR by delivery region Fully deployed and tested 100% 1 Claudia, Minh, Yi Xuan & Jason
DFR by volume Fully deployed and tested 100% 1 Claudia, Minh, Yi Xuan & Jason
DFR by drivers Fully deployed and tested 100% 1 Claudia, Minh, Yi Xuan & Jason
Customer view DFR Fully deployed and tested 100% 1 Minh, Yi Xuan & Jason
Trips by each driver Fully deployed and tested 100% 1 Claudia, Minh, Yi Xuan & Jason
Trips for each customer Fully deployed and tested 100% 1 Claudia, Minh, Yi Xuan & Jason
Trips for each pickup region Fully deployed and tested 100% 1 Claudia, Minh, Yi Xuan & Jason
Trips by each delivery region Fully deployed and tested 100% 1 Claudia, Minh, Yi Xuan & Jason
Trips by each volume (range) Fully deployed and tested 100% 1 Claudia, Minh, Yi Xuan & Jason
Feedback and enquiry Fully deployed and tested 100% 1 Yi Xuan
Help Page Fully deployed and tested 100% 1 Claudia
Daily Report Dropped 0 Claudia, Minh, Yi Xuan & Jason


Project Schedule (Planned vs Actual)

Planned
Team ProgneSIS Scope V3.png
Actual
Team ProgneSIS Scope V5 MidTerms.png


Highlights of Changes Made to Scope

  • Rather than having many metrics on a single, our client felt that it would be more meaningful to have a single metric on different levels with different dimensions
  • On the trip level (lowest level), users can choose to view total/on time/late deliveries by days/weeks/months.
  • Dynamic date picker allows user to view data from specific dates

Full documentation of our scope changes can be found in our Change Management here!

Project Schedule

Planned

Team ProgneSIS Planned Timeline.png

Actual

Team ProgneSIS Actual Timeline.png

Highlights of Changes Made in Schedule

  • User Testing 1 shifted from Iter 5 to Iter 7 due to major changes in scope thereby affecting User Testing 2, which shifted from Iter 6 to 8.

Project Metrics

Schedule Metrics

View our Schedule Metrics Here!

Team ProgneSIS Schedule Metrics Score Graph.png

Schedule Metrics Highlights

Iteration Planned Duration (Days) Actual Duration (Days) Schedule Metric Score Action Status
1 21 22 95.2381% Estimates are generally accurate and on track. Proceed as per normal.

Slight delay due to the need to integrate with 3rd party accounting software, Xero. Team had to spend more time than planned in integration and understanding what revenue and costs comprise.

Follow up action: Iteration 2 was delayed by a day. However, the subsequent iterations are shortened with modules broken down into more manageable parts. No buffer day is used.

Completed



Bug Metrics

View our Bug Metrics here!

Bug Score

Team ProgneSIS Bug Metrics Score Graph.png

Bug Distribution based on Severity

Team ProgneSIS Bugs by Category Graph.png

Bug Metrics Highlights

Iteration Bug Score Summary of bugs Action Taken
1 26
1 Critical
3 High
1 Low
Most of the bugs in this iteration were due to incorrect logic to get accurate figures. The team has to stop all current development and resolve the bug immediately. Project Manager reschedules project.
8 10
2 High
All of the bugs in this iteration are backend related and are only detected when the developers test and check the algorithms. The team has to stop all current development and resolve the bug immediately. No rescheduling needed as debugging was relatively straightforward.


Project Risks

View our risk management here!

Risk Type Risk Description Impact Likelihood Impact Category Mitigation Plan
Project Management Risk Uneven distribution of workload. Project will be potentially delayed due to poor team synergy leading to uncooperative team members. High High A Project Manager to ensure that members make up for the hours during iterations where they contributed lesser (in terms of hours) due to heavier commitments.
Project Management Risk Unable to get VersaFleet users to test our application due to their packed schedule. Unable to get feedback from actual users and hence affect the usability of the system. High High A Project Manager to get logistics-field users doing similar work to VersaFleet users to provide feedback for our application.
Project Risk Delay in availability of APIs with necessary data to us, such as API with Delivery Fulfillment Rate data. Project could be potentially delayed due to a delay in development of graphs and tables which are then used for Customer Module. Medium High A Project Manager to give sponsor datelines so that sponsor has sufficient time to gather information and provide them to us.

The above risks have been mitigated.

  1. Risk 1: Team members with lower contribution in earlier iterations contributed more(in terms of hours).View our task list here!
  2. Risk 2: PM liaised with client's business development manager to schedule User Testing 1 in between client's meetings with their customers. Team looked for experts in logistics-field doing similar work to provide feedback for our application.
  3. Risk 3: PM liaised directly with client's backend developer to get APIs needed for our application.


Technical Complexity

Our Architecture Design

Team ProgneSIS Architecture Diagram.png


Technologies that we have used

Team ProgneSIS Technologies.png


Single Page Application(SPA)

  • The whole application loads only once, and never has to reload.
  • All the data fetching is done through AJAX and the application state is kept on the client
  • Benefit: Better user experience, fast application.

JSON Web Tokens

  • A modern standard to authenticate users.
  • On login a JWT is created for the user, which he then uses to authenticate his subsequent requests for data.

Benefit:

  • Each request is stateless so it does not rely on the running server.
  • Ease of processing on the client-side and backend.

Flux (Redux)

  • A new approach for client-side applications to manage their data flow.
  • Unlike MVC it uses uni-directional data flow on the client-side.

Benefit:

  • One change by user propagates the change to the whole application. This helps to keep the state to be most updated and also improves developer experience.
  • Also, it is less error-prone.

Custom Build Process

  • We create our custom build process by using Webpack tool. It creates a bundle that is attached to the HTML that runs the application, in its bundling it binds all the files together, transpiles code from ES6 to ES5, optimizes the modules import and export, and compiles all the SCSS files.
  • We also automate tedious development tasks by using Gulp such as running server, running bundler and preprocessing files.

Benefit:

  • Ability to use the latest standard that is compliant with the browser.
  • Provides freedom of how we want to create our files and allow its usage on the browser.
  • Automates tedious tasks such as automatic reloading, running on different browsers simultaneously, and more.


Quality of Product

Intermediate Deliverables

Stage Specification Modules
Project Management Minutes Sponsor weeks -19, -14, -13, -10, -5, -4, 1 Supervisor weeks -11, -9, 4, 5, 7
Metrics Schedule metrics, Task metrics & Bug metrics
Requirements Storyboards and User Study [1], [2]
Analysis Use case [3]
Sequence Diagram [4]
Business Process Diagram [5], [6]
Screen Shots CRUD Customer, Trend Analysis
Design Frontend Component Design [7]
Backend API Design [8]
Testing User testing design [9]


Deployment

Deployed Link: http://versafleet-analytics.herokuapp.com/

Testing

We have conducted two user testing, one user study and one heuristic evaluation.

Heuristic Evaluation

  • Venue: At participant's convenience
  • Participants: 5 participants
  • We conducted a Heuristic Evaluation using a paper prototype to learn about the usability of our current design of VersaFleet Analytics. We used a paper prototype as changes can be made easily before we develop the actual application. This HE will help us discover possible improvements in the design of our application to improve its usability.

View our detailed Heuristics Evaluation here!

User Study

  • Date: 12 October 2015
  • Venue: Respective offices of our potential users
  • Participants: 1 logistics SME business owner and 1 logistics SME operations manager
  • Objectives:
  1. Find out if user interface is intuitive
  2. Find out if the metrics are what they look at
  3. Find out which metric(s) they look at more frequently
  4. Identify usability problem(s) which users might face

View our detailed User Study here!

User Testing 1

  • Date: 30-31 January 2016
  • Venue: Respective offices of our potential users
  • Participants: 5 VersaFleet users
  • Objectives:
  1. Find out if user interface is intuitive
  2. Identify usability problem(s) which users might face

View our detailed User Testing 1 here!

User Testing 2

  • Date: 10 February 2016
  • Venue: Respective offices of logistics-field experts
  • Participants: 3 logistics SME business owners
  • Objectives:
  1. Find out if user interface is intuitive
  2. Identify usability problem(s) which users might face

View our detailed User Testing 2 here!


Reflection

Team Reflection
Team ProgneSIS Karen.jpg "It is important to be adaptable and flexible in our plan as things seldom go according to plan. We have to have to be mentally prepared for alternatives. Communication is a vital skill, when you say the right things, you get what you need."
Team ProgneSIS Minh.jpg "Designing a comprehensive architecture requires a great deal of thoughts. It is a great learning experience to design a front-end application and back-end application, and for them to work together flawlessly brings out the beauty of IT systems and design. I will strive to design most maintainable and optimal front-end using latest standard."
Team ProgneSIS Claudia.jpg "Beyond the vast amount of new knowledge I have gained on the technicalities of coding the front-end, I have also learnt the importance of understanding your users. Companies have different requirements and varying purposes when utilising our application. It was thus crucial to be able to find a middle ground that is comprehensible by at least the vast majority."
Team ProgneSIS Eva.jpg "Due to the nature of our web application, gathering users has been a huge challenge. Hence, it is necessary to have a contingency plan when users are unavailable."
Team ProgneSIS Yixuan.jpg "The tasks as a backend developer isn't as straightforward as simply coding function, it is important to understand the even the company's standard, mission and how their business function as a whole."
Team ProgneSIS Jason.jpg "Understanding the architecture system as a whole and how different components work together is crucial to the development process as a backend developer."