Extended Enterprise Modeling Language
Encyclopedia
Extended Enterprise Modeling Language (EEML) in software engineering
is a modelling language used for Enterprise modelling
across a number of layers.
, goal modeling
with goal hierarchies, and resource modeling. It is used in practice to bridge the type of goal modeling used in common requirements engineering to 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".
EEML is intended to be a simple language, which makes 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.
It has been further developed in the EU projects Unified Enterprise Modelling Language (UEML) from 2002 to 2003 and the ongoing ATHENA project.
The objectives of UEML Working group has been 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".
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".
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.
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 indicate different types of connecting relationships in EEML goal modeling. Goal model can also be interlinked with a process model.
(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. 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.
modeling and reasoning about requirements, especially the non-functional requirements 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. 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.
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. 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. Goal-oriented analysis focuses on the description and evaluation of alternatives and their relationship to the organizational objectives.
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.
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. It also aims at making people understand, communicate, develop and cultivate solutions to business problems
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.
Software engineering
Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software...
is a modelling language used for Enterprise modelling
Enterprise modelling
Enterprise modelling is the abstract representation, description and definition of the structure, processes, information and resources of an identifiable business, government body, or other large organization....
across a number of layers.
Overview
Extended Enterprise Modeling Language (EEML) is modelling language, which combines structural modeling, business process modelingBusiness process modeling
Business Process Modeling in systems engineering is the activity of representing processes of an enterprise, so that the current process may be analyzed and improved. BPM is typically performed by business analysts and managers who are seeking to improve process efficiency and quality...
, goal modeling
Goal modeling
A Goal Model is an element of Requirements Engineering that may also be used more widely in Business analysis. Related elements include Scenarios, Stakeholder analysis and Context analysis among others....
with goal hierarchies, and resource modeling. It is used in practice to bridge the type of goal modeling used in common requirements engineering to 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".
EEML is intended to be a simple language, which makes 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). The EXTERNAL project aimed to "facilitate inter-organisational cooperation in knowledge intensive industries. It is the hypotheses of the project 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".It has been further developed in the EU projects Unified Enterprise Modelling Language (UEML) from 2002 to 2003 and the ongoing ATHENA project.
The objectives of UEML Working group has been 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".
Modeling domains
The EEML-language is divided into 4 sub-languages, with well-defined links across these languages:- Process modelingProcess modelingThe term process model is used in various contexts. For example, in business process modeling the enterprise process model is often referred to as the business process model. Process models are core concepts in the discipline of process engineering....
- Data modelingData modelingData modeling in software engineering is the process of creating a data model for an information system by applying formal data modeling techniques.- Overview :...
- Resource modeling
- Goal modelingGoal modelingA Goal Model is an element of Requirements Engineering that may also be used more widely in Business analysis. Related elements include Scenarios, Stakeholder analysis and Context analysis among others....
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".
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.
- 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 (in the form of process templates) to the planning and performance of an enterprise process. The performance of organizational, 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 decentralization. At this layer, resources are utilized 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 mean of a shared knowledge base.
Goal Modelling
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 indicate different types of connecting relationships in EEML goal modeling. Goal model can also be interlinked with a process model.
Goal modelling principles
Within requirements engineeringRequirements analysis
Requirements analysis in systems engineering and software engineering, encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product, taking account of the possibly conflicting requirements of the various stakeholders, such as beneficiaries or users...
(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. 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.
- 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”. Goals can also be useful when modelling contexts.
- Clarifies requirements : Specifying goals leads to asking “why”, “how” and “how else”. 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.
- 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.)
Goal-oriented Requirements Language
Goal-oriented Requirements Language (GRL) is a language that is designed to support goal-orientedGoal-oriented
The concept of goal orientation was developed to describe variability in dispositional or situational goal preferences that an individual implicitly sets for him/herself in achievement situations. GOs assist in providing a motivational framework for how individuals perceive, interpret, and judge...
modeling and reasoning about requirements, especially the non-functional requirements 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. 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.
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. 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 modeling, 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 modeling 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 organizational 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 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.
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. It also aims at making people understand, communicate, develop and cultivate solutions to business problems
According to J. krogstie (2008), Enterprise Models can be created to serve various purposes which include:
- 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.
- Computer assisted analysis - the main purpose of enterprise modeling is to gain knowledge about the enterprise through simulation and computation of various parameters.
- Model deployment and activation - the main purpose of enterprise modeling 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 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.
See also
- i*
- Modeling languageModeling languageA modeling language is any artificial language that can be used to express information or knowledge or systems in a structure that is defined by a consistent set of rules...
- Semantic parameterizationSemantic parameterizationSemantic parameterization is a conceptual modeling process for expressing natural language descriptions of a domain in first-order predicate logic...
- Software designSoftware designSoftware design is a process of problem solving and planning for a software solution. After the purpose and specifications of software are determined, software developers will design or employ designers to develop a plan for a solution...
- Software development methodologySoftware development methodologyA software development methodology or system development methodology in software engineering is a framework that is used to structure, plan, and control the process of developing an information system.- History :...
Further reading
- 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"], Master Thesis, University of Stuttgart, 2008.
- John KrogstieJohn KrogstieJohn Krogstie is a Norwegian computer scientist, professor in information systems at the Norwegian University of Science and Technology in Trondheim, Norway, and an expert in the field of enterprise modelling.- Biography :...
(2005). EEML2005: Extended Enterprise Modeling Language - John KrogstieJohn KrogstieJohn Krogstie is a Norwegian computer scientist, professor in information systems at the Norwegian University of Science and Technology in Trondheim, Norway, and an expert in the field of enterprise modelling.- Biography :...
(2001). "A Semiotic Approach to Quality in Requirements Specifications" (Proc. IFIP 8.1) IFIP 8.1. Working Conference on Organizational Semiotics. - Lin Liu, Eric Yu. "Designing information systems in social context: a goal and scenario modelling approach"
External links
- Description of EEML
- GRL web site University of Toronto,
- "The Business Motivation Model Business Governance in a Volatile World", Release 1.3, Business Rules Group, 2007.