High Level Design
OverviewAs a data-driven organization that uses business intelligence tools and techniques to monitor and investigate various aspects of your company – sales, marketing, operations, etc., you might find it useful to also measure the implementation, success and usage of the BI platform within your organization. Understanding the way these systems are being used can help manage licenses, improve current dashboard and discover which data is the most interesting for your users.
Increase user engagement with the BI solution in place.
- Identify popular dashboards to further investigate what makes them more useful\appealing than others.
- Identify dashboards which are not being used to further investigate the reasons for low engagement.
- Identify dashboard owners who gain better engagement so they can share their experience with others.
- Identify more\less engaged users so we can find focal points for getting feedback and to re-arrange licenses if needed.
|Identify popular dashboards to learn on what triggers its users to use it and why it’s more useful\appealing than others||Active dashboards||# of active dashboards in the last 30 days: Count(active dashboards within the last 30 days)
# of active dashboards: Count(active dashboards)
|Top 5 active dashboards in the last 30 days: Count(actions per dashboard within the last 30 days) filtered by top 5 dashboards per their actions.|
|Action Trends||# of active dashboards per day: Count(active dashboards) per day|
|Identify more\less engaged users so we can find focal points for getting feedbacks and to re-arrange licenses when needed||Active Users||# of active users in the last 30 days: Count(active users within the last 30 days)
# of active users: Count(active users)
|Top 5 Active Users per Role Last 30 Days: Count(actions per user per role within the last 30 days) filtered by top 5 users per their actions.|
|Action Trends||# of active users per day: Count(active users) per day|
|Top 5 Non Active Users||Top 5 Non Active Users: Top 5 users with longest duration (in days) since their last action|
|Identify dashboard which are not in use to be able to analyze what are the reason for the poor engagement for further implementations.||Dashboards not in use||Dashboards not in use: Dashboard with less than 10 actions during the selected period||TRACE; DASHBOARDS|
|Identify dashboards owners who gain better engagement so they could share their experience with others.||Dashboard per Owner||Avg: count(dashboards)/count(dashboard owners)
Max: Max(group by owner(count(dashboards))
|# of Dashboards per Owner: count(dashboards) per owner|
|#||Source||Table Name||Table Details (Type, #Rows, Key field/s)|
|1||MongoDB||DASHBOARDS||SCD table, contains all dashboards data|
|2||ELASTICUBE||SCD table, contains all EC data|
|3||TRACE||Fact Table, contains all transaction and actions within all dashboards by all users|
|4||USER_ACTIONS||SCD table, contains all users data|
|5||DASHBOARD_OWNERS||SCD table, contains all dashboards data|
|6||TRACE_WIDGET_DASH_USERS||Key table to map between all tables’ keys|
Data Modeling (Elasticube Design)