Generated Report of the Ord Borm Model

This contribution focuses on documentation of model-to-model transformation, respectively on converting model represented by BORM notation (Business Object Relation Modelling) to a HTML-based textual report. The transformation is from the management-level business process model into the operation-level business process model. The operation-level model should be textual and tailored for each individual participant. This article introduces a modular extension of OpenCASE software that utilizes OpenCASE knowledge base and API to generate textual reports automatically. This report is based on HTML language, because of the portability and easy distribution of the format. Such report is easy to understand even for business people without hard technical skills. We present both the transformation, and the modular extension on a case study.


Introduction
Models created in CASE tools are probably the most comprehensive description of system.However, these models, and relationships among them, can be difficult to understand.Even though BORM diagrams are generally easy to understand, it may still be challenging to fully comprehend the situations modelled, especially for non-specialists and businesspeople.A textual report describing BORM diagram can significantly contribute to better understanding of problem as a whole and increase the accessibility of information stored within models.A repository of CASE tool can be used as a source of data for generating such documentation.When a report is generated automatically from models, the safe consistency between the model and documentation is guaranteed.Another advantage is the possibility to reinstate documentation when source model changes.
We want to present our approach for flexible modelling of business processes both at the management and operations level.This approach consists of combining a suitable modelling method (BORM -Business Object Relation Modelling) and developing an original software tool (OpenCASE) to support it, as well as to perform automated model transformations.
This article focuses on transformation of source model created in CASE tool to textual output model and technologies used for implementation of this transformation.Input of this transformation is a model using BORM notation, output of the transformation is model represented as a HTML report.
This research is based on the BORM method described in publications by (Knott, Merunka, Polak, 2000, 2006;Struska, Merunka, 2007;Struska, Pergl, 2009).The presented tool OpenCase (Pergl, Tůma, 2012) follows this modelling method, and uses it as input of transformation.Core transformations are based on the HOT (High Order Transformation) approach published by (Brambilla, Fraternali, Tisi, 2008).This transformation is presented on the case study which demonstrates the transformation from the management-level business process model into the operation-level business process model.More specifically the case study deals with the process of E-shop order goods.

Methodology
In order to realize the proposed transformation, we have followed a stepwise research plan: 1. Define requirements for a suitable management-level business process model and operation-level business process model (BPM).2. Describe how the transformation modelling method and the OpenCASE support these requirements.3. Design a case study to illustrate the results.

Requirements for Management-Level and Operation-Level BPM
For purposes of this research, let us define that management level is focused on process orchestration, specifically: • Terminology • Logic of processes • Relations of processes (transition, decomposition) • Communication among participants • Optimisation of the overall process The language of models needs to support the aspects listed above.That is why a combination of graphical and textual language is usually used.The management level BPM specifies terms and their relations that are consequently manipulated in different ways: • They need to be verified for correctness.
• They need to be communicated.
• They are used for reasoning.
• Various reports and statistics need to be calculated.
• They are often changed (they evolve).This is why the management-level BPM needs to be some sort of knowledge base, not just a set of diagrams (graphical objects).Terms and their relations are necessary for full domain specification and to fulfil knowledge base.
By operational level, we mean concrete processes (operations) here, which are performed by assigned process participants (staff, systems).Systems (as participants) are software, thus subject of computer science and software engineering.For further discussion we will consider just human participants.We set following requirements on operation model: • Language of the model is close to the language of participants.
• Model is accurate.
• Model contains just the necessary amount of details to perform operations required.
• Model is up to date and consistent with corresponding management-level model.
Staff is not supposed to be interested in the "big picture" at the operation level, they just need accurate instructions for performing their tasks, i.e. the management needs to answer their questions: • What are the steps I should follow to successfully complete a task?• How should I make decisions and select correct approach?
• What are the inputs I will get?From whom, how and when?
• What are the outputs I should produce?To whom shall I handle them, how and when?
To answer these questions, textual operation manuals are typically used, as operation-level staff does not have to understand graphical objects with abstract notations.

Business Object Relationship Modelling (BORM)
Business Object Relationship Modelling (Knott, Merunka, Polak, 2006;Polák, Merunka, Carda, 2003) is an object-oriented software engineering methodology, which has proven to be very effective in the development of business information and knowledge systems.Its effectiveness is achieved by unified and simple method for presenting all aspects of the relevant model.The BORM methodology makes extensive use of business process modelling (Knott, Merunka, Polak, 2000).BORM was designed as a method covering all phases of the software development.BORM focuses mainly on the first phases of the project also known as business analysis.BORM uses only limited, easily comprehensible group of concepts for every lifecycle phase.This makes it easier to understand even for the first-time users with almost no knowledge of business analysis.
Another fact that makes the BORM methodology more expressive is that it doesn´t need the division to static and dynamic views of the model and therefore does not bring a need of creation of different diagrams with a different viewpoints.BORM introduces the following types of diagrams:  (Pergl, Tůma, 2012) BORM represents every concept with the same symbols in the data structure, the communication or other diagrams.For visual presentation of the information BORM uses simple diagrams that contain only a necessary number of concepts and symbols.These concepts and symbols cover most of the needs for the initial description of the model and its processes.The following symbols belong to the symbols used in the initial description:  Participantan object representing the stakeholder involved in one of the modelled processes, which is recognised during the analysis. Statesequential changes of the participants in time are described by these states. Associationdata-orientated relation between the participants. Activityrepresents an atomic step of the behaviour of the object recognised during the analysis. Communicationrepresents the data flow and dependencies between the activities.Data may flow bidirectionally during the communication. Transitionconnects the state-activity-state and represents changes of the states through activities. Conditionexpresses constraint that holds for the communication or activity, (Polák, Merunka, Carda, 2006;Šplíchal, Pergl, Pícka, 2011).

