Open jaedoucette opened 5 years ago
The backend part of this story is implemented by PR rifflearning/riff-server#16 which has been deployed to staging.riffedu.com The frontend part of this story has been implemented as part of the rifflearning/mattermost-webapp#100 PR which is for some other story (or group of stories, it's in code review but not attached to any particular story at this time). This PR has not been merged or deployed at this time.
@mlippert - do you need need anything to happen for the frontend PR to get merged and deployed, or will it go w. that other code? CC @jaedoucette
It's part and parcel of that other PR that is being reviewed and will be reviewed and merged as part of that.
@jaedoucette - please move this to accepted once you are happy with the data. Thanks!
Describe the ideal solution or feature request
Currently we have code that displays recommendations, but no way to go back later and determine which users saw which recommendations, and when they saw or completed them.
Every time a user looks at the Dashboard, we should record:
Difficulty, impact, and usage score
This should be fairly low difficulty.
Currently, recommendations are generated by a function getRecommendations() that is called in the componentDidMount() function of the recommendations sub-component of the Dashboard.
After this getRecommendations() function has been successfully called, the componentDidMount() function has local access to the current user's identifier, and to the list of recommendations. The recommendations should be filtered based on their shouldDisplay() methods. The filtered data should then be written to a new service in feathers, and stored in the riff-server MongoDB.
How does this tie into our current product?
This will make it possible to perform post-hoc analysis of whether the recommendations caused users to behave differently.
Who asked for this?
John & Amy.