tisdag, februari 27, 2007

.NET-utvecklare - dags att lära sig WS-BPEL?

Passa på och få en inblick i WS-BPEL när OASIS (administrerar WS-BPEL specen) presenterar följande två webinars den 12-13 mars:

Microsoft satsar hårdare på BPEL

Du kanske redan har hört det men Microsoft annonserar nu att de under våren kommer att ha stöd för WS-BPEL 1.1 i WF mars CTP för import och export. Vid release senare i år av WF i Vista kommer stöd för WS-BPEL 2.0 att finnas. När det gäller BizTalk 2006 kommer MS inte att ge ytterliggare stöd som nu begränsar sig till WS-BPEL 1.0. När sedan BizTalk släpper nästa version så kommer WF vara en del av BTS och därmed även stödet för WS-BPEL 2.0.

Microsoft bygger en BPM-allians med partners

Igår på Gartner BPM Summit annonserade Microsoft en BPM-allians (BPA) tillsammans med ett antal företag, under parollen "People-Ready Process". BPM (Business Process Management) är en teknik som vänder sig till verksamheter som vill bygga upp IT-stöd för processhantering inom och mellan verksamhetens funktionella tjänster (HR, IT, Finans, etc).

Tekniken implementeras mha ett BPMS (Business Process Management Suite) där det ingår ett antal verktyg som samverkar med varandra för att skapa en miljö där processerna kan köras och hanteras. Microsoft har allierat sig med företag som representerar olika delar i ett BPMS:
  • Business Process Modeling and Analysis
  • Decision Management and Business Rules
  • Business Process Management Suites
  • Business Process and Human Workflow
  • SOA Governance and Lifecycle Management
Listan av allierade företag och inom vilket område de verkar kan du se här.

Vad alliansen innebär kan du se mer om här.

Läs även David Chappells whitepaper om Microsofts BPM Suite.

måndag, februari 12, 2007

Vad är en BOA?

Jag tycker om att hacka på objektorientering som i det här blogginlägget om Business-Oriented Architecture. Inget personligt men de svåraste problemen som företag idag har med IT vågar jag säga bottnar i objektorientering. När en programmerare ska lära sig ett programspråk så blir det ofta ett OO språk som Java, C++ eller C#, vilket gör att man från barnsben uppfostras i det felaktiga tänkandet. Under CORBA och COM tiden fanns det vissa ljuspunkter på himlen, men dessa trycktes tillbaka tillfördel för objektorienteringen. Idag är vi mer objektorienterade i vårat tänkande än någonsin. För att inte bli helt verklighetsfrämmande i objektvärlden så har man skapat abstraktioner (patterns och domänmodeller) som ska bygga broar mellan verkligheten och objektvärlden. Men det är en knackig väg som inte kan lyckas, det krävs att utvecklare lämnar OO och börjar tänka processer och tjänster.

söndag, februari 11, 2007

BPM in Action

Missa inte den här virtuella konferensen om BPM och BAM i mars.

Kolla även in den här intressanta bloggen.

BPM till Sverige

I veckan fanns det en artikel i IDG där BPM fick lite mediatid i svensk IT-press.

tisdag, januari 16, 2007

Förutsägelser inför 2007

Det kanske är lite magstarkt att plita ned en spådom inför det här året, men här kommer ännu en profetia:

  1. Teknikfokuserade mjukvaruleverantörer kommer att närma sig de affärsorienterade genom att döpa eller branda om sina produkter från att vara en ESB till ett BPMS. De kommer att bygga in bättre support för processmodellering och inte bara erbjuda BPEL utan även andra standarder som BPMN. Budskapet kommer inte enbart att bygga på integrationen mellan funktions- och informationssilos (det gamla EAI-budskapet) utan även om processer.
  2. Affärsfokuserade mjukvaruleverantörer kommer att närma sig de teknikfokuserad. De inser att deras idag properitära system inte får riktig slagkraft om de inte supporterar Web Services och BPEL.
  3. BPEL kommer att få ännu större genomslag när många av dagens leverantörer av BPMS implementerar BPEL som processpråk.
  4. Detta är året då bl a Cornerstone kommer att erbjuda kurser i WS-BPEL.
  5. Det är detta år vi inser att runtime governance av web services inte kommer att vara värt att implementera till den nivå som SOA-drevet vill göra gällande. Det är inte på service-nivån som man skapar lösa kopplingar mellan applikationer/tjänster.

