HeaderSIS.jpg

Difference between revisions of "IS480 Team wiki: 2017T1 Team Kinetic Midterm Wiki"

From IS480
Jump to navigation Jump to search
 
(6 intermediate revisions by 2 users not shown)
Line 10: Line 10:
 
! style="font-weight: bold;background: #000000; color:#fff;" | Deployed Site
 
! style="font-weight: bold;background: #000000; color:#fff;" | Deployed Site
 
|-
 
|-
| [[Image:Kinetic_PresentationIcon.jpg|130px|]]
+
| [[Image:Kinetic_PresentationIcon.jpg|130px|link=https://drive.google.com/file/d/0B-Zs6T9xb1oxNFN4UHZaZjFsVEU/view?usp=sharing]]
 
| [[Image:Kinetic_Loans_Logo.png|130px|link=http://tbankonline.com/SMUtBank_MarketplaceLending/]]
 
| [[Image:Kinetic_Loans_Logo.png|130px|link=http://tbankonline.com/SMUtBank_MarketplaceLending/]]
 
|}
 
|}
Line 267: Line 267:
 
[[Image:Kinetic_Quality_2.png|center|800px]]<br />
 
[[Image:Kinetic_Quality_2.png|center|800px]]<br />
 
[[Image:Kinetic_Quality_3.png|center|800px]]<br />
 
[[Image:Kinetic_Quality_3.png|center|800px]]<br />
 +
 +
===Architecture Diagram:===
 +
[[Image:Kinetic_Architecture_Interaction.jpg|center|800px]]<br />
  
 
===Intermediate Deliverables:===
 
===Intermediate Deliverables:===
Line 323: Line 326:
  
 
<b>Sandeep: </b>"As PM, I realized the importance of my role in maintaining oversight of the entire team's progress in face of risks such as requirements inflation, delays in timeline, etc. I also understood that maintaining regular communication with other stakeholders (sponsor and supervisor) reduced instances of such key risks occurring in our project” <br><br>
 
<b>Sandeep: </b>"As PM, I realized the importance of my role in maintaining oversight of the entire team's progress in face of risks such as requirements inflation, delays in timeline, etc. I also understood that maintaining regular communication with other stakeholders (sponsor and supervisor) reduced instances of such key risks occurring in our project” <br><br>
<b>Isha: </b>"I have gained a valuable experience in working with KineticLoans UX to ensure ease of use for our primary users (students and professors)” <br><br>
+
<b>Isha: </b>"The learning curve for front-end was a lot steeper than I expected so I had to apply what I had learnt in classes and learn fast. After overcoming the obstacle I found a beauty in being able to alter the focus of the user by the use of space and colours. I have also learned to separate my personal taste and professional opinion in order to work on designing in a team- as multiple people would have differences in opinion on aesthetic.” <br><br>
<b>Vani: </b>"Since acceptance, I have successfully improved/modernized our application UI. I learnt how to create a design that is efficient and intuitive use as well as appealing to our target users ” <br><br>
+
<b>Vani: </b>"These past weeks have taught me to learn to think from a users perspective as well as a designer. Additionally, working within a time frame and around limitations caused by APIs were using. ” <br><br>
 
<b>Shalabh: </b>"Since the acceptance milestone, I have had the opportunity to work on two different things. The first involved invoking  external APIs to enforce the Payments process for our application. This being the first time, I was able to test my logical and technical complexity and improve on my Java skills and DB management skills. This also increased my business side knowledge since I had to read up about different payment terms, and understand what each represents in order to ensure that the logic flow was smooth. Along with this, I got to further my Javascript knowledge by using existing libraries and frameworks(D3.js and JQuery) to build the borrower dashboard, which involved retrieving relevant data from our DB, and finding an effective way to represent this data.” <br><br>
 
<b>Shalabh: </b>"Since the acceptance milestone, I have had the opportunity to work on two different things. The first involved invoking  external APIs to enforce the Payments process for our application. This being the first time, I was able to test my logical and technical complexity and improve on my Java skills and DB management skills. This also increased my business side knowledge since I had to read up about different payment terms, and understand what each represents in order to ensure that the logic flow was smooth. Along with this, I got to further my Javascript knowledge by using existing libraries and frameworks(D3.js and JQuery) to build the borrower dashboard, which involved retrieving relevant data from our DB, and finding an effective way to represent this data.” <br><br>
<b>Aditya: </b>"I got a chance to learn and implement Javascript and experience managing, testing and deploying an app of this scale for the first time” <br><br>
+
<b>Aditya: </b>"I learnt a lot about the challenges of integrating with an external application and designing features in a way which makes it easy to maintain and deploy on different servers.” <br><br>
<b>Meher: </b>"I have gained practical experience in the areas of designing and implementing tests, debugging and outlining corrective actions and conducting continuous tracking of quality assurance metrics. ” <br><br>
+
<b>Meher: </b>"As Quality Assurance manager, I have learnt more about keeping track of various metrics, and the benefits of maintaining these lists. I also learnt more about different software quality assurance practices. ” <br><br>

Latest revision as of 23:37, 9 October 2017

Kinetic.png

Project Progress Summary


Kinetic Snapshot.png
Midterm Slides Deployed Site
Kinetic PresentationIcon.jpg Kinetic Loans Logo.png

Project Highlights:


Kinetic ProjectHighlights.png

Project Management

Project Status:

Kinetic ProjectStatus.png
Iteration Scope Module Task Planned/New feature? Status Confidence Level (0-1) Comments
2 Core Account Module Login/Logout Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
2 Core Account Module Signup Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
2 Core Account Module User Account Settings Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
3 Core Loan Initiation Module Request New Loan Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
4 Core Loan Initiation Module Re-List loan Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
4 Core Loan Search Module Search loan with filters Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
5 Core Portfolio Module Create/Manage loan portfolio Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
5 Core Fund Loan Module Fund listed loan Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
6 Core Admin Module Default tracker Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
6 Core Admin Module Check user/loan eligibility Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
6 Core Admin Module Check available loans Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
7 Secondary Funding and Repayments Module Process Usage Fees Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
7 Secondary Funding and Repayments Module Update Collection Amount Planned Fully deployed and tested 100% 1 Reviewed and accepted by sponsor
8 Secondary Learning Module Hover Icon Questions Planned Tested and pending deployment 1 Reviewed by sponsor
8 Secondary Learning Module Pre/Post Lab Quiz New Tested and pending deployment 1 Reviewed by sponsor


Project Schedule (Plan Vs Actual):

Planned Project Schedule

Kinetic TimelineV4.jpg

Actual Project Schedule

Kinetic Timeline V6.png

Changes In Schedule

Iteration Date of Schedule Revision Change in Schedule Reason Mitigation
6 3 Sept 2017 Switched iteration 7 features (Learning Module) and iteration 8 (Payments Module) Payments module had the higher technology risk (sponsor given payments API integration) and hence required by team to tackle earlier. All preparation (API given by sponsor, understanding of payments API by development team) was done and team is ready to implement payments in iteration 7.
7 17 Sept 2017 Added new feature (pre/post lab quiz) in learning module Sponsor request to add pre/post lab quiz to improve value proposition of KineticLoans as a learning platform. Team reviewed and accepted addition of feature Analytics module features were pushed to iteration 9. PM and Backend team re-estimated their efforts for iteration and assigned tasks accordingly.
7 17 Sept 2017 AWS Deployment date was shifted from 18 Sept to 21st Sept. Effort required for Funding and Repayments module exceeded expectations. Team postponed AWS deployment date to 21st Sept (iteration 8) to allow completion of module
7 18 Sept 2017 UAT 2 date was shifted from 21 Sept to 29 Sept Delay in deployment of application due to effort required for Funding and Repayments module Postpone UAT to 29 Sept to allow for deployment and sufficient preparation

Project Metrics:

Kinetic LatestBugMetrics.png


Kinetic LatestTaskMetrics.png


Project Risks:

Kinetic Risks.png

Technical Complexity:

PROBLEM
Figuring out a Payments mechanism that effectively distributes respective dollar amounts to platform users (borrowers/investors) based on their active loans. In order to solve this, we need to take care of 3 components:
1. Direct Debit Authorisation
2. Loan Funding
3. Loan Repayment

1) DIRECT DEBIT AUTHORIZATION
a)What we need:
Platform must be authorised to directly debit money from borrowers and investors.
b)Solution:
Obtain direct debit authorization from each user to allow automatic deductions during loan funding and loan repayment.

Kinetic Diag1.png

Screenshots from Kinetic Loans Application
1: Borrower/Investor enters his/her tBank details.

Kinetic Diag2Technical.png

2: Borrower/Investor enters his/her OTP: If verification is successful, user is re-directed to the app.

Kinetic Diag3.png

Kinetic Diag4.png

Kinetic Diag5.png

2) LOAN FUNDING
a)What we need:
i) Platform must initiate a transfer from multiple investors to single borrower as soon as a loan is fully funded.
ii) Platform should deduct some transaction fees.
iii) Platform’s journal should store all future pending repayment amounts and timings.
b)Solution:
The direct debit authorization, once completed, allows the platform to access the user’s account to make a transfer from the user’s account to the platform’s account. This authorization becomes useful when a loan is fully funded, and money needs to be passed on from the various Investor accounts, to the borrower’s account. The logic for the same is represented below:

