Windows Workflow Foundation

Windows Workflow Foundation

Windows Workflow Foundation (WF) is a Microsoft technology for defining, executing, and managing workflows. This technology was first released in November 2006 as a part of .NET Framework 3.0 which is available natively in the Windows Vista operating system, and can be installed on Windows XP SP2, Windows Server 2003 and Windows Server 2008 operating systems.

Workflows, like traditional programs, allow you to coordinate work but have some important differences.
*Workflows can handle long running work by persisting to a durable store, such as a database, when idle and loading again once there is work to do
*An instance of a workflow can be modified dynamically while running in the event that new conditions require the workflow to behave differently than it did when it was created
*Workflows are a declarative way of writing programs by linking together pre-defined activities rather than an imperative programming model of writing lines of code
*Workflows allow you to declare business rules that are separated from your code making it easier for you to modify them in the future
*Workflows support different styles of systems with sequential and state machine workflows

Microsoft has indicated that workflows are going to be a cornerstone of the future Service Oriented Architecture platform announced in October 2007 codename Oslo

Authoring Workflows

A new XML-based language called XAML is commonly used for declaring the structure of a workflow. However, the workflow may also be expressed in code using any .NET-targeted language (VB.NET, C#, C++/CLI, etc.).

WF provides .NET developers with the ability to separate the logic of their application from the underlying execution components, thus providing a clearer, more manageable representation of the application. This approach lends credence to the growing process-driven application methodology which aims to separate an application's logical flow from its executable components at an enterprise level.

Workflows comprise 'activities'. Developers can write their own domain-specific activities and then use them in workflows. WF also provides a set of general-purpose 'activities' that cover several control flow constructs.

Windows Workflow Foundation is supported by a companion set of extensions to Visual Studio 2005. These extensions contain a visual workflow designer which allows users to design workflows, a visual debugger which enables the users to debug the workflow designed, and a project system which enables the user to compile their workflows inside Visual Studio 2005. In Visual Studio 2008 WF functionality is included.

Moving data through Workflows

Activities that require or provide data can use properties to expose them, and enable the Workflow author to bind them to the containing workflow by declaring 'dependencies'.

Hosting Workflows

The .NET Framework 3.0 "workflow runtime" provides common facilities for running and managing the workflows and can be hosted in any CLR application domain, be it a Windows Service, a Console, GUI or Web Application.

The host can provide services like serialization for the runtime to use when needed. It can also hook up to workflow instance's events such as their becoming idle or stopping.

Communicating with Workflows

WF provides several ways to communicate with a running instance of a Workflow:
*A Windows Communication Foundation approach to workflow communication was added in .NET Framework 3.5. Workflows which include a ReceiveActivity expose a selected interface method as a WCF service. This could allow external code to, for example, make a Web Services call to a running workflow instance. WF provides infrastructure to ensure that if a WCF call is made to a workflow instance that is idle (i.e. waiting for some external event like a WCF call or a timer event), then the instance will be loaded from storage into memory so that the message can be delivered. Workflows which include a SendActivity are, in turn, able to call external services via WCF.
*When a workflow instance is created, the host application can provide information in Dictionary objects. Similarly, the Workflow can pass the results of the workflow to the Host application through a Dictionary Object.
*The Workflow foundation also allows the Workflow to update the Host application of the progress of the workflow. this is done by raising events in the Workflow to which the host application will subscribe.

Types of Workflows

Using the WF foundation, three different types of Workflow can be created:

* Sequential Workflow (Typically Flow Chart based, progresses from one stage to next and does not step back)
* State Machine Workflow (Progress from 'State' to 'State', these workflows are more complex and return to a previous point if required)
* Rules-driven Workflow (Implemented based on Sequential/StateMachine workflow. The rules dictate the progress of the workflow)

WF Related project types in Visual Studio 2008

* empty workflow project
* sequential workflow library
* sharepoint 2007 state machine workflow
* state machine workflow library
* sequential workflow console application
* sharepoint 2007 sequential workflow
* state machine workflow console application
* workflow activity library

Books

* Dharma Shukla, Bob Schmidt: "Essential Windows Workflow Foundation", Addison-Wesley Professional, 13 October 2006, ISBN 0-321-39983-8
* Michael Stiefel: "Building Applications with Windows Workflow Foundation (WF): Basics of Windows Workflow Foundation (Digital Short Cut)", June 5 2007, Addison-Wesley, ISBN 0-321-51454-8
* Brian Noyes: "Developing Applications with Windows Workflow Foundation (WF) (Video Training)", June 7 2007, Addison-Wesley, ISBN 0-321-50313-9
* Brian R. Myers: "Foundations of WF", Apress, 23 October 2006, ISBN 1-59059-718-4
* Bruce Bukovics: "Pro WF: Windows Workflow in .NET 3.0", Apress, 19 February 2007, ISBN 1-59059-778-8
* Todd Kitta: "Professional Windows Workflow Foundation", Wrox, 12 March 2007, ISBN 0-470-05386-0
* Kenn Scribner: "Microsoft Windows Workflow Foundation Step by Step", Microsoft Press, 28 February 2007, ISBN 0-7356-2335-X

Localised links

* [http://msdn2.microsoft.com/en-us/library/ms735967.aspx MSDN Library: Windows Workflow Foundation]
* [http://workflowfoundation.blogspot.com Workflow Foundation blog] sv


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • Windows Workflow Foundation — Entwickler Microsoft Aktuelle Version 4.0[1] (21. Februar 2011) Betriebssystem Version 3.x: ab Windows XP mit SP2 Version 4.x: ab Windows …   Deutsch Wikipedia

  • Windows Workflow Foundation — WF в составе .NET Framework Windows Workflow Foundation (WF) представляет собой технологию компании Microsoft для определения, выполнения и управления рабочими процессами (англ. work …   Википедия

  • Windows Workflow Foundation — Pile MS .NET WF (Windows Workflow Foundation) est une technologie Microsoft pour définir, exécuter et gérer les workflow. Elle est l un des composants de .NET 3.0 et est utilisable nativement sur Windows Vista. Il est aussi possible de l… …   Wikipédia en Français

  • Windows Presentation Foundation — (WPF) (nom de code Avalon) est la spécification graphique de Microsoft .NET 3.0. Il intègre le langage descriptif XAML qui permet de l utiliser d une manière proche d une page HTML pour les développeurs. WPF est pré installé avec Vista. Il est… …   Wikipédia en Français

  • Windows Driver Foundation — Разработчик Microsoft Операционная система Windows Языки интерфейса Английский Последняя версия 1.9 Состояние Active Windows Driver Foundation (WDF)  набор программных инструментов от корп …   Википедия

  • Windows Presentation Foundation — WPF в составе .NET Framework Windows Presentation Foundation (WPF[1])  система для построения клиентских приложений Windows с визуально привлекательными возможностя …   Википедия

  • Windows Communication Foundation — The Windows Communication Foundation (or WCF) is an application programming interface (API) in the .NET Framework for building connected, service oriented applications.[1][2] Contents 1 The architectures 1.1 Endpoints …   Wikipedia

  • Windows Communication Foundation — Проверить нейтральность. На странице обсуждения должны быть подробности …   Википедия

  • Windows Presentation Foundation — This subsystem is a part of .NET Framework 3.0 Developed by Microsoft, the Windows Presentation Foundation (or WPF) is a computer software graphical subsystem for rendering user interfaces in Windows based applications. WPF, previously known as… …   Wikipedia

  • Windows Longhorn — Windows Vista Famille Microsoft Windows Type de noyau Noyau hybride État du proje …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”