2009-02-06

Trendspaning

Hur bygger vi workflows idag och hur kommer vi att bygga workflows i morgon, eller rättare sagt –hur vill Microsoft att vi bygger workflows i morgon?

Idag ser jag många projekt och kodningsexempel som bygger flöden med hjälp av de basaktiviteter som följer med .NET. Detta innebär ofta en hel del användning av CodeActivity och det innebär även att själva workflowet är byggt i kod och inte XOML. Vissa projekt går lite längre och bygger egna aktiviteter och utnyttjar möjligheten att bygga komposita aktiviteter, möjligheten att komponera är trots allt en av styrkorna med workflows. Även dessa aktiviteter använder rätt ofta CodeActivity för att utföra någon form av jobb.

Jag säger nu inte att något av ovanstående är fel utan detta inlägg handlar mer om vart vi är på väg.

I och med .NET 4.0, Dublin, Oslo börjar saker verkligen röra på sig. Vi tappar bakåtkompatibliteten med “gamla” workflow foundation och står på en ny bas. Vissa saker är tydliga och det är exempelvis

  • Ingen CodeActivity
  • Ingen XOML utan nu är det ren XAML som gäller
  • Mindre kod och mer markup
  • BPEL

Ur detta kan vi naturligtvis själva fundera över hur vi bäst bygger workflows som går att äga även på lite längre sikt. Ett naturligt val är att skippa CodeActivity, börja kika på hur vi kan minska mängden kod och utnyttja möjligheterna med markup och styra flödet med hjälp av policys och regler istället.

Några tankar?

2009-02-02

Nytt svenskt community för sharepoint

På detta community hänger många sköna svenska sharepointprofiler:
http://www.sharepointcommunity.se/

Jag finns själv på workflow-forumet på den sidan och försöker svara på frågor.

2009-01-15

[NonSerialized]

När ett workflow smäller i samband med persistering är det inte alltid busenkelt att veta vad som är problemet. Jag har med tiden upptäckt att felsökning av denna typ av problem kan vara rejält tidsödande och frustrerande och ibland så utmanande att utvecklarna tvekar till workflow foundation som teknik.

Problemet är ofta själva serialiseringen, detta är något du själv kan styra men det är knappast den vanligaste vägen att gå utan workflowet kör antagligen i en vanlig host eller i en host som exempelvis sharepoint bidrar med (som inte heller direkt förenklar felsökningen...)

Exempel på egen serialisering i en aktivitet

[DesignerSerializer(typeof(ExampleActivityMarkupSerializer), typeof(WorkflowMarkupSerializer))]
public class ExampleActivity : Activity { }

Vad är det då som kan vara problemet? Det handlar nästan uteslutande om fält som serialiseras i en aktivitet eller direkt i workflowet. Det kan vara bra att känna till att arrayer och generics är stora no-no's i dessa sammanhang. Detta gäller även längre ned i din objektgraf!

Det är även pga denna teknik vi inte kan använda nästlade aktiviteter, något som vi kan lösa med en egen serialiserare!

Slutsats

Tänk på vilka datatyper du exponerar för serialiseraren, använd inte arrayer och var sparsam med generics (dessa kan funka...ibland)

Läs mer här

2009-01-09

TechDays 2009

Glöm inte att anmäla er till TechDays 2009 i västerås!

Jag skall tillsammans med Mattias Lindberg på Microsoft AB hålla en session som heter

SharePoint Workflows – experiences from the field

This session talks about how you create a Workflow Foundation-based business process within Microsoft Office SharePoint Server 2007, we will share experiences and best-practices from projects we have been involved with. Focus will be on how you as a developer can create workflows that interact with humans, e.g. a manager needs to approve a request submitted by an employee. We will start with a quick overview of SharePoint workflows and then get into the design and coding details of a demo scenario, at the end we will share some additional experiences and best practices. Some of the topics covered will be creation of SharePoint tasks, using ASP.NET task forms, encapsulation of functionality in custom activities, deployment process and development environment.

TechDays Sverige • Västerås 17–18 mars 2009

Välkommen till Microsoft TechDays 2009, det största evenemanget arrangerat av Microsoft i Sverige för dig som är IT-chef, tekniker eller utvecklare.

Fler sessioner: Du som deltar i TechDays 2009 kan välja bland 90 sessioner, delar av programmet kan vi avslöja redan idag.

Labba på plats: Du har tillgång till labbdatorer och kan testa nya tekniker, metoder och produkter.

