Workflow Foundation - (WF Microsoft .NET technology)
Efforts in the past to automate business processes typically required a team of
programmers to write the appropriate code. This approach generally served organizations
well, but it brings with it some inherent problems. It is important to understand
why these problems arise in this type of scenario, which emphasizes the need to
understand some fundamental characteristics of a workflow.
Workflow is a way of documenting activities involved in completing a unit of work.
Generally speaking, Work "flows" through one or more activities during processing.
Activities can be performed by either machines or by people. These activities can
be as simple as defining the sequence of pages in a web application, as complex
as managing documents or products that must be seen, altered, and approved by any
number of people, or as strict as meeting well-defined standard business practices
to be followed in an automated manner.
Many workflows by design must allow for human involvement. These types of workflow
can take long periods of time to complete, ranging from hours to months or longer.
People involved in the process may be unavailable, out-of-town, or busy with other
tasks; therefore, workflows must be able to persist themselves during periods of
inactivity and if inactive for too long be able to cause other actions to occur
by design. Furthermore, processes implemented solely using code can be difficult
for non-technical people to understand and for developers to change. This and other
factors are the target of generic workflow frameworks such as Windows WF. At Maren
Consulting we aim to make creating, altering, and managing workflows easier, both
by giving them a visual interface and by defining a common API.
The ability to host Windows WF in any type of .NET application (be it Windows Forms,
console applications, Windows Services, SharePoint, or ASP.NET Web applications)
means that your business logic can take whatever shape necessary to suit your needs.