Griffith University: School of Computing and Information Technology
Griffith University: School of Computing and Information Technology
© Ovidiu S. Noran
Table of Contents.
1 Introduction....................................................................................................1
1.1 The objectives of this paper..............................................................................1
1.2 Motivation.........................................................................................................1
1.3 Some Important Terms.....................................................................................2
1.3.1 Models. .............................................................................................................. 2
1.3.2 Business Process Models.................................................................................. 2
1.3.3 Information Systems Support. ........................................................................... 3
1.3.3.1 The Business Model as a Base for Information Systems.......................... 3
1.3.3.2 'Legacy' Systems. ...................................................................................... 4
1.3.4 Business Improvement vs. Innovation............................................................... 4
1.4 Business Concepts...........................................................................................4
1.4.1 Business Architecture. ....................................................................................... 5
1.4.2 Business Rules. ................................................................................................. 5
1.4.2.1 Derivations................................................................................................. 5
1.4.2.2 Constraints................................................................................................. 5
1.4.2.3 Existence. .................................................................................................. 5
1.4.3 Business Views.................................................................................................. 5
1.4.3.1 Vision. ........................................................................................................ 6
1.4.3.2 Process...................................................................................................... 6
1.4.3.3 Structure. ................................................................................................... 6
1.4.3.4 Behaviour................................................................................................... 6
1.5 Software Architecture vs. Business Architecture. .............................................6
1.5.1 Software Architecture. ....................................................................................... 7
1.5.2 Software Architectural Views. ............................................................................ 7
1.5.3 From Business To Software Architecture. ......................................................... 7
5 Conclusions. ................................................................................................49
6 References. .................................................................................................50
ii
Business Modelling: UML vs. IDEF Introduction
1 Introduction.
1.2 Motivation.
This paper attempts to approach the domain of business modelling. The process of
business modelling is employed in order to create an abstraction of an otherwise
complex business. This will enable business stakeholders (owners, customers,
management, etc) to gain a better understanding of the business functions and also
promote business improvements and/or innovation. Further elements on business
modelling are provided in the Conclusion
What is the connection between business and software modelling ?
In order to survive in today's competitive world, businesses have to continuously review
their products, services, and relations with the environment (suppliers, competitors,
clients, laws, etc). To assess the quality of their products and effectiveness of their
services, businesses rely on the information systems. Initially only a support
component, the information systems have now become an integral part of the
businesses. The business itself must define the requirements for the information
system.
Unfortunately, very often the software system does not properly support the business.
The causes may be: lack of accurate requirements definition, deficiencies in proper
business understanding by the software design team, or even the nature of the
business (which may change so often that the software simply cannot follow).
1
Business Modelling: UML vs. IDEF Introduction
1.3.1 Models.
A model is basically a simplified abstract view of the complex reality. It may focus on
particular views, enforcing the 'divide and conquer' principle for a compound problem.
In the business domain, a model represents a concept on how the business functions
and therefore will inevitably include goals, visions, efficiency and other important
factors.
Business stakeholders may have slightly different views of the business. Therefore, a
commonly agreed upon business model would enable all stakeholders to work
towards a common solution and understand each other's concepts.
A business model may of course (and should) serve as a basis for the information
systems model, ensuring consistency and accurate requirements being passed on to
the software design. By using a model, developers may improve their understanding
of the business and awareness of the business enhancement opportunities.
Last but not least, a model must have a purpose. For a business, this may be
understanding its structure, improving it or re-engineering it. The shape and detail of
the model will largely depend on the model objective(s).
Models may consist of views, diagrams (for structure or behaviour), objects and
processes (functions in the business).
2
Business Modelling: UML vs. IDEF Introduction
• the business structure and its processes are created by the business modeller;
• according to the previous step, the system developer designs and develops the
suitable information systems to support the business.
Organization charts have been the traditional way to document a business. Business
models enhance this method by also providing business processes, resources, goals,
execution rules and other additional information.
A business model may also express the future view of the business. In this case, there
is always a degree of uncertainty as to what may happen during the model realisation.
Even in this case, the model will provide benefits. Some of them are:
• clearly specify people's roles and tasks in the organization;
• provide accurate requirements for a subsequent information system supporting
the business;
• model level benchmarking - i.e. trying new / different business concepts at the
model level and study the results.
As previously mentioned, the current information systems have various problems, such
as unreliability, ineffective business support, and complexity. Writing the software for
the computer systems is still a specialised job; therefore the requirements for the
information systems are often written by the same people that make design decisions.
The consequence is a technology-driven rather than a business-driven information
system (i.e. concentrating on issues like the user interface or specific implementation
techniques, rather than on what the business really requires from the system).
3
Business Modelling: UML vs. IDEF Introduction
Depending on the business size and age, there may exist older information systems
already implemented, which need to be taken into consideration as the object of
improvement or removal. There are several approaches towards modelling such
systems. They may be modelled as a single entity, or be reverse engineered in order
to obtain a more detailed model of the existing system.
4
Business Modelling: UML vs. IDEF Introduction
1.4.2.1 Derivations.
Derivation rules define how knowledge or information in one form may be transformed
into another form. Derivation rules may be computational (calculate a value) or
inference rules (if-then form).
1.4.2.2 Constraints.
1.4.2.3 Existence.
Existence rules act when a specific object exists. They may be used in pre- and post
conditions for object creation / deletion, etc.
5
Business Modelling: UML vs. IDEF Introduction
1.4.3.1 Vision.
The vision depicts the goal structure for the company and the obstacles that have to be
overcome in order to reach the goals. This view contains some vital concepts for the
business, such as: the mission, objectives (specific, 'schedulable' goals), strengths,
weaknesses, threats to the business (e.g. competitors), critical factors for success,
strategies, core competencies, roles, key processes, etc. The business vision view
also includes identifying future trends from customer / competitor market analysis.
The vision view may employ several analysis methods, such as strategy definition,
conceptual modelling (model level) and goal / problem modelling (user model level).
1.4.3.2 Process.
The Process view relies on the goals defined in the Vision view in order to describe the
processes needed to achieve a specific objective. This view has to model the core
processes of the company (critical for the existence of the business). The processes
act as models (classes), while a process execution is a process instance (object).
Process modelling may be achieved using various approaches. This paper will only
describe the UML extensions and the IDEF1-4 approaches, which imply concepts
such as goal, input, output, supply, control.
1.4.3.3 Structure.
The structure view represents the resources, products/services, and the information in
the business. This type of view is also used by reference architectures (Ref.11).
Information modelling has a special meaning - information is a special type of resource
that may sometimes govern the business. Therefore it is modelled separately and it
actually represents the base for the information system storage definition (refer IDEF1
vs. IDEF1x later on in this document).
Organization is a case of resource modelling where the resources are allocated to
organisational units. A process may stretch over more organisational units. The
organization model aims to show the resource allocation, reporting methods, task
assignments and management. The trend is to move away from hierarchical, to
flexible and dynamic (project-based) organization.
1.4.3.4 Behaviour.
The Process view describes the behaviour of the resource objects. The Behaviour view
goes into further detail by analysing possible states, behaviours in each state and
transitions between states. The state modelling is based on concepts such as states,
events (causes of a state transition) and actions. The interaction modelling addresses
the relations between processes and resources.
6
Business Modelling: UML vs. IDEF Introduction
of the advantages listed was the capability to derive accurate software requirements
from the business model.
Modern software modelling and architecture concepts as such have appeared before
business modelling. Software modelling has already been used for some time in order
to construct good software architecture. As a direct consequence, there is a pool of
experienced software modellers and software modelling tools available.
One of the purposes of this paper is to investigate how the existing software modelling
tools and skills may be used to model businesses, and also to assess the suitability of
the current attempts towards business modelling. The main concept is:
Use software development tools and human skills to develop the business model.
Subsequently, use this model to derive requirements and accurately construct the
supporting information system architecture.
7
Business Modelling: UML vs. IDEF Introduction
8
Business Modelling: UML vs. IDEF The Unified Modelling Language
2.1 Basics.
UML may be regarded the successor of the Object Oriented Analysis and Design (OOAD)
methods that proliferated during the method wars of the '80s and early '90s.UML
represents only the language component of a method and it is complemented separately
by a Rational Unified Process (or RUP, which is not mandatory).
UML represents the unification of the three main modelling language methods within the
industry: Booch, Rumbaugh and Jacobson. UML went through a standardisation process
with the Object Management Group (OMG) and it is now an OMG standard.
UML is a modelling language. As such, it contains a set of symbols (the notation) and a
group of rules (semantics) that manage the language. Rules may be classified into:
• syntactic: specify the aspect and combination of rules;
• semantic: specify the meaning of the symbols, individually and in context;
• pragmatic: guidelines on how to use the language (the intent of the symbols).
The most important concepts in understanding UML are: the UML architecture, notation
(diagrams), constraints and extension mechanisms. The UML architecture does not
directly concern the scope of this paper; therefore, it will not be covered. The diagrams,
constraints and extension mechanisms have direct connection to the business modelling
attempt and as a consequence they will be briefly explained.
N.B.: while all of these diagrams have their own well-defined graphical representation, only
the most useful towards our purpose (i.e. business modelling) will be shown in this
paper. A complete coverage of UML diagrams is beyond the scope of this work.
9
Business Modelling: UML vs. IDEF The Unified Modelling Language
10
Business Modelling: UML vs. IDEF The Unified Modelling Language
The UML aims to capture (via the above-mentioned diagrams) the three main aspects of a
system: its structure, behaviour and functionality.
11
Business Modelling: UML vs. IDEF The Unified Modelling Language
2.3.1 Stereotypes.
Stereotypes allow users to define new building blocks from the existing set. Basically, all
UML elements can be customised and/or extended by defining and naming using the
stereotypes. General form of stereotypes is either <<stereotype-name>> or special
(user-defined) stereotype icons.
2.3.3 Constraints.
Constraints represent rules that are applied to UML models. They may apply to one or
more elements within the model. The users may employ both predefined and user-
defined constraints (refer Fig. 1. 4). Constraints may also be defined using the Object
Constraint Language (OCL). In business modelling, the OCL is used to define business
rules.
predefined constraint
12
Business Modelling: UML vs. IDEF The Unified Modelling Language
The generic representation in Fig. 1. 5 bears a great resemblance with an IDEF0 diagram,
which proves that the essential set of concepts necessary and sufficient for business
process modelling remains the same irrespective of the particular implementation.
13
Business Modelling: UML vs. IDEF The Unified Modelling Language
The authors of the extensions also introduce the use of an activity diagram renamed as
assembly line diagram. The main purpose of this diagram is to help in modelling
information systems supporting businesses.
R W W
R W R
The 'assembly lines' are stereotyped UML packages. Usually, the assembly lines
represent information objects in an information system. If so, the assembly line shows
how information is accessed and how it is used by the processes situated at the top of
the diagram.
The assembly line diagrams have a special relation to the UML use cases. The information
accesses to/from the assembly lines may be mapped to use cases, because they
basically show the interface between the business process and the information system.
It is beyond the scope of this paper to describe in more detail both the UML and the
Eriksson-Penker Business Extensions. The main purpose of this primer has been to
provide a basis for the reader may understand the Unified Modelling Language basics
and one of the proposed business modelling extensions.
14
Business Modelling: UML vs. IDEF The Unified Modelling Language
solve problems common to different business situations. Patterns are a way of reusing
previous modeller experience. They exist in all phases of development - from business
modelling to the coding and testing phases. Patterns can be of functional, structural and
behavioural categories, depending on the issues they deal with.
The pattern form refers to the intent of the pattern. A classification by the form of the
pattern will yield three categories:
• resource and rule patterns: structural (mainly static)
• goal patterns: structural (mainly static);
• process patterns: functional and behavioural (mainly dynamic).
Several patterns are being proposed for the purpose of business modelling. Some of these
patterns will be used in the modelling exercise presented in Chapter 3.
15
Business Modelling: UML vs. IDEF The IDEF Family of Languages
Business process analysis and modelling methodologies have the potential of bridging
the gap between the information systems requirements definition and software
systems development. Traditionally however, business analysts have had difficulties
in capturing 'as-is' models of businesses in order to better understand and
subsequently improve them. Fortunately, the advent of modelling tools supporting the
application of business modelling methods has changed this situation.
This chapter will briefly present the IDEF group of languages, with emphasis on IDEF0,
IDEF1 / IDEF1x, IDEF3 and IDEF4. In order to present each language, a concise
discussion of the underlying ontology must be undertaken, together with the notion of
model in that particular language interpretation. Finally, the specific language
semantic rules must be briefly described in order to enable the reader to gain an
understanding of that particular language and its intended areas of application.
3.1 Basics.
The IDEF (ICAM DEFinition, becoming Integrated DEFinition) methodology was initially
intended for use in systems engineering. In the 1970s, the system design and
analysis domains were in need of supporting modelling methods. The US Air Force
Integrated Computer Aided Manufacturing (ICAM) program addressed this need by
devising the suite of methods known as IDEF.
The IDEF suite initially contained an activity (function) modelling method, called IDEF0,
a conceptual modelling method called IDEF1 and a simulation model specification
method - the IDEF2. Since then, other developments saw several constructs added to
the IDEF1, which gave birth to IDEF1x. Also, work on a process modelling method
known as IDEF3 was started in the 1980s. IDEF3 has actually taken over much of the
scope of IDEF2 because it can be used to specify preliminary simulation models.
Furthermore, IDEF3 has an object-state component that can be used to model how
objects undergo change in a process.
IDEF4 and IDEF5 followed in the 1990s. IDEF4 is an object-oriented software design
method that integrates the requirements specified in other methods. IDEF4 also
allows capturing and management of (object-oriented) design principles. IDEF5 is a
knowledge acquisition and engineering method aiming to support enterprise
ontologies - i.e. the theories supporting metamodels.
The complete list of IDEF methods goes from IDEF0 to IDEF14 (from IDEF5 upwards
mostly in development and IDEF7 missing from the list).
Presently, the methods that are used most are IDEF0, IDEF1x, IDEF3 and IDEF4.
Recent developments aim to effectively refine and integrate these methods, so that
information may be easily exchanged between them.
3.2 IDEF0.
The IDEF0 method is used to specify function models ('what to do'). It is loosely based
upon the Structured Analysis and Design Technique (SADT) method developed by
Douglas Ross from SofTech in the 1970s.
IDEF0 allows the user to depict a view of the process including the inputs, outputs,
controls and mechanisms (which are referred to generally as ICOMs):
16
Business Modelling: UML vs. IDEF The IDEF Family of Languages
Fig. 2. 1 presents a generic IDEF0 diagram (a metamodel). Resources that are used in
the process but not consumed or transformed by the process should be represented
as controls rather that inputs.
Control Control
Input(s) Output(s)
Function or
Activity
Mechanism Mechanism
A very important concept in the IDEF0 method is the abstraction from time. The IDEF0
diagrams show activation of activities, not flow (sequences). ICOMs are able to show
the activity activation constraints, but neither what signals the process completion, nor
the conditions for the process to actually start.
The IDEF0 diagrams may be decomposed into lower level ('child') diagrams. The
hierarchy is maintained via a numbering system that organises parent and child
diagrams. The arrows used in the IDEF0 model may fork or join. Joining two arrows
together has the meaning of 'bundling' rather than 'mixing' - i.e. within the bundle,
each arrow retains its initial identity. Some arrows may be tunnelled downwards - i.e.
they are hidden from some decompositions of a parent box until the desired level of
decomposition is reached and then they become apparent.
As previously mentioned, IDEF0 bears a great resemblance to the generic process
diagram used in the Eriksson-Penker Business Extension to the UML (which quotes
IDEF0 as a reference).
3.3.1 IDEF1
IDEF1 stems from three main sources: the Entity-Link_Attribute (ELKA) method, the
Entity Relationship method (ER) and Codd's Relational Model. The original intent of
IDEF1 was to capture the existent information about objects within an enterprise.
IDEF1 is generally used in the Computer Integrated Manufacturing (CIM), mainly to:
• identify what information is available in the organization;
• identify the problems caused by lack of appropriate information management;
• specify information that needs to be managed in the 'to-be' CIM implementation
17
Business Modelling: UML vs. IDEF The IDEF Family of Languages
IDEF1 is not a database design method. It only enables the business to understand the
information it deals with. The main IDEF1 concepts are:
• entity: the information available in an organization about physical or conceptual
objects (people, ideas, etc). The entity is understood as an information image.
• relations: association between entities (i.e. information images).
• entity and relation classes: templates for the entity and relation .
3.3.2 IDEF1x
In contrast to IDEF1, IDEF1x supports data modelling, capturing a logical view of the
enterprise (business) data. IDEF1x is based on Chen's Entity Relationship model and
it is intended for logical database design. In IDEF1x, an entity refers to a collection or
set of data instances that can be distinguished from one another.
IDEF1x is most useful after the information requirements have been identified and the
decision to use a relational model has been taken. The basic elements of IDEF1x are
the entity (referring to a collection), attribute (associated with each member of the set)
and the classification structure (for modelling logical data types).
18
Business Modelling: UML vs. IDEF The IDEF Family of Languages
3.4 IDEF2.
Simulation modelling is a decision support tool that aids in solving complex problems in
many application domains. Simulation allows 'what if' scenarios to be constructed and
their possible effects on an existing or imaginary system to be analysed. The
advantages are obvious - the system need not exist, the simulation may be
accelerated in time, risks are little or nil, etc. However, the experts in a particular
domain are usually not experts in simulation and so they need to rely on simulation
modellers. In order to do that, the system experts need to effectively communicate
their knowledge of the system to the simulation modeller - usually a non-trivial matter.
IDEF2 aims to address the above-mentioned issue by enabling the simulation modeller
to communicate model assumptions and designs to the domain expert. In order to
provide for potential reuse, the simulation model is divided into four submodels:
• facility submodel: used to specify the model of the agents;
• entity flow submodel: models the transformation an entity may go through;
• resource disposition: the agent assignment logic to the transformation needs;
• system control submodel: the effect of external events on the model.
Although mainly graphical, the IDEF2 model designs do allow the direct execution of
the model they specify. IDEF2 is rather dormant at this time. However, its
specification capabilities and graphical innovations have been incorporated in
commercially available products. IDEF2 helps the simulation modellers but does not
support the 'other side', i.e. the domain experts. IDEF3 (refer Section V) is supposed
to assist the non-simulation trained decision makers to record their knowledge and be
able to have a simulation generated automatically. IDEF2 could help here by
providing information to the simulation modeller about the generated system. The
IDEF2 method will not be used for our particular task.
3.5 IDEF3.
The IDEF3 language belongs to the so-called 'next generation' IDEF languages, which
appeared as a response to new needs the enterprise modelling domain. Examples of
such needs were: capture scenarios of logical / temporal sequences of events, design
19
Business Modelling: UML vs. IDEF The IDEF Family of Languages
'XOR' branch
20
Business Modelling: UML vs. IDEF The IDEF Family of Languages
3.6 IDEF4.
The IDEF4 object oriented design method has been designed to assist in the correct
application of object-oriented technology. IDEF4 uses a graphical syntax and
diagrams and regards the object-oriented design as part of a larger system
development framework, rather than in isolation.
Being explicitly aimed at software development (object-oriented software design and
implementation), IDEF4 contains typical elements, e.g. class and method submodels,
inheritance diagrams, protocol diagrams, client diagrams, instantiation diagrams, etc.
The organization of IDEF4 is shown in Fig. 2. 6.
21
Business Modelling: UML vs. IDEF The IDEF Family of Languages
3.7 IDEF5.
An ontology is a domain vocabulary complete with a set of precise definitions (axioms)
that define the meaning of the terms within the vocabulary.
An ontology example is the UML meta-metamodel which must explicitly state the
elements used in the language: arrows, half-arrows, boxes, filled dots, etc. These
elements are accompanied by axioms that state the meaning of symbols. Examples:
'the filled dot is a state qualifier', 'the diamond is an association qualifier', etc.
IDEF5 provides a method to create, modify and maintain ontologies, via two main
languages: schematic language (graphical) and elaboration language (textual).
A detailed description of IDEF5 is beyond the purpose of this paper.
The other members of the IDEF family deal with a wide range of business and software
modelling, but have not been pursued in depth at this time. They are shown in Fig. 2. 8.
22
Business Modelling: UML vs. IDEF The IDEF Family of Languages
23
Business Modelling: UML vs. IDEF A Simple Business Example
This Chapter will attempt to model part of a business process using both UML and
IDEF. The problems and shortcomings encountered in the modelling will be
documented. The tools used in the modelling will be:
• some UML diagrams and the Eriksson-Penker business modelling extensions;
• only IDEF family members beneficial to this modelling exercise.
The UML modelling part will also make heavy use of the design patterns presented in
Ref 6 applicable to this particular case.
4.1 Description.
'VITE' is a virtual enterprise, aimed at selling (for example) fruit and vegetables. The
exact object of the virtual enterprise is not very important, as the vast majority of
elements are there for any virtual enterprise.
The Virtual Enterprise (VE) in discussion has been largely described in Ref.12 . For the
purpose of this exercise, we are only interested in the wholesaler VE component.
The main role of the wholesaler in the VE (refer Fig. 3. 1) is to liaise between the
producers and the retailers - i.e. to provide storage, logistics, packaging and - if
needed - processing (see the Food Plant component in Fig. 3. 1). Therefore the
wholesaler's concept of production and product are the processing (e.g. canning the
product), packaging and logistics / storage. The wholesaler may also provide part of
the transport (delivery).
The whole concept of the VE is based on efficient communication and the separation of
information and material flows. Therefore, the wholesaler, like the other participants,
24
Business Modelling: UML vs. IDEF A Simple Business Example
has to upgrade his interfaces in order to offer integration with the producer's and the
retailer's purchase / selling processes.
Whatever the business modelling method, the vision and goals of the business should
be the same: become the leading wholesaler in a specific business domain - a major
goal being to increase its market share.
The goal model is mainly used for validation since it is stating the business goals.
25
Business Modelling: UML vs. IDEF A Simple Business Example
The main elements of the conceptual model have been emphasized in Fig. 3. 3. The
business plan (delivered by a business development process) contains:
• product strategy - deals with the farm products, product packaging / storage, it is
derived from market analysis and results in definitions of product / product sets;
• marketing plan - based on market analysis may influence the business plan;
26
Business Modelling: UML vs. IDEF A Simple Business Example
The main processes (some of which have been identified in the concept stage) are
shown in Fig. 3. 4. The meaning of these processes is as follows:
• The marketing plan delivered by the market development process controls the
business development;
• In its turn, the business development process produces the business plan which
then controls the management process, the product and production
development and the subcontractor development. The business plan contains
the Internet and product strategies, the marketing plan and the business ideas.
27
Business Modelling: UML vs. IDEF A Simple Business Example
28
Business Modelling: UML vs. IDEF A Simple Business Example
Part of the resource modelling must also cover the order and item models, since they
are some of the most important resources for the business. A simple order statechart
is shown in Fig. 3. 6. An order may be placed, paid / not paid, (permanently)
cancelled, (temporarily) suspended, or accomplished.
29
Business Modelling: UML vs. IDEF A Simple Business Example
30
Business Modelling: UML vs. IDEF A Simple Business Example
31
Business Modelling: UML vs. IDEF A Simple Business Example
32
Business Modelling: UML vs. IDEF A Simple Business Example
33
Business Modelling: UML vs. IDEF A Simple Business Example
system, while the Extranet and the Internet systems' access must be restricted to
specific domains for security reasons.
The models constructed so far using the UML business extensions should be sufficient
for the purpose of comparing the modelling methods.
We will now move towards using the IDEF family of languages to model the same
business and record the results for some final conclusions.
34
Business Modelling: UML vs. IDEF A Simple Business Example
4.3.1 IDEF0.
IDEF0 allows the function modelling of a business. Therefore, we will attempt to model
the business processes from Fig. 3. 4, i.e. the Market Development, Business
Development, Management Process, Product, Production and Subcontractor
Development and Delivery processes. We will start with the Level 0 diagram and then
detail it further until a sufficient degree of granularity is achieved.
The primary diagram in IDEF0 is the 'A-0' diagram, that only shows one 'function box'.
This is represented in Fig. 3. 12 as the Buy / Sell Fruit & Vegies Business. The inputs
are the farm and other (e.g. processing ingredients, etc) products and the output is the
sold and delivered product. The Controls are the business goals and the current laws
and regulations. The Resources are provided by the Wholesaler and the other VE
participants.
The next level down from the A-0 diagram is the A0 diagram, which provides a higher
degree of process granularity (refer Fig. 3. 13) . The main business processes are
identified here, together with their ICOMs (Input (left), Outputs (right), Controls(above)
and Mechanisms (below)). The diagram is largely self-explanatory. The marketing plan
is part of the business plan, however it controls it. The business development process is
providing feedback to the marketing. The management process is controlled by the
35
Business Modelling: UML vs. IDEF A Simple Business Example
business plan, and the Produce/ Procure/ Deliver Process is controlled by the 'Key
Ratio', which sets the orders accomplishment pace.
36
Business Modelling: UML vs. IDEF A Simple Business Example
Starting from the A 0 diagram, any function (box on the diagram) may be selected for
further detailing. Process #4 (Procure / Produce / Deliver) has been chosen because
is promises to be the most dynamic and interesting - it is the equivalent of the real-
time level in a decision diagram (e.g. GRAI-Grid), as opposed to the strategic / tactical
level which are happening at a slower pace. The diagram is shown in Fig. 3. 14.
37
Business Modelling: UML vs. IDEF A Simple Business Example
38
Business Modelling: UML vs. IDEF A Simple Business Example
The node numbering concept used in IDEF0 diagrams aims to ensure that diagrams at
any level of abstraction may be understood in isolation and their 'parents' may be
easily found if necessary. For example, node 4 from the IDEF0 A 4 Diagram (refer
Fig. 3. 14) is further detailed in the IDEF0 A 4.4 Diagram shown in Fig. 3. 15.
Node 4.4 means: it is activity number 4 of another activity number 4, shown on the main
A0 diagram. Hence the 'parent' can readily be found by reading the '4.4' symbol alone.
39
Business Modelling: UML vs. IDEF A Simple Business Example
40
Business Modelling: UML vs. IDEF A Simple Business Example
4.3.2.1 IDEF1.
Product_ID
Order_ID
P_Name Loc_Address
Order_Type P_Exp_Date
Order_Date LxDxH Effective_Date
Order_Status P_Type Abs_Location
Order / 4
Product / 5 Location / 6
Trans_ID Trans_ID
Invoice_No CCard_No
Invoice_Name CCard_Name
Invoice / 10 CCard_Exp_Date
CCard / 11
41
Business Modelling: UML vs. IDEF A Simple Business Example
4.3.2.2 IDEF1x.
The modelling process in IDEF1x comprises several phases, some of the most
important being entity identification, key definition, relationships definition and
attributes definition.
Fig. 3. 18 shows a possible resource model of the Wholesaler business, partially
equivalent to the UML representation previously shown in Fig. 3. 5. As can be seen
from the figure, this model shows an entity relationship implementation oriented
model, with primary and foreign keys, relation multiplicity, etc. The relational schema
is gradually refined until all the necessary and sufficient entities and relations are
uniquely represented.
Product_ID produces
places
Order an
results in a delivered Order_ID (FK) Location
Order_ID P_Name
P_Exp_Date Loc_Address
P
paid with LxDxH has an
Order_Type Product_ID (FK)
Order_Date P_Type
supplies Effective_Date
Order_Status 1 Abs_Location
C_ABN (FK) P_Type
Order_Type
Fresh Processed
P
Transaction Product_ID (FK) Product_ID (FK)
Web Tel / Fax
Order_ID (FK) S_ABN (FK) Dept_ID (FK)
Order_ID (FK) Order_ID (FK) Trans_ID Picked_Date Proc_Date
Trans_Type
Credit_Card Invoice
CCard_No. Invoice_No
CCard_Name Invoice_Name
CCard_Exp_Date
42
Business Modelling: UML vs. IDEF A Simple Business Example
The Process Flow Description can be used in this case to capture the process of
acquiring stock by the Wholesaler's Purchasing Department (previously modelled in a
UML sequence diagram in Fig. 3. 8). Decomposition and elaboration components are
also included in the diagram (for Unit Of Behaviour (UOB) #1). The main elements
appearing in the diagram shown in Fig. 3. 18 are the UOBs and the asynchronous
AND and XOR junctions (for details refer Chapter 2, Section V).
Order from
exist supp.
2
Request
Stock X X B
1
Request Evaluate Send Order from
for bids bids Counterbid new supp.
3 4 5 6
Ask for
sold prod
(Sales)
1.1.13
Ask for
market
(Marketing)
Prepare 1.1.14 Order
Purchase
Request & & Stock
Ask for
stock figs
(Production)
1.1.16
Send back
to supplier
Receive Evaluate 9
B delivery delivery
X
7 8
Accept
Pay
delivery
10 11
43
Business Modelling: UML vs. IDEF A Simple Business Example
(Order Stock) proceed. Further on, a choice must be made to either purchase from an
existing supplier or request bids from other suppliers, evaluate them and select a new
supplier. The two alternatives lead to the same result: UOB #7. When the product is
received, the delivery is evaluated (UOB #8) and if either sent back if not satisfactory,
or accepted (UOB #10) and paid for (UOB #11).
The Accomplished and Cancelled states are final, i.e. they signal the end of the
transitions, as opposed to the e.g. Suspended or Active states .
UOB / UOB /
UOB /
Accept Order to
Pay Order
payment Supp / Prod
1/2 2/2 3/2
Order
Suspended Order
UOB / Cancelled
Suspend UOB /
(by request, Cancel
cannot pay) Order
1/1
1/5
44
Business Modelling: UML vs. IDEF A Simple Business Example
primary / foreign key, key attribute, and parent/child relationship do not map directly to
object-oriented design (e.g. objects do not usually need primary or foreign keys, etc).
The IDEF4 static component allows to model the architecture of the Wholesaler
business. The complete set of static model diagrams include:
• Inheritance diagrams: used to model subclass / superclass relations;
• Relation Diagrams: used to model relations between objects;
• Link Diagrams: implementation of relations using referential attributes;
• Instance Link Diagrams: object relationships (at the user model level).
In order to be able to compare the IDEF4 model to the previous methods, we will only
focus on the relation diagram and attempt to model the same business resources we
have modelled in the IDEF1x diagram shown in Fig. 3. 17.
As previously mentioned, an IDEF1x diagram can be translated to an IDEF4 relation
diagram, with the restrictions and observations made in the preceding section. For
example, the diagram shown in Fig. 3. 17 can be represented in a similar way in
IDEF4, using the IDEF4 notation for relational diagrams (refer Fig. 3. 20). The
concepts used to construct the diagram have been previously explained.
45
Business Modelling: UML vs. IDEF A Simple Business Example
P_Type
Credit_Card Invoice
Order_ID Order_ID
Trans_ID Trans_ID
CCard_No. Invoice_No
CCard_Name Invoice_Name
CCard_Exp_Date
The IDEF4 behaviour model aims to assist in classifying the object methods by
behaviour specification rather than by code. There is little benefit to be gained in
developing behaviour diagrams for our specific business model, at the abstraction
level we have proposed (i.e. analysis and design rather than implementation).
The IDEF4 dynamic component is very similar to the IDEF3 Object State Transition
approach. IDEF4 however uses the concept of events and event-based transitions. A
state is defined in Fig. 3. 21 as an abstraction of the attribute values of the Order
object. Fig. 3. 21 shows an IDEF4 state Diagram for the possible states of an order
placed by the customer (similar to the IDEF3 OSTD shown in Fig. 3. 19), based on a
scenario involving product availability (i.e. ignoring other causes for an order being
suspended).
The main concept is that objects communicate by passing messages. For each
transition, there is an event and an associated message may be sent to an object. The
46
Business Modelling: UML vs. IDEF A Simple Business Example
object reacts and changes its state. The arrows on the event / message relations in
the diagram show the direction of the communication (if more detail on communication
is needed, client-server diagrams may also be used).
(E3:NO M3:
products) suspend
(E6:
Order 3: Cancelled deactivate) Order 1: Active Order 1: Suspended
If an Order object exists, then it may be in one of the Active, Suspended, Cancelled or
Accomplished states. An update event (e.g. E2) may send a message to the object to
e.g. check products. If there are no products, the event E3 occurs and the message
M3 is sent to the object. As a result, the object enters the Suspended status. Another
example: if event E8 occurs (order has been paid), then the message M8 (accomplish)
is sent to the object, which results in the object entering the Accomplished state, and so
on. In the Message broadcasting approach, the messages are broadcasted to all
objects but only the objects that have registered for certain events respond.
As a loose analogy to message broadcasting consider the following: in a classroom a
teacher calls up a name. All students hear the message, but only one student that
matches the name reacts. The others filter out the message. In the software domain it
is usually the operating system - e.g. via a specialised daemon - that takes care of
activating the registered processes.
IDEF4 is a complex language with many features and concepts, aiming to complement
and go beyond the IDEF0 to IDEF3 languages. This paper has only made limited use
of the IDEF4 language, in order to present its possibilities versus the other IDEF
family members and the Unified Modelling Language.
4.4 A Comparison.
As a general conclusion, both the UML and IDEF approaches may be used to model
almost any useful view of a business.
The IDEF language family has around 30 years of development and a few US
governmental bodies behind it (e.g. Department of Defence, the US Air Force, etc).
The newer additions, like IDEF4, 5 and up, address new or changed requirements.
UML is a 'young' modelling language compared to the IDEF, aimed mostly towards
software development. It has been born not through competition, but via 'mergers' (i.e.
the competitors have merged and 'won' ).The right timing and software design tool
producers' support have determined its great appeal to the industry.
47
Business Modelling: UML vs. IDEF A Simple Business Example
As one can see from the examples presented, UML can only be effectively used when
complemented by:
• design patterns - which allow design knowledge propagation and reuse;
• specific extensions that allow to effectively capture the business processes.
It is rather odd that a language that includes nine different types of diagrams still needs
extensions and lacks a knowledge base. The large number of diagram types (of which
two are explicitly targeted at software development / deployment) originates from the
way UML was created (methods unification) and does not seem to help a great deal
once we get away from the software design realm.
On the positive side, UML is easy to learn and may introduce the interested users to
advanced modelling concepts such as the meta-model. Users do not need to use all
the diagrams and are free to implement their model any way they want.
IDEF0 models separate functions from organizations, but do not support the
specification of a process, nor capture time-ordered constraints between activities. Also,
a balance must be achieved between the level of abstraction represented by the boxes
and the level expressed by the ICOMs' (arrows) . Also, as can be seen from the
diagrams presented in Fig. 3. 12 through to Fig. 3. 15, IDEF0 does not represent the
conditions necessary to enter or exit a process. That is why IDEF0 is best used in
combination with other IDEF methods (e.g. IDEF3).
IDEF1 cannot be directly used in the implementation phase. However, as we have
previously shown in Fig. 3. 16, it can be extremely useful in modelling the information
within the business, free of implementation constraints.
IDEF1x is a good tool for the basis of database design, but does not follow the rules of
good graphical design - its symbols do not cleanly map to the concepts they are
supposed to model. For example, the solid dot can mean anything, depending on the
context, and the same particular situation may be represented by more than one set
of symbols (refer Fig. 3. 17 for an IDEF1x example). Furthermore, correcting one
error in an IDEF1x diagram relationship usually triggers cascading changes.
Overly complex and cluttered IDEF3 diagrams may result from combining too many
viewpoints and scenarios into a single diagram. IDEF3 is a description capture
method and it is designed to be tolerant of partial and inconsistent descriptions. Very
often those inconsistencies are the root of an organization's problems and they should
be appropriately addressed in the IDEF3 representation and not polished or hidden.
The IDEF languages have been developed to answer three main requirements in
enterprise (business) modelling:
• capture what is known about the real world and the relationships between
people, events, etc;
• capture existing and future information management requirements;
• supporting methods for design of systems answering the needs previously
identified.
IDEF3 Process Description Capture and IDEF5 Ontology Description methods address
the first of these needs. The IDEF0 Function Modelling and the IDEF1 Information
Modelling answer the second need (information management requirements). Finally,
the IDEF1X Data Modelling, IDEF2 System Dynamics Modelling and IDEF4 Object-
oriented Design were aimed at satisfying the third need.
48
Business Modelling: UML vs. IDEF Conclusions
5 Conclusions.
There is no such thing as a final solution or a universal tool. The challenge is not to find
the ultimate tool, but the right tool for the job. The same applies to business modelling.
Business modelling has appeared as a response to the need to formalise the business
processes, in order to allow conservation and reuse of the business knowledge. It is
vital that an enterprise is resilient to the possible loss of core competencies (e.g. staff
going to retirement, etc). This however can only be achieved if the business
knowledge is formally gathered and organised within a well-defined framework.
In today's competitive world, a business that doesn't continuously strive to improve its
efficiency ('better products at lower costs' is just the tip of the iceberg) cannot expect
to last very long.
Therefore, another important aspect in the life of a business is change. Long term
forecasts are increasingly hard to make in an ever faster changing environment. As a
result, an enterprise (a business) must not only quickly adapt to change but also
continuously evolve. In these conditions, change becomes more of a permanent
internal process rather than an external factor the enterprise has to adapt to.
49
Business Modelling: UML vs. IDEF References
6 References.
1. Craig Larman(1998) Applying UML and patterns, Prentice-Hall, Upper Saddle River
NJ, ISBN 0-13-748880-7
2. Sinan Si Alhir, (1998) UML in a Nutshell, O'Reilly & Associates, Sebastopol, CA,
ISBN 1-56592-448-7
3. Sinan Si Alhir, The Object Oriented Paradigm, PDF document, Oct 1998
4. Sinan Si Alhir, The Unified Modelling Language - Two years after adoption of the
Standard, PDF document, Nov 1998
5. Sinan Si Alhir, Understanding the UML, 'Methods and Tools' (software engineering
newsletter), Apr 1999
6. Eriksson Hans-Erik et al, Business Modelling with UML, John Wiley & Sons, New
York, NY, ISBN 0-471-29551-5
7. Murray Cantor (1998) Object-Oriented Project Management with UML, John Wiley &
Sons, ISBN 0-471-25303-0
8. Vernadat, F. B.: Enterprise Modelling and Integration, Chapman & Hall, London
(1995) ISBN 0-412-60550-3
9. Chris Kobryn, UML 2001: A Standardisation Odyssey, Communications of the ACM,
October 1999.
10. Mary Shaw, David Garlan, Software Architecture - Perspectives on a Emerging
Discipline, Prentice Hall Upper Saddle River, NJ (1996) ISBN 0-13-182957-2
11. ISO15704 (1999) ISO/DIS 15704: Industrial automation systems - Requirements for
enterprise-reference architectures and methodologies. ISO/TC184/SC5/WG1
12. R.J.Mayer: IDEF Family of Languages Overview and Practical Guidelines for IDEF
use - paper on the IDEF web site: http://www.idef.com/complete_reports
13. R. Panrahan et al.: The IDEF Modelling Methodology - paper on the URL:
http://stsc.hill.af.mil/CrossTalk/1995/jun/IDEF.asp
14. O. Noran, VITE: The Fruit and Vegetable Virtual Enterprise, Enterprise Integration
Assignment paper, Griffith University, November 1999, available on
http://www.cit.gu.edu.au/~noran/cit_6118
15. Chris Marshall, Enterprise Modelling with UML - Designing Successful Software
through Business Analysis, Addison-Wesley Reading, Massachusetts (2000)
ISBN 0-201-43313-3
50