中对ArchiMate进行了详细的介绍,想学习的一些同事不太喜欢看英文资料,而年后项目组要开始做业务架构了,所以在春节前{zh1}{yt}把对业务层的介绍写完。以下我将会分别对不同层的概念进行介绍,英文好的可以直接通过去看。
下图为业务层的元模型,左边绿色为对象,中间黄色为行为,右边为主体。它们分别属于不同的概念(结构概念、行为概念和信息概念)之下,下面会对这些概念分别进行详细介绍。
协作只是用在一个特定的交互关联的角色上,不像多个角色组成的部门一样,业务协作没有一个{yj}的状态,我们可以把业务协作看成是一个“虚拟角色”,它由多个业务角色组成,执行一个或多个业务交互(business interaction)。
业务对象是领域中重要的信息或者概念元素,业务对象不能触发和执行流程。业务流程、功能、业务交互、业务事件和业务服务可以访问(生成、读取、写)业务对象。业务对象有关联、聚合、实现等关系。业务对象可以通过一个展现(representation )或一个应用层的数据对象(data object)来实现。
服务是功能,但功能不一定是服务,业务服务对外部角色暴露出有具体目的功能,业务角色通过通过一个或多个业务接口来访问这些外部功能。业务服务可以被业务流程、业务功能、业务交互使用,可以访问业务对象,而业务流程、业务功能或业务交互也可以实现业务服务。
契约不仅仅是指在法律观念下的合约,还包含很多产品相关的非正式的约定,它可能包含Service Level Agreement (SLA)等。契约可以与业务对象或产品关联。
Based on service orientation, a crucial design decision for the behavioral part of our metamodel is the distinction
between “external” and “internal” behavior of an organization.
The externally visible behavior is modeled by the concept business service.
A business service represents a
coherent piece of functionality that offers added value to the
environment, independent of the way this functionality is realized
internally. A distinction can be made between “external” business
services, offered to external customers, and
“internal” business services, offering supporting functionality to
processes or functions within the organization.
Several types of internal behavior elements that can realize a service are distinguished. Although the distinction
between the two is not always sharp, it is often useful to distinguish a process view and a function view on
behavior; two concepts associated with these views, business process and business function, are defined. Both
concepts can be used to group more detailed business processes/functions, but based on different grouping criteria. A business
process represents a workflow or value stream consisting of smaller processes/functions, with one or more clear starting points
and leading to some result. It is sometimes described as “customer to customer”, where this customer may also be an
internal customer, in the case of sub-processes within an organization. The goal of such a business process is to “satisfy or
delight the customer” [14]. A business function offers functionality that may be useful for one or more business
processes. It groups behavior based on, for example, required skills, capabilities, resources, (application) support, etc. Other
methods sometimes call this a business capability. Typically, the business processes of an organization are defined based on
the products and services that the organization offers, while the business functions are the basis for, for example,
the assignment of resources to tasks and the application support.
A business interaction is a unit of behavior
similar to a business process or function, but which is
performed in a collaboration of two or more roles within the
organization. Unlike the interaction concept in Amber [13], which is
an atomic unit of collaborative behavior, our business
interaction can be decomposed into smaller interactions. Although
interactions are external behavior from the perspective of the roles
participating in the collaboration, the behavior is internal
to the collaboration as a whole. Similar to processes or functions, the
result of a business interaction can be made available to
the environment through a business service.
A business event is something that happens
(externally) and may influence business processes, functions, or
interactions. The “business event” concept is similar to the “trigger”
concept in Amber [13] and the
“initial state” and “final state” concepts as used in, for example, UML
activity diagrams. However,
our business event is more generally applicable in the sense that it
can also be used to model other types of events, in addition
to triggers.
Business
Process
A business process describes the internal behavior performed by a business role that is required to produce a
set of products and services. For a consumer the products and services are relevant and the required behavior is merely a black
box, hence the designation “internal”.
In comparison to a business interaction, in which more
than two business roles are (interactively) involved, only
one business role is involved with a business process. However, a
(complex) business process may consist of sub-processes assigned
to different business roles.
There is a potential many-to-many relation between business processes and business functions. Informally speaking,
processes describe some kind of “flow” of activities, whereas functions group activities according to required skills,
knowledge, resources, etc.
A business process may be triggered by, or trigger, any
other business behavior element (e.g., business event,
business process, business function, or business interaction). A
business process may access business objects. A business process
may realize one or more business services and may use (internal)
business services or application services. A business role or an
application component may be assigned to a business process to perform
this process manually or automated, respectively. The name
of a business process should preferably be a verb in the simple present
tense; e.g., “handle claim”.
Figure 12: Business Process Notation
Example
The model below illustrates the use of business processes and its
relation with other concepts. The Take out insurance
process is composed of three sub-processes. For clarity, the sub-processes are drawn in the overall process (structuring). Each
sub-process triggers the next sub-process. The event Request for
Insurance triggers the first sub-process. A particular role, in this case an insurance seller, is assigned to perform
the required work. The process itself realizes an Insurance
selling service. The Receive request
sub-process uses the business object Customer info. Also,
during the take out process, the Process request
sub-process makes use of an application service Transaction
entry.
Example 6: Business Process
Business
Function
A business function describes internal behavior
performed by a business role that is required to produce a set
of products and services. For a consumer, the products and services are
relevant and the required behavior is merely a black box,
hence the designation “internal”.
There is a potential many-to-many relation between
business processes and business functions. Informally speaking,
processes describe some kind of “flow” of activities, whereas functions
group activities according to required skills,
knowledge, resources etc. Complex processes in general involve
activities that offer various functions. In this sense a business
process forms a string of business functions. In general, a business
function delivers added value from a business point of view.
Organizational units or applications may coincide with business
functions due to their specific grouping of business
activities.
A business function may be triggered by, or trigger, any other business behavior element (business event, business
process, business function, or business interaction). A business function may access business objects. A business function may
realize one or more business services and may use (internal) business services or application services. A business role or an
application component may be assigned to a business function. The name of a business function should preferably be a verb ending
with “-ing”; e.g., “claims processing”.
Figure 13: Business Function Notation
Example
The
model below illustrates the use of business functions, as well as
the relation between business functions and business processes. The
three business functions group a number of business
sub-processes. The business process, initiated by a business event,
involves sub-processes from different business functions. The
Insurer role is assigned to each of the business functions. Moreover,
business functions may access business objects; in this case,
the Customer contact function uses or manipulates the
Customer info object. Also, the Financial settlement function makes use of a Billing application service and realizes a Collecting premium business service.
Example 7: Business Function
Business
Interaction
A business interaction is similar to a business process/function, but while a process/function may be
performed by a single role, an interaction is performed by multiple roles in collaboration.
A business interaction may be triggered by, or trigger,
any other business behavior element (business event,
business process, business function, or business interaction). A
business interaction may access business objects. A business
interaction may realize one or more business services and may use
(internal) business services or application services. A business
collaboration or an application collaboration may be assigned to a
business interaction. The name of a business interaction should
preferably be a verb in the simple present tense.
Figure 14: Business Interaction Notation
Example
In the model below, a business interaction is triggered by a request.
The business interaction Take out combined insurance is
performed as collaboration between the travel and luggage insurance seller. The business interaction needs the Policy info business object, and realizes the (external) business
service Combined insurance selling. As part of the
business interaction, the Prepare travel policy and
Prepare luggage policy are triggered. The Travel insurance seller and Luggage insurance seller perform these processes separately.
Example 8: Business Interaction
Business
Event
Business processes and other business behavior may be
triggered or interrupted by a business event. Also, business
processes may raise events that trigger other business processes,
functions, or interactions. A business event is most
commonly used to model something that triggers behavior, but other
types of events are also conceivable; e.g., an event that
interrupts a process. Unlike business processes, functions, and
interactions, a business event is instantaneous: it does not have
duration. Events may originate from the environment of the organization
(e.g., from a customer), but also internal events may occur
generated by, for example, other processes within the organization.
A business event may trigger or be triggered (raised) by a business process, business function, or business
interaction. A business event may access a business object and may be composed of other business events. The name of a business
event should preferably be a verb in the perfect tense; e.g., “claim received”.
Figure 15: Business Event Notation
Example
In the model below, the Request insurance event triggers the Take out insurance process. A business object containing the Customer info accompanies the request. In order to persuade the
customer to purchase more insurance products, a triggering event is raised in the Receive request process. This triggers the Send product portfolio to customer process.
Example 9: Business Event
Business
Service
A business service is
defined as the externally visible (“logical”)
functionality, which is meaningful to the environment and is realized
by business behavior (business process, business function, or
business interaction).
A business service exposes the functionality of business roles or collaborations to their environment. This
functionality is accessed through one or more business interfaces. A business service is realized by one or more business
processes, business functions, or business interactions that are performed by the business roles or business collaborations,
respectively. It may access business objects.
A business service should provide a unit of
functionality that is meaningful from the point of view of the
environment. It has a purpose, which states this utility. The
environment includes the (behavior of) users from outside as well as
inside the organization.
A business service is associated with a value. A
business service may be used by a business process, business
function, or business interaction. A business process, business
function, or business interaction may realize a business service. A
business interface or application interface may be assigned to a
business service. A business service may access business objects.
The name of a business service should preferably be a verb ending with
“?ing”; e.g., “transaction
processing”. Also, a name explicitly containing the word “service” may
be used.
Figure 16: Business Service Notation
Example
In the model below, external and internal business services are
distinguished. The Basic administration function acts as
a shared service center. The take out business processes corresponding with the travel and luggage insurance use the (internal)
business services that are provided by the Basic
administration function. Both business processes realize an (external) business service. The insurance selling
service is accessible via a business interface (e.g., web form) that is used by the insurer. Each business service should be of
value to its environment, which may or may not be explicitly modeled. The value of the Travel insurance selling service to an external customer is that the customer is insured.
Example 10: Business Service
In contrast to the structural and behavioral concepts,
which are mainly concerned with the operational perspective
on an enterprise, the informational concepts focus on what we could
call the “intentional” perspective. They provide a
way to link the operational side of an organization to the business
goals, and to the products that an organization offers to its
customers. We also classify the product concept itself, together with
the related contract concept, as informational concepts.
Information is fundamentally related to communication. Information always serves a particular purpose, which is
tightly connected to some communicational goal. As communication always involves a static part (the “message”) and a
dynamic part (the communication action itself), the communicational goals may have a link to both our “meaning” concept
and our “value” concept. Also, in speech act-based approaches to business modeling, such as DEMO [10], the
communicational aspect plays a central role in the context of business transactions.
A representation is the perceptible form of the information carried by a business object, such as a
document. As such, it can be seen as the realization of the associated business object. If relevant, representations can be
classified in various ways; for example, in terms of medium (e.g., electronic, paper, audio) or format (e.g., HTML, PDF, plain
text, bar chart).
A meaning is the contribution of the
representation of a business object to the knowledge or expertise of
some actor, given a particular context. In other words, meaning
represents the informative value of a business object for a user of
such an object. It is through a certain interpretation of a
representation of the object that meaning is being offered to a certain
user or to a certain category of users. A meaning can very well be a
reformulation or transformation of parts of the object
representation in such a way that the role of the meaning is
immediately clear within the user's world, but essentially lies in
interpretation by individuals, in context.
For the complete description of a meaning, the following two elements are needed, in addition to the
representations (and, indirectly, business objects) with which the meaning is associated:
Some sort of meaning
description: A meaning description is not equal to the representation causing the meaning: it is a specialized description that
aims to clarify or stipulate a meaning. Natural language may be used for this, but also formal languages or diagrams. Typical
examples of meaning descriptions are definitions, ontologies, paraphrases, subject descriptions, and tables of content. Meaning
descriptions may draw from or refer to additional meaning description sources; for example, dictionaries. Importantly, meaning
descriptions do not necessarily have to describe meaning in detail. The level of detail depends on the types of analysis
required. It is quite possible that a very rough meaning description is good enough
to capture at architecture level the
sort of interpretations a business object conveys. Detailed meaning
description can only in a limited number of cases be made very
precise; in most cases, interpretation depends on the general language
and knowledge of specific actors, which normally remains
largely implicit.
A description of the
context(s) in which the meaning is conveyed: A context description covers the situation in which the interpretation takes
place. The most important elements of such a context are the actors sending and receiving the business object, the time
and place of communication and the environment in which this happens. Often, a context can be briefly described in terms
of some business domain.
We see a (financial or information) product as of a collection of services, together with a contract that
specifies the characteristics, rights, and requirements associated with the product. This “package” is offered as a
whole to (internal or external) customers.
We define a contract as a formal or informal specification of agreement that specifies the rights and
obligations associated with a product. The value of a product or service is that which makes some party appreciate it,
possibly in relation to providing it, but more typically to acquiring it.
Representation
Representations (for example, messages or documents)
are the perceptible carriers of information that are related
to business objects. If relevant, representations can be classified in
various ways; for example, in terms of medium (electronic,
paper, audio, etc.) or format (HTML, ASCII, PFD, RTF, etc.). A single
business object can have a number of different
representations, but a representation always belongs to one specific
business object.
A representation may realize one or more business objects. A meaning can be associated with a representation
that carries this meaning. The name of a representation is preferably a noun.
Figure 17: Representation Notation
Example
Example 11: Representation
Meaning
A meaning is the representation-related counterpart of a value: it represents the functionality of a
representation (for example, a document, message; the representations related to a business object). It is a description that
expresses the intent of a representation; i.e., how it informs the external user.
It is possible that different users view the
informative functionality of a representation differently. For
example, what may be a “registration confirmation” for a client could
be a “client mutation” for a CRM
department (assuming for the sake of argument that it is modeled as an
external user). Also, various different representations may
carry essentially the same meaning. For example, various different
documents (a web document, a filled-in paper form, a
“client contact” report from the call center) may essentially carry the
same meaning.
A meaning can be associated with a representation that carries this meaning. The name of a meaning should
preferably be a noun or noun phrase.
Figure 18: Meaning Notation
Example
The model below shows an Insurance policy document that is the representation of an Insurance policy, which is a business object. The meaning related to
this document is the Insurance policy notification, which
consists of a Policy explanation, an Insurance registration, and a Coverage description.
Example 12: Meaning
Value
Value may apply to what a party gets by selling or making available some product or service, or it may apply to
what a party gets by buying or obtaining access to it. Value is often expressed in terms of money, but it has long since been
recognized that non-monetary value is also essential to business; for example, practical/functional value (including the
right to use a service), and the value of information or knowledge. Though value can hold internally for some system or
organizational unit, it is most typically applied to external appreciation of goods, services, information, knowledge, or
money, normally as part of some sort of customer-provider relationship.
A value can be associated with business services and,
indirectly, with the products they are part of, and the roles
or actors that use them. Although the name of a value can be expressed
in many different ways (including amounts, objects), where
the “functional” value of a service is concerned it is recommended to
try and express it as an action or state that can
be performed or reached as a result of the corresponding service being
available.
Figure 19: Value Notation
Example
Example 13: Value
Product
A (financial or information) product consists of a collection of services, and a contract that specifies the
characteristics, rights, and requirements associated with the product. “Buying” a product gives the customer the
right to use the associated services. Generally, the product concept is used to specify a product type.
The number of
product types in an organization is typically relatively stable
compared to, for example, the processes that realize or support the
products. “Buying” is usually one of the services associated with a
product, which results in a new instance of that
product (belonging to a specific customer). Similarly, there may be
services to modify or destroy a product.
A product may aggregate business services or application services,
as well as a contract. A value may be
associated with a product. The name of a product is usually the name
which is used in the communication with customers, or possibly
a more generic noun (e.g., “travel insurance”).
Figure 20: Product Notation
Example
In the model below, a bank offers the product Telebanking account to its customers. Opening an account as well as
application support (i.e., helpdesk and the like), are modeled as business services realized by the Customer relations department. As part of the product, the customer
can make use of a banking service which offers application services realized by the Telebanking application, such as electronic Money transfer and requesting Account
status.
Example 14: Product
Contract
The contract concept may be used to model a contract in the legal sense, but also a more informal agreement
associated with a product. It may also be or include a Service Level Agreement (SLA), describing an agreement about the
functionality and quality of the services that are part of a product. A contract is a specialization of a business object.
The relationships that apply to a business object also apply to a contract. In addition, a contract may have an
aggregation relationship with a product. The name of a contract is preferably a noun.
Figure 21: Contract Notation
Example
Example 15: Contract