Building Modern Software: Services, Workflow, Integration

decorumgroveInternet και Εφαρμογές Web

7 Αυγ 2012 (πριν από 4 χρόνια και 8 μήνες)

308 εμφανίσεις

Microsoft and BPM:

A Perspective

David Chappell

Chappell & Associates

www.davidchappell.com

Copyright
©
2006 David Chappell

Defining Business Process Management
(BPM)

A business view of BPM:


Viewing a business as a set of processes that
can be explicitly defined, optimized, and
managed


A technical view of BPM:


Development using software designed for
creating, executing, and monitoring process
logic


The Technologies of BPM

Workflow


System and human

Graphical tools


For business process modeling and design

Integration technologies


Such as adapters and data transformation

Business rules engines

Business activity monitoring

What’s a BPMS?

An Aside

Several small firms have sold BPM
Suites/Systems (BPMSs) for many years


None have an especially large customer base


But their offerings have largely defined the
BPMS category


As the big vendors enter this area, the definition of
“BPMS” is changing


It’s hard to find a definition that everybody
agrees on

Microsoft’s BPM Offerings

BizTalk Server 2006


Windows Workflow Foundation


Windows SharePoint Services, version 3


The 2007 Microsoft Office system


Especially Office SharePoint Server 2007

Defining BizTalk Server 2006

BizTalk Server 2006 is a Windows
-
based business
process and integration server


It’s the product’s fourth release


It’s built on the .NET Framework 2.0




BizTalk Server 2006

Illustrating Its Components

Orchestration

Business
Rules Engine

Business Activity
Monitoring (BAM)

Health and
Activity Tracking

Visual Studio 2005

Orchestration
Designer

Other
Software

Web Services

Others

WebSphere MQ

MSMQ

File

...

Adapters

Data Transformation

Accelerators


HL7

SWIFT

Others

...

BizTalk Server 2006

The Orchestration Designer

Perspective

Tool Audiences

Many BPM products provide tools aimed at
business users


Such as business analysts

The BizTalk Orchestration Designer targets
developers


Microsoft also provides a Visio
-
hosted design
tool, but it’s not widely used


Would developers rather write code?

So far, Microsoft has chosen not to focus on
business users as creators of BizTalk
orchestrations

BizTalk Server 2006

Business Activity Monitoring

Allows information
workers to monitor in
-
process orchestrations

Can be accessed
through:


Office applications
(e.g., Excel)


Other clients

Perspective

Process Modeling and Simulation

Many people view this as part of BPM


Although it can be useful even for manual
processes


Microsoft doesn’t offer products in this area


Although several Microsoft partners offer
modeling and simulation tools


Those tools include:


ITP Process’s Process Modeler for Microsoft Visio


AgilePoint’s Envision (based on Visio)


Simul8



Defining Windows Workflow Foundation

Windows Workflow Foundation (WF) is a
framework for building workflow
-
based Windows
applications


It’s targeted at developers, not information
workers or business analysts

WF is part of the .NET Framework 3.0

The goal is to provide a common workflow
framework for Windows applications


Including a unified foundation for both system
and human workflow



WF

What’s a Workflow?

A WF workflow is a set of activities






Each activity is actually a class


It can be reused in multiple workflows

Activities can be provided by:


Microsoft


Anybody else

Activities

Workflow

WF

The Role of the WF Runtime Engine

WF Runtime
Engine

1) Execute
first activity

2) Execute
second activity

3) Execute next
activity . . .

Host Process

WF

Illustrating Its Components

WF Runtime
Engine

Other Activities


Base Activity Library
(BAL)

Activities

Workflow

Runtime
Services

Visual Studio 2005

WF Workflow
Designer

WF

Example BAL Activities

IfElse

While

Sequence

Parallel

Code

Listen

Delay

FaultHandler

Compensate

CallExternalMethod

HandleExternalEvent

InvokeWorkflow

InvokeWebService

Terminate



Perspective

Microsoft’s Support for BPEL

WF will provide a BPEL Activity Library


It implements BPEL 1.1


Workflows built with this library can be imported
from or exported to BPEL

BizTalk Server 2006 also can import and export
BPEL definitions


BPEL addresses system workflow, not human
workflow

Microsoft doesn’t display as much BPEL
enthusiasm as some other vendors


Despite being one of the language’s creators

WF

Creating Workflows


WF provides two built
-
in workflow types:


Sequential


State machine


WF provides options for defining workflows:


Graphical: the Workflow Designer


Code: C#, Visual Basic, or another .NET
language

WF

The WF Workflow Designer

BizTalk Server Engine

Web Services

Others

WebSphere MQ

Other
Software

MSMQ

File

...

Adapters

Messaging and Transformation

The Future of BizTalk Server

Visual Studio

WF Workflows

WF Designer

Existing BizTalk
2006 Orchestrations

Perspective

WF or BizTalk Server?

WF:


The right choice for workflow
-
driven applications


Especially useful for long
-
running processes

BizTalk Server:


The right choice for problems such as:


Enterprise application integration (EAI)


Business
-
to
-
business (B2B) integration


EDI, etc.


Business activity monitoring


Provides hosting, management, and scalability

Perspective

How Easy to Use is WF?

Graphical designers can make things look easy


Yet creating a WF workflow from scratch isn’t
simple


Writing activities that work with an existing
workflow is relatively straightforward, however

For some problems, using WF can be significantly
simpler than not using WF


Since it provides support for persisting state,
compensation, and more

WF

Specifying Business

Rules

Conditions, e.g., on an IfElse or While activity


Rules can be embedded in the workflow