OpenCASE
OpenCASE Tool ( 2014) is a CASE tool designed to support the research in the field of conceptual modelling and related ontologies.Snapshot of OpenCASE prototype is presented in the Figure 2. It is built upon the Eclipse Modelling Framework and it utilizes many of its advanced possibilities.Right now, we have implemented the BORM method's Business Architecture Diagrams and Object Relation Diagrams (Pergl, Tůma, 2012).

Documentation generating
The case study demonstrates the transformation from management-level business process model into operation-level business process model.As we specified in the requirements, operation-level model should be textual and tailored for each participant.This is where we utilize the OpenCASE as a knowledge base and its API to generate HTML page for each participant.This HTML output is similar to SBVR, (Cabot, Pau, Raventós, 2010;OMG, 2008;Booch, Rumbaugh, Jacobson, 1999).
The transformation is based on approach HOT (High Order Transformation) and this model generation has theoretical background in publication (Šplíchal, Pergl, Pícka, 2011).Modelling tool OpenCASE includes this transformation as an extendable module.
The higher order transformation phase addresses mapping (see Figure 3.), guaranteeing the coherence between the conforms to relationship of the two technical spaces.This task is performed in two subtasks: 1. a promotion transformation obtains the DSL metamodel by promoting the model M1 resulting from the model generation phase to metamodel (M2); 2. a manually defined HOT derives the M1T transformation by translating the M2T transformation, and eventually analyzing the structure of the DSL metamodel published by (Brambilla, Fraternali, Tisi, 2008).
Fig. 3. Diagram of framework using HOT.Source: (Brambilla, Fraternali, Tisi, 2008) HOT approach was theoretically described by (Brambilla, Fraternali, Tisi, 2008) and cited in this paper above and shown in Figure 3.This HOT implementation is used for report generation of the ORD BORM Model.
A programing implementation of this mechanism is presented below, in the Snippet 1 and Snippet 2. These implementations are used for HTML report generation from ORD BORM Model.
( (emit (xhtml-page "XHTML Report" reports) writer :encoding "UTF-8")))) Snippet 2: Export function for creating XHTML Snippet number 1 shows the main function.This function is called OR-report, and it generates a semi model from the inner structure (metamodel of ORD BORM model) representing ORdiagram.This semi model is processed by the write function (see Snippet 2) which produces a XHTML report page.These functions have been implemented using function programming paradigm, which takes advantage of simplification of equational reasoning (Wadler, 1992).
More information about functional programming can be found in Wadler (1992).DOM (Document Object Model) is used for transformation to HTML.DOM is tree structure of HTML transformation output.
To generate documentation (XHTML report) was implementated in functional language.Functional programming is simplicity of equational reasoning Wadler (1992) and more info about functional programming in publication (Wadler, 1992).DOM (Document Object Model) is used for generating or more precisely transformation to HTML.DOM is tree structure of HTML transformation output.

Case study
The case study is based on the processes order goods from e-shop.The case study was written with team cooperation based on the course information management.Course information management is part of the field Project management at the Czech University of Life Sciences, Prague.In order to demonstrate the principals of proposed BORM to HTML transformation and other concepts outlined in this paper, a part of the processes related to order goods from e-shop is presented in a simplified version.
The order goods process is carried out by cooperation among five participants: Customer, Deliverer, Economics department, Order processor and Supplier.This process is shown in details in Figure 4.The HTML operation manuals are generated for each participant (Figures 5 -9).The transformation engine is handling correctly the branching, loops and hierarchical processes (process in a state).It uses paragraphs labelling to navigate the user along the process flow.

Discussion
There

Future works
Possible future works: • Listings, like all input/output flows from/to a participant.
• Calculation of metrics (like numbers of states and activities in participants) that may be used for complexity estimations Struska and Pergl (2009), Struska and Merunka (2007).• Calculation of statistics, e.g. about data flows and communications (which participants communicate the most/least, above/below average, etc.).• Semantics checks: there is a starting state in every participant, at least one final state (According to the BORM, there may be exceptions to these rules, see (Gronback, 2009) for more details.), • Conceptual normalization to be implemented in tool that is described by Molhanec (2011).• Any further custom reporting / calculations / processing.

Conclusion
In this paper we presented our solution that generates HTML documentation from BORM diagrams and supports business process engineering in general.This is accomplished using a combination of suitable modelling method and notation (BORM) and software tool (OpenCASE).The key principle of the solution is that the modelled process is not just a diagram, but a whole knowledge base that may be used in operations, reporting, decision making and other areas.We presented one of consequences of this assumption: automatic generation of operations manuals.
The OpenCASE is created as an open platform for studying BORM method and business modelling in general.Apart from this, it is already a stable tool for effective drawing of BORM models and their management.It is implemented using open architecture based on Eclipse plugins, which makes it extensible and scalable.The presented extension of OpenCASE tool makes the BORM models more accessible for businesspeople who are typically not familiarised with state-based diagrams and business diagrams.

Fig. 4 .
Fig. 4. Case study management process model in BORM: E-shop order goods.Source: authors.
are currently two CASE tools that are able to operate with BORM ORD notation -CraftCase and OpenCASE.OpenCASE is a commercial product developed by CraftCase Company.OpenCASE on the other hand is a platform, which was developed and designed at the Faculty of Economics and Management, Czech University of Life Sciences, in cooperation with Faculty of Information Technology, Czech Technical University.It provides an open modular platform available for free for community of registered scholars and experts.It is based on generally available Eclipse plugin.Any interested developer can hence contribute to the development of the platform, and take part in experiments and research.Thanks to this background, OpenCASE can currently offer several state of art components, such as above presented transformation module.