Professional Documents
Culture Documents
Modelovanje Poslovnih Procesa: Servisno Orijentisana Arhitektura
Modelovanje Poslovnih Procesa: Servisno Orijentisana Arhitektura
Mainframe
Client Server
Web
SOA
WS 2000
SOA
2010
Office Workflow
EAI
BPM B2B EDI WS Mainframe
Client / Server Web/Portal
J2EE .NET Business Integration
Elementi BPM-a
Inicira Aktivnost menja Dogadjaj
Stanje
Entitet pokree Akter Servis Predstavljen kao
Sadraj
generie
Zasnovan na dogaajima
BPML, BPEL Pi-Calculus (takoe Event Calculus)
Orijentisan ka aktivnostima
WfMC Petrijeve mree (Petri nets)
Registar
SOAP
CCI
SOAP
CCI
SOAP
CCI
1 registruj
DB
ERP
CRM
Servis
Servis
Servis
Sadraj
Content
Information Entity
Stanje
State
Lokacija
Location(s)
Replikacija
Replication
Specifino
za SOA
Privatnost
Privacy
Kupac
Zahtev
Prodavac
Mapping Routing
SFA
Zahtev
Order
Zahtev
Dobavlja
RFQ Dogadjaj
Raun Aktivnost Korisnika
ERP
Rauni
Narudzba
Order Entitet
(Information Entity)
Orders
Sales Order
Raun
Invoice
Billing Aktivnost
SalesTax.com
CreditCheck.com
Entitet
RFQ Quote
Nack
sendNack
Prodaja Porez
Ponuda
Narudz
updateDB
<<send>> quote
Transition
No
Ok?
Message flow
Buyer
PO AckPO
Supplier
(Self)
PO PO
Order Entry
Manager
Billing
BTA1
Wit1
PO AckPO
Sales order
OpA1
OpA2
[BusinessFailure]
[Success]
Failure
Success
SOA zahteva potpunu odvojenost poslovne logike i korisnikog interfejsa (UI user interface)
View
UI Controller
Obrada Upita
Obrada Posla
Zahtev za servisom
WS
WS
WS WS WS
ERP
WS
PLM
WS
CRM
OWL-S Service WSCL Profile OWL-S Service Grounding OWL RDF PSL
WSCI
ebXML QoS: Service CPP descriptions and bindings ebXML messaging Messaging Encoding Transport
Publikovanje registrovanje web servisa za korienje Pronalaenje lociranje web servisa Izvravanje korienje web servisa
Dostupnost servisa
Da bi neko mogao da koristi servis mora da zna da on postoji i da se omogui: Otkrivanje registrovanih (publikovanih) servisa (UDDI). Opis interfejsa servisa (metode i argumenti) kako bi korisnik mogao da ga korisiti (WSDL). Lokacija na kojoj se nalazi servis
specifine aplikacije za komunikaciju) (web server ili
Osovne karakteristike WS
Sva WS dokumenta su napisana u XML
XML Schema se koristi za definisanje elemenata koji se koriste u WS komunikaciji
SOAP
Koristi se za komunikaciju sa WS
Zasnovan na paradigmi poruka zahtevodgovor (SOAP poruke) Telo poruke (ija je gramatika data preko WSDL) se nalazi u SOAP envelope Povezuje korisnika i WS
SOAP poruke
SOAP definie standardi koverat u okviru kojeg poruka moe biti poslata. SOAP je mehanizam (protokol) za prenos informacija (poruka) izmeu distribuiranih aplikacija. SOAP ne govori nita o sadrini poruke ve poiljalac i primalac moraju meusobno da je razumeju. SOAP je deo komunikacionog sloja.
Struktura SOAP-a
Svaka SOAP poruka sadri:
Envelope obavija ceo dokument Header (opciono sadri dodatne informacije za npr. autentifikaciju) Body sadraj poruke koji je sama XML poruka ili RPC (sadri XML koji predstavlja poziv metode) Body moe sadrati Fault element kojim se definiu informacije o izuzecima
SOAP Fault
</SOAP-ENV:Envelope>
WSDL
Opisuje WS i definie funkcije koje su dostupne na njemu Definie XML gramatiku koja se koristi u porukama
Struktura WSDL-a
portType apstraktna definicija servisa (skup operacija) Binding naini pristupa izvravanju servisa Port gde se pristupa servisu
Primer WSDL : 1
<?xml version="1.0"?> <!-- the root element, wsdl:definitions, defines a set of --> <!-- related services --> <wsdl:definitions name="Temperature" targetNamespace="http://www.socweather.com/schema" xmlns:ts="http://www.socweather.com/TempSvc.wsdl" xmlns:tsxsd="http://schemas.socweather.com/TempSvc.xsd" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
Primer WSDL: 2
<!-- wsdl:types encapsulates schema definitions of --> <!-- communication types; here using xsd --> <wsdl:types> <!-- all type declarations are expressed in xsd --> <xsd:schema targetNamespace="http://namespaces.socweather.com" xmlns:xsd="http://www.w3.org/1999/XMLSchema">
<!-- xsd def: GetTemp [City string, When string] --> <xsd:element name="GetTemp"> <xsd:complexType> <xsd:sequence> <xsd:element name="City" type="string"/> <xsd:element name="When" type="string"/> </xsd:sequence> </xsd:complexType> </xsd:element>
UDDI
Koristi se za registrovanje i pronalaenje servisa u nekom centralnom registru Provajderi servisa mogu publikovati informacije o njihovim poslovima i servisima koje nude
Korisnici servisa mogu pretraivati servise organizovane po poslu kategoriji servisa ili kao specifine servise
Struktura UDDI-a
businessEntity: Information about the party who publishes information about a service tModel: Descriptions of specifications for services or value sets. Basis for technical fingerprints
bindingTemplates contain references to tModels. These references designate the interface specifications for a service
bindingTemplate: Technical information about a service entry point and implementation specs
WSDL UDDI
WSDL
Service Implementation <import> <service> <port> <port> BindingTemplate BusinessEntity
UDDI
BusinessService
tModel