Oavsett om du arbetar inom en stor koncern eller på ett småföretag, i den privata eller den offentliga sektorn, kan du bredda och fördjupa dina tekniska kunskaper i Västerås den 17-18 mars 2009. Under de två dagarna kan du ta del av 90 tekniska sessioner – fördelade på parallella spår för IT-chefer, tekniker och utvecklare.

Under TechDays lanserar vi även vårt nya erbjudande inom Microsoft Online Services, som innebär att vi erbjuder några av våra viktigaste produkter som molnbaserade tjänster.

Hör presentationer och se demonstrationer av framtidens och nuvarande versioner av Microsofts produkter och teknologier – med inriktning mot just din vardag och verksamhet.

Några Microsoft-produkter och lösningsområden som vi presenterar under TechDays 17–18 mars 2009:

  • Windows Azure (molnbaserade tjänster)
  • Virtualisering
  • Windows Server 2008 och Windows Server 2008 R2
  • Se hur det fiktiva konsultföretaget TechKnights migrerar en IT-miljö från Basic till Rationalized – i realtid – på 48 timmar.
  • Windows Vista och Windows 7
  • Office 2007
  • WPF och Silverlight
  • Exchange 2007
  • Forefront, kodnamn “Stirling”
  • Unified Communications
  • Data management med System Center
  • Affärssystem
  • Identitets- och tillgångshantering
  • Nyheter i .NET-ramverket
  • Molntjänster inom Windows Live-plattformen
  • Och mycket mer

2.svenska_bloggknapp150x130

2008-12-09

Dublin and BizTalk server

En inte helt ovanlig fråga just nu är vilken roll dublin kommer att spela i framtiden om vi redan idag använder BizTalk.

Har hittat extremt lite på ämnet men här finns i alla fall lite information

For anybody familiar with BizTalk Server, looking at “Dublin” might cause a slight sense of déjà vu. Supporting workflow-based logic, providing a monitoring and management infrastructure: These are things that BizTalk Server does today. What’s the future of BizTalk Server in a “Dublin” world?

The key thing to understand is that “Dublin” doesn’t directly target traditional BizTalk scenarios. For example, enterprise application integration and business-to-business connections via EDI will still use BizTalk Server. Similarly, bringing existing applications into the service-oriented world by exposing their functions and/or data through BizTalk Server will continue to make sense. While the reach of “Dublin” may grow over time, BizTalk Server remains important for connecting the Microsoft application platform to the diverse systems common in most enterprises.

If an organization needs an application container for WCF services, however, especially those implemented using WF, “Dublin” is a better choice—this is what it’s designed for. And expect BizTalk Server’s connection with “Dublin” to get stronger: Look for a future release after BizTalk Server 2009 to build on the “Dublin” infrastructure. Even though the functions of BizTalk Server and “Dublin” appear to overlap in some ways, each technology has a clear role to play.

Vad tillför Dublin för nya möjligheter mot det vi har att tillgå med WF idag?

 

Bilden ovan beskriver rätt bra vad vi får med Dublin

  • En host som kan köra våra workflows och utbyta information via WCF
  • Auto start av nya workflows
    • Dvs, när vi tar emot ett meddelande kan vi starta ett nytt ärende
    • Detta har gått även tidigare men inte lika smidigt
    • Nu kan runtimen även starta utan att ett nytt meddelande inkommit
  • Restart av aktiviteter som misslyckats med tidigare körning
    • Detta är konfigurerbart och ställer lite nya krav på hur vi bygger våra workflows.
  • Persistence & Tracking
    • Detta har vi haft förut också men inte lika kraftfullt och inte med samma verktygslåda

2008-11-04

Workflows i molnet

Microsoft .NET Workflow Service är en del av Azure, dvs Microsofts plattform / operativsystem i molnet.

De nya aktiviteter som erbjuds handlar i många fall om att läsa och skriva data över HTTP men det finns en aktivitet som sticker ut... CloudDelay, smaka på den =)

Mer finns att läsa här

2008-10-30

PDC - WF

Lite uppsnappat

- BPEL, microsoft siktar pa v2.0 (OASIS), vilket ar grymt. Mest handlar det om import/export men det ar ett stort steg i ratt riktning
- DependencyProperties, om du tycker dessa ar knepiga kan du slappna av. Framtidens WF ar mkt enklare!
- ActivityExecutionContext, total rewrite men samma namn. Nu ar workflowet verkligen en bookmarking application och hela modellen for Executin/Running osv ar mkt enklare
- Dublin.. mm.. dublin.. har snackar vi BPM/SOA pa riktigt
- Oslo, bygg dina BPM/SOA tjanster mha Oslo och publicera till Dublin.. smaskens!

Nu ska jag vidare till en genomgang av Cloud Computing!