Capability-Oriented Enterprise Modeling For Mastering Data-Driven Business Contexts

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 42

Capability-oriented Enterprise Modeling for

Mastering Data-driven Business Contexts

Prof. Jelena Zdravkovic


Department of Computer & Systems Sciences (DSV)
Agenda
Challenge

Capability and other Key Concepts

Capability Driven Development- CDD

Requirements for Capabilities

Design and Run-Time

Empirical Case

Conclusions and Future Work


Challenge
• Changing business contexts
• Inability/high cost to model
applications for different
execution contexts
• Gap between EM and MDD: the
MDD paradigm mostly relies on
the models defined on a
relatively low abstraction level.
In contrast, EM captures
organizational knowledge and
provides the necessary
motivation and input for
designing IS.
Capability and
other Key Concepts
Key Concepts: Capability

• Capability refers to the resources and expertise that an


enterprise needs to offer its functions.

• The notion of business capability has been gaining a growing


attention because it can be used for solving complex IS
solutions that are congruent with the requirements of business.

• The notion has been over time captured by efforts related


Business Modeling, Enterprise Modeling and Enterprise
Architecture, but neither in details modeled, nor formally linked
to software components.
Key Concepts: Context

• The notion of context refers to situational cognition; as such, it


is used to describe the conditions of a situation.
• “any information that can be used to characterize the situation
of an entity”, such as:
Where, who, what...
Location, identity, activity, time…
Modalities of agent’s state in AOP…

• Existing context categorizations mainly set the focus to an


entity, or more specifically, to a user/individual. In the CDD
approach there is a need to model the context surrounding the
delivery of a business.
Key Concepts: Capability & Context

• Capability is the ability of a company to deliver value, either to


customers or shareholders, right beneath the business strategy,
by using resources and expertise.
• Context refers to situational cognition; as such, it is used to
describe the conditions surrounding the business of the company.
The goal to accomplish, e.g.
Does this airport has the capability not to close due to snow
to deliver the usual customer
service at the Christmas time?

The ability to run the


airport, e.g skills,
experience
Capability
The context in which the airport
services must not shut down
(weather, passenger intensity,
other events, etc.)
The capacity such as money
or equipment to refuel
aircraft, remove snow
Key Concepts: Enterprise Modeling

EM deals with holistic organization-wide solutions supported by


IS. It starts with the representation of goals, and processes
realizing the goals using required resources. These are essential
components of business planning, and they are common to many
EM approaches.

Does this airport has the capability Goals & KPI


to deliver the usual customer organisational, technical
service at the Christmas time?

Does this airport has the capability


to deliver the usual customer
service at snowy period?

Does this airport has the capability Context Resources


events, Capability
to deliver the usual customer
conditions
service when VIP is lending?

Services & Processes


Capability Driven
Development (CDD)
CDD – Methodology

Evaluation of Capability
capability specification Capturing context
patterns using patterns and predicting
Capability
delivery
adjustment
Development of
capability delivery
applications Capability
requirements Monitoring KPIs

Enterprise modeling Application deployment

Capability and pattern updating


Capability Meta-Model (CMM), at a Glance
Capability Meta-Model, 3 aspects

Context
Enterprise
Modeling

Reuse and
Variability
…or, Service, or some other concept
being in the modeling focus
CMM – Enterprise Modeling
• Goal is a desired state of affairs
that needs to be attained. Goals
can be refined into sub-goals
forming a goal model.
• Key Performance Indicators (KPI)
are measurable values that are
targets for achievement of Goals.
• Process is a series of actions that
are performed in order to achieve a
particular result. A Process
supports Goal(s) and is perceived
to consume Resources.
• Resources can be tangible, such as
goods, money and people or
intangible - such as knowledge and
goodwill.
CMM - Context
• Context Set describes the set
of Context Elements that are
relevant for design and
delivery of a Capability.
• Context Element is any
information that is relevant to
capability design, delivery and
pattern application.
• Context Element Range is
used to specify the boundaries
of permitted Values for a
specific Context Element

• Measurable Property is any information about the


organization’s environment that can be measured
• Context Indicator measures the context values at run
time; it aggregates Measured Properties.
CMM – Context, Example
Context Element Context Element Measurable Property
Range
Travel conditions Normal, Hazardous U.S. State Department Alerts and Warnings

Regulatory Compliant, Non- Accommodation costs limit


requirements compliant Accommodation cost
Calendar No conflict, Mild Scheduled regular hours
conflict, Significant Scheduled assigned hours
conflict, Critical Scheduled critical hours
Conflict
Weather Normal, Exceptional Temperature

Traffic Low, Medium, High Number of traffic accidents weighted by