lördag, januari 06, 2007

Året som gick

Förra året skrev jag ned några punkter som jag trodde skulle resultera i allmänna insikter om SOA. Så här i efterhand går det att konstatera att jag inte alls hade rätt, utan fick istället själv en viktig insikt om SOA - nämligen att SOA aldrig kommer bli något annat än EAI med Web Services.

Diskussionen om SOA kommer aldrig att komma upp då man pratar om tjänster i ett verksamhetensperspektiv, utan enbart i exponeringssammanhang. Exponering av system/applikationer som ska integreras. Det kommer att innebära att en SOA-diskussion inte kommer att tränga in i diskussionen om tjänstenätverket som är fundamentet för en Full SOA Application.


Så istället är det mer intressant att följa det BPM community som mer och mer närmar sig de insikter jag skrev om SOA under 2006.

måndag, oktober 16, 2006

SOA != WS

Inte för att jag söker jobb men var jag inne på Monster för att kolla av hur hett det är med SOA i annonserna nu för tiden. Söker man på SOA så få man upp det här resultatet.

Det intressanta med resultatet är att i många av annonserna så blandar man ihop SOA med WS.

Ex:

Kravprofil
Du bör ha erfarenhet av följande teknikområden:

.Net
SOA
XML
MS SQL eller annan relationsdatabas

Överlag är det konsultbolag som annonserar utvecklarkompetens som inte fått kläm på vad de frågar efter.

torsdag, augusti 31, 2006

In english

Jag har skapat en blog på engelska med samma innehåll för att kunna nå en större publik från 3 stycken personer till förhoppnings fler :|

onsdag, augusti 16, 2006

Virtualisering III

Vad man vill sträva efter är att virtualisera till den grad att det är hanterbart, vilket det inte riktigt är på objektnivån som virtualiseras i JVM eller CLR.

En annan virtualiseringsnivå än den JVM och CLR bidrar till är Web Services (WS). WS har en mycket speciell förmåga att virtualisera eftersom oberoendet är implementerat i det som kopplar samman WS i arkitekturen. Oberoendet finns i protokollet som binder samman Web Services istället för en runtime som WMware, Virtual Server, CLR och JVM baseras på.

Web Services sägs även kunna virtualisera funktioner i ett företag, dvs tjänster som ingår i en SOA. Genom SOA blir nyttjandegraden av funktioner i en IT-miljö väldigt hög samtidigt som rörligheten och möjligheten att hantera Web Service är i fokus.

Virtualisering II

Från förra bloggen om virtualisering så kan man ta med sig att virtualisering skapar ett oberoende till underliggande arkitektur som ger bättre rörlighet och resursutnyttjande genom metoder och verktyg för hantering av instanser som nyttjar de virtualiserade resurserna.

Frågan är nu på vilken nivå man ska virtualisera för att uppnå bättre rörlighet och resursutnyttjande?

Det finns flera nivåer av virtualisering och den enda förmågan en virtualiseringnivå måste ha är att den skapar ett oberoende till underliggande arkitektur. Det som de sedan skiljer dem åt är förmågan att låta sig hanteras. Operativsystem som kan köras i virtuella miljöer är en nivå där man kan uppnå ett högt resursutnyttjande av hårdvaran, men ett lågt resursutnyttjande av funktioner i operativsystemet. De olika s k gästerna i en hårdvaruvirtualiserad miljö är helt isolerade från varandra och delar inget annat än den underliggande hårdvaran.

Hårdvaruvirtualisering används främst då man inte vill röra de applikationer som kör på ett operativsystem. Har man däremot möjlighet att virtualisera på en högre nivå så ska man göra det eftersom det ger ett ännu bättre resursutnyttjande. Bättre resursutnyttjande är positivt i många bemärkelser, men kan ställa till problem i andra. Önskar man isolerade miljöer så ska man antingen inte virtualisera eller göra det på en hög nivå.

Virtualisering I

