[[Image:Goalandprocess.JPG|thumb|280px|Example of EEML Goal modeling and process modeling.]]
'''Extended Enterprise Modeling Language''' ('''EEML''') in [[software engineering]] is a [[modelling language]] used for [[Enterpriseenterprise modelling]] across a number of layers.
==Overview==
Extended Enterprise Modeling Language (EEML) is a modelling language, which combines [[structural modelingmodelling]], [[business process modelingmodelling]], [[goal modelingmodelling]] with goal hierarchies, and [[resource modelingmodelling]]. It iswas used in practiceintended to bridge the typegap ofbetween goal modelingmodelling used in common requirements engineering toand other modelingmodelling 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".<ref>Paul Johannesson and Eva Söderström (2008) .''Information Systems Engineering''. p.58-61.</ref>
EEML iswas intendeddesigned to beas a simple language, which makesmaking it easy to update models. In addition to capturing the various tasks(can consist of several sub-tasks) and their interdependencies, models show which roles perform each task, and the tools, services and information they apply.
==History==
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).<ref>Carlsen, S. (1998). "Action port model: A mixed paradigm conceptual workflow modeling language". In: ''Proceedings of Third IFCIS Conference on Cooperative Information Systems'' (CoopIS'98), New York.</ref> The EXTERNAL project <ref>EXTERNAL EXTERNAL - ''Extended Enterprise Resources, Networks And Learning'', EU Project,
IST-1999-10091,</ref> aimed to "facilitate inter-organisational cooperation in knowledge intensive industries. ItThe isproject theworked hypotheses ofon the projecthypothesis 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".<ref>Håvard D. Jørgensen (2004). [http://www.idi.ntnu.no/grupper/su/publ/phd/Jorgensen-thesis.pdf ''Interactive Process Models''] {{Webarchive|url=https://web.archive.org/web/20061014181433/http://www.idi.ntnu.no/grupper/su/publ/phd/Jorgensen-thesis.pdf |date=2006-10-14 }}. Thesis Norwegian University of Science and Technology
Trondheim, Norway. p.173-202.</ref>
It has beenwas further developed in the EU projects Unified Enterprise Modelling Language (UEML)<ref>[[François Vernadat]] (2002). "UEML: towards a unified enterprise modelling language". In: ''Int. J. Production Research'', 40 (17), 4309-4321.</ref> from 2002 to 2003 and the ongoing ATHENA project.<ref>[[John Krogstie]] and [[T.A. Halpin]], Keng Siau (2004). ''Information Modeling Methods and Methodologies''. Idea Group Inc (IGI), p.73.</ref>
The objectives of the UEML Working group has beenwere 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".<ref>[http://www.ist-world.org/ProjectDetails.aspx?ProjectId=072ba8459dce4167a84182c016b32551 Unified Enterprise Modelling Language]. Accessed 29 Nov 2008.</ref>
===Modeling domains===
The EEML-language is divided into 4 sub-languages, with well-defined links across these languages:<ref name="Kro06"> [[John Krogstie]] (2006). [http://ftp.informatik.rwth-aachen.de/Publications/CEUR-WS/Vol-337/paper9.pdf " Using EEML for Combined Goal and Process Oriented Modeling: A Case Study"].</ref>:
* [[Process modelingmodelling]]
* [[Data modelingmodelling]]
* [[Resource modelingmodelling]]
* [[Goal modelingmodelling]]
Process modelingmodelling 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, organizationsorganisations, 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".<ref name="Kro06"/>
===EEML 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.
* S'''pecificSpecific 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 (in the form of process templates) to the planning and performance of an enterprise process. The performance of organizationalorganisational, 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 decentralizationdecentralisation. At this layer, resources are utilizedutilised or consumed in an exclusive or shared manner.
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 meanmeans of a shared knowledge base.
===Goal Modellingmodelling=== ▼
<center><gallery>
{{further|Goal modeling}}
File:manageTaskKnowledge.jpg|Manage Task Knowledge framework
Goal Modellingmodelling is one of the four EEML modelingmodelling 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. ▼
▲< /gallery ></ class="center ">
▲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.
<center><gallery>
Image:Eemlgoal.JPG|Goal modeling in EEML
File:Goal modeling Tabel.gif|Connecting relationships
Image:Goalandprocess.JPG|Goal modeling and process modeling
</gallery></center>
In goal modelingmodelling 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 indicateindicates different types of connecting relationships in EEML goal modelingmodelling. Goal model can also be interlinked with a process model.
===Goal modellingand principles=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 .<ref name=eeml1> ▼
Within [[Requirements analysis|requirements engineering]] (RE), the notion of goal has increasingly been used. Goals generally describe objectives which a system should achieve through cooperation of actors in the intended software and in the environment <ref>L. Liu and E. Yu, “Designing information systems in social context: a goal and scenario modelling approach”, 2003 Elsevier Ltd. http://www.cs.toronto.edu/~liu/publications/ISj03.pdf</ref>. Goals are central in some RE frameworks, and can play a supporting role in others. Goal-oriented techniques may particularly be useful in early-phase RE. Early-phase requirements consider e.g. how the intended system meets organizational goals, why the system is needed and how the stakeholders’ interests may be addressed. <ref>
Yun Lin and Arne Sølvberg Goal Annotation of Process Models for Semantic Enrichment of Process Knowledge </ref> . 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 .<ref name =eeml1 /> .▼
E. Yu, “Towards Modelling and Reasoning Support for Early-Phase Requirements Engineering”, 1997 IEEE</ref>
* Expresses the relationships between systems and their environments : Earlier, requirements engineering focused only on what the system is supposed to do. Over the past years, there has been a more or less mutual understanding, that it is also very important to understand and characterize the interaction between the intended system and its environment. Relationships between systems and their environments are often expressed as goal-based relationships. The motivation for this is “partly today's more dynamic business and organizational environments, where systems are increasingly used to fundamentally change business processes rather than to automate long-established practices”.<ref>E. Yu and J. Mylopoulos, “Why Goal-Oriented Requirements Engineering”, http://www.cs.toronto.edu/pub/eric/REFSQ98.html</ref> Goals can also be useful when modelling contexts. <ref>K.Pohl and P. Haumer, “Modelling Contextual Information about Scenarios”, Proc. 3rd Int. Workshop on Requirements Engineering: Foundations of Software Quality REFSQ ’97, Barcelona, Catalonia, Spain, June 1997 pp. 187-204.</ref>
* Clarifies requirements : Specifying goals leads to asking “why”, “how” and “how else”. <ref>E. Yu and J. Mylopoulos, “Why Goal-Oriented Requirements Engineering”, http://www.cs.toronto.edu/pub/eric/REFSQ98.html</ref> Requirements of the stakeholders are often revealed in this process. The stakeholders may seem to be more likely to become aware of potential alternatives for fulfilling their goals, and thereby less likely to over-specify their requirements. Requirements from clients and stakeholders may often be unclear, especially the non-functional ones. A goal-oriented approach allows the requirements to be refined and clarified through an incremental process, by analyzing requirements in terms of goal decomposition.
* Deals with conflicts : Goals may provide a useful way of dealing with conflicts, such as tradeoffs between costs performance, flexibility, etc, and divergent interests of the stakeholders. Goals can deal with conflicts because meeting of one goal can interfere with the meeting of others. Different opinions on how to meet a goal has led to different ways of handling conflicts. <ref>E. Yu and J. Mylopoulos, “Why Goal-Oriented Requirements Engineering”, http://www.cs.toronto.edu/pub/eric/REFSQ98.html</ref>
* Decides requirements completeness : Requirements can be considered complete if they fulfil explicit goals in the requirement model.
* Connects requirements to design : Goals can be used in order to connect the requirements to the design. For some, goals are an important mechanism in this matter. (The Non-Functional Requirements (NFR) framework uses goals to guide the design process.)
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 modelingmodelling, there is use of deontic operator which falls in between the context and achieved state .<ref name=emml2>J. Krogstie (2005) EEML2005: EXTENDED ENTERPRISE MODELING LANGUAGE </ref> . 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 modelingmodelling requires much more consultation in finding the connections between rules on the different levels .<ref name=eeml3>John Krogstie (2008) Using EEML for Combined Goal and Process Oriented Modeling: A Case Study. IDI, NTNU,Trondheim, Norway. Proceedings of EMMSAD 2008.</ref> . Goal-oriented analysis focuses on the description and evaluation of alternatives and their relationship to the organizationalorganisational objectives .<ref name=eeml4> [[John Mylopoulos|Mylopoulos ]], Chung, and Yu (1999) : “From Object-oriented to Goal-oriented Requirements Analysis”. Communications of the ACM, January</ref> .▼
===Goal-oriented Requirements Language===
[[Image:GRL legend.gif|thumb|320px|GRL Notation]]
[[Goal-oriented Requirements Language]] (GRL) is a language that is designed to support [[goal-oriented]] modeling and reasoning about requirements, especially the non-functional requirements <ref>Lin Liu, Eric Yu, “Designing information systems in social context: a goal and scenario modelling approach”</ref> It allows to express conflict between goals and helps to make decisions that resolve conflicts. There are three main categories of concepts in GRL: intentional elements, intentional relationships and actors <ref>GRL web site, University of Toronto, http://www.cs.toronto.edu/km/GRL/</ref>. They are called for intentional because they are used in models that primarily concerned with answering "why" question of requirements (for ex. why certain choices for behavior or structure were made, what alternatives exist and what is the reason for choosing of certain alternative.
==Resource modeling==
Resources have specific roles during the execution of various processes in an organisation. The following icons represent the various resources required in modelingmodelling.
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 organizationorganisation and person by denoting that a certain person has membership in the organizationorganisation. 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 organizationorganisation. ▼
:h. Is required By – this is the primary skill required for this role ▼
:i. Has Access to – creating of models with the access rights. ▼
==Benefits of using EEML== ▼
▲a. Is Filled By - -this is the assignment relation between roles and resources. It has a cardinality of one-to-many relationship.
From a general point of view, EEML can be used like any other modelingmodelling 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. ▼
▲b. Is Candidate For – candidate indicates the possible filling of the role by a resource.
- * Dynamically networked organisations: Make knowledge as available as possible within the organizationorganisation. ▼
- * Heterogeneous infrastructures: Achieve a relevant knowledge sharing process through heterogeneous infrastructures. ▼
▲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.
- * Process knowledge management: Integrate the different business processes levels of abstraction. ▼
- * Motivation: creates enthusiasm and commitment among members of an organizationorganisation to follow up on the various actions that are necessary to restructure the enterprise. ▼
▲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.
==Goal and process oriented modeling==
▲We can describe process model as models that comprise a set of activities and an activity can be decomposed into sub-activities<ref name=eeml1>
▲Yun Lin and Arne Sølvberg Goal Annotation of Process Models for Semantic Enrichment of Process Knowledge </ref>. 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 <ref name =eeml1 />.
▲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<ref name=emml2>J. Krogstie (2005) EEML2005: EXTENDED ENTERPRISE MODELING LANGUAGE </ref>. 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<ref name=eeml3>John Krogstie (2008) Using EEML for Combined Goal and Process Oriented Modeling: A Case Study. IDI, NTNU,Trondheim, Norway. Proceedings of EMMSAD 2008.</ref>. Goal-oriented analysis focuses on the description and evaluation of alternatives and their relationship to the organizational objectives <ref name=eeml4> Mylopoulos, Chung, and Yu (1999) : “From Object-oriented to Goal-oriented Requirements Analysis”. Communications of the ACM, January</ref>.
▲==Benefits of using EEML==
▲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.
▲- 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 organization.
▲- 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 organization to follow up on the various actions that are necessary to restructure the enterprise.
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<ref name=eeml5>H.D. Jørgensen (2004) Interactive Process Models. Department of Computer and Information Science Faculty of Information Technology, Mathematics and Electrical Engineering, Norwegian University of Science and Technology. Trondheim, Norway</ref>. It also aims at making people understand, communicate, develop and cultivate solutions to business problems<ref name=eeml6>R. Matulevičius and P. Heymans (2007) Visually Effective Goal Models Using KAOS. PReCISE Research Center, Computer Science Department, University of Namur, rue Grandgagnage 21,5000 Namur, Belgium.</ref> ▼
▲EEML can help organisations meet these challenges by modelingmodelling all the manufacturing and logistics processes in the extended enterprise. This model allows capturing a rich set of relationships between the organizationorganisation, people, processes and resources of the virtual enterprise .<ref name=eeml5>H.D. Jørgensen (2004) Interactive Process Models. Department of Computer and Information Science Faculty of Information Technology, Mathematics and Electrical Engineering, Norwegian University of Science and Technology. Trondheim, Norway</ref> . It also aims at making people understand, communicate, develop and cultivate solutions to business problems<ref name=eeml6>R. Matulevičius and P. Heymans (2007) Visually Effective Goal Models Using KAOS. PReCISE Research Center, Computer Science Department, University of Namur, rue Grandgagnage 21,5000 Namur, Belgium.</ref>
According to J. krogstie (2008), Enterprise Models can be created to serve various purposes which include: ▼
▲According to J. krogstieKrogstie (2008), Enterpriseenterprise Modelsmodels can be created to serve various purposes which include:
1. Human sense making and communication -the main purpose of enterprise modeling is to make sense of the real world aspects of an enterprise in order to facilitate communicate with parties involved.
2. Computer assisted analysis - the main purpose of enterprise modeling is to gain knowledge about the enterprise through simulation and computation of various parameters. ▼
3. Model# deploymentHuman sense making and activationcommunication -– the main purpose of enterprise modelingmodelling is to integratemake thesense modelof inthe anreal enterprise-wideworld informationaspects systemof andan enablingenterprise on-linein informationorder retrievalto andfacilitate directcommunicate workwith processparties guidanceinvolved.
▲2. # Computer assisted analysis -– the main purpose of enterprise modelingmodelling 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.
EEML enables Extended Enterprises to build up their operation based on standard processes through allowing modelingmodelling 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.
==See also==
* Bolchini, D., Paolini, P.: "Goal-Driven Requirements Analysis for Hypermedia-intensive Web Applications", Requirements Engineering Journal, Springer, RE03 Special Issue (9) 2004: 85-103.
* Jørgensen, Håvard D.: "Process-Integrated eLearning"
* Kramberg, V.: [ftp://ftp.informatik.uni-stuttgart.de/pub/library/medoc.ustuttgart_fi/DIP-2787/DIP-2787.pdf "Goal-oriented Business Processes with WS-BPEL"]{{dead link|date=May 2025|bot=medic}}{{cbignore|bot=medic}}, Master Thesis, University of Stuttgart, 2008.
* [[John Krogstie]] (2005). EEML2005: Extended Enterprise Modeling Language
* [[John Krogstie]] (2001). "A Semiotic Approach to Quality in Requirements Specifications" (Proc. IFIP 8.1) IFIP 8.1. Working Conference on Organizational Semiotics.
==External links==
{{CommonscatCommons category|Extended Enterprise Modeling Language}}
* [https://web.archive.org/web/20070316081650/http://www.idi.ntnu.no/emner/tdt4250/pensum/EEML2005-autumn2005.doc Description of EEML]
* [http://www.cs.toronto.edu/km/GRL/ GRL web site] University of Toronto,
* [http://www.businessrulesgroup.org/bmm.shtml "The Business Motivation Model] Business Governance in a Volatile World", RelaseRelease 1.3, Business Rules Group, 2007.
[[Category:Business process]]
[[Category:Enterprise modelling]]
[[Category:modeling languages]]
|