Difference between revisions of "IS480 Team wiki: 2016T2 ProgneSIS MidTermWiki"
(6 intermediate revisions by the same user not shown) | |||
Line 155: | Line 155: | ||
|- | |- | ||
|Feedback and enquiry | |Feedback and enquiry | ||
− | | | + | |Fully deployed and tested 100% |
|1 | |1 | ||
|Yi Xuan | |Yi Xuan | ||
|- | |- | ||
|Help Page | |Help Page | ||
− | | | + | |Fully deployed and tested 100% |
|1 | |1 | ||
|Claudia | |Claudia | ||
Line 355: | Line 355: | ||
|rowspan="2"| Project Management | |rowspan="2"| Project Management | ||
|| Minutes | || Minutes | ||
− | || Sponsor weeks -19, -14, -13, -10, -5, -4, 1 Supervisor weeks -11, -9, 4, 5, 7 | + | || Sponsor weeks -19, -14, -13, -10, -5, -4, 1, 10 Supervisor weeks -11, -9, 4, 5, 7, 9, 10, 13, 14 |
|- | |- | ||
Line 445: | Line 445: | ||
==<div style="background: #7f7f7f; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px;letter-spacing:-0.08em;font-size:20px"><font color=#FFFFF>Reflection</font></div>== | ==<div style="background: #7f7f7f; padding: 15px; font-weight: bold; line-height: 0.3em; text-indent: 15px;letter-spacing:-0.08em;font-size:20px"><font color=#FFFFF>Reflection</font></div>== | ||
− | + | {| class="wikitable" style="margin: auto;width:80%; text-align:center; background: white;" | |
− | + | ! style="background: #7f7f7f; color: white; font-weight: bold; width:150px" | Team | |
− | + | ! style="background: #7f7f7f; color: white; font-weight: bold; width:500px" | Reflection | |
− | < | + | |- |
− | < | + | |[[Image:Team_ProgneSIS_Karen.jpg|150x150px]] |
+ | |"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." | ||
+ | |- | ||
+ | |[[Image:Team_ProgneSIS_Minh.jpg|150x150px]] | ||
+ | |"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." | ||
+ | |- | ||
+ | |[[Image:Team_ProgneSIS_Claudia.jpg|150x150px]] | ||
+ | |"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." | ||
+ | |- | ||
+ | |[[Image:Team_ProgneSIS_Eva.jpg|150x150px]] | ||
+ | |"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." | ||
+ | |- | ||
+ | |[[Image:Team_ProgneSIS_Yixuan.jpg|150x150px]] | ||
+ | |"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." | ||
+ | |- | ||
+ | |[[Image:Team_ProgneSIS_Jason.jpg|150x150px]] | ||
+ | |"Understanding the architecture system as a whole and how different components work together is crucial to the development process as a backend developer." | ||
+ | |- | ||
+ | |} | ||
+ | <br><!--Content End--> |
Latest revision as of 23:25, 4 April 2016
Main Wiki | Mid Term Wiki | Final Wiki |
Contents
|
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 | In Progress | 1 | Claudia, Minh, Yi Xuan & Jason |
Project Schedule (Planned vs Actual)
Planned |
---|
Actual |
---|
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
Actual
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!
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
Bug Score
Bug Distribution based on Severity
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.
- Risk 1: Team members with lower contribution in earlier iterations contributed more(in terms of hours).View our task list here!
- 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.
- Risk 3: PM liaised directly with client's backend developer to get APIs needed for our application.
Technical Complexity
Our Architecture Design
Technologies that we have used
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, 10 Supervisor weeks -11, -9, 4, 5, 7, 9, 10, 13, 14 |
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:
- Find out if user interface is intuitive
- Find out if the metrics are what they look at
- Find out which metric(s) they look at more frequently
- 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:
- Find out if user interface is intuitive
- 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:
- Find out if user interface is intuitive
- Identify usability problem(s) which users might face
View our detailed User Testing 2 here!
Reflection