Literature review

GRL and KPIs for business modelling

Although the primary application domains for URN target reactive systems and telecommunications systems, this language has also been applied successfully to the modelling and analysis of business goals and processes. Goal models combined with process models have been used elsewhere to assess the risk and viability of business solutions and model different concerns of interest to different stakeholders. However, in order to better support business process monitoring and performance management, Pourshahid et al. have extended GRL with the concept of Key Performance Indicators (), which was added to the URN standard in 2012. KPIs can also be analyzed from various perspectives called dimensions (), in a way similar to what is found in common BI systems. Dimensional data allows one to look at the data from different points of view and filter or aggregate the data based on the defined dimensions. For instance, in Figure 2, staffing cost can be aggregated in all locations in all years of store operations or can be analyzed for Store1, 2, 3, and the online store individually and in a specific month or year.

Figure 2


Example of a KPI with dimensions and evaluation.


From a static semantics perspective, KPIs are defined as a sub-class of intentional elements in the URN metamodel, and hence they can be associated to other GRL intentional elements (such as goals, tasks, and even other indicators) through decomposition and contributions links. However, KPIs additionally include specifications of worstthreshold, and target values in a particular unit. For example, a Staffing cost KPI (see Figure 2) could have a target value of $1000, a threshold value of $1,500, and a worst value of $2,500. KPIs also contain a current value, which is either defined in a GRL evaluation strategy or provided by an external source of information such as a database, an Excel sheet, a BI tool, external sensors, or web services. The KPI is a metric of the system that normalizes the current value to a scale of −100 to 100, which enables it to be used like any other intentional element in a GRL model. For instance, if the current Staffing Cost is $1,300, then the normalization function, which takes here |threshold-current|/|threshold-target|*100, will result in a satisfaction level of 40. Furthermore, when the current value is between the threshold value and the worst value (e.g., $2,500), then the normalization function becomes |threshold-current|/|worst-threshold| * (−100), which results in a negative value (e.g., −100 here). If the result is higher than 100, then it becomes 100 (symmetrically, if it is lower than −100, then it becomes −100). Such an evaluation strategy was used in Figure 2. After the satisfaction level (i.e., 40) is calculated, the usual GRL quantitative algorithm is used to evaluate the satisfaction level of the goals connected to the KPI (i.e., Increase profits). Note also in this model that Staffing cost could be drilled down (e.g., explored) according to the Date and Location dimensions.

Although goal modelling and scorecards have been used in combination in the past, we believe KPIs are also necessary because they act as an interface between conventional goal models and quantitative, external sources of information. Our work, together with the work on qualitative indicators of Tawhid et al., has actually led to the standardization of KPIs by ITU-T as part of URN. This standard goes beyond other goal-indicator approaches, such the one proposed by Popova and Sharpanskykh, in that quantitative and qualitative indicators are both supported and are compatible with strategy-based propagation algorithms.

Furthermore, Chen and Pourshahid et al. have introduced and implemented a service-oriented architecture enabling the use of underlying data and BI reports by the jUCMNav tool. jUCMNav is connected to BI systems via a web service. All the information generated by the BI system, from raw data to very complex data warehouses, can hence be used as qualitative data to initialize the KPIs used in the GRL model, and against which goal satisfaction is evaluated.

Although several other goal modelling languages exist (e.g., i*, Tropos, KAOS, and the Extended Enterprise Modeling Language), the combination of support for KPIs and performance modelling, the ability to combine process and goal models and perform analysis on both, the possibility of defining strategies, existing tool support for using BI systems as sources of data, and the fact that URN is a standard modelling language, all together have convinced us that URN is the best language to be used in the context of our research. A more formal and detailed evaluation of 14 popular goal and process modelling languages is provided in Pourshahid, with a similar conclusion.