Keywords

1 Introduction

There have been and still are pretty many efforts for the analysis of UML models generation from different knowledge-based models, merging and uniting different modelling languages, frameworks and patterns and even generation from natural language specifications [2,3,4, 9].

The Enterprise meta-model (EMM) is considered to be the significant conceptual structure for problem domain knowledge acquisition for the aims of IS development. This meta-model handles Enterprise model structure, and therefore, Enterprise model stores knowledge that is needed for whole IS development process and can be used in all IS development life cycle phases [5,6,7,8].

In recent years UML models are having a rising regard from. It is a very daring objective for analysis of UML models since the knowledge about an enterprise system is distributed within several model approaches. UML models are preserved to decrease the confusion of the problem with the increase of enterprise turnovers. By operating UML models, knowledge from Enterprise model can be efficiently represented and can be used in all phases of IS development life cycle [10, 11, 13].

2 Generation of UML Models Using Enterprise Meta-model

Enterprise meta-model is formally defined enterprise model structure, which consists of a formalized Enterprise model in line with the general principles of control theory (Fig. 1). Enterprise model is the main source of the necessary knowledge of the particular problem domain for IS engineering and IS re-engineering processes [6, 7].

Fig. 1.
figure 1

Enterprise meta-model class diagram [6, 7]

All UML models: static and dynamic can be generated using Enterprise model transformation algorithms. Particular UML model must be selected for generation process, after this selection, the initial – starting element of this particular UML model must be identified from Enterprise model. Therefore, all related elements must be identified according the initial element and all these related elements must be linked regarding constraints i.e. business rules, obligatory for particular UML model type which was selected in the beginning [1, 12].

This kind of system definition is quite tangled, because most of the information from the Enterprise model overlays in the UML models and expresses the same matters just in different approaches, as it is explained in the next chapter. Therefore identification of particular UML model for generation process has high significance, because of regarding this selection relies generated element value for system development process [1, 16].

The algorithm of UML model generation using Enterprise model is presented in the Fig. 2:

Fig. 2.
figure 2

The top level algorithm of UML models generation using normalised EMM

  • Step 1: Particular UML model for generation from Enterprise model process is identified and selected.

  • Step 2: If the particular UML model for generation from Enterprise model process is selected then algorithm process is continued, else the particular UML model for generation from Enterprise model process must be selected.

  • Step 3: First element from Enterprise model is selected for UML model, identified previously, generation process.

  • Step 4: If the selected Enterprise model element is initial UML model element, then initial element is generated, else the other Enterprise model element must be selected (the selected element must be initial element).

  • Step 5: The element related to the initial element is selected from Enterprise model.

  • Step 6: The element related to the initial element is generated as UML model element.

  • Step 7: The element related to the previous element is selected from Enterprise model.

  • Step 8: The element related to the previous element is generated as UML model element.

  • Step 9: If there are more related elements, then they are selected from Enterprise model and generated as UML model elements one by one, else the link element is selected from Enterprise model.

  • Step 10: The link element is generated as UML model element.

  • Step 11: If there are more links, then they are selected from Enterprise model and generated as UML model elements one by one, else the Business Rule element is selected from Enterprise model.

  • Step 12: The Business Rule element is generated as UML model element.

  • Step 13: If there are more Business Rules, then they are selected from Enterprise model and generated as UML model elements one by one, else the generated UML model is updated with all elements, links and constraints.

  • Step 14: Generation process is finished.

3 Business Rule Element’s Variations

Design methods of information systems refers the settlement of systems engineering actions, i.e. in what manner, how, and which UML model to use in the information system development process and how to fulfil the process. Many of them are based on different types of models depicting varying aspects of the system properties. Significance of every UML model element can be defined particularly, but more important is the fact that every model is the projection of the system (Fig. 3). Business Rule element from Enterprise model can indicate different view of the system in different UML model.

Fig. 3.
figure 3

Business Rule element in EM and in UML model. The transformation algorithm’s 11 and 12 steps

Below there are presented generated UML model elements after transformation algorithm’s 11 and 12 steps: Business Rule element generation from Enterprise model in UML dynamic part models.

In case of UML Use Case models, which describe a series of actions that some system or systems should or can implement in contribution with one or more external users of the system [15], from EM Business Rule elements can be generated three UML Use Case elements (Table 1): Extend, Include, Association [14, 15].

Table 1. UML Use Case model elements [14, 15]

In case of UML Activity model, which shows flow of control or object flow with emphasis on the sequence and conditions of the flow [15], from EM Business Rule elements can be generated all types of UML Activity Control Nodes elements (Table 2).

Table 2. UML Activity model elements [14, 15]

In case of UML State machine model, which is used for modelling discrete behaviour through finite state transitions [15], from EM Business Rule elements can be generated one UML State machine model element: Pseudostate (Table 3), and also state machines can be used to express the usage protocol of part of a system as UML Protocol State machine, and in this case, from EM Business Rule elements can be generated one UML Protocol State machine model element: Protocol Transition (Table 4).

Table 3. UML State Machine model elements [14, 15]
Table 4. UML Protocol State Machine model elements [14, 15]

In case of UML Sequence model, which focuses on the message interchange between objects (lifelines) [15], from EM Business Rule elements can be generated five UML Sequence model elements (Table 5): Execution Specification, Combined Fragment, Interaction Use, State Invariant and/or Destruction Occurrence.

Table 5. UML Sequence model elements [14, 15]

In case of UML Timing model, which shows interactions when a primary scope of the model is to reason about time [15], from EM Business Rule elements can be generated three UML Time model elements (Table 6): Duration Constraint, Time Constraint, Destruction Occurrence.

Table 6. UML Timing model elements [14, 15]

In case of UML Interaction Overview model, which identifies interactions through a variant of activity models in a way that sustains overview of the control flow [15], from EM Business Rule elements can be generated five Interaction Overview model elements (Table 7): Duration Constraint, Time Constraint, Interaction Use, Control Nodes.

Table 7. UML Interaction Overview model element [14, 15]

This wide group of elements can be generated because UML Interaction Overview model coordinates elements from activity and interaction models [15]:

  • from the activity model: initial node, flow final node, activity final node, decision node, merge node, fork node, join node;

  • from the interaction models: interaction, interaction use, duration constraint, time constraint.

All these UML models elements descriptions shows, how much knowledge about problem domain is stored in Enterprise model, how much information behind the EM Business Rule element is saved and also, how important that this stored information’s quality and fullness should match all the different UML models approaches, so that suitable UML model could be generated.

4 Conclusions

The first part of the article handles with defining Enterprise model concept and with detailed explanation of Unified Modelling Language model generation from Enterprise model transformation algorithm, which is depicted by steps.

In the next part there are presented the Business Rule element’s variations in different UML models, which were generated from Enterprise model, and how the quality of the business problem information, stored in knowledge-based Enterprise model makes the impact on these variations.

The described Business Rule element’s example shows that if the high quality information stored in Enterprise model, then it is enough for UML models generating process. There is possible to confirm, that each element of each UML dynamic model can be generated from the Enterprise model using transformation algorithms only if high quality of the information in Enterprise model is ensured.