DEVELOPMENT OF A MODEL AND A SOFTWARE SOLUTION TO SUPPORT THE ANALYTICAL DASHBOARDS DESIGN PROBLEM

This research paper considers the problem of dashboard design as part of the Business Process Management lifecycle, where it is become necessary to monitor and control the current state of the organizational business processes. Therefore, designed dashboards should fully correspond to the features of the considered business processes, such as Key Performance Indicators and possible stakeholders, which are considered here as users of the developed Business Intelligence dashboard application. At the same time, according to the state-of-the-art in the field of data visualization, it is required to choose data visualization techniques, which are clear, easy interpretable, space efficient, attractive, and legible. In general, the dashboard design problem requires placing various visualization tools in a relatively small place, such as a screen of a computer, a laptop, a tablet, or even a smart phone, while keeping them accessible and easy to understand. At first, as part of the related work review and analysis, we have considered the core architecture of the dashboards and reporting applications. It is outlined that modern dashboards might use various big data chunks, such as databases of enterprise information systems of different types, spreadsheets data, and even unstructured documents. In order to summarize all the raw data from these data sources, the Data Warehouse should be built and, moreover, it should correspond to the metrics and indicators of business processes that should be demonstrated on a dashboard. We have also considered main principles, common mistakes, and graphs and charts that might be used to design a dashboard for business analytics purposes. Using the existing research in this field, the levels of informativeness were defined for each visualization tool, as well as the best practices of mapping various data types to graphs and charts are outlined. Proposed model of the dashboard design is based on the mathematical optimization. It is used to provide recommendations on which visualization tool should be used to display a certain Key Performance Indicator on a dashboard that corresponds to a certain user role. Development and usage of the software solution that implements the proposed model is outlined, as well as the obtained results of validation of the proposed software solution are shown and discussed.

