35 research outputs found

    Weaving aspects into web service orchestrations

    Get PDF
    Web Service orchestration engines need to be more open to enable the addition of new behaviours into service-based applications. In this paper, we illus- trate how, in a BPEL engine with aspect-weaving ca- pabilities, a process-driven application based on the Google Web Service can be dynamically adapted with new behaviours and hot-fixed to meet unforeseen post- deployment requirements. Business processes (the ap- plication skeletons) can be enriched with additional fea- tures such as debugging, execution monitoring, or an application-specific GUI. Dynamic aspects are also used on the processes themselves to tackle the problem of hot-fixes to long running processes. In this manner, composing a Web Service ’on-the-fly’ means weaving its choreography in- terface into the business process

    Adapting the Single-Request/Multiple-Response Message Exchange Pattern to Web Services

    Get PDF
    Single-Request/Multiple-Response (SRMR) is an important messaging exchange pattern because it can be used to model many real world problems elegantly. However, SRMR messaging is not directly supported by Web services, and, since it requires Callback to function it is hampered by current in-practice security schemes, such as firewalls and proxy servers. In this thesis, a framework will be proposed to support SRMR and Callback in the context of Web services and the realities of network security. The central component of the proposed solution is a Clearinghouse Web service (CWS), which serves as a communication proxy and realizes the correlation of responses with requests. One and only one CWS will be needed per enterprise that wishes to handle any number of SRMR Web services and their respective clients. Using the framework and related code generation utilities, a non-trivial case study, a Purchase Order System, has been implemented

    Mathematical Services Composition

    Get PDF
    AbstractThis paper describes the definition and the use of a plan language in the context of mathematical web services. A plan is a document intended to describe how to use different mathematical web services to solve a particular problem. A plan is like a program in which most of the function calls have to be handled by web services. A plan is a multiple-state choreography document which could be either abstract, unresolved or resolved, depending on how much of the web services involved in the choreography is known. Such a plan can be instantiated into a composition language such as BPEL or to a mathematical routine (like a Maple routine) for execution

    Adapting the Single-Request/Multiple-Response Message Exchange Pattern to Web Services

    Get PDF
    Single-Request/Multiple-Response (SRMR) is an important messaging exchange pattern because it can be used to model many real world problems elegantly. However, SRMR messaging is not directly supported by Web services, and, since it requires Callback to function it is hampered by current in-practice security schemes, such as firewalls and proxy servers. In this thesis, a framework will be proposed to support SRMR and Callback in the context of Web services and the realities of network security. The central component of the proposed solution is a Clearinghouse Web service (CWS), which serves as a communication proxy and realizes the correlation of responses with requests. One and only one CWS will be needed per enterprise that wishes to handle any number of SRMR Web services and their respective clients. Using the framework and related code generation utilities, a non-trivial case study, a Purchase Order System, has been implemented

    Aspect-Oriented Programming for Dynamic Web Service Monitoring and Selection

    Full text link
    Abstract. In Service-Oriented Application Development, applications are composed by selecting and integrating third-party web services. To avoid hardwiring concrete services in client applications we introduced in previous work the Web Services Management Layer (WSML) and suggested a redirection mechanism based on Aspect Oriented Programming (AOP). Even though this mechanism enables hot swapping between semantically equivalent services based on their availability, this is not enough to create applications that are driven by business requirements. In this paper we introduce a more advanced selection mechanism that allows dynamic switching between services based on business driven requirements that can change over time. Choosing a service may be done based on cost, presence on approved partners list, as well as binding support, quality of service classifications, historical performance and proximity. We introduce a modular monitoring mechanism that is able to observe these criteria and trigger a more advanced service selection procedure. We show how the AOP language JAsCo with its dynamically pluggable aspects is well suited to achieve this. 1

    Bestimmung der Dienstgütezuverlässigkeit in zusammengesetzten Dienstleistungen im Internet der Dienste

    Get PDF
    Das Anbieten, die Vermittlung und der Konsum von Softwarekomponenten nach dem Paradigma „Software-as-a-Service“ über das Internet wird zunehmend populärer. Diese so genannten elektronischen Dienstleistungen unterschiedlicher Komplexität werden auf Netzwerkservern zur Verfügung gestellt und können von anderen Anwendungen eingebunden werden. Damit können Ressourcen für die Entwicklung und das Betreiben eigener Dienste eingespart werden. Traditionelle Beispiele solcher Dienste sind Währungsumrechnungen oder Wettervorhersagen , aber auch komplexere Geschäftsprozesse, wie z.B. Rechnungsprüfdienste , werden vermehrt als elektronische Dienste bereitgestellt. Voraussetzung für die Akzeptanz der elektronischen Dienstleistungen ist die Absicherung deren Dienstgüte (engl. Quality of Service). Die Dienstgüte gibt Auskunft darüber, wie gut ein Dienst seine Funktion erbringt. Klassische Parameter sind Antwortzeit oder Verfügbarkeit. Die Betrachtung der Dienstgüte hat für den Dienstnutzer als auch für den Dienstanbieter Vorteile: Durch die Angabe der Dienstgüte kann sich der Dienstanbieter von seiner Konkurrenz abgrenzen, während der zukünftige Dienstnutzer in der Lage ist, die Performanz seiner Systeme, welche den Dienst integrieren, abzuschätzen. Beide Parteien streben eine möglichst hohe Dienstgüte an. Die Bestimmung der Dienstgüte in zusammengesetzten Dienstleistungen wurde in den letzten Jahren viel diskutiert. In diesem Zusammenhang ist besonders die Dienstgütezuverlässigkeit eines Dienstes wichtig. Die Dienstgütezuverlässigkeit gibt an, wie sicher es einem Dienst gelingt, seine Qualitätsversprechen einzuhalten. Je nach Kontext spricht man von relativer oder absoluter Dienstgütezuverlässigkeit. Die relative Dienstgütezuverlässigkeit bezieht sich auf die Fähigkeit eines Dienstes seine Dienstgütegarantien während der nächsten Interaktion einzuhalten, während sich die absolute Dienstgütezuverlässigkeit auf den Zeitraum der nächsten n Interaktionen bezieht. Verletzt ein Dienst eine Dienstgütegarantie, weil er beispielsweise nicht in der vorgegebenen Zeit antwortet, so gefährdet der Dienstnutzer die Performanz seiner Systeme, während der Dienstanbieter mit Strafzahlungen zu rechnen hat. Die Bestimmung der Dienstgütezuverlässigkeit einer zusammengesetzten Dienstleistung hat verschiedene Vorteile. Sie gestattet dem Dienstanbieter z.B. drohende Qualitätsverschlechterungen vorherzusagen und auf diese geeignet zu reagieren. Auch der Dienstnutzer profitiert von der Existenz der Dienstgütezuverlässigkeit. Er kann z.B. das Risiko für seine Systeme besser kalkulieren. Ziel dieser Arbeit ist die Bestimmung der Dienstgütezuverlässigkeit in zusammengesetzten Dienstleistungen. Zu diesem Zweck wird die Dienstgütezuverlässigkeit von Teildiensten auf Basis ihrer Monitoring-Historie vorhergesagt. Die Monitoring-Historie protokolliert für jeden Dienst und jede Dienstgütegarantie, ob in vergangenen Interaktionen Dienstgüteverletzungen stattgefundenen haben. Die Dienstgütezuverlässigkeit eines Teildienstes wird als Verletzungswahrscheinlichkeit gemessen, die angibt, wie wahrscheinlich eine Dienstgüteverletzung durch den Teildienst ist. Für die Vorhersage der relativen Verletzungswahrscheinlichkeit kommt eine Markov-Kette erster Ordnung zum Einsatz. Die Bestimmung der absoluten Verletzungswahrscheinlichkeit beruht auf den Prinzipien der allgemeinen Stochastik. Die Berechnungszeit beträgt in beiden Fällen wenige Millisekunden. Beide Verfahren liefern äußerst zuverlässige Vorhersagewerte. Auf Basis der Verletzungswahrscheinlichkeiten der Teildienste wird die Dienstgütezuverlässigkeit der zusammengesetzten Dienstleistung bestimmt. Sie kann detailliert in Form der Verletzungsmatrix oder als einfacher numerischer Wert in Form der Verletzungszahl angegeben werden. Die Verletzungsmatrix einer Dienstgütegarantie enthält die Eintrittswahrscheinlichkeit für jede mögliche Anzahl von Dienstgüteverletzungen. Ihre Aufstellung erfordert exponentiellen Aufwand. Demgegenüber besitzt die Verletzungszahl eine lineare Berechnungszeit. Sie gibt die Belastung einer Dienstleistung mit Dienstgüteverletzungen an. Die Dienstgütezuverlässig ist dabei umso geringer je kleiner die Werte der Verletzungsmatrix und Verletzungszahl sind

    Veröffentlichungen und Vorträge 2004 der Mitglieder der Fakultät für Informatik

    Get PDF

    Bestimmung der Dienstgütezuverlässigkeit in zusammengesetzten Dienstleistungen im Internet der Dienste

    Get PDF
    Das Anbieten, die Vermittlung und der Konsum von Softwarekomponenten nach dem Paradigma „Software-as-a-Service“ über das Internet wird zunehmend populärer. Diese so genannten elektronischen Dienstleistungen unterschiedlicher Komplexität werden auf Netzwerkservern zur Verfügung gestellt und können von anderen Anwendungen eingebunden werden. Damit können Ressourcen für die Entwicklung und das Betreiben eigener Dienste eingespart werden. Traditionelle Beispiele solcher Dienste sind Währungsumrechnungen oder Wettervorhersagen , aber auch komplexere Geschäftsprozesse, wie z.B. Rechnungsprüfdienste , werden vermehrt als elektronische Dienste bereitgestellt. Voraussetzung für die Akzeptanz der elektronischen Dienstleistungen ist die Absicherung deren Dienstgüte (engl. Quality of Service). Die Dienstgüte gibt Auskunft darüber, wie gut ein Dienst seine Funktion erbringt. Klassische Parameter sind Antwortzeit oder Verfügbarkeit. Die Betrachtung der Dienstgüte hat für den Dienstnutzer als auch für den Dienstanbieter Vorteile: Durch die Angabe der Dienstgüte kann sich der Dienstanbieter von seiner Konkurrenz abgrenzen, während der zukünftige Dienstnutzer in der Lage ist, die Performanz seiner Systeme, welche den Dienst integrieren, abzuschätzen. Beide Parteien streben eine möglichst hohe Dienstgüte an. Die Bestimmung der Dienstgüte in zusammengesetzten Dienstleistungen wurde in den letzten Jahren viel diskutiert. In diesem Zusammenhang ist besonders die Dienstgütezuverlässigkeit eines Dienstes wichtig. Die Dienstgütezuverlässigkeit gibt an, wie sicher es einem Dienst gelingt, seine Qualitätsversprechen einzuhalten. Je nach Kontext spricht man von relativer oder absoluter Dienstgütezuverlässigkeit. Die relative Dienstgütezuverlässigkeit bezieht sich auf die Fähigkeit eines Dienstes seine Dienstgütegarantien während der nächsten Interaktion einzuhalten, während sich die absolute Dienstgütezuverlässigkeit auf den Zeitraum der nächsten n Interaktionen bezieht. Verletzt ein Dienst eine Dienstgütegarantie, weil er beispielsweise nicht in der vorgegebenen Zeit antwortet, so gefährdet der Dienstnutzer die Performanz seiner Systeme, während der Dienstanbieter mit Strafzahlungen zu rechnen hat. Die Bestimmung der Dienstgütezuverlässigkeit einer zusammengesetzten Dienstleistung hat verschiedene Vorteile. Sie gestattet dem Dienstanbieter z.B. drohende Qualitätsverschlechterungen vorherzusagen und auf diese geeignet zu reagieren. Auch der Dienstnutzer profitiert von der Existenz der Dienstgütezuverlässigkeit. Er kann z.B. das Risiko für seine Systeme besser kalkulieren. Ziel dieser Arbeit ist die Bestimmung der Dienstgütezuverlässigkeit in zusammengesetzten Dienstleistungen. Zu diesem Zweck wird die Dienstgütezuverlässigkeit von Teildiensten auf Basis ihrer Monitoring-Historie vorhergesagt. Die Monitoring-Historie protokolliert für jeden Dienst und jede Dienstgütegarantie, ob in vergangenen Interaktionen Dienstgüteverletzungen stattgefundenen haben. Die Dienstgütezuverlässigkeit eines Teildienstes wird als Verletzungswahrscheinlichkeit gemessen, die angibt, wie wahrscheinlich eine Dienstgüteverletzung durch den Teildienst ist. Für die Vorhersage der relativen Verletzungswahrscheinlichkeit kommt eine Markov-Kette erster Ordnung zum Einsatz. Die Bestimmung der absoluten Verletzungswahrscheinlichkeit beruht auf den Prinzipien der allgemeinen Stochastik. Die Berechnungszeit beträgt in beiden Fällen wenige Millisekunden. Beide Verfahren liefern äußerst zuverlässige Vorhersagewerte. Auf Basis der Verletzungswahrscheinlichkeiten der Teildienste wird die Dienstgütezuverlässigkeit der zusammengesetzten Dienstleistung bestimmt. Sie kann detailliert in Form der Verletzungsmatrix oder als einfacher numerischer Wert in Form der Verletzungszahl angegeben werden. Die Verletzungsmatrix einer Dienstgütegarantie enthält die Eintrittswahrscheinlichkeit für jede mögliche Anzahl von Dienstgüteverletzungen. Ihre Aufstellung erfordert exponentiellen Aufwand. Demgegenüber besitzt die Verletzungszahl eine lineare Berechnungszeit. Sie gibt die Belastung einer Dienstleistung mit Dienstgüteverletzungen an. Die Dienstgütezuverlässig ist dabei umso geringer je kleiner die Werte der Verletzungsmatrix und Verletzungszahl sind
    corecore