Dashboard framework

From UG

(Difference between revisions)
Jump to: navigation, search
(Solution)
(Solution)
 
(2 intermediate revisions not shown)
Line 71: Line 71:
==== Summary ====
==== Summary ====
-
'''Dashboard hierarchy'''
+
===== Dashboard hierarchy =====
* Dashboard framework provides displaying of specific widgets on '''Dashboard area''' (Dashboard) of CT2 Home Page only.
* Dashboard framework provides displaying of specific widgets on '''Dashboard area''' (Dashboard) of CT2 Home Page only.
Line 77: Line 77:
*** Each '''dashboard panel''' reflects specific widget with valuable information.
*** Each '''dashboard panel''' reflects specific widget with valuable information.
-
'''Configuration'''
+
[[File:Multiple dashbords based on tabs.JPG]]
 +
 
 +
Widgets in CT2 can be divided on following groups:
 +
* '''Informers'''. Actual information from external sources. ''Examples: RSS News Feed, World Financial Markets etc.''
 +
* '''Dashboard Reports'''. Summarized information calculated from CT2 DB. ''Examples: Truck Dom Stats, Scheduled reports, Estimated GM etc.''
 +
 
 +
===== Configuration =====
* Each CT2 user should have ability to:
* Each CT2 user should have ability to:
** Add any number of additional tabs onto Dashboard and name them arbitrary.
** Add any number of additional tabs onto Dashboard and name them arbitrary.
** Assign any available panel to any specific dashboard tab.
** Assign any available panel to any specific dashboard tab.
-
*** ''One report can be assigned to one tab only ('''need to clarify!!!''').''
+
*** ''One report can be assigned to one tab only ('''need to clarify!''').''
-
* Managing of dashboard panels works as follows:
+
-
** ''Admin level''.
+
-
*** Where. Need a new separate section in Admin.
+
-
*** What. To keep list of all existing panels (internal and client), to be able to activate panel for certain User (or User role), to set default parameters of panel.
+
-
** ''User level''.
+
-
*** Where. User Profile - Dashboard Configuration. Managing of dashboard tabs and available panels.
+
-
*** What. To add and name new tab (also edit and remove), to activate panel from list of available panels to display it on Dashboard and assign selected to specific tab of Dashboard where it should be displayed.
+
==== Details ====
==== Details ====
Line 95: Line 94:
===== Multiple dashboards =====
===== Multiple dashboards =====
-
It is suggested to use scrolled tabs to group and display dashboard panels.
+
It is suggested to use scrollable tabs to group and display dashboard panels.
-
[[File:Multiple dashbords based on tabs.JPG]]
+
[[File:Dashboard-Area.GIF]]
* tabs should be named by user (default: one tab named "Main")
* tabs should be named by user (default: one tab named "Main")
Line 106: Line 105:
Levels of dashboard panel management:
Levels of dashboard panel management:
-
* ''CT2 Admin level settings''
+
* ''System level''.
-
** These are settings for each dashboard panel (manage defaults, etc).  
+
** Where: need a new separate section in Admin.
-
** Location: Home > Admin > Dashboard
+
** What: managing of all panels.
 +
*** To keep list of all existing panels (internal and client).
 +
*** To be able to activate panel in System.
 +
*** To set default parameters of panel.
-
* ''User settings (Admin level)''  
+
* ''Admin level''.
-
** Location: Home > Admin >  Users Admin
+
** Where: User Profile - Dashboard Configuration.
-
** This is managed by superuser
+
** What: managing of activated panels.
 +
*** To show list of all activated panels (internal and client).
 +
*** To be able to activate panel for certain User (or User role).
-
* ''User settings (User level) a.k.a. User profile''  
+
* ''User level''.
-
** Location: Home > User profile
+
** Where: User's "My Profile" section (need to add for Internal App).
-
** This is managed by user
+
** What: managing of dashboard tabs and available panels.
-
 
+
*** To add and name new tab (also edit and remove).
-
====== CT2 Admin level settings ======
+
*** To activate panel from list of available panels to display it on Dashboard and assign selected panel to specific tab of Dashboard where it should be displayed.
-
 
