IS480 Team wiki: 2016T1 Charlies Angels FinalWiki

From IS480
Jump to navigation Jump to search

Charlies Angels Logo.png

Charlies Angels Home.png  HOME


Charlies Angels About Us.png  ABOUT US


Charlies Angels Project Overview.png  PROJECT OVERVIEW


Charlies Angels Project Management.png  PROJECT MANAGEMENT


Charlies Angels Project Documentation.png  DOCUMENTATION

Main Wiki Midterm Wiki Charlies Angels Current Stage.png Final Wiki

Project Progress Summary

Charlies Angels Final Project Summary.png

Charlies Angels Deployed Project.png Charlies Angels Final Slides.png Charlies Angels Poster.png Charlies Angels Pitch Video.png

*Note: Access to Poster and Pitch Video requires SMU-Gmail Login to View

Project Highlights

Project Challenges

Project Achievements

Project Management

Project Status

Charlies Angels Final Project Status.png

Project Schedule (Plan vs. Actual)

More details of the Project Schedule in its totality, please refer to: Charlies Angels Project Schedule

Team Charlies Angels is pleased to announce that there were NO major changes to the Project Schedule since our Mid-Terms presentation. The small changes made to the Project Schedule is firstly, the confirmation of our UT date has shifted to 16 Nov. This is to ensure that our functionalities are thoroughly tested before we gather users [Investors in the Market] to test our application, as they are professionals in the field, we wanted to ensure that the product is of highest possible quality before rolling it out. Second, it is the confirmation of our Final Presentation date that is on the 30th November to ensure that our sponsor could attend. Third, in lieu of ensuring that the sponsor gains more value from this project, the team has collectively broach the request of adding a Landing Page as a functionality in Iteration 11. However, no major change to the schedule was necessary. Overall, the team is highly confident on the successful completion of the project, and would seek to have a proper documentation detailing the handover process to the sponsor.

Planned Project Schedule

Charlies Angels Project Schedule MidTerms.png

Actual Project Schedule

Charlies Angels Project Schedule Finals.png

Project Metrics

For more information on how the team tabulates the score for each component, please refer to the following page on our Wiki: Charlies Angels Metrics

Team Charlies Angels is pleased to share that on the whole, there has not been major lapse(s) in our project metrics. And the team has managed to successfully steer in the right direction despite the high technical and business complexity the team faced in the course of this project.


Project Risks

Please note that the following are risks in which are the top 2 faced since Mid-Terms. For a full list of the risks faced by the team, please refer to: Charlies Angels Risks & Mitigations

Due to the nature of our application, Team Charlies Angels has been proactively monitoring our efforts to mitigate risk(s). We would like to highlight the top two risks that our project is facing since the mid-terms presentation, the details are found in table below:

Charlies Angels Risk Matrix.png

Current Risks that may affect the team:

1. Technology Risk The recent acquisition of Yahoo by Verizon poses an imminent threat to the existence of the Yahoo API where the team utilises to call for its financial information. Probable Critical Unacceptable The team has identified that Yahoo would close the service only in 2017. However, in the event that the service is closed during the phase of development, the purchase of a paid API is absolutely necessary. In the event of this purchase, the team would propose the drop of all functions happening thereafter, and focus on the fetch of data as it is essentially what makes the application.

A list of websites have been provided to the client as alternate sources for varying financial data information:
  1. http://www.indexq.org/index/FSSTI.php
  2. http://www.tradingeconomics.com/singapore/stock-market
  3. http://www.tradingeconomics.com/analytics/api.aspx?source=footer
  4. http://www.shareinvestor.com/fundamental/factsheet.html?counter=D05.SI
  5. http://www.shareinvestor.com/membership/plans_overview.html
  6. https://www.google.com/finance?q=SGX%3AD05&ei=X_wFWKmtMsOFuASk-o3IAQ
  7. http://www.marketwatch.com/investing/Stock/D05?countrycode=SG
  8. https://sg.uobkayhian.com/page/UOBKH/STI_ComponentStk.jsp
  9. http://www.marketwatch.com/investing/index/sti?CountryCode=sg
  10. http://www.sharesinv.com/prices/index-sti/
  11. http://www.tradingeconomics.com/singapore/government-bond-yield
  12. http://sg.morningstar.com/ap/quicktake/returns.aspx?PerformanceId=0P00006PNA&activetab=TotalReturn
