Extended Enterprise Modeling Language (EEML) in software engineering is a modelling language used for Enterprise modelling across a number of layers.
Contents |
Extended Enterprise Modeling Language (EEML) is a modelling language which combines structural modeling, business process modeling, goal modeling with goal hierarchies and resource modeling. It was intended to bridge the gap between goal modeling and other modeling approaches. According to Johannesson and Söderström (2008) "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".[1]
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.
Extended Enterprise Modeling Language (EEML) is from the late 1990s, developed in the EU project EXTERNAL as extension of the Action Port Model (APM) by S. Carlsen (1998).[2] The EXTERNAL project [3] 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 (Extended Enterprise Modelling Language) was first constructed as a common metamodel, designed to enable syntactic and semantic interoperability".[4]
It was further developed in the EU projects Unified Enterprise Modelling Language (UEML)[5] from 2002 to 2003 and the ongoing ATHENA project.[6]
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".[7]
The EEML-language is divided into 4 sub-languages, with well-defined links across these languages[8]:
Process modeling in EEML, according to Krogstie (2006) "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 (persons, organizations, information, material objects, software tools and manual tools) to the tasks. In addition, data modeling (using UML class diagrams), goal modeling and competency modeling (skill requirements and skills possessed) can be integrated with the process models".[8]
EEML has four layers of interest
These tasks are tied together through another layer called Manage Task Knowledge which allows to achieve a global interaction through the different layers by performing a real consistency between them. According to EEML 2005 Guide, this Manage Task Knowledge can be defined as the collection of processes necessary for innovation, dissemination, and exploitation of knowledge in a co-operating ensemble where interact knowledge seekers and knowledge sources by the mean of a shared knowledge base.
Goal Modelling is one of the four EEML modeling domains age. A goal expresses the wanted (or unwanted) state of affairs (either current or future) 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 modeling to fulfil Goal1, one must achieve to other goals: both Goal2 and Goal3 (goal-connector with “and” as the logical relation going out). 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 modeling. Goal model can also be interlinked with a process model.
We can describe process model as models that comprise a set of activities and an activity can be decomposed into sub-activities.[9] 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.[9]
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 modeling, there is use of deontic operator which falls in between the context and achieved state.[10] 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 modeling requires much more consultation in finding the connections between rules on the different levels.[11] Goal-oriented analysis focuses on the description and evaluation of alternatives and their relationship to the organizational objectives.[12]
Resources have specific roles during the execution of various processes in an organisation. The following icons represent the various resources required in modeling. The relations of these resources can be of different types:
a. Is Filled By - -this is the assignment relation between roles and resources. It has a cardinality of one-to-many relationship.
b. Is Candidate For – candidate indicates the possible filling of the role by a resource.
c. Has Member – this is a kind of relations between organization and person by denoting that a certain person has membership in the organization. Has a cardinality of many-to-many relation.
d. Provide Support To – support pattern between resources and roles.
e. Communicates With – Communication pattern between resources and roles.
f. Has Supervision Over – shows which role resource supervises another role or resource.
g. Is Rating Of – describes the relation between skill and a person or organization.
h. Is required By – this is the primary skill required for this role
i. Has Access to – creating of models with the access rights.
From a general point of view, EEML can be used like any other modeling 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.
EEML can help organisations meet these challenges by modeling all the manufacturing and logistics processes in the extended enterprise. This model allows capturing a rich set of relationships between the organization, people, processes and resources of the virtual enterprise.[13] It also aims at making people understand, communicate, develop and cultivate solutions to business problems[14]
According to J. krogstie (2008), Enterprise Models can be created to serve various purposes which include:
EEML enables Extended Enterprises to build up their operation based on standard processes through allowing modeling of all actors, processes and tasks in the Extended Enterprise and thereby have clear description of the Extended Enterprise. Finally, models developed will be used to measure and evaluate the Extended Enterprise.
![]() |
Wikimedia Commons has media related to: Extended Enterprise Modeling Language |
The year comes as the sun sets
my eyes swell with simplicity
the call of human nothingness
the answer of everything
i find myself lost in your majesty
The worlds tells of innocence
like the child inside of me
it's only good while its hearts beats beauty
brave the pain
so you may drink of me
You left me
as i walk beside the water
look up to the moon
my life becomes a river
as i run into you
Stars prick their bed of pink
bleeding blue
find there way to you eyes
as i stare into you
self falls away in the twilight
this is the first of our summer nights
now there is nothing we must be or do
If i could freeze this moment in time
i'd frame it and hang it in the hall of divive
i'd call the whole world and beg them to see
how much we love
how lucky i'd be
You left me
as i walk beside the water
look up to the moon
my life becomes a river
as i run into you
I don't know where we end up begin
i don't know if that's yours of my skin
i've got nothing to lose
everything I am i give up to you
As i walk beside the water
look up to the moon
my life becomes a river
as i run into you
I walk beside the water
look up to the moon
my life becomes a river
as i run into you
Comes as the sunsets
my eyes swell with simplicity
self falls away in the twilight