Building Systems Using The Workflow Approach

Post on 13-May-2015

696 views 1 download

Tags:

Transcript of Building Systems Using The Workflow Approach

Building Systems using the Workflow Approach

Bijoy SinghalDeveloper Evangelist

Microsoft Indiabsinghal@microsoft.com

Assume it’s a:

CD/DVD Repairing Assembly Line

CD/DVD Repairing Machine

How can we represent this in software ?

ActivitiesConnectionsFlowcharts

The Workflow Approach

What? Why? How?

Work Flows

What

“Meta”

Meta-data

Meta-Language

Meta-Programming

A Higher Level of Abstraction

Breaking down a problem into smaller independent units that can be assembled later

How?

Lets see…

What did we just do?

• Decomposed a larger business problem into smaller independent entities of “work”

• Created Graphical Representations• Gave it to our customers• They could combine them using a designer

into desired sequence• Monitor, Persist, change…

Why?

Today’s Application Development

Forms

Data

Applicationlogic

Rules andpolicies

Applicationcode

Workflow model

Services

The workflow way…

• Easy to “Compose” Systems as compared to “Create” them

• Building Human and Machine interacting systems• Taking Problem Solving closer to Business Folks• Declarative• Easy to understand and maintain• Tracking/Parallelizing/Persisting/Scaling• A unified system implemented on multiple

machine and infrastructure

Windows Workflow Foundation

Key Concepts

Host Process

WindowsWorkflow Foundation

Runtime Engine

A Workflow

An Activity

Runtime Services

Base Activity Library

Custom Activity Library

Visual Designer

Visual Designer: Graphical and code-based construction

Workflows are a set of Activities

Workflows run within a Host Process: any application or serverDevelopers can build their own Custom Activity Libraries

Components

Base Activity Library: Out-of-box activities and base for custom activitiesRuntime Engine: Workflow execution and state management

Runtime Services: Hosting flexibility and communication

Activities: An Extensible Approach

OOB activities,workflow types,base typesGeneral-purposeActivity libraries define workflow constructs

Create/Extend/Compose activitiesApp-specificbuilding blocksFirst-class citizens

Base ActivityLibrary

Custom ActivityLibraries

Author new activity

Out-of-Box Activities

Extend activity

Compose activities

Vertical-specificactivities & workflowsBest-practice IP &Knowledge

Domain-SpecificWorkflow Packages

Compliance

RosettaNet

CRM

IT Mgmt

Workflow Scenarios

• Document Life Cycle Management• LOB Application Workflow• Business Process Management• UI Navigation Logic

Thank You