Martin Kuba napsal(a):
Delal jsem si o SOA resersi, a zatim to vypada, ze sice
vam kazdy vyrobce rad proda nejaky produkt, ktery
ma SOA v nazvu, ale jinak neni zatim moc teoreticky zvladnute,
co SOA je. Vi se, ze by mela byt lepsi nez Distribuovane
Objektove Orientovane systemy (DCOM, CORBA), protoze
DOO systemy kvuli referencim mezi objekty a RPC-stylu
volani nejsou vhodne pro opravdu rozlehle systemy,
kde kazdou cast vyviji nekdo jiny, neb zpusobuji
tight-coupling mezi klientem a serverem.
Ale jak vlastne spravne navrhnout sluzby a jejich rozhrani,
aby byly loosely coupled, se moc nevi.
Ja v ramci diplomky delam reseris na to, jak muze MDA pomoci pri vyvoji SOA.
Tj. jak usnadni propojovani sluzeb az na uroven transakci, profilu,
spravy sezeni apod.
(tj. napr. i to aby to usnadnilo volne sprazeni sluzeb).
Zatim jsem zjistil, ze MDA usetri praci pri vyvoji jednotlivych sluzeb.
Pro pokrocilejsi veci nastroje zatim nejsou (teda jsou, ale teoreticky,
napr. ty od IBM umi jakekoliv transformace, jen je nekdo musi
implementovat, coz je tak slozite, ze to zatim nikdo nedela).
Dalsi zajimavy problem je, ze jsou nastroje na integraci sluzeb
orientovany na programatory, nikoliv na uzivatele.
Takze je nelze pouzit napr. v business intelligence. Pak by si byznys
analytik "naklikal" potrebny proces a mohl ho rovnou pouzit.
To narazi i na jinem miste, ze sluzby (procesy) nemaji uzivatelske
rozhrani (napr. webove).
Tady by MDA mela pomoci vytvaret ti rozhrani a byt zdrojem metadat pro
propojovani (generovat RAS - reusable asset specification). IBM na to ma
i metodiku ABD (assest based development - doplnek k RUP). Ale maji
zatim jedno prakticke pouziti. (oni i nasazeni MDA je v praxi bidne a
realnych projektu je jako safranu).
Jeste ke standardum - TOGAF ma mapovani pro MDA, tedy zrejme i mapovani
SOA a MDA.
Zhruba takoveto:
CIM - byznys model
PIM - model jednotlive sluzby
PSM - model jednotlive sluzby zavisle na platforme (napr. WS).
A jelikoz nastroje pro MDA jsou zatim jen PIM a PSM (CIM moc zapojit
neumi), tak se pro SOA pouzivaji spatne. (to je i ma poznamka s
rozhranim orientovanym na programatora).