- Lehrstuhl für Praktische Informatik (24)
The CHORCH Approach: How to Model B2Bi Choreographies for Orchestration Execution
- The establishment and implementation of cross-organizational business processes is an implication of today's market pressure for efficiency gains.
In this context, Business-To-Business integration (B2Bi) focuses on the information integration aspects of business processes.
A core task of B2Bi is providing adequate models that capture the message exchanges between integration partners.
Following the terminology used in the SOA domain, such models will be called choreographies in the context of this work.
Despite the enormous economic importance of B2Bi, existing choreography languages fall short of fulfilling all relevant
requirements of B2Bi scenarios.
Dedicated B2Bi choreography standards allow for inconsistent outcomes of basic interactions and
do not provide unambiguous semantics for advanced interaction models.
In contrast to this, more formal or technical choreography languages may provide unambiguous modeling semantics,
but do not offer B2Bi domain concepts or an adequate level of abstraction.
Defining valid and complete B2Bi choreography models becomes a challenging task in the face of these shortcomings.
At the same time, invalid or underspecified choreography definitions are particularly costly considering the organizational
setting of B2Bi scenarios.
Models are not only needed to bridge the typical gap between business and IT,
but also as negotiation means among the business users of the integration partners on the one hand
and among the IT experts of the integration partners on the other.
Misunderstandings between any two negotiation partners potentially affect the agreements between all other negotiation partners.
The CHORCH approach offers tailored support for B2Bi by combining the strengths of both dedicated B2Bi standards and formal rigor.
As choreography specification format, the ebXML Business Process Specification Schema (ebBP) standard is used.
ebBP provides dedicated B2Bi domain concepts such as so-called BusinessTransactions (BTs) that abstractly specify the exchange of a request business document
and an optional response business document.
In addition, ebBP provides a format for specifying the sequence of BT executions for capturing complex interaction scenarios.
CHORCH improves the offering of ebBP in several ways.
Firstly, the execution model of BTs which allows for inconsistent outcomes among the integration partners
is redefined such that only consistent outcomes are possible.
Secondly, two binary choreography styles are defined as B2Bi implementation contract format in order to streamline implementation projects.
Both choreography styles are formalized and provided with a formal execution semantics for ensuring unambiguity.
In addition, validity criteria are defined that ensure implementability using BPEL-based orchestrations.
Thirdly, the analysis of the synchronization dependencies of complex B2Bi scenarios is supported
by means of a multi-party choreography style combined with an analysis framework.
This choreography style also is formalized and standard state machine semantics are reused in order to ensure unambiguity.
Moreover, validity criteria are defined that allow for analyzing corresponding models for typical multi-party choreography issues.
Altogether, CHORCH provides choreography styles that are B2Bi adequate, simple, unambiguous, and implementable.
The choreography styles are B2Bi adequate in providing B2Bi domain concepts, in abstracting from low-level implementation details
and in covering the majority of real-world B2Bi scenarios.
Simplicity is fostered by using state machines as underlying specification paradigm.
This allows for thinking in the states of a B2Bi scenario and for simple control flow structures.
Unambiguity is provided by formal execution semantics whereas implementability (for the binary choreography styles) is ensured by providing
mapping rules to BPEL-based implementations.
The validation of CHORCH's choreography styles is performed in a twofold way.
Firstly, the implementation of the binary choreography styles based on Web Services and BPEL technology is demonstrated
which proves implementability using relatively low-cost technologies.
Moreover, the analysis algorithms for the multi-party choreography styles are validated using a Java-based prototype.
Secondly, an abstract visualization of the choreography styles based on BPMN is provided that abstracts from
the technicalities of the ebBP standard.
This proves the amenability of CHORCH to development methods that start out with visual models.
CHORCH defines how to use BPMN choreographies for the purpose of B2Bi choreography modeling
and translates the formal rules for choreography validity into simple composition rules that
demonstrate valid ways of connecting the respective modeling constructs.
In summary, CHORCH allows integration partners to start out with a high-level visual model of their interactions in BPMN
that identifies the types and sequences of the BusinessTransactions to be used.
For multi-party choreographies, a framework for analyzing synchronization dependencies then is available.
For binary choreographies, an ebBP refinement can be derived that fills in the technical parameters that are needed for deriving the implementation.
Finally, Web Services and BPEL based implementations can be generated.
Thus, CHORCH allows for stepwise closing the semantic gap between the information perspective of business process models
and the corresponding implementations.
It is noteworthy that CHORCH uses international standards throughout all relevant layers, i.e., BPMN, ebBP, Web Services and BPEL,
which helps in bridging the heterogeneous IT landscapes of B2Bi partners.
In addition, the adoption of core CHORCH deliverables as international standards of the RosettaNet community
give testament to the practical relevance and promise dissemination throughout the B2Bi community.
QoS-Enabled B2B Integration
- Business-To-Business Integration (B2Bi) is a key mechanism for enterprises to gain competitive advantage. However, developing B2Bi applications is far from trivial. Inter alia, agreement among integration partners about the business documents and the control flow of business document exchanges as well as applying suitable communication technologies for overcoming heterogeneous IT landscapes are major challenges. At the same time, choreography languages such as ebXML BPSS (ebBP), orchestration languages such as WS-BPEL and Web Services are promising to provide the foundations for seamless interactions among business partners. Automatically translating choreography agreements of integration partners into partner-specific orchestrations is an obvious idea for ensuring conformance of orchestration models to choreography models. Moreover, the application of such model-driven development methods facilitates productivity and cost-effectiveness whereas applying a service oriented architecture (SOA) based on WS-BPEL and Web Services leverages standardization and decoupling. By now, the realization of QoS attributes has not yet received the necessary attention that makes such approaches suitable for B2Bi. In this report, we describe a proof-of-concept implementation of the translation of ebBP choreographies into WS-BPEL orchestrations that respects B2Bi-relevant QoS attributes.
Proaktives Problem Management durch Eventkorrelation - ein Best Practice Ansatz
- Im Servicegeschäft werden Eventkorrelationssysteme verwendet, um bevorstehende Systemzustände vorherzusagen und damit Anlagenausfälle zu vermeiden. Aus strategischer Sicht kann dies zu höherer Anlagenverfügbarkeit und bessere Planbarkeit beitragen. Unternehmen, die von diesem Wettbewerbsvorteil profitieren wollen, begegnen dabei häufig zwei grundlegenden Problemen: die Komplexität im Service steigt mit der Anzahl der Korrelationen. Gleichzeitig geht die Kostentransparenz für den Gesamtprozess verloren. Die vorliegende Arbeit zeigt, warum diese beiden Probleme entstehen und wie sie weitgehend vermieden werden können.
Privacy-enhancing Technologies for Private Services
- Privacy on the Internet is becoming more and more important, as an increasing part of everyday life takes place over the Internet. Internet users lose the ability to control which information they give away about themselves or are even not aware that they do so. Privacy-enhancing technologies help control private information on the Internet, for example, by anonymizing Internet communication. Up to now, work on privacy-enhancing technologies has mainly focused on privacy of users requesting public services. This thesis introduces a new privacy risk that occurs when private persons run their own services. One example are instant messaging systems which allow users to exchange presence information and text messages in real time. These systems usually do not provide protection of presence information which is stored on central servers. As an alternative, decentralized instant messaging system designs mitigate this problem by having private persons provide instant messaging services to each other. However, providing a service as a private person causes new security problems as compared to providing a service as an organization or enterprise: First, the presence of such a service reveals information about the availability of the service provider. Second, the server location needs to be concealed in order to hide the whereabouts of a person. Third, the server needs to be specifically protected from unauthorized access attempts. This thesis proposes to use pseudonymous services as a building block for private services. Pseudonymous services conceal the location of a server that provides a specific service. The contribution made here is to analyze what parts of pseudonymous services, in particular Tor hidden services, are missing in order to apply them for private services. This analysis leads to three main problems for which solutions are proposed: First, known pseudonymous service designs do not scale to the expected number of private services which might be provided in the future. This thesis proposes a new approach to store hidden service descriptors in a distributed data structure rather than on central servers. A particular focus lies on the support of private entries which are required for private services. Second, pseudonymous services leak too much information about service identity during advertisement in the network and connection establishment by clients. The approach taken in this thesis is to reduce the information that a service publishes in the network to a minimum and prevent unauthorized clients from accessing a service already during connection establishment. These changes protect service activity and usage patterns from non-authorized entities. Third, pseudonymous services exhibit worse performance than direct service access. The contribution of this thesis is to measure performance, identify possible problems, and propose improvements.
Open Chord version 1.0.4 User's Manual
- In recent years peer-to-peer networks have developed from unstructured to structured overlay networks. Structured peer-to-peer overlay networks facilitate a bounded number of messages in the number of peers for querying and publishing content opposed to unstructured networks, which usually flood the network with messages. To prevent the messages from overflooding the network they have a bounded life time, which may cause that some published content will be lost. Structured peer-to-peer networks guarantee that all published content can be found. One well known structured overlay network is the chord distributed hash table. An implementation of chord is only available in C, but not in Java, which is used widely and often in computer science education. This manual describes an open source implementation of chord in Java - called Open Chord - and how it can be used in Java-based applications. It provides a console-based experimentation environment to explore the functionality of chord, as well.
On the Application of the Service-Oriented Architectural Style to Heterogeneous Application Landscapes
- This thesis investigates the application of the service-oriented architectural style in the context of industrial enterprises. This style provides a commonly perceived paradigm for organizing distributed software systems. However, beyond general attention to this style, there are only few descriptions of the difference between service orientation and more mature styles, such as component orientation. This dissertation argues that the service-oriented style is an approach that centralizes control over distributed functionality that is provided by the application systems of an organization. This means that service orientation is a paradigm for application integration. Moreover, we argue that it is not possible to fully formalize the inherent principles of service orientation as part of an architectural style description. In fact, soft design principles are a differentiator of this style. These principles, however, are rarely applied in the context of industrial enterprises. This is why we analyze how such design principles could be objectively described and what attention should be paid to them. This analysis is performed by categorizing the potential benefits of this style and assigning the respective underlying principles to the identified benefits. Subsequently, a reference architecture is defined on the basis of these findings. This architecture focuses on structuring service-oriented applications - so-called composite applications. In order to apply the defined reference architecture in the context of actual projects, we describe a design methodology for composite applications. This design methodology focuses on using business processes for designing various types of services and on describing their interconnections by the reference architecture. To achieve this, a service design algorithm is included that derives services from business processes by incorporating the results of a statistical analysis of service design principles. The result of this methodology is a platform-independent design of a composite application. It considers the restrictions of the application landscape in which a composite will be deployed. To permit the realization of composite applications, we informally map the platform-independent reference architecture to a platform that is widely used in industrial enterprises. This mapping is, together with the design methodology and the reference architecture, applied to an industry-scale use case. This way, the applicability of the concepts is demonstrated.
Modelling and Validating Business Collaborations: A Case Study on RosettaNet
- The way business processes are organised heavily influences the flexibility and the expenses of enterprises. The capability to address changing market needs in a timely manner and to provide appropriate pricing is indispensable in a world of internationalisation and growing competition. Optimising processes that cross enterprise boundaries potentially is a key success factor in achieving this goal but it requires the information systems of the participating enterprises to be consistently integrated. This gives rise to some challenging tasks. The personnel involved in building up business collaborations comes from different enterprises with different business vocabulary and background which requires extensive communication support. The lack of central technical infrastructure, typically prohibited by business politics, often calls for a distributed and computer-aided collaboration structure, so that the resulting complexity must be handled somehow. Nevertheless robustness is an important factor in building business collaborations as these may exchange goods of considerable value. This technical report proposes the use of a two step modelling approach that separates business logic, modelled in the so-called centralised perspective (CP), from its distributed implementation, modelled in the so-called distributed perspective (DP). The separation of these perspectives enables business people to concentrate on business issues and to solve communication problems in the CP whereas technical staff can concentrate on distribution issues. The use of stringent modelling rules is advised in order to provide the basis for formal analysis techniques as one means to achieve robustness. Considering the choreography of RosettaNet Partner Interface Processes (PIPs) as the subject of my analysis, UML activity diagrams for modelling the CP and WSBPEL for modelling the DP are described as enabling techniques for implementing the proposed two step modelling approach. Further, model checking is applied to validate the CP and DP models in order to detect errors in early design phases. As the adequacy of model checking tools highly depends on the detailed modelling techniques as well as the properties to be checked, a major part of our discussion covers relevant properties and requirements for a model checker.
Improving the Tor Hidden Service Protocol Aiming at Better Performances
- Offering services anonymously on the Internet using so-called location-hidden services requires complex protocols with many different nodes involved. These properties result in performance problems, e.g. a simple website request taking tens of seconds. This work describes a setup to measure the performance of hidden services using the worldwide Tor network. It analyzes the results and proposes changes to the protocol to improve the performance without losing anonymity.
Extended Abstracts of the Second Privacy Enhancing Technologies Convention (PET-CON 2008.1)
- PET-CON, the Privacy Enhancing Technologies Convention, is a forum for researchers, students, developers, and other interested people to discuss novel research, current developments and techniques in the area of Privacy Enhancing Technologies. PET-CON was first conceived in June 2007 at the 7th International PET Symposium in Ottawa, Canada. The idea was to set up a bi-annual convention in or nearby Germany to be able to meet more often than only once a year at some major conference.
Detecting Interoperability and Correctness Issues in BPMN 2.0 Process Models
- Although BPMN 2.0 is an international standard widely used in practice, interoperability of process models is still an issue. Even between tools and engines claiming to be BPMN compliant the model exchange is often complicated or impossible as the tools produce incorrect model representations or do not support the standardized BPMN serialization format. In this position paper we present reasons for interoperability issues and show why defining a set of constraints derived from the standard is crucial to fix an important subset of those issues. We are currently developing a tool which can check this set of rules automatically.