Extended Enterprise Modeling Language
Extended Enterprise Modeling Language in software engineering is a modelling language used for Enterprise modelling across a number of layers.
Overview
Extended Enterprise Modeling Language is a modelling language which combines structural modelling, business process modelling, goal modelling with goal hierarchies and resource modelling. It was intended to bridge the gap between goal modelling and other modelling approaches. According to Johannesson and Söderström "the process logic in EEML is mainly expressed through nested structures of tasks and decision points. The sequencing of tasks is expressed by the flow relation between decision points. Each task has an input port and the output port being decision points for modeling process logic".EEML was designed as a simple language, making it easy to update models. In addition to capturing tasks and their interdependencies, models show which roles perform each task, and the tools, services and information they apply.
History
Extended Enterprise Modeling Language is from the late 1990s, developed in the EU project EXTERNAL as extension of the Action Port Model by S. Carlsen. The EXTERNAL project aimed to "facilitate inter-organisational cooperation in knowledge intensive industries. The project worked on the hypothesis that interactive process models form a suitable framework for tools and methodologies for dynamically networked organisations. In the project EEML was first constructed as a common metamodel, designed to enable syntactic and semantic interoperability".It was further developed in the EU projects Unified Enterprise Modelling Language from 2002 to 2003 and the ongoing ATHENA project.
The objectives of the UEML Working group were to "define, to validate and to disseminate a set of core language constructs to support a Unified Language for Enterprise Modelling, named UEML, to serve as a basis for interoperability within a smart organisation or a network of enterprises".
Topics
Modeling domains
The EEML-language is divided into 4 sub-languages, with well-defined links across these languages:Process modelling in EEML, according to Krogstie "supports the modeling of process logic which is mainly expressed through nested structures of tasks and decision points. The sequencing of the tasks is expressed by the flow relation between decision points. Each task has minimum an input port and an output port being decision points for modeling process logic, Resource roles are used to connect resources of various kinds to the tasks. In addition, data modeling, goal modeling and competency modeling can be integrated with the process models".
Layers
EEML has four layers of interest:- Generic Task Type: This layer identifies the constituent tasks of generic, repetitive processes and the logical dependencies between these tasks.
- Specific Task Type: At this layer, we deal with process modelling in another scale, which is more linked to the concretisation, decomposition and specialisation phases. Here process models are expanded and elaborated to facilitate business solutions. From an integration viewpoint, this layer aims at uncovering more efficiently the dependencies between the sub-activities, with regards for the resources required for actual performance.
- Manage Task Instances: The purpose of this layer consists in providing constraints but also useful resources to the planning and performance of an enterprise process. The performance of organisational, information, and tool resources in their environment are highlighted through concrete resources allocation management.
- Perform Task Instances: Here is covered the actual execution of tasks with regards to issues of empowerment and decentralisation. At this layer, resources are utilised or consumed in an exclusive or shared manner.
Goal modelling
Goal modelling is one of the four EEML modelling domains age. A goal expresses the wanted state of affairs in a certain context. Example of the goal model is depicted below. It shows goals and relationships between them. It is possible to model advanced goal-relationships in EEML by using goal connectors. A goal connector is used when one need to link several goals.In goal modelling to fulfil Goal1, one must achieve to other goals: both Goal2 and Goal3. If Goal2 and Goal3 are two different ways of achieving Goal1, then it should be “xor” logical relationship. It can be an opposite situation when both Goal2 and Goal3 need to be fulfilled and to achieve them one must fulfil Goal1. In this case Goal2 and Goal3 are linked to goal connector and this goal connector has a link to Goal1 with ”and”-logical relationship.
The table indicates different types of connecting relationships in EEML goal modelling. Goal model can also be interlinked with a process model.
Goal and process oriented modelling
We can describe process model as models that comprise a set of activities and an activity can be decomposed into sub-activities. These activities have relationship amongst themselves. A goal describes the expected state of operation in a business enterprise and it can be linked to whole process model or to a process model fragment with each level activity in a process model can be considered as a goal.Goals are related in a hierarchical format where you find some goals are dependent on other sub goals for them to be complete which means all the sub goals must be achieved for the main goal to be achieved. There is other goals where only one of the goals need to be fulfilled for the main goal to be achieved. In goal modelling, there is use of deontic operator which falls in between the context and achieved state. Goals apply to tasks, milestones, resource roles and resources as well and can be considered as action rule for at task. EEML rules were also possible to although the goal modelling requires much more consultation in finding the connections between rules on the different levels. Goal-oriented analysis focuses on the description and evaluation of alternatives and their relationship to the organisational objectives.
Resource modeling
Resources have specific roles during the execution of various processes in an organisation. The following icons represent the various resources required in modelling.The relations of these resources can be of different types:
Benefits
From a general point of view, EEML can be used like any other modelling languages in numerous cases. However we can highlight the virtual enterprise example, which can be considered as a direct field of application for EEML with regard to Extended Enterprise planning, operation, and management.- Knowledge sharing: Create and maintain a shared understanding of the scope and purpose of the enterprise, as well as viewpoints on how to fulfil the purpose.
- Dynamically networked organisations: Make knowledge as available as possible within the organisation.
- Heterogeneous infrastructures: Achieve a relevant knowledge sharing process through heterogeneous infrastructures.
- Process knowledge management: Integrate the different business processes levels of abstraction.
- Motivation: creates enthusiasm and commitment among members of an organisation to follow up on the various actions that are necessary to restructure the enterprise.
According to J. Krogstie, enterprise models can be created to serve various purposes which include:
- Human sense making and communication – the main purpose of enterprise modelling is to make sense of the real world aspects of an enterprise in order to facilitate communicate with parties involved.
- Computer assisted analysis – the main purpose of enterprise modelling is to gain knowledge about the enterprise through simulation and computation of various parameters.
- Model deployment and activation – the main purpose of enterprise modelling is to integrate the model in an enterprise-wide information system and enabling on-line information retrieval and direct work process guidance.