Orchestration languages are of paramount importance for building composite services in service-oriented architectures. Pattern-based analysis is a method that allows to determine the expressiveness of existing process languages and serves as a means of comparison between different languages. The aim of this study is the analysis and comparison of important languages for building Web Services-based orchestrations, as well as the improvement of the method of pattern-based analysis. The predominant orchestration language today is the Web Services Business Process Execution Language (WS-BPEL) 2.0. This language is a standard that has been implemented by several companies and projects, such as the OpenESB BPEL Service Engine. An additional language is Windows Workflow 4 that is shipped by Microsoft as part of the .NET framework. There are various aspects, represented by pattern catalogs, for which existing languages can be analyzed. This study suggests a methodology for ordering existing pattern catalogs according to their importance for a selected problem domain which is Business-to-Business Integration. It furthermore presents an extensive evaluation of the languages at hand and assesses the degree of support they provide for several of the most important pattern catalogs. These catalogs are the workflow control-flow patterns, the service interaction patterns, the change patterns and the time patterns.
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.
Ever fiercer competition has forced enterprises not only to optimize their own operations but also to cooperate with their suppliers and customers along their supply chains. Thus, competition today usually takes place between supply chains and not between individual enterprises. Business-To-Business integration (B2Bi) is a major task of supply chain management (SCM), and although it already has been researched for years, B2Bi is still an area of active research with a plethora of research questions and according approaches. Hence, management of B2Bi projects necessitates the identification of relevant requirements which is a far from trivial task. This paper identifies a core set of B2Bi challenges and deduces a comprehensive set of B2Bi requirements that are particularly useful for tackling the challenges identified. The derivation of B2Bi requirements follows an inductive approach that is based on the analysis of integration standards, reference architectures and related literature. In order to operationalize the B2Bi requirements for further analysis and concrete B2Bi projects, the requirements are classified according to the abstraction layers of a B2Bi schema. Thus, this report not only offers a requirements check list for B2Bi projects but also helps in deciding when to address which requirements during the course of a B2Bi project.
Inductive programming is concerned with the automated construction of declarative, often functional, recursive programs from incomplete specifications such as input/output examples. The inferred program must be correct with respect to the provided examples in a generalising sense: it should be neither equivalent to them, nor inconsistent. Inductive programming algorithms are guided explicitly or implicitly by a language bias (the class of programs that can be induced) and a search bias (determining which generalised program is constructed first). Induction strategies are either generate-and-test or example-driven. In generate-and-test approaches, hypotheses about candidate programs are generated independently from the given specifications. Program candidates are tested against the given specification and one or more of the best evaluated candidates are developed further. In analytical approaches, candidate programs are constructed in an example-driven way. While generate-and-test approaches can -- in principle -- construct any kind of program, analytical approaches have a more limited scope. On the other hand, efficiency of induction is much higher in analytical approaches. Inductive programming is still mainly a topic of basic research, exploring how the intellectual ability of humans to infer generalised recursive procedures from incomplete evidence can be captured in the form of synthesis methods. Intended applications are mainly in the domain of programming assistance -- either to relieve professional programmers from routine tasks or to enable non-programmers to some limited form of end-user programming. Furthermore, in the future, inductive programming techniques might be applied to further areas such as supporting the inference of lemmata in theorem proving or learning grammar rules. Inductive automated program construction has been originally addressed by researchers in artificial intelligence and machine learning. During the last years, some work on exploiting induction techniques has been started also in the functional programming community. Therefore, the third workshop on |Approaches and Applications of Inductive Programming| took place for the first time in conjunction with the ACM SIGPLAN International Conference on Functional Programming (ICFP 2009). The first and second workshop were associated with the International Conference on Machine Learning (ICML 2005) and the European Conference on Machine Learning (ECML 2007). AAIP´09 aimed to bring together researchers from the functional programming and the artificial intelligence communities, working in the field of inductive functional programming, and advance fruitful interactions between these communities with respect to programming techniques for inductive programming algorithms, the identification of challenge problems and potential applications. For everybody interested in inductive programming we recommend to visit the website: www.inductive-programming.org.