Kinetic Diag6.png

Kinetic Diag7.png

Kinetic Diag8.png

3) LOAN REPAYMENT
a)What we need:
Automatic task scheduler should execute repayments at the correct time.
b)Solution:
After a borrower’s loan request has been approved, and the borrower receives the amount he/she needed, the repayment process is triggered. Every day, the task scheduler checks the journal for any repayments which are due. These are automatically triggered and a repayment servlet calculates the correct proportion of the repayment amount which must be transferred to each investor.

Kinetic Diag9.png

Payments Calculation

Kinetic Diag10.png

Task Scheduler

Kinetic Diag11.png

Quality of product

Kinetic Quality 1.png


Kinetic Quality 2.png


Kinetic Quality 3.png


Architecture Diagram:

Kinetic Architecture Interaction.jpg


Intermediate Deliverables:

Documentation Link
Project Overview Project Description
Team's Motivation
Project Management Schedule
Scope
Task Metrics
Bug Metrics
Risk Management
Change Management
Project Documentation Minutes
Wireframes
Diagrams
Testing User Testing

Testing:

Kinetic QA Process.png


We have completed 2 user tests. Please access the details here

Reflection

Team Reflection:

Over the duration of the project, the team has improved its performance in the areas of project management and application development to ensure we meet our sponsor's expectations for the KineticLoans application. We have overcome major hurdles (completion of major technology risk, delays in timeline, additional features, etc.) to ensure project success and we aim to carry forward this momentum till our finals!

