Datasheet
object-oriented code has given developers a great way to build reusable blocks of code that can be
mapped to real-world objects. This building-block approach, when used correctly, can lend itself to
helping developers build software solutions more efficiently and quickly.
Order processing, new employee processing, and insurance claim processing are just a few examples of
the types of business processes that can be automated. These processes are modeled and documented, at
which point a software developer creates his or her interpretation of the process with source code. It is
very common in the stages before the actual coding begins for a business analyst to capture the steps in
a process and represent the process graphically or with a list of tasks that must be completed and in
what order. At this point, the perfectly nice list or visual representation is reduced to source code so that
a machine is able to perform the process.
This approach might work in many instances, and in reality, it has been working for many years now. That
doesn’t mean there isn’t a better way. Although this book is dedicated to conveying the technical aspects of
Windows Workflow Foundation, understanding the problem domain of workflow and business processes
can help you, as a developer, relate the technology to its business drivers.
What Is Workflow?
Workflow
is a word that means different things to different people. As you may suspect by the name,
workflow defines a process flow or a set of tasks that produces a result. Although this is a good general
definition, workflow is also commonly discussed in the context of software systems.
Workflow systems are often associated with the domain of document management. In general, document-
management systems handle the transfer of documents between people and other software systems
according to a set of policies and procedures. Although document management may be the default con-
cept that comes to mind, it is by no means the only area associated with workflow.
In addition, an archetypal feature of workflow is graphical representation. Workflows are frequently
shown as a series of shapes and icons that represent discrete actions. Arrows are also commonly used to
represent the flow of work from one step to the next. Although document management and visual repre-
sentation may represent a large part of workflow, they are really so much more.
Before going too deep into workflow, you need to understand why it is important. One of the top priorities
of IT organizations in recent years automating and supporting key business processes. Business process
management (BPM) is the framework that describes how organizations can achieve these goals.
Business Process Management
BPM has gained a lot of attention in recent years. Essentially, it is a set of activities that organizations
can follow to better understand, implement, and monitor business processes. There are many resources
available to you that discuss BPM, its traits, and implementation methods. However, in the context of
this book, you need only a good understanding of BPM’s high-level qualities and how it relates to
workflow.
2
Chapter 1: An Introduction to Workflow and Windows Workflow Foundation
04_053867 ch01.qxp 2/20/07 2:40 PM Page 2