Introduction. Today Business Process Management (BPM) is considered as the most popular management approach. Its main idea is to consider organizational activity as the set of interrelated business processes. Each business process includes structured set of tasks that take input resources and produces valuable products and/or services for the particular customer [1]. BPM defines so called lifecycle of business processes. It includes stages related to business process identification and discovery (manually or with the help of Process Mining methods and tools [2]), analysis and redesign (continuous improvement methods, such as Plan-Do-Check-Act -PDCA cycle [3]), implementation (e.g., with the help of Business Process Model and Notation -BPMN standard [4], which further is uploaded into a Business Process Management Suite -BPMS in order to provide automated business process execution [5]), monitoring and control (for this purpose such techniques and tools as scorecards with the set of Key Performance Indicators -KPIs are applied [6], as well as Business Intelligence -BI solutions such as Data Warehouses [7] and Analytical Dashboards [8] are used).
This work focuses on methods and tools that are used on the final stage of BPM lifecycle that deals with the monitoring and control. Thus, the research object is a process of the dashboards design for the business process status analysis. The research subject includes a model and a software solution for the dashboard design for the business process status analysis. The goal of this research is to choose data visualization techniques, which are clear, easy interpretable, space efficient, attractive, and legible. However, the dashboard design problem requires placing various visualization tools in a small place, while keeping them accessible and easy to understand [9].
Related work. While the term "dashboard" itself is originated from the automobile dashboard, in the domain of business analysis it describes a type of user interface which provides views of relevant KPIs. Dashboards are displayed on web pages that use linked data warehouses as data sources ( fig. 1). Dashboards typically indicate KPIs that require urgent actions at the top of the page [10].
OLAP (Online Analytical Processing) is a computerbased data processing technology, which serves to provide aggregated multidimensional data arrays (cubes) from big data chunks, such as relational databases, documents, flat files, unstructured data sources etc. OLAP cube is the core technology of any OLAP system. It contains numeric data facts called measures that are consolidated by dimensions along which projection operations, such as aggregation or averaging, can be performed in order to enable analysts to answer business questions [11]. Whereas considered research domain is not popular enough, the state-of-the-art of the dashboard design was carefully analyzed in paper [12]. Thus, we can focus on three core directions that might help us to solve the considered problem ( fig. 2). The main principles for the dashboard design include the following [13]:  Selected chart should fit the best a data type of a certain dataset displayed on a dashboard.  Selected chart should serve its purpose even if it is resized in order to be place into a small place on a dashboard. The most common mistakes of the dashboard design are related to the choice of inappropriate data visualization tools such as graphs and charts [13]. As the most suitable visualization tools, bar charts, line charts, pie charts, and gauges are considered [14,15].
The most informative and popular graphs and charts are the following [15,16]:  Bar chart (shown in fig. 3). There are bar charts of different types, such as horizontal, vertical, grouped, and staked bar charts, which might be used to visualize different indicators.   . 6). As well as other graphs and charts (e.g., line or bar charts), the scatter chart might be used to display threedimensional (3D) data.  fig. 7). Might be also shown in a form of column charts.  Pie chart (shown in fig. 9). Various data visualization graphs and charts ordered by their informativeness are shown in table 1 [15]. Mapping between data types and graphs and charts is shown in table 2 [15]. Research [17] proposes mathematical models used to define optimal set of charts used to visualize KPIs data on a dashboard. Similar problem is also solved with the help of fuzzy semantic networks [12]. However, the dashboard design mostly depends on users' preferences, which might be quite subjective. It means that various users need to see the same set of KPIs displayed on a dashboard but shown using different charts according to the user's preferences.
Model of the dashboard design. Since each KPI shows a value of the specific data type, we can map KPIs to data types. We can also map data types to possible visualization tools.
These relationships might be formalized using the following matrices: ( Where is the number of KPIs, is the number of data types, and q is the number of visualization tools. Both matrices and contain only binary values that shows presence or absence of relationship between KPIs and data types (1), as well as between data types and visualization tools respectively: ∈ {0,1}, = 1, ̅̅̅̅ , = 1, ̅̅̅̅ , ∈ {0,1}, = 1, ̅̅̅̅ , = 1, ̅̅̅̅ . ( Moreover, each KPI might be assigned to a single data type (2), while the data type might be represented using several visualization tools: It is required to multiply matrices and in order to trace relationships between KPIs and visualization tools that might be used to display values of these KPIs (3): Where elements of the matrix are binary values as well (4), ∈ {0,1}, = 1, ̅̅̅̅ , = 1, ̅̅̅̅ .
Various users might be interested in analysis of various KPIs according to their roles in business processes and decisions they have to make according to their roles. Therefore, existing mapping of KPIs to visualization tools should be appended with the mapping of user roles in business processes to KPIs. Therefore matrices , , and consequently the , should be defined for each -th user role, = 1, ̅̅̅̅ : There are no general recommendations that might be applied to any user with specific preferences (5). Hence, the only possible way to solve this problem is to obtain user's suggestions on KPIs ranks for each user role. The expert judgment procedure will not be considered in this study itself. We only consider that weights of each KPI for each corresponding user role are previously obtained: Where is the number of user roles. KPIs weights should be normalized (6), i.e. ∈ [0,1], = 1, ̅̅̅̅ , = 1, ̅̅̅̅ . Weights of visualization tools , = 1, ̅̅̅̅ might be defined as following (Table 3) by using the normalization of values shown in Table 1.  rows , = 1, ̅̅̅̅ in which graphs and charts should be placed. It is well known that human can concentrate only on a limited number of things at once, therefore, the limit number of KPIs required to be placed on a dashboard for the -th user role ̅ ≥ 0, = 1, ̅̅̅̅ should be introduced. The mathematical model of the optimization problem that should be solved to provide recommendations on a dashboard's design is the following:  Where is the number or user roles, is the number of KPIs, is the number of used visualization tools, describes mapping between -th user role and -th KPI, {λ } is the normalized vector of priorities of visualization tools, { } is the restrictions vector of the number of KPIs that might be shown on a dashboard, { } is the binary matrix that demonstrates possibility of -th KPI to be displayed using -th visualization tool, and { } is the result binary matrix, which provides recommendations on which -th visualization tool should be used to display -th KPI on a dashboard that corresponds to -th user role.
There is also situations are possible, where the same user might have multiple roles at the same time, * = { }, ∈ [1, ]. In this case we need to select such matrix * that does not restrict user access to necessary information. Hence the binary matrix that describes indicators and data visualization tools for the user with multiple roles: * = max Since the optimization variables (8) might take only 0 or 1 values, proposed mathematical model (7) describes the combinatorial optimization problem, which recalls the 0/1 knapsack problem [19] with additional restrictions.
Software solution for the dashboard design. A branch-and-bound method is used for several of NP-hard problems, such as the 0/1 knapsack problem [19]. Therefore, the branch-and-bound method might be used to solve the introduced optimization problem as well.
Developed software uses Google OR-Tools library, which mathematical programming solver class MPSolver implements the branch-and-bound method [20].
Besides the optimization library, the software uses MySQL database management system in order to maintain the database of related data about the user roles, business processes, KPIs, graphs and charts, and the results of the dashboard design. The structure of such database is shown in fig. 11. Spring Boot framework is used to simplify and accelerate development of the Java-based web application, which fronted part is created using Vue.js and Bootstrap frameworks.  Then it is necessary to create a business process to which this user role should be assigned ( fig. 14).  KPI "Return on Assets" shows distribution data.  KPI "Net Income" communicates single value.  KPI "Operating Expenses" is intended to display difference between actual and target values.    As it is demonstrated in fig. 22, generated dashboard consists of graphs and charts that best fit to data arrays represented by considered KPIs:  KPI "Return on Assets" is displayed first by using a line chart.  KPI "Net Income" is displayed second by using a sparkline indicator.  KPI "Operating Expenses" is displayed third by using a gauge indicator. Research results and discussion. Validation of the proposed model and the software solution is performed by emulation of user's requirements.
The normalized vector of user's requirements and restrictions on indicators, which should be included in a dashboard, correspond to the values shown in fig. 19. It means that user needs the dashboard that displays a single KPI "Return on Assets".    Fig. 25 demonstrates that the software generated the dashboard, which contains 3 of 5 possible KPIs. Such recommendations on the dashboard design were obtained because the restriction for the limit number of rows was not changed. Therefore, the optimal set of indicators was selected according to the model (7).  Extended dashboard is shown in fig. 27. It is shown that generated recommendations ( fig. 27) satisfy user's requirementsnow the dashboard contains all available KPIs:  KPI "Revenue".  KPI "Return on Assets".  KPI "Operating Expenses".  KPI "Net Income".  KPI "Growth in Customer Base". It is demonstrated ( fig. 27), that sequence of KPIs is rearranged in compare to the previously generated result ( fig. 25). This is happened because of the different sizes of used graphs and charts that correspond to the Bootstrap layout grid.
Besides recommendations on the dashboard design, developed software demonstrates numerical results of the solution of the optimization problem (7). Such results for the dashboards shown in fig. 25 and 27 are demonstrated below ( fig. 26). Fig. 26. Solutions of the optimization problem (7) Optimization results ( fig. 26) demonstrate how the recommended set of indicators was extended from 3 to 5 KPIs. At the same time, the dashboard's informativeness has been improved from 1.89 to 3.18 (objective value of the optimization problem). However, the number of KPIs displayed on the dashboard has been increased as well, which means that it is harder to place such dashboard in a small place, e.g. on a smart phone display.
Outlined results ( fig. 19-27) show validation of the proposed software solution.

Conclusion.
In this paper we have proposed a model and a software solution for the dashboard design for the business process status analysis. Proposed model is based on the 0/1 knapsack optimization problem but it was extended with some domain-specific restrictions such as number of KPIs to be displayed on a dashboard or a limit of a certain screen on which the dashboard is supposed to be placed. The dashboard design model (7) is used to map KPIs related to a certain business processes, which at the same time belongs to a specific user role, to the various visualization tools, such as graphs and charts, with respect to the introduced restrictions on size and user preference. The software that implements proposed model is created using modern backend and frontend technologies, so it can be easily deployed and maintained. Process of its usage is outlined, its validation is shown, and the obtained results in a form of the generated dashboards are discussed.
Future research in this field includes integration with existing BI software, such as Microsoft Analysis Services and Power BI, Tableau, QlikView or other tools, in order to make the suggested dashboards more independent on used tools, accessible, interoperable, and exchangeable.