Individual Reflection:

Sandeep: "As PM, I realized the importance of my role in maintaining oversight of the entire team's progress in face of risks such as requirements inflation, delays in timeline, etc. I also understood that maintaining regular communication with other stakeholders (sponsor and supervisor) reduced instances of such key risks occurring in our project”

Isha: "The learning curve for front-end was a lot steeper than I expected so I had to apply what I had learnt in classes and learn fast. After overcoming the obstacle I found a beauty in being able to alter the focus of the user by the use of space and colours. I have also learned to separate my personal taste and professional opinion in order to work on designing in a team- as multiple people would have differences in opinion on aesthetic.”

Vani: "These past weeks have taught me to learn to think from a users perspective as well as a designer. Additionally, working within a time frame and around limitations caused by APIs were using. ”

Shalabh: "Since the acceptance milestone, I have had the opportunity to work on two different things. The first involved invoking external APIs to enforce the Payments process for our application. This being the first time, I was able to test my logical and technical complexity and improve on my Java skills and DB management skills. This also increased my business side knowledge since I had to read up about different payment terms, and understand what each represents in order to ensure that the logic flow was smooth. Along with this, I got to further my Javascript knowledge by using existing libraries and frameworks(D3.js and JQuery) to build the borrower dashboard, which involved retrieving relevant data from our DB, and finding an effective way to represent this data.”

Aditya: "I learnt a lot about the challenges of integrating with an external application and designing features in a way which makes it easy to maintain and deploy on different servers.”

Meher: "As Quality Assurance manager, I have learnt more about keeping track of various metrics, and the benefits of maintaining these lists. I also learnt more about different software quality assurance practices. ”