29
1 Schahram Dustdar Distributed Systems Group, Institute of Information Systems Vienna University of Technology, Vienna, Austria http://www.infosys.tuwien.ac.at Towards Compliance-driven Models, Languages, and Architectures for Service-oriented computing FMCO 2008, 21 October 2008, Sophia Antipolis, France

Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

1

Schahram DustdarDistributed Systems Group, Institute of Information Systems

Vienna University of Technology, Vienna, Austria

http://www.infosys.tuwien.ac.at

Towards Compliance-driven Models, Languages, and Architectures for

Service-oriented computing

FMCO 2008, 21 October 2008, Sophia Antipolis, France

Page 2: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

IntroductionProblems in Compliance Proposed approach based on architectural viewsConclusion and Future Work

Outline

2

Page 3: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

3

Page 4: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

4

Targeted Field: SOC and SOA

Service-oriented computing (SOC)emerging computing paradigm utilizes services as the basic constructs to support the rapid and easy composition of distributed applications

Service-Oriented Architecture (SOA)Architectural style in the field of Service-Oriented ComputingThe service composition layer is typically on the top of a SOAThis layer often provides a process engine (or workflow engine) which invokes the SOA services to realize individual activities in the processThe main goal of such process-driven SOAs is to increase the productivity, efficiency, and flexibility of an organization via process management

Page 5: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

COMPAS - Overview

COMPAS addresses a major shortcoming in today’s approach to design SOAs:

Throughout the architecture various compliance concerns must be considered

Examples: Service composition policies, Service deployment policies, Information sharing/exchange policies, Security policies, QoS policies, Business policies, Jurisdictional policies, Preference rules Intellectual property and licenses

So far, the SOA approach does not provide any clear technological strategy or concept of how to realize, enforce, or validate them

5

Page 6: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

6

Compliance Concerns: Examples

Service composition policies e.g., use of data for a certain case only

Service deployment policiese.g., geographic restrictions for service instances

Information sharing/exchange policies e.g., request/response use specific message type

Security policiesQoS policiesBusiness policiesJurisdictional policiesPreference rulesIntellectual property and licenses

Page 7: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

7

Compliance Concerns Categories

Technical compliance concerns that must be validated at design timee.g., compliance to composition policies

Technical compliance concerns that must be validated at runtimee.g., compliance to QoS policies

Domain-oriented compliance concerns that must be validated at design time and runtime

This category is the most complex one, as it is build on top of the two technical categoriese.g., compliance to preference rules, to licenses, etc.

Page 8: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

Problem in Detail

A number of approaches, such as business rules or composition concepts for services, have been proposedNone of these approaches offers a unified approach with which all kinds of compliance rules can be tackled Compliance rules are often pervasive throughout the SOA They must be considered in all components of the SOAThey must be considered at different development times, including analysis time, design time, and runtime

8

Page 9: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

Current Practice for Dealing with Compliance

In many cases, business compliance today is reached on a per-case basisCompanies do not have a generic strategy for business compliance Instead they use ad hoc, hand-crafted solutions for specific rules to which they must comply

9

Page 10: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

Issues with the Current Practice

Systems are hard to maintain hard to evolve or change hard to reuse hard to understand

It is difficult to ensure guaranteed compliance to a given set of rules and regulationsIt is difficult to keep up with constant changes in regulations and laws

10

Page 11: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

Business/domain experts

Process-driven development scenarios

IT experts

11

BPMN diagram UML Activity diagram EPC diagram

Java/J2EEWSDL + BPEL

Page 12: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

Developer’s nightmare – numerous tangled process concerns12

Process-driven development scenarios

Page 13: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

Why process description (re)use is difficultThe integration of many tangled aspects hinders understandability, modularity

the control flow, service interactions, message and message types, fault handling, transactions, compliances, process engine configurations, etc.

Stakeholders have different point of views, abstraction levels, skill sets, needs, etc.

