Model-Driven & Service-Oriented Architectures (MDA + SOA)

Model-Driven & Service-Oriented Architectures (MDA + SOA)

Posts 21-28 of 28
  • Dr. Christoph F. Strnadl
    Dr. Christoph F. Strnadl    Premium Member   Group moderator
    The company name is only visible to registered members.
    Agenten - Re^5: Definition SOA
    Marcel Donges schrieb:
    Meines Erachtens liegt die Antwort auf diese Anforderung in der logischen Evolution von Services zu Agenten.
    (wenn mal grob die Kette so legt: strukturierte Entwicklung -> OOP -> SOA -> Agentensysteme). Aus diesem Ansatz heraus habe ich schon im Jahr 2000 eine soa-basierende Multiagentenplattform mit meinem Team entwickelt und als SOA Middleware am Markt angeboten.
     
    Ich kann mir vorstellen wie sie sich das ->SOA->Agentensysteme vorstellen. Kann mir aber auch vorstellen, dass die meisten ITler unter Agentensysteme etwas gänzlich anderes verstehen. Ich finde ihre Gedanken aber sehr gut.
     
    [SNIP, SNAP - cfs]
     
    Ein Agent ist in meinem Modell ein sich selbst managender Service, bzw. ein Composit verschiedener Services. Dieser kann im Rahmen seiner Policies autark bei Service Requests mit seinen Service Consumern seine Schnittstelle und den angebotenen QoS aushandeln und auch die Einhaltung monitoren. Er kann sich auch in gelben Seiten registrieren und seine Changes dort aktualisieren. Ebenso kann der Agent in solchen Registries auch passende Agenten finden, die u.U. Teilaufgaben für ihn übernehmen können und diese seinem Manager vorschlagen.
    Mir gefällt diese Sichtweise. Aber ist das wirklich ein typisches Agentensystem?

    Der Begriff "Agent" umfasst typischerweise 3 Eigenschaften (siehe u.a. http://www.fipa.org; die Zitate sind aber aus einem früheren Review von mir):

    (i) Autonomy: Agents can be described as a software component that performs a specific task autonomously on behalf of a person or other agent.

    (ii) Co-operation or Interoperability: Agents may communicate with other agents

    (iii) Knowledge about the world: Agents rely on some explicitely represented knowledge about relevant aspects of the world

    Wenn man sich diese drei Punkte ansieht, erkennt man natürlich, dass die SOA Prinzipien vor allem (i) und (ii) stützen. Damit fehlt "nur" noch Punkt (iii), der es natürlich in sich hat.

    Sie reden alos über was anderes. Über ServiceAgents :-) gibts so einen Begriff schon?
    Das W3C spricht vom "Service Provider Agent" und "Service Consumer Agent" und meint damit die Software Komponente (das "Programm"), das ein Service implementiert. Damit unterscheidet das W3C sehr sorgfältig die Organisation, die in der realen Welt den "Service Provider" abgibt und das echte Programm.

    MfG
    -cfs
  • Post visible to registered members
  • Post visible to registered members
  • Siegfried Nolte
    Siegfried Nolte
    The company name is only visible to registered members.
    Re^2: Agenten - Re^5: Definition SOA
    Erst einmal vielen Dank für die vielen anregenden Beiträge.

    Zum Thema SOA und Abbildung von Service orientierten Architekturen in formalen Modellen habe ich über Ostern hier und da gesucht und auch einiges aufgetrieben:
    * insbesondere auf der Seite von IBM developerworks (http://www.ibm.com/developerworks > SOA and Web services > Technical Library > Topic: SOA | Type: Article | Keyword: UML).
    * und auch die OMG ist aktiv in dem Zusammenhang (http://www.omg.org/soa > UML profile and metamodel for services).

    Gruß,
    Siegfried Nolte
    This post was modified on 25 Mar 2008 at 11:33 am.
  • Post visible to registered members
  • Dr. Christoph F. Strnadl
    Dr. Christoph F. Strnadl    Premium Member   Group moderator
    The company name is only visible to registered members.
    Hinweise (nicht abschließend) zur abstrakten Definition der SOA in UML - Re^4: Definition SOA
    Siegfried Nolte schrieb:
    Kennt jemand vielleicht eine Beschreibung und Darstellung dieses Konzeptes in einer "einheitlichen" Sprache, in einer "universellen" Darstellungsweise ? Konkret, gibt es eine UML-Spezifikation des SOA-Konzeptes ?
    Wir haben kürzlich im Rahmen eines großen Projektes eine abstrakte Implementierung unserer Enhanced Process-driven Architecture (ePDA) in Form von UML2 Component Diagrammen (strikt UML2 conformant) formalisiert. Das kann ich gerne übermitteln, glaube aber nicht, dass das ihre Anforderungen (ganz) erfüllt.

    Die "Distributed Systems Group" der TU Wien (S. Dustdar et. al) beschäftigen sich im Übrigen mit (Teilaspekten der) SOA Formalisierung. Vielleicht finden sie etwas auf http://www.infosys.tuwien.ac.at/home/home.page. Die Papers von Uwe Zdun sollten sind da sehr ergiebig (und der ist recht exakt in der Formalisierung).

    Seitenbemerkung: Im Gegensatz zur herrschenden Meinung ("BPEL alone & forever") geht die Gruppe davon aus, dass es eine hierarchische Abstufung von "Orchestration Engines" geben muss (zumindest eine Makroflow Engine und eine Mikroflow Engine).

    Vielleicht sehen sie sich auch einmal das OASIS SOA Reference Model an; das ist recht konsistent formuliert (nicht 100% UML2 conforming), aber für meine Gefühle extrem abstrakt. Da finden sie nur mehr mit Mühe den Platz, wo ein BPMS oder ein ESB oder CAF ihren Platz hätten.

    MfG
    -cfs
  • Siegfried Nolte
    Siegfried Nolte
    The company name is only visible to registered members.
    Re^4: Agenten - Re^5: Definition SOA
    Meine OMG-Referenz muss ich selbst etwas revidieren. Die ist in der Tat noch nicht besonders ergiebig.

    Es handelt sich hierbei um einen Ansatz, ein UML Profil und/oder Metamodell für die Spezifikation von Services zu entwickeln. Das wird hier und dort auch schon versucht, siehe IBM developerworks-Referenz "UML 20.0 Profile for Software Services" oder "Towards a UML Profile for Service-Oriented Architectures" von Heckel et. al., Universität Paderborn.

    Da zeigen sich meiner Meinung nach schon recht interessante Anregungen. Ansonsten weiß ich nicht, ob mit einem SOA Tool zu rechnen ist. Vielleicht habe ich das mit der Tool-Entwicklung auch nur falsch verstanden. Oder gibt es generelle Lösungen für z.B. einen Service-Broker ?

    Aber ich denke durchaus, dass mit Tool-Unterstützung das SOA Konzept umgesetzt werden kann. Aus dem Grund meine Frage nach einer möglichst formalen Spezifikation des Konzeptes.

    Meine Frage beantworten kann ich bisher am ehesten mit den Artikeln der IBM developerworks Seite "Modeling SOA: Part1"... "Part5".

    Gruß,
    Siegfried Nolte
    This post was modified on 26 Mar 2008 at 11:38 am.
  • Marcel Donges
    Marcel Donges    Premium Member
    The company name is only visible to registered members.
    Re^5: Agenten - Re^5: Definition SOA
    Hallo Herr Nolte,

    ich bin mir nicht ganz sicher wen Sie mit "SOA Tool" meinen.

    Die SOPERA hat
    eine generelle Lösungen für z.B. einen Service-Broker den SOPERA Ditributed Service Bus
    und ein eclipse basiertes graphisches SOA Tooling für Erstellung, Konfiguration, Delivery, Administration and Monitoring von Services, die sowohl funktionale (Schnittstellen) als auch nicht-funktionale Anforderungen (SLAs, QoS) erfüllen
    Alles zusammen heist das SOPERA ASF: Advanced Services Factory.

    Ein eigenes Service Metamodell das über ein ARIS UML Profil realisiert ist,
    ist selbstverständlich auch enthalten SDX/SPDX <--> WSDL

    Wir arbeiten gerade daran das Service Metdamodell als UML Profil auch für andere Tools zur Verfügung zu stellen (z.B. SPARX Enterprise Architect...)

    Und da es Open Source ist ist es kostenlos....

    MfG
    Marcel Donges

    PS: Die OMG kann es sich leisten bei SOA so dünn zu sein, da in den bisherigen Spezifikationen von CORBA bis MDA bereits alle SOA Themen addressiert sind.
    Nur bezüglich SDO, JPA (PSS) und SCA haben sie noch etwas nachholbedarf ;-)
    This post was modified on 26 Mar 2008 at 02:30 pm.