severity
CMM – Reuse and Variability
• Process variant is a part of the Process, which uses a same input
and delivers a same outcome as the process in a different way. It
describes the variability in the business process and capability
delivery depending upon a Context Situation.
• Context Situation captures the actual context during the system
run time. It is not modelled in the design phase.
• Patterns are reusable solutions for reaching business Goals under
specific Context Situations. The Context Set defined for a
Capability scopes the applicability of a Pattern.
Pattern Name of the field Purpose of the field

Name Each pattern should have a name that reflects the


problem/solution that it addresses. Names of patterns
are also used for indexing purposes.
Problem Describes the issues that the pattern wishes to
address within the given context and forces.
Context Describes the preconditions under which the problem
and the proposed solution seem to occur. This can
initially be expressed in free text and later represented
by creating a Context Set that encompasses the
permitted Context Element Ranges of Context
Elements that influence the applicability and variability
of the solution proposed by the Pattern.
Solution Describes how to solve the problem and to achieve
the desired result. The solution field consists of a
textual solution description and a Solution Body in the
form of a model fragment. Currently we focus of
Process Variants expressed using the BPMN. The
Process Variants may also contain Variation Points.
Other model types are also possible to use in order to
represent the solution.
Usage guidelines Presents a set of usage tips to the potential user of
the pattern about how the pattern can be tailored to fit
into particular situations or to meet specific needs of
an organization. As well as how the Solution Body
should be integrated with an existing capability design.
Keywords Defined to facilitate search and retrieval.
Pattern
Requirements
Engineering
for CDD
RE for Capability Driven Development

Evaluation of Capability
capability specification Capturing context
patterns using patterns and predicting
Capability
delivery
adjustment
Development of
capability delivery
applications Capability
requirements Monitoring KPIs

Enterprise modeling Application deployment

Capability and pattern updating

Zdravkovic, J., Stirna, J., Kuhr, J.-C., Koç, H.: Requirements Engineering for Capability Driven
Development. In: Frank, U., Loucopoulos, P., Pastor, Ó., and Petrounias, I. (eds.) The Practice of
Enterprise Modeling. pp. 193–207. Springer, Berlin, Heidelberg (2014)
Requirements for Capability

The main objectives of the RE process (elicitation, documentation,


analysis/negotiation, validation) for capability specification are

Objective Means

Support specification of concept-wide Apply the principles and the activities


requirements inherited from EM, and of varying of the RE process to systematically
business situations; facilitate specification of collect and manage the
patterns of capability delivery that are meant to requirements.
be sufficiently general and reusable in long-term.

Integrate EM and MDD to overcome Use a model-oriented approach and


inconsistencies between the final software an integrated tool platform for
application and the requirements for capability. documenting the requirements as
well as for application development.

Facilitate rapid application development and Apply incremental and iterative RE,
efficient support for requirements change. as well as agile* practices.
Capability Elicitation

Identification of relevant stakeholders:

Stakeholder Responsibility

Business analyst Identify new, or change/improve existing enterprise sub-


models, i.e. goals, processes, resources, and KPIs.

Context analyst Identify the context-sub model.

Requirements engineer Has the knowledge of CDD

Customer Has benefits of delivered capabilities.

Capability User Is directly involved in the interactions of a delivered capability


Capability Elicitation

Capability elicitation, starting perspective:


– Goal-first: business strategy
– Service-first: customer needs
– Context-first: business conditions
Goal-first Elicitation
• A goal-pathway is elicited from a top goal/vision and completed
to leaf goals.
• KPIs are defined for the goals, and mandatory for the leaf goals.
• For each leaf goal, zero or more capabilities are identified. If for
a goal it is concluded that there is no a feasible capability, then
it is left for a future consideration.
• Each identified capability is further iteratively elicited by:
• Identifying and modeling the context affecting the identified
capability(ies).
• Analyzing existing processes to identify variation points by
relating it to the context elements and re-design them
accordingly.
• Specifying capability(ies) using existing or new pattern(s).

25
Service-first Elicitation
• The starting point are customer needs identified as top business
services.
• Iteratively, a new capability is identified supporting a business
service including a number of underlying business processes.
After an elicitation iteration as is completed, a next one is
initiated with a focus to another customer need/service until all
possible services are exhausted. Customer is the key
stakeholder role in this approach.
• Processes of the service are analyzed to identify variation points
and process variants.
• Goals and KPIs are analyzed and updated to align with identified
capability(ies).
• The context affecting the identified capability(ies) is
modelled and related to the variation points of the processes.
• Capability(ies) are specified using existing or new pattern(s).
26
Context-first Elicitation
• Context-first elicitation is chosen when the coverage of a wide
range of business contexts of an organization is the most
important.
• Initially observed contexts are analyzed and refined to as many
as possible context sets. A context set is identified and mapped
to a new capability.
• The goals of the capability are elicited, where at least one goal
must be elicited with a corresponding KPI.
• The process models enacting the capability are identified and re-
designed, variation points are set to match the identified
context sets, iteratively.
• The process is iteratively continued until all possible business
contexts are exhausted. Context Analyst is the key stakeholder
role in this strategy.
• Capability(ies) are specified using existing or new pattern(s).
27
Analysis of Elicitation Approaches
Aspect of Perspective
comparison Goal-first Service-first Context-first
Capability fulfils key Capability Capability
Primary view on organisational goals operationalises encompass the
capabilities and KPIs business services management of
business contexts
Preconditions with Strategy, top-level Pre-existing Pre-defined
respect to models organisational goals business process management
defined. specifications, structures, product
service-oriented structures or other
culture. conceptual models.
Effect/Impact Provides a base for Provides a base Provides a base for
capability monitoring for having context-aware
by the use of KPIs. capabilities as the variability
Reinforces strategic enabler for variety management.
vision and clarifies of customer needs.
the IT-business
alignment.
Design and Run-time,
Implementation
Evaluation of Capability
capability specification Capturing context
patterns using patterns and predicting
Capability
delivery
adjustment
Development of
capability delivery
applications Capability
requirements Monitoring KPIs

Enterprise modeling Application deployment

Capability and pattern updating


Design - in CDT
• Model-oriented, with natural language for annotations
• Open to different modeling languages
• Intra- and inter-model links can be defined for traceability
Design – Full Meta-Model
• ”Core design” elements
(white)
• Variability elements
(yellow)
• Run-time adjustment
elements (orange)
Architecture View
Capability Design Tool (CDT): a graphical modelling tool for EM and capability design.
Capability Context Platform (CCP): a framework of sub-models for distributing context
information from various kinds of sources, e.g. social networks, application data, etc.
Capability Navigation Application (CNA): retrieves the models of CDT and according to them
configures the Enterprise IS used for capability delivery. By monitoring the context it also
calculates the run-time capability adjustments.
Capability Delivery Application (CDA): a business application that delivers capabilities.

MP value push Capability Navigation


Application

Model and
Capability implementations
Context Capability
Pattern
Adjustment
information
Platform Repository

Capability
MP Capability
Delivery
Design Tool Application

MP value push External data Internal data MP value push


providers providers
Monitoring and Adjustment at Run-time
Case
Road Maintenance Company (RMC)

• To illustrate the principles of Open Data use in capability


management we have developed a demo case for a regional Road
Maintenance Company (RMC) company operating in Latvia.

• The main capability of RMC is that of providing proactive road


maintenance.

• The capability is delivered in winter season and it primarily


consists of deicing services such as snow plowing as well as
removal of ice and frost (business context)
Case – RMC, Capability Elicitation
Case – RMC, Need for Data

 Road conditions as well as the actual weather data and forecasts


are seen as the context elements relevant to the adjustments of
the proactive road maintenance capability.

 Open Data providers:


• Latvian State Roads (LSR) – a Latvian government
agency which owns weather stations that have
been installed along the major Latvian roads,

• Estonian Road Administration (ERA) – an Estonian


government agency that owns weather stations in
Estonia,

• Twitter – a social network containing user feedback


that is relevant for the use case.
Case – RMC, Open Data Sources
LSR predicted weather data:

ERA predicted weather data:


Case – RMC, Ecosystem of Capabilities
Case – RMC, Architecture View

Capability Design Tool


Capability design Capability deployment

Raw structured data


Twitter Context Platform CDA
Raw Data Raw of
data Data integration
Broker structured data
RMC
ERA Deployment
Raw Data
data Measurable Manage
retrieval
LSR property values
Adjustments
fleet

CNA
Run-time Monitoring KPIs Altering constants
KPIs

Kampars, J., Zdravkovic, J., Stirna, J., and Grabis, J., Extending organizational capabilities with Open Data to support
sustainable and dynamic business ecosystems. International Journal of Software and Systems Modeling, 1-28.(2019)
Conclusion
Conclusion
We have proposed to support the design of business capabilities
by using enterprise modeling techniques as a starting point, and
to employ model-based patterns to describe how the software
application can adhere to changes in the execution context.
--------------------
• The proposal has a business orientation – goals, KPIs.
• It is the intention to give a model-driven contribution to a gap
between business requirements and technical solutions.
• Capabilities could be combined within or between enterprises
creating a capability map forming also a capability-based
business eco-system.
• Capabilities can be created and applied for different business
domains where conditions are changing, and (big) data is used
to capture information of different contexts.

You might also like