The Conditioned Activity Group (CAG) activity


Allows creating rules
-
driven workflow logic

The Policy activity


Provides access to a straightforward rules
engine

Perspective

BizTalk Server BRE or WF Rules?

BizTalk Server 2006 Business Rules Engine
(BRE):


Available only with BizTalk Server


Includes graphical tools, e.g., the Business
Rules Composer

WF rules:


A standard part of Windows


Includes simple graphical tools


The foundation for the future, says Microsoft

Defining Windows SharePoint Services

Windows SharePoint Services (WSS) is a
standard part of Windows Server 2003


WSS version 3 hosts the WF runtime engine


Office SharePoint Server, part of the 2007
Microsoft Office system, adds more workflow
capabilities


All of which are built on WF and WSS version 3

Windows Server 2003

Windows SharePoint Services

Site 1

Site 2



Web Browser

Internet Information Services

Site N

Microsoft Office

Document
Library 1

List 1

Item A

Item B

Item C

. . .

List N

Item A

Item B

Item C

. . .

. . .

Document
Library N

. . .

SQL Server

WSS

Illustrating Its Components

List

Item A

Item B

Item C

. . .

Document
Library

Windows Server 2003

Windows SharePoint Services

Site 1

Site 2



Site N

SQL Server

WF Runtime Engine

Internet Information Services

Workflow Instances

Associations

Workflow

Templates

WSS

Illustrating WF Workflows

WSS

Interacting with Workflows


A WSS
-
hosted workflow places
tasks

on a user’s
task list


A user can access this list via a web browser or
Outlook 2007

WSS defines several WF activities, including:


CreateTask
: adds a task to a task list


OnTaskChanged
: informs the workflow that a
task has been modified

Windows SharePoint
Services

Site

Workflow

Templates

Document
Library

Workflow
Initiator

Workflow
Participants

Task List

Approve

. . .

4) Add task
to task list

1) Select document
and association

Workflow Instance

2) Create workflow
instance

3) Customize and start
workflow instance

5) Check task list

6) Complete task

An Example WSS Workflow

WSS

Starting a Workflow

WSS

Completing a Task

WSS

Creating Workflows

Developers: WF Workflow Designer


Information workers: Office SharePoint Designer


Allows defining workflows by specifying
conditions and actions for each step


Users can now add application logic to WSS
sites

WSS

Illustrating

Office SharePoint Designer

Perspective

Using WSS and BizTalk Server 2006 Together

Microsoft provides a BizTalk Server 2006 adapter
for Windows SharePoint Services


A BizTalk Server system workflow still remains
distinct from a WSS human workflow, with:


Separate execution engines


Separate design tools


Some would argue that this misses the point of
BPM

What Office SharePoint Server 2007 Adds

The ability to interact with workflows directly from
Office applications using InfoPath workflow forms


WSS alone mostly supports interacting with
workflows through a browser

A group of customizable pre
-
defined workflows


Approval, Collect Feedback, etc.

A range of content
-
management capabilities


Such as document templates and broad search
capabilities


Office SharePoint Server


Starting a Workflow in Word 2007

Office SharePoint Server

Completing a Task in Outlook 2007

-

BizTalk Server data mapping, adapters, etc.

Integration technologies

-

System workflow: BizTalk Server Orchestration
Designer

-

Human workflow: WF Workflow Designer and
Office SharePoint Designer 2007

Graphical tools for defining processes

Microsoft and BPM: Summary

Solution

Problem

-

BizTalk Server BAM

Business activity monitoring

Supporting human workflow

-

WF
-
based workflows in Windows SharePoint
Services 3.0 and Office SharePoint Server 2007

-

BizTalk Server orchestrations

Supporting system workflow

-

BizTalk Server BRE

-

WF rules

Business rules engine

For Further Reading

Understanding BizTalk Server 2006


http://download.microsoft.com/documents/


australia/windowsserversystem/biztalk2006/


Understanding_BTS06.pdf

Introducing Microsoft Windows Workflow Foundation


http://msdn.microsoft.com/library/default.asp?


url=/library/en
-
us/dnlong/html/wfintro.asp

Understanding Workflow in Windows SharePoint Services
and the 2007 Microsoft Office System


http://download.microsoft.com/download/1/A/B/1AB1AC
93
-
13A4
-
4001
-
A757
-
A340A211A06F/
Understanding%20WF%20in%20WSS%20and%20Offic
e%202007%20v1.doc

About the Speaker


David Chappell is Principal of Chappell & Associates in San Francisco,
California. Through his speaking, writing, and consulting, he helps IT
professionals understand, use, and make better decisions about
enterprise software.


David has been the keynote speaker for dozens of conferences and
events in the U.S., Europe, Asia, and Latin America. His popular
seminars have been attended by tens of thousands of developers,
architects, and decision makers in forty countries.


David’s books have been published in ten languages and used in
courses at MIT, ETH Zurich, and many other universities. He is Series
Editor for Addison
-
Wesley’s award
-
winning
Independent Technology
Guides
, and he has been a regular columnist for several publications.
In his consulting practice, David has helped clients such as Hewlett
-
Packard, IBM, Microsoft, Stanford University, and Target Corporation
adopt new technologies, market new products, train their sales staffs,
and create business plans.


David’s comments have appeared in The New York Times, CNN.com,
and various other publications. Earlier in his career, he wrote software
for supercomputers, chaired a U.S. national standardization working
group, and played keyboards with the Peabody
-
award
-
winning
Children’s Radio Theater. David holds a B.S. in Economics and an M.S.
in Computer Science, both from the University of Wisconsin
-
Madison.