2. Technology Risk As the application is utilising web crawling patterns, this aspect is subjected heavily on the patterns that are used on the host(s) which we crawl the data from. Probable Critical Unacceptable The team has come up with mitigation plans to have two possible steps to take. The first choice would be to proceed to find an alternative website that displays the essential information that we require and proceed to crawl from there. Should the former step fail, we would proceed to consult our client, and proceed to make a purchase for paid API for financial data. In the event of this purchase, the team would propose the drop of all functions happening thereafter, and focus on the fetch of data as it is essentially what makes the application.

Technical Complexity

Please find the following complexities that are faced by Team Charlies Angels. Segregated by Business Domain, Front-End and Backend complexities.
Please note that complexities indicated with an Asterisk (*) are newly faced challenges from Mid-Terms presentation.

Business Domain Complexities

Technical Complexities
Rank Technical Complexity Faced Reason How did the team overcome this complexity
*1 Determining Risk Measurements of Stocks Lack of technical know-how, coupled with most of typical risk measurement(s) require inputs from Analysts such as Expected Returns, etc. However, we are required to calculate these with the absence of such fields Discussed and validated with our sponsor on how to determine risk measurements for stocks
*2 Calculation of Sharpe Ratio Online sources may have Sharpe Ratio calculations. However, it pertains to having an 'Expected Return' field but in our case, the sponsor requires us to calculate without it. Discussed and validated with our sponsor on how to determine Sharpe Ratio formula to be without the 'Expected Return' field
3 CPF and Housing Loan Algorithm that determines how much the user has to invest/earn from their portfolio in order to retire comfortably It is something that has never been done before. It is a completely new algorithm developed by the team. This is because the algorithm takes into account variables such as Inflation Rate, Bank's interest rates, the user's income which is subjected to CPF. In addition, there are a lot of regulations that CPF imposes The team researched extensively, and sought help from people (i.e. Employees at the CPF board). Together, the team sat down to brainstorm and formulate the algorithm that takes into account all the variables that affect the outcome
4 All financial calculations related to a Portfolio. In particular - P/E Ratio, Price to Book, Price Earning Ratio, Year-to-Date for a portfolio There is no current practice that calculates such elements pertaining to a portfolio. The current practice refers to only Stocks Researched extensively online for information, discussed with family and friends who have investment background. Furthermore, we validated our formulas with our sponsor
5 Determining Risk Profiles of Users Lack of technical know-how, coupled with existing risk assessment platforms that do not divulge on their allocation of assets in their recommendations. Additionally, there is a lack of a common practice Discussed and validated with our sponsor on how to determine a risk profile

*New technical complexities faced since Mid-Terms presentation

Front-End Technical Complexities

Technical Complexities
Rank Technical Complexity Faced Reason How did the team overcome this complexity
1 Maintaining State a Single Page Application Traditional web applications are stateless but now we have to manage the UI state Architecting the data flow of a single page application to maintain state; making use of Redux which is a predictable state container for Javascript applications
2 Continuous Deployment Because the team wanted to perform continuous integration; to perform frequent commits and integrate code as soon as possible We went a step ahead of continuous integration, and managed to deploy stable code to production whenever it has been pushed on Git
3 Developing Time-Series Data Charts in a single page application Due to the lack of support of the libraries which we require to develop such charts; inadequate guides available Completed with extensive research and exploration of how to develop such charts. Constant interaction with the Grommet community at large.
4 New UI frameworks such as React, Redux, Grommet First time being exposed to such frameworks Since these are new frameworks, some parts of the framework are incomplete/broken. Hence, the team had to submit several bug requests to the developers

Backend Technical Complexities