Business or domain expertsIT experts: developers, administrators

Motivation: interoperability and reusability of processes

13

Page 14: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

Manually done by ”copy and paste“Time-consuming and error-proneOnly IT developers are able to do “copy and paste“Hinders scalability and agility

Language transformation-based approaches E.g., BPMN/EPC/UML Activity diagrams to BPEL/WSDL, and vice versa.

Workflow mining Extracts (only) workflows from applications

Existing solutions so far?

14

Process (technology-specific,platform-specific) implementations

High-level (domain-specific)concepts, designs

Page 15: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

Separation of concerns principleA realization: concept of architectural views

Model-driven engineering(semi)-formalization of process fragments to enhance modularity, reusability, etc.separation of abstraction levels by tailored views to enhance adaptability, understandability

View-based reverse engineeringextracts (semi)-formalized views

Proposed solution: View-based Model-driven Engineering

15

Page 16: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

Modeling Framework

Proposed integration solution

High-level (domain-specific)concepts, designs

Process (technology-specific,platform-specific) implementations

16

Page 17: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

View-based integration architecture

17

High-levelLanguages

Low-levelLanguages

Meta-models

View-basedInterpreters

Process descriptions

High-levelViews

Low-levelViews

interprets

produces

produces

defines

refines

corresponds to

corresponds to

described in

described in

“virtual” integrationof level and high low-level representationsin various languages

“virtually” refines

View-based Modeling Framework

Page 18: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

View-based Modeling Framework (VbMF)

18

Page 19: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

19

Separation of concerns

View-based Modeling Framework (VbMF)

Page 20: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

20

Separation of technical and domain-oriented views

View-based Modeling Framework (VbMF)

Page 21: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

Horizontal extensibility of VbMF

Collaboration Viewmeta-model

Information View meta-model

Transaction Viewmeta-model

Control-flow Viewmeta-model

CORE

21

View-based Modeling Framework (VbMF)

Page 22: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

Vertical extensibility of VbMF

High-levelabstraction

Lower-levelabstraction

Information Viewmeta-model

An extension of the Information View meta-model

22

View-based Modeling Framework (VbMF)

Page 23: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

View-based Interpreters

Chain of Responsibility and Partial Interpreter Pattern -General Approach For View Extraction

23

Page 24: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

24

The overall Tool chain

DesignModeling of Views within the VbMF (EMF/GMF-Editor)

TransformationInvocation of the Code Generation (oAW-Workflow)

ValidationSemantic validation/optimization of a process

DeploymentPrepare and deploy process on a BPEL engine

ExecutionFire & Forget a long-running process

Page 25: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

How views are reused?

25

Business, domain experts

IT experts

High-level, problem-oriented

views

Low-level,technology

speficic ViewsCode generation

View-based repository

executable code, configurations

Page 26: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

26

Current Work

Collaborative Model-Driven DevelopmentLightweight Collaborative Model-Driven EnvironmentCorrelation of Process Stakeholders & MDD ArtefactsModel Repository

Distributed Process Monitorfor Debugging, Logging, Monitoring, etc.Publishers = ComponentsBroker ArchitectureDistributed Subscribers

Page 27: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

Dependency management TraceabilityChange impact analysisChange propagation

Collaborative view repository View-based, model-driven repository

Current Work

27

Page 28: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

SOA

reconciles theheterogeneous nature ofsoftware systems

Process-driven SOA provides anefficient methodfor integratingbusiness functionality

Separation of Concerns(e.g., architectural views) tomaster the complexity

Mod

el-D

riven

En

gine

erin

g

VbMFSummary of our approach

Page 29: Towards Compliance-driven Models, Languages, and … · 2008. 10. 22. · Why process description (re)use is difficult The integration of many tangled aspects hinders understandability,

29

Thanks for your attention!

Schahram DustdarDistributed Systems Group,Institute of Information Systems,Vienna University of Technology, Austria

http://www.infosys.tuwien.ac.at