fredag, september 02, 2005

SOA och Data

SOA består av ett antal olika typer av tjänster. Själv ser jag tre stycken som är tydligare än andra, processer, data och interaktiva. Processer är tjänster som kopplar samman de övriga typerna och låter dom samspela (orchestrate). Datatjänster ger åtkomst till informationen som bearbetas i applikationen. Interaktiva tjänster är de som kräver männsklig dialog. För att dra en parallell till produktvärlden så är BizTalk Server ansvarig för processerna, SQL Server för datatjänsterna och Sharepoint/Exchange/InfoPath för interaktiva tjänster.

Processerna i sig hanterar också data. Men det datat är enbart information som är kopplat till processen och resten är nycklar till data som görs åtkomligt via daatjänsterna. En orderprocess skulle därför hantera orderinformationen, men ha nycklar till exempelvis kundinformationen som ligger åtkomlig genom datatjänster. BizTalk och andra produkter som kan agera processmotor kan hantera informationen som är knuten till processen genom stödet för persistens och long running transactions.

En SOA applikation som består av de tre delarna har sina egna tjänster för att fungera som exempelvis ett Customer Relational Management (CRM). Eftersom SOA kan skala till ett Enterprise så kan applikationen styra om sin dataåtkomst till att lagra datat centralt eller i en annan applikations dataservices. I en Enterprise SOA skulle det kunna finnas en Unified Data Model (UDM) som hanterar all dataåtkomst från alla applikationer. En UDM är även intressant i samband med Business Intelligence (BI) för att kunna skapa analyser av den totala informationsmängden. Tillsammans med information i processerna och Business Activity Monitoring (BAM) kan effektiva Key Performance Inidicators (KPI) ge aktuell och tidskritisk information som är viktig för verksamheten.



Samspelet mellan SOA och Business Intelligence kommer genom BAM och UDM skapa helt nya sätt att dra nytta av en flexibel arkitektur.

Inga kommentarer: