A set of widgets made available for configuring graphical dashboards that allows users to monitor their data and workflows. Goal is to help users understand how the data is distributed in the repository, and to monitor workflow activity with key information.
- pie chart and bar diagrams for distribution of metadata values (typically on terms aggregates)
- tables for nested aggregate computation, such as average value of a given property distributed among terms of another property of the document, or number of documents per state and country (Cross-table: for instance, see nested query in elasticsearch)
- average time spent between two dates stored as properties, distributed per terms of a specific property
- Optionally, if possible, average duration a document had a given value
More specifically for workflows, for a given workflow/process we should have a configurable board with, for example:
- average duration grouped by on the value of a given global process variable (in the future ,n given variable )
- average time spent on each node of the workflow, ability to group by assignee
- number of instances started and distributed among terms of a specific global variable of the workflow
(See the attached mockup for more examples).
This information will only be accessible by administrators.
It will be based on audit information stored in ES thus we will need to enrich information stored during workflow processing.
Note that Extended Information Logging (NXROADMAP-244) defines more audit events for workflow on which we could rely on to implement such data completion.
Users should be able to add these data visualization dashboards to both the Home dashboard and as a new document tabs.
The boards should be easy to design and should at first rely on raw HTML + custom elements for charts and tables.
This should allow these dashboards to be used both as part of the platform as well as in standalone web apps.
Later we may create configurable widgets / widget types for reuse and to provide configuration through Studio.
Note that default workflows aren’t really interesting should use something like Travel Expenses.