IS480 Team wiki: 2018T1 analyteaka FinalWiki
Revision as of 13:25, 19 November 2018 by Jeryl.soh.2015 (talk | contribs)
Function | Status | Confidence | Comments |
---|---|---|---|
Data Upload | Deployed | 1 | Done |
Customer profile | Deployed | 1 | Done |
Store profile | Deployed | 1 | Done |
Marketing planning | Deployed | 1 | Done |
Customization module | Deployed | 1 | Done |
Geospatial Maps | Deployed | 1 | Done |
Staff Profile module | Dropped | - | Can be integrated into store profile page. Therefore, there’s no need for a separate module. |
Analytics & Reporting module | Dropped | - | Can be integrated into store and customer profile. Therefore, there’s no need for a separate module. |
Iteration | Date | Type | Change Reason | Description | Issued By | Decision | Action Taken | Request Status |
---|---|---|---|---|---|---|---|---|
3 | 22/6/2018 | Schedule | Changing of UT schedule due to stackholder's schedule and re-estimate of task | Shifting the schedule of UT and shifting certain tasks around | Team | To go ahead | Proceed with change | Closed |
7 | 14/8/2018 | Schedule | Updating of schedule for changing of modules | Sponsor realize it would be useful to have marketing planning feature as well as bein able to name their categories as the cateorgies naming is ever changing. Having the system to do so would be great. | Sponsor | To go ahead with the change. | Proceed with change | Closed |
Issues metrics show the issues that surfaced during the course of our project. As well as steps being taken to resolve it.
# | Iteration | Issues | Module | Priority | Initiator | Status | Open on | Closed on | Action taken |
---|---|---|---|---|---|---|---|---|---|
1 | 3 | Client requested everything to be done on Google standard engine. However, machine learning cannot be done on standard. It would require a flexible or VM instance. | Backend | High | Chester Ong | Closed | 20/6/18 | 22/6/18 | Adding compute engine as the backend. |
2 | 5 | During integration, we discovered issues with running flask and dash concurrently. Therefore we decide to use iframe or run dash on flask or flask on dash. | Visualization | High | Larry | Closed | 9/7/18 | 9/7/18 | Use iframe to integrate dash and flask. |
3 | 5 | Server log shows unauthorized user from China trying to ssh into our compute engine. However, we are not at the stage of whitelisting IP currently. Therefore, we need an alternative solution for security hardening. | Backend | Medium | Solomon | Closed | 13/7/18 | 13/7/18 | "Proceed with hardening
Non-default SSH port Uncomplicated Firewall Disabled root access Disabled password RSA key only LogWatch enabled Fail2ban enabled " |
4 | 6 | We realize gender has no bearing on the customer clustering result as purchasing decision tends to be made as a family. Therefore, we would need a different formula to cluster customer. | Machine learning | low | Hong yang | Closed | 24/7/18 | 25/7/18 | Dropping gender and use house size, household income, age, race and district for clustering purpose |
5 | 7 | Notice high swap on the compute engine system. This affects the performance of the system, increasing load time by 230% (based on browser inspector) | Backend | Medium | Solomon | Closed | 8/8/18 | 8/8/18 | Increase compute engine instance size from f1-micro to g1-small and activate auto scaling for app engine. Will monitor for the next few iter before deciding on CPU and ram size for custom machine size.
Adding of gunicorn with 2 workers threads |
6 | 9 | Datastore is too slow, we would require a faster system for pulling of data. Hence, the need to dd Mysql to contain the aggregated data. | Backend | High | Solomon | Closed | 3/9/18 | 13/9/18 | Datastore is meant for long-term storage. Hence even retrieval of a single record will take at least 2 seconds. Hence, there's a need to speed up the process by using aggregating of data. Data will still be uploaded to datastore and during certain period, a cron job will trigger and aggregate the data to MySQL, allowing the front end to reduce the size of the data being retrieve while increasing the processing speed by reducing the computational power needed. |
Stage | Specification | Links |
---|---|---|
Project Management | Minutes | Link Here |
Metrics | Link Here | |
Analysis | Research | Link Here |
Architecture Diagram | Link Here | |
Use Case | Link Here | |
Business Process Diagram | Link Here | |
Design | ER Diagram | Link Here |
Class Diagram | Link Here | |
Persona And Scenarios | Link Here | |
Prototype | Link Here | |
Testing | User Testing 1 | Link Here |
User Testing 2 | Link Here | |
User Testing 3 | Link Here |
Attributes | Consideration | Action taken |
---|---|---|
Usability | Support for different screen size and duration for average task | Test on multiple screens |
Scalability | Ability to handle load increase without decreasing performance | Google Cloud’s auto scaling |
Performance | Time spend loading, method execution time | Google Cloud’s auto scaling |
Security | Ability of the system to reduce the likelihood of malicious or accidental actions as well as the possibility of theft or loss of information | Hardening of server and implementation of security policies |
Maintainability | Ability of the system to support change | Splitting into modules that’s independently |
Availability | Uptime of the system above 99.95% | Google Cloud’s guarantee |
Reliability | Continue to operate due to inaccessible of external elements such as database, system and network connections | Google Cloud’s guarantee |