+
*** To set custom parameters of panel.
-
Similarly to [[#Company level settings]] these settings regulate defaults on a highest (system) level. Also there could be some other global settings associated with specific panel/widget/DR.
+
-
 
+
-
At this level we could also define what user roles would see what widgets/panels.
+
-
 
+
-
Company level settings and Manager level settings were removed by Marc - see history.
+
-
 
+
-
======= DR for 9 existing Action Required internal reports =======
+
-
Please display in read only format these settings for user.
+
-
 
+
-
====== Admin level user settings ======
+
-
 
+
-
This could be the same list as the above (in this case it would define defaults or could be used to change settings at the Admin level at some point). Or they could include additional settings. Some parameters could be managed at admin level only. In this case they would appear as read only in ''User settings (User level)''.
+
-
 
+
-
====== User level User settings ======
+
[[File:Client User profile Dash Tab v2.JPG]]
[[File:Client User profile Dash Tab v2.JPG]]
-
====== Exceptions ======
+
==== Additionals ====
-
It is possible that it would be hard to fully consolidate all settings for specific widget or DR in one place. For example for Action Required DRs (see [[DR for 9 existing Action Required internal reports]]) certain parameters are defined at the ''Reports Scheduler'' level.
+
===== Log =====
-
 
+
Actions on System level and Admin level should be recorded in System Log.
-
See also: [[#DR for 9 existing Action Required internal reports]]
+
 +
===== Exceptions =====
 +
It is possible that it would be hard to fully consolidate all settings for specific widget or DR in one place. For example for Action Required DRs (see [[DR for 9 existing Action Required internal reports]]) certain parameters are defined at the ''Reports Scheduler'' level. ''(In this case, please display in read only format these settings for user)''.
===== Persistence =====
===== Persistence =====
-
 
System must remember last state (location, state [open/closed], settings) of Dashboard for individual user to reproduce it  at the next login.
System must remember last state (location, state [open/closed], settings) of Dashboard for individual user to reproduce it  at the next login.
===== Client Visibility Rules =====
===== Client Visibility Rules =====
-
** ''Client Visibility Rules'' affect displaying of DR results in Client Application.
+
* ''Client Visibility Rules'' affect displaying of DR results in Client Application.
== History ==
== History ==
=== 0003067: [* DR/KPI] (Dashboard) Create Dashboard framework  ===
=== 0003067: [* DR/KPI] (Dashboard) Create Dashboard framework  ===

Current revision as of 22:39, 25 March 2012


Contents

[edit] Info

[edit] Business Requirements

  • Need special page with various panels such as Weather, News, etc
  • Need separate area on Dashboard for Dashboard Reports (DRs)
  • above should be available on both Client and Internal Apps
  • need flexible admin to manage above on the system, manager, user levels
  • persistence (system must remember last state of dashboard for individual user to reproduce at the next login)

[edit] Glossary

Dashboard - it is a space between Header/Main Menu and Footer on a CT2 Home Page. It contains various Panels ("Widgets") with valuable information such as "Weather", "RSS News feeds" or "Truck Dom Stats Dashboard Report".

One important type of Dashboard widget is Dashboard Report (DR). Sometime we call them KPI. For more info see DR framework wiki.

Fig below explains layout.

File:CT2 home layout.JPG

[edit] Solution version 1

This is a current version !

Since we have 2 apps currently (Client and Internal) implementation for each slightly differs.

[edit] Dashboard for Internal App

Example:

File:Db on internal.JPG

Example of related config:

File:Db config jag user.JPG

[edit] Dashboard for Client App

Client example (Main Dashboard):

File:Db on Client.JPG

KPIs Dashboard (additional dashboard):

File:Db on Client DB 2.JPG

Related config (superuser level):

File:Db config non jag user.JPG

Related config (user level):

File:Db config non jag user User side 1.JPG

File:Db config non jag user User side 2.JPG

[edit] SOW 2

Mantis: 3067: [* DR/KPI] (Dashboard) Create Dashboard framework

[edit] Core requirements

In this version we attempt to set standards for how/where to configure dashboard panels.
It also suggests another approach to adding additional dashboards to the system.

Approved by Marc --Alex 14:33, 4 October 2011 (EDT)

[edit] Solution

[edit] Summary

[edit] Dashboard hierarchy
  • Dashboard framework provides displaying of specific widgets on Dashboard area (Dashboard) of CT2 Home Page only.
    • Dashboard area contains specific dashboard tabs (#Multiple dashboards) with sets of dashboard panels.
      • Each dashboard panel reflects specific widget with valuable information.

File:Multiple dashbords based on tabs.JPG

Widgets in CT2 can be divided on following groups:

  • Informers. Actual information from external sources. Examples: RSS News Feed, World Financial Markets etc.
  • Dashboard Reports. Summarized information calculated from CT2 DB. Examples: Truck Dom Stats, Scheduled reports, Estimated GM etc.
[edit] Configuration
  • Each CT2 user should have ability to:
    • Add any number of additional tabs onto Dashboard and name them arbitrary.
    • Assign any available panel to any specific dashboard tab.
      • One report can be assigned to one tab only (need to clarify!).

[edit] Details

[edit] Multiple dashboards

It is suggested to use scrollable tabs to group and display dashboard panels.

File:Dashboard-Area.GIF

  • tabs should be named by user (default: one tab named "Main")
  • users should be able to assign panels to specific dashboard tabs (default: all panels on "Main" tab)
[edit] Settings (configurations)

Levels of dashboard panel management:

  • System level.
    • Where: need a new separate section in Admin.
    • What: managing of all panels.
      • To keep list of all existing panels (internal and client).
      • To be able to activate panel in System.
      • To set default parameters of panel.
  • Admin level.
    • Where: User Profile - Dashboard Configuration.
    • What: managing of activated panels.
      • To show list of all activated panels (internal and client).
      • To be able to activate panel for certain User (or User role).
  • User level.
    • Where: User's "My Profile" section (need to add for Internal App).
    • What: managing of dashboard tabs and available panels.
      • To add and name new tab (also edit and remove).
      • To activate panel from list of available panels to display it on Dashboard and assign selected panel to specific tab of Dashboard where it should be displayed.
      • To set custom parameters of panel.

File:Client User profile Dash Tab v2.JPG

[edit] Additionals

[edit] Log

Actions on System level and Admin level should be recorded in System Log.

[edit] Exceptions

It is possible that it would be hard to fully consolidate all settings for specific widget or DR in one place. For example for Action Required DRs (see DR for 9 existing Action Required internal reports) certain parameters are defined at the Reports Scheduler level. (In this case, please display in read only format these settings for user).

[edit] Persistence

System must remember last state (location, state [open/closed], settings) of Dashboard for individual user to reproduce it at the next login.

[edit] Client Visibility Rules
  • Client Visibility Rules affect displaying of DR results in Client Application.

[edit] History

[edit] 0003067: [* DR/KPI] (Dashboard) Create Dashboard framework

Personal tools