HeaderSIS.jpg

IS480 Team wiki: 2017T1 Codezilla Final Wiki

From IS480
Revision as of 08:51, 27 November 2017 by Jolene.teo.2015 (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
CODEZILLABANNER.png


HOME

ABOUT US

PROJECT OVERVIEW

PROJECT MANAGEMENT

DOCUMENTATION

 


Project Progress Summary

Finals Slides: Link
Project Video: Video Link
Deployed Site Link: http://impactlaunch.space
To learn more about our Project: Project Description Link

Codezillafinals projectsummary.png


Project Highlights

Codezillafinals projecthighlights.png


Project Management

Project Schedule

To view all versions of the Project Schedule: Project Schedule Link
Planned Schedule:

Codezilla s11 schedule.png

Actual Schedule:

Codezilla schedule 12.png
Iteration Planned Actual Comments
12, 13 11 November 2017, sprint 13 28th October 2017, sprint 12 UAT 3 shifted from sprint 13 to sprint 12
13, 14 Sprint 12: complete communications module. Sprint 13: complete analytics module Sprint 12: complete analytics module. Sprint 13: complete communications module Switched the order of modules
14, 15 4th December 2017, sprint 15 27th November 2017, sprint 14 Shortened from 15 sprints to 14 sprints in total
13 We did not plan to conduct UAT 4 UAT 4 to be included in sprint 13 Included UAT 4 into sprint 13 of our schedule

Project Scope

All the functions have been completed.

Codezillafinals scope.png


Module Status Confidence Level (0-1) Comments
Account Modules (1 and 2) 100% 1 NIL
Project Module 100% 1 NIL
Resource Module 100% 1 There were improvements that had to be made with regards to understanding what a resource was and the design during UAT1
Search Modules (Project and Resource) 100% 1 NIL
Project Request Module 100% 1 NIL
Resource Request Module 100% 1 NIL
Project Management Modules (1 and 2) 100% 1 Tested in UAT2 in Sprint 11 and there are comments to improve it
Administration Module 100% 1 NIL
Project Matching Module 100% 1 NIL
Feedback and Ratings Module 100% 1 NIL
Communications Module 100% 1 NIL
Analytics Module 100% 1 NIL


Project Metrics

To view more details about the metrics used: Project Metrics Link

Codezillafinals velocity.png


Codezillafinals bd.png


Codezillafinals bug.png


Codezillafinalsforce.png

Technical Complexity

1.Project Matching: In order to be able to to meet the clients needs and to maximize the user's experience, we have a project matching module. This is where users will receive notifications about the best matched created projects.

We used a Matching Algorithm in order to carry out our project recommendations. This is done through:

  • Similarity to the specified user
  • Location of the user or Geofencing


Our team made use of the One Signal Platform in order to send out the notifications through Firebase Cloud Messaging and Swift apns. Subscriptions are listened to at the login page and upon each login. The code below initialises the notification subscription. On each subscription change, there is a post call to the DB to store a unique device:ID for each subscriber.

Codezillatechcom1.png


If it is a new subscriber, this logs the user’s latest geo-position in terms of longitude and latitude. However, if the user is being unsubscribed, the user’s particular device:ID is being removed to prevent overhead.

Codezillatechcom2.png


If its a existing subscriber, upon future logins, it updates the DB of the user’s last co-cordinates.

Codezillatechcom3.png


Below are screenshots of notifications being pushed out:

Codezillatechcom4.png


Codezillatechcom5.png


Codezillatechcom6.png


Below is a scoring algorithm on a small dataset to match the project to similar users.

Codezillatechcom7.png


Codezillatechcom8.png


We obtain candidate users based on their similarities in several categories. Scores are being calculated for for candidates in specific category:

  • Country
  • Project Area/ Cause
  • Resource Category

Similarity multipliers help to establish greater scores The logic lies in the fact that: multiple similarities in one category > similarities in separate categories

  • For similarities across 2 categories, for example Country and Project Area/Cause, we make use of the ACROSS_SIMILARITY_MULTIPLIER
  • For similarities within a category, we make use of the WITHIN_SIMILARITY_MULTIPLIER


Codezillatechcom9.png


Codezillatechcom10.png


Codezillatechcom11.png


We get the latitude and longitude of user upon project creation. After which we obtain users in closest proximity based on defined range (Square perimeter). Lastly, we obtain device:IDs of each user in proximity

Codezillatechcom12.png



2. Project Management Space: The project management space has many features such as a Task Board (Kanban Board), Chat Function, Document Upload System, User Management System, Calendar Function and Activity Log that are layered together that make this module complex.

With our Project Management Space, we have integrated a Task Board which functions in a similar way to a Kanban Board. Tasks can be added and shifted around the 3 sections depending on the status of the task in oder to better assist project progress tracking and planning. There is also a Chat Function that allows for those in the project to communicate easily with one another.

Codezillafinalscom1.png


Tasks can be created in the form of task cards and details of the task can be filled up as follows. Project team members can be assigned to the task and documents can be referenced too.

Codezillafinalscom2.png


We also integrated an Activity Log where activities and actions conducted in the project management space are being tracked in the Activity Log, making it easier to manage the tracking of progress.

Codezillafinalscom3.png


On top of that, we have also integrated into our project management space a Calendar Function. Tasks created on the task board are being pinned onto the Calendar. When a user hovers over the event on the calendar, a pop up of the event key details would be shown.

Codezillafinalscom4.png


Furthermore, a Document Management System was being integrated into the Project Management Space too. Project team members can easily upload any necessary documents to share with all the other project team members.

Codezillafinalscom5.png


Project Risks

Risk matrix codezilla123.png


Quality of Product

Project Deliverables

Component Description Specification
Project Management Project Schedule Schedule
Meeting Minutes Minutes
Metrics Metrics
Risk Management Risk Management
Change Management Change Management
Requirements Project Overview Project Overview
Project Scope Project Scope
Analysis Personas and Scenarios Personas & Scenarios
Design Prototypes
Architectural Diagram Architectural Diagram
Use Case Use Case
Project Implementation Technology Technology
Testing (Documents and Results) Internal Testing Internal Testing
UAT 1 UAT 1
UAT 2 UAT 2
UAT 3 UAT 3
UAT 4 UAT 4
Handover Documentation Codezilla Handover Documentation Handover package available upon request from Allied World Healthcare due to agreement


Quality

1. Security
In terms of security we made use of Spring Security, that includes BCrypt and Variable SALT Authentication, making our application not vulnerable against SQL injections. With regards to our registration process, we made use of a close loop verification as requested by sponsor and BCrypt for hashing passwords. On top of that, we implemented the use of Variable SALT for better securing of passwords.

Codezillafinalssecurity.png


2. Performance/Quality Design
With regards to performance, we made use of image compression for upload and also display performance. Our application makes use of many file upload functions that result in the performance slowing after a period of time. As such, in order to ensure that we run at a high performance, our team makes sure that we close all connections and closable stream. We also compress all uploaded images (imgscalr) and remove all the unnecessary pulling of files to store on the local server.

Codezillaquality1.png


Codezillaquality2.png


Codezillaquality3.png


Codezillaquality4.png

3. Value to Sponsor
We have created configurable algorithm weightages for sponsor to adjust to business logic, allowing for flexibility. We made it in such a way where the Administrators (our sponsors) are able to control the Project Matching algorithm from the Administrative Dashboard very easily, allowing them to make any changes when they would like to do so. We also make use of an external dashboard like OneSignal to manage all notifications and device IDs. With that, we allow the Administrators (our sponsors) to analyse the notification data and/or any patterns. There is also the leverage of BI tools like Google Analytics to gather site statistics to help identify Business Patterns.

Codezillafinalssponsor.png


4. User Experience
Our application is also responsive, allowing for users to access it on their mobile phones easily and still being able to enjoy the full experience of our platform.

Codezillafinalsresp.png


Deployment

Learn more about our application and explore the projects and resources that we have to offer by clicking on the link provided below. Feel inspired to pledge a resource or jumpstart your very own social impact project and make a difference.
Deployed Site Link: http://impactlaunch.space

Internal Testing

Codezilla testplan.png


User Testing

We have completed a total of 4 UATs so far, and more information about them can be found on our user testing page.

To learn more about the UATs: User Testing Link

Below are the details for UAT 3:
Venue: SMU SOL GSR B1-10
Date: 28 October 2017
Time: 7:00PM
Duration: About 30 minutes per user
Number of Participants: 16
Objectives:

  • To look at the feedback with regards to our User Interface for the admin, analytics, project matching and project management module
  • To understand any usability problems for the admin, analytics, project matching and project management module and observing their behavior
  • To improve the ease of using the admin, analytics, project matching and project management module in our web application

Scope:

  • Project Management Module 1 and 2
  • Project Matching Module
  • Analytics Module
  • Administrative Module


Below are the details for UAT 4:
Venue: SMU SOL GSR B1-11
Date: 09 November 2017
Time: 7:00PM
Duration: About 30 minutes per user
Number of Participants: 16
Objectives:

  • To look at the feedback with regards to our User Interface for the Feedback and Ratings, and Communications module
  • To understand any usability problems for the Feedback and Ratings, and Communications module and observing their behavior
  • To improve the ease of using the Feedback and Ratings, and Communications module in our web application

Scope:

  • Feedback and Ratings Module
  • Communications Module
  • Project Management 1 and 2


Reflections

Team Reflection

Codezillafinals teamreflection.png


Individual Reflections

Codezillafinals indivreflections.png


Codezillafinals sponsorreflection.png


Border2.png