En IT-guy förknippar virtualization med produkter som VMware och MS Virtual Server medan en utvecklare främst tänker på JVM eller CLR. Vad båda försöker uppnå är att abstrahera bort ett beroende mellan två nivåer i arkitekturen. IT-killen virtualiserar för att på en operativsystemnivå skapa ett oberoende till underliggande hårdvara, medan kodaren skapar ett oberoende till underliggande operativsystem.

Oberoendet till underliggande arkitektur gör att man dels skapar än bättre rörlighet men även möjligheten till bättre resursutnyttjande. Rörligheten får man på grund av den lösa kopplingen som en instans eller objekt har till den underliggande arkitekturen. Graden av resursuttnyttjandet förbättras genom möjligheten att hantera den virtualiserade arkitekturen.

Hårdvara är inte en bristvara idag och det är inte dyrt att köpa. Men kostnaden för att hantera nyttjandet av hårdvaran är dyr samt att det är ett problem att migrera från äldre hårdvara till nyare. Virtualisering kopplar loss beroendet men bidrar även tillsammans med metoder och verktyg till en flexiblare hantering av resurserna.

Metoderna och verktygen handlar om att skapa en brygga mellan det IT-killen gör om dagarna och det utvecklarna hade i tanken med sin programvara. Microsoft kallar det för Managing Dynamic Systems och bygger upp ett förhållningssätt kring det som kallas Dynamic Systems Initiative (DSI). Till DSI kopplas ett antal modeller som ska supportera DSI beroende på vad som ska hanteras i en IT-miljö. En av modellerna är System Definition Model (SDM) som ska bidra till DSI för hantering av applikationer i distribuerade miljöer. En annan modell är Service Modeling Language (SML) som avser hantering av WS-* tjänster. Verktyg som bidrar till hanteringen är Microsoft Operations Manager och Virtual Machine Manager.

måndag, augusti 14, 2006

SOA möjliggör BPM

Ismael Ghalimi skrev för inte länge sedan en liten notis som jag snappade upp hur han ser på relationen mellan SOA och BPM. Nu utvecklar han sitt resonemang och det finns riktigt intressanta delar där för den som följer hur SOA och BPM växer fram som de två stora giganterna av buzzwords.

Värt att notera är att leverantörer av SOA-verktyg (ESB) ser BPM som en del av en SOA, medan BPM-folket ser SOA som en möjliggörare för BPM.

lördag, augusti 05, 2006

Det är A:et i SOA som gör det!

Om A:et i SOA står för den arkitektur som ger hanterbarheten av dina tjänster, innebär det då att enbart SO står för anarki? Ja, är det korta svaret jag har. Det långa är att SO har en historia, inte så lång, men väldigt ärorik. SO fick t o m ett antal lärosatser eller axiom som i många sammanhang fick alldeles för stor betydelse. SO slog på kort tid sönder och samman OO som programmeringsmodell för distribuerade system. Det gjordes så bra att OOA inte fick en chans att bekänna färg mot SOA. Men egentligen har SO S:et att tacka för framgångarna, eftersom S:et lade grunden till segern.

S står egentligen för WS. Normalt sätt är det ingen som pratar om S:et i någon annan bemärkelse än WS och är det någon som gör det så anses det vara av akademiskt betydelse. Ser man till WS historia så är det där man kan hitta svaret på framgången, nämligen W. Egentligen är det i W (som i Web eller i folkmun WWW) som vi hittar sanningen bakom framgångssagan. WWW har öppnat dörren för SO som programmeringsmodell och gjort den till vad den är idag. Det är WWW som SO bygger sitt fundament uppå.

WWW, ett virrvarr av hemsidor som slukat mängder av domänadresser, upptagit miljoner IP-adresser, konsumerat enorma mängder bandbredd, påverkat ungdomar negativt. Ja, listan kan göras lång för det är en anarki som råder där. WWW var en disruptiv teknologi som slog undan benen på allt och skapade en ny värld av möjligheter. Nu är vi på samma nivå med en teknik för distribuerade system som alla världens kritiska affärssystem och transaktionssystem ska använda in i framtiden. Är det så illa? Nej, är det korta svaret. Det långa är ja, om vi låter anarkin få fortsätta råda. Låt istället varje S vara en del av en SOA, tänk WWW när du bygger dina applikationer med SO men glöm aldrig att det är A:et i SOA som gör det.