%enterprise Architecture Modeling With SoaML Using BMM and BPMN - %
%enterprise Architecture Modeling With SoaML Using BMM and BPMN - %
Abstract
The Service oriented architecture Modeling Language (SoaML) is a new specification from the Object
Management Group (OMG) that intends to bridge the gap between business and IT models. Nevertheless, the
specification is very vague on the methodology aspects and practical means for integration with OMG business
level languages – Business Motivation Model (BMM) and Business Process Modeling Notation (BPMN).
SHAPE FP7 EU project addressed these issues by means of a dedicated Model Driven Architecture (MDA)
based methodology and tool support. The results were validated with industrial case studies by Statoil and
Saarstahl.
In this paper we focus on our experience with SoaML obtained with Statoil case study, briefly describe the
developed Model Driven Architecture (MDA) based methodology for modeling enterprise architectures with
BMM, BPMN and SoaML, which we illustrate with a “Discount Voyages” example. Finally, we present Statoil
case study and outline the future research directions.
Аннотация
Язык моделирования сервисно-орентированных архитектур (SoaML) это новая спецификация от
Object Management Group (OMG), которая предназначена помочь преодолеть разрыв между бизнес и IT
моделями. Вместе с тем, эта спецификация достаточно неопределенно описывает методические
аспекты и практические средства для интеграции с языками бизнес моделирования от OMG – BMM и
BPMN. Чтобы решить эту проблему, европейский исследовательский проект SHAPE разработал
специализировные методы основанные на MDA, а так же адаптированную среду разработки.
Результаты были оценены с помощь анализа реальных примеров предоставленных компаниями Statoil и
Saarstahl.
В этой статье приводятся опытные результаты полученые в ходе моделирования корпоративных
архитектур компании Statoil, описываются разработанные методы, которые проиллюcтрированны с
помощью примера «Discount Voyages». В завершении дается краткое описание опытной задачи от
Statoil, а так же указывается направление будущих исследований.
specification seems to be ambiguous. According to SoaML participants could be reused to type the
the SoaML specification the concept of capability is pools in BPMN processes.
used both on a business-level to specify a high-level The authors were involved in development of the
abstract service and at the IT-level. This suggests SoaML Designer and SoaML Engine open source
that there are two distinct concepts that have been extension for Modelio. These extensions are
merged into a single notion. available at [4]. SoaML Engine provides
Unnecessary complex concepts: For instance, a transformations from SoaML to Web Services and
service interface should normally realize a provider JEE were implemented and integrated into the tool.
and should use a consumer, while a conjugate These tools were used to create SoaML models and
service interface has to do the opposite. At the transform them into IT systems implementations in
meantime, “use” and “realize” relationships Discount Voyages and SHAPE project industrial
undoubtedly identify what should be consumed and case studies.
what should be provided, while service and request In the next section the practical methodology is
ports clearly indicate the value-providing described.
participants. Thus there is no need for extra concepts
such as consumer and provider which may mislead 4. MDA for Enterprise Architecture
readers. modeling
Different approaches for specifying services:
SoaML supports both a contract and an interface Model Driven Architecture (MDA) [7] is
based approach to SOA. It is unclear how to use and proposed by OMG as a prominent software
combine these approaches. Furthermore, combining engineering approach, which places the model in the
them may also lead to duplicate modeling effort, in center of the development process. The model is
particular with respect to the specification of the used at all the stages from goals and requirements
behavioral parts, e.g. the service choreographies. specification down to analysis, design,
Further in this paper we propose modeling implementation, testing and modernization. During
guidelines so that the language constructs can be the development cycle the model passes several
used in a consistent manner, as this is not evident levels: Computation Independent Model (CIM) e.g.
from reading the specification alone. business models, Platform Independent Model (PIM)
e.g. analysis models and Platform Specific Model
3. Discount Voyages example and tools e.g. design models and the code. The transitions
between these levels are ensured by means of manual
In order to illustrate the methodology we first model refinements and automated model
provide a description of a simple but representative transformations, i.e. model-to-model and model-to-
example covered in our SoaML tutorial [4]. text. Dedicated UML Profiles are used to cover
The example represents a Discount Voyages necessary aspects at each level to cover specific
company that resells discounted travel packages that modeling aspects and to provide means for model
are obtained by negotiating with 3rd party travel transformations, automated verification and
agencies. The Discount Voyages communicates with simulation as well as test, documentation and code
a client, partner travel agencies and a banking generation.
service. Clients browse Discount Voyages web-site MDA switches the focus from the coding to
to find suitable travel packages and to place orders modeling. In MDA the design phase requires more
by providing credit card details. The Discount efforts, since creation of formal and “executable”
Voyages checks the travel package availability at a models is required. However coding, documentation,
relevant partner agency, checks the client solvency testing and maintenance take significantly less
and withdraws the package price using the banking efforts due to high quality of the design models and
service. Finally the client is notified and a bill is sent. possibility to automatically generate the code and the
This example was implemented with Modelio other artifacts. These results have been proved in
CASE Tool [3] by SOFTEAM. This tool provides a different case studies and the technology is
central repository for models allowing integration of successfully applied in industry [8] and [9].
model parts in different languages. In the Discount Applying MDA we distinguish Business
Voyages example we modeled Dictionaries, Goals, Architecture Model (BAM), System Architecture
Business Rules and Requirements and used BPMN, Model (SAM) and Implementation levels in SOA for
SoaML and specific UML Profiles for Web Services Enterprise systems, which correspond respectively to
and JEE. Having the whole set of models in the same CIM, PIM and PSM in MDA terminology. Figure 1
repository helped to establish traceability links and depicts the separation and parts of the SoaML and
cross-reference model elements. For example, the other languages at different levels. It also suggests
traceability links were established between goals, different roles to be involved: Business Architect at
SoaML elements and processes in BPMN. The the BAM level, System Architect at the SAM level
and System Developer at the Implementation level.
82
5. Statoil case study 2.0 and SoaML, which is to appear in future BPMN
versions. In addition, the authors intend to extend the
The SoaML technologies developed in the SoaML applicability to the service clouds domain by
SHAPE project were tested, demonstrated, and participating in PIM4Cloud/CloudML OMG
evaluated in industrial use cases. Statoil, one of the working group. These research topics will be further
use case partners in SHAPE, is an integrated developed in the REMICS (ICT-2010-257793) EU
technology-based international energy company research project started in September 2010.
primarily focused on upstream oil and gas Acknowledgments. This research was co-
operations. The Statoil use case was defined as part funded by the European Union in the frame of the
of their Production and Process Optimization (PPO) SHAPE FP7 project (ICT-2007-216408). The
project [11]. PPO is concerned with improved authors would like to express their acknowledgments
reservoir management and production optimization. to SHAPE colleagues.
The aim is to provide an integrated solution for
optimizing the reservoir performance, intelligent 7. References
wells and production processes among the numerous
offshore production sites. [1] OMG, "Service oriented architecture Modeling
Statoil has a long tradition of modeling work Language (SoaML), FTF Beta 2", December 2009.
processes. Attempts at using these process models http://www.omg.org/spec/SoaML/1.0/Beta2/PDF/
for IT development has proved difficult and there is a
[2] M. Stollberg (ed.), "SHAPE Project Whitepaper",
gap between the business modeling side and IT SHAPE STREP, 9 June 2009. http://www.shape-
development side. Thus, there is a need for improved project.eu/
business and IT modeling practices to ensure better
alignment between business requirements and IT [3] Modelio CASE Tool web-site, http://modeliosoft.com
solutions at Statoil. In the SHAPE project Statoil
investigated how to improve the business and IT [4] SoaML Tutorial and Prototypes, SOFTEAM R&D
modeling practices by applying SoaML-based web-site, http://rd.softeam.com/demos/soaml/
modeling technologies. The PPO process was used to
illustrate the modeling practices. [5] OMG, “Business Motivation Model (BMM), Version
This case study allowed to evaluate SoaML 1.1”, May 2010, http://www.omg.org/spec/BMM/1.1/
applicability and to develop the practical
methodology presented above. All the steps of the [6] OMG, “Business Process Modeling Notation (BPMN),
Version 1.2”, January 2009,
methodology were followed from BAM via SAM http://www.omg.org/spec/BPMN/1.2/
down to Implementation in Web Services and Java.
The methodology and tools proved to be viable and [7] J. Arlow, I. Neustadt, Enterprise Patterns and MDA :
helped business domain specialists and IT specialists Building Better Software with Archetype Patterns and
to align business models and IT systems UML, Pearson Education, January 2004, ISBN:
implementation. 032111230X
6. Conclusions and future research [8] M. Guttman, J. Parodi, Real-Life MDA: Solving
Business Problems with Model Driven Architecture,
directions Morgan Kaufmann, 2006, ISBN-10: 0123705924
In this paper we presented our practical [9] M. Staron, “Adopting Model Driven Software
experience with SoaML in attempt to align business Development in Industry – A Case Study at Two
models and enterprise IT systems implementation. Companies”, Proc. of MODELS 2006, Genova, Italy,
SoaML is a new specification by OMG defining October 2006, pp. 57-72
SOA concepts that are to be used to model enterprise
architectures. We outlined several inconsistencies [10] OMG, “System Modeling Language (SysML),
and lacks in the current specification and proposed Version 1.2”, June 2010,
an MDA based methodology aligning SoaML, BMM http://www.omg.org/spec/SysML/1.2/
and BPMN. The methodology was illustrated with a
[11] J. R. Sagli, H. E. Klumpen, G. Nunez, and F.
“Discount Voyages” example. Finally, we presented Nielsen, "Improved Production and Process Optimization
an industrial case study that was fulfilled in order to Through People, Technology, and Process", in Proc. of the
evaluate the SoaML and develop the above- SPE Annual Technical Conference and Exhibition,
mentioned methodology. Anaheim, California, USA, 2007, Society of Petroleum
For the future research activities, the authors are Engineers
actively involved in the alignment between BPMN