Technical Complexities
Rank Technical Complexity Faced Reason How did the team overcome this complexity
*1 Addition of a new backend crawler [Secondary Failover Capabilities] Due to the volatile nature of the websites we crawl from, there is a pertinent need for the team to ensure that financial data do not go down as this would render the website to be unusable. This is highly complex due to the large number of financial variables needed to crawl either on real-time demand or daily changed variables Work closely with Business Analyst to ensure that the websites crawled have tags that are identified by IDs instead of an absolute element such as td in a table. This is to ensure that there is a minimum layer of certainty for the data being crawled.
2 Database Structure Due to the large volume of data that is involved in such a project, we set to achieve a low execution time for complex queries, as this is common in a financial data related application Frequent discussions and reviews of the schema design to seek an optimised schema for robustness and scalability
3 Crawling of Data at a specified interval Lack of financial data APIs such as Bloomberg/Reuters By analysing and performing pattern recognition by developing a Scheduler application that utilises a Cron job to obtain such data at a specified interval.
4 Generation of PDF & Excel reports Lack of technical know-how in generating PDFs and Excels, coupled with the lack of proper documentation provided by the utilised libraries Extensive research and constant tweaking of codes to reach the outcome

*New technical complexities faced since Mid-Terms presentation

Changes in Scope

More details of the entire Project Scope can be found at the following page on Charlies' Angels Wiki: Charlies Angels Project Scope
The table found below indicates the changes to the scope from Mid-Terms.

Original Project Scope

Charlies Angels Original Project Scope.png

Project Scope as at Mid-Terms

Charlies Angels Project Scope.png

Latest Project Scope

Charlies Angels Final Project Scope.png

Scope Change After Mid-Terms
Date Change Description
07 Nov 2016 Added a Landing Page functionality
Scope Change Between Acceptance & Mid-Terms
Date Change Description
01 JUL 2016 Added 3 functionalities:

a) StockBookDashboard
b) iStockTrade
c) iStockWatchList
11 AUG 2016 Enhanced Robot Advisor feature to include more SG-Centric Development (CPF & Housing Loan Calculations)
22 AUG 2016 Add more information for the Dashboard & Robot Advisor features
12 SEP 2016 Swapped StockBookCorpAction with StockBook CDP Import upon negotiation with the Sponsor

Quality of Product

Project Deliverables

Stage Specifications Work Product(s)
Project Overview X-Factor Details of our X-Factor can be found here: Charlies Angels X-Factor
Project Overview & Team's Motivation The project overview and team's motivation can be found here: Project Overview and Team Motivation
Algorithm & Pseudo Codes Due to the complex nature of this application, the team has devised several algorithms and pseudo codes for your easy perusal. They can be found at this page: Charlies Angels Algorithms and Pseudo Codes
Project Scope Please find the detailed description of the entire project at this page: Charlies Angels Project Scope
System Architecture & Technologies Used Please find the System Architecture and Technologies Utilised by Charlies Angels for Project StockBook here: System Architecture and Technologies Used
Project Management Minutes Minutes are segmented into 3 stakeholders. The sponsor, supervisor and the internal team. Minutes can be found at this URL: Charlies Angels Minutes
Metrics Team Charlies' Angels have monitored 4 different variants of Metrics. These are namely Schedule Metrics, Bug Metrics, Client Satisfaction Metrics, Team Enthusiasm Metrics
A summary of our metrics score and the breakdown can be found here: Charlies Angels Metrics Summary
Change Management Team Charlies' Angels have in place a Change Management process. Till date, there have been 5 change requests. Of which, 1 has been rejected, and the other 5 accepted.
More details of the change request(s) can be found here: Charlies Angels Change Requests
Risk Management Till date, the team has identified and came up with mitigation strategies for 10 risks spanning technological, project management, client, resource, and team morale risks. However, since Mid-Terms, the team has identified 2 major risks that the team still faces during this phase of the project.
More details, being broken down into current risks faced by the team and past risks can be found here: Charlies Angels Risks
Schedule Management Charlies Angels also monitor the changes in schedule due to changes in requirements or any delay in completion of features that causes a creep into the next iteration. Till date, there are 5 changes.
More details can be found at this page: Charlies Angels Project Schedule
Design Diagrams Entity Relationship Diagram Entity Relationship Diagram
Class Diagram Class Diagram
Use Case Diagram Use Case Diagram
Sequence Diagram(s) Please find all the Sequence Diagrams at this following URL under Charlies' Angels Technical Documents - Sequence Diagrams
Wireframes All Wireframes of the UI can be found here: Wireframes
For more information, please follow the instructions on the following page to view the mockups at Moqups.




Team Reflection

Individual Reflections

Supervisor Comments