|
|
|
K2 Blackpearl and .NET 3.0
K2 blackpearl is built on the Microsoft .NET 3.0 platform to create a
comprehensive platform for designing, building and deploying Business Process
Applications (BPAs). Both .NET 3.0 and K2 blackpearl support a new approach to
application development - simplifying the process of delivering business
applications.
K2 blackpearl leverages the core technologies of .NET 3.0 - Windows Workflow
Foundation, Windows Communications Foundation, and Windows Presentation
Foundation - to provide context rich tools bringing together business and
technical experts, enabling them to create true business solutions. This paper
reviews the .NET 3.0 technologies, the way K2 blackpearl uses them, and how the
synergy between K2 blackpearl and .NET 3.0 can be exploited to create
customized solutions.
.NET 3.0
WINDOWS WORKFLOW FOUNDATION
THE K2 [BLACKPEARL] APPPLICATION PLATFORM
K2 [BLACKPEARL] AND THE WINDOWS WORKFLOW
FOUNDATION
WORKFLOW IN K2 [BLACKPEARL]
K2 [BLACKPEARL] AUTHORED WF WORKFLOWS
WHAT MAKES K2 [BLACKPEARL] WORKFLOWS
DIFFERENT?
.NET 3.0
The .NET 3.0 technology platform simplifies the creation of connected systems
by:
-
Integrating workflow into general application development by providing Windows
Workflow Foundation (WF) programming model and tools. WF abstracts the
application logic and makes it easier to understand, modify and manage.
-
Enabling service orientated applications, providing a reliable and secure
message based communications model, through Windows Communications Foundation
(WCF), designed to work across multiple platforms and integrate various
applications.
-
Supporting an integrated and rich user experience via Windows Presentation
Foundation (WPF), designed to integrate and display data and information from
various sources.
WINDOWS WORKFLOW FOUNDATION
Windows Workflow Foundation (WF) is not a server or an application, but the
framework used to build an application or a server with workflow capabilities.
WF is an in-process engine that runs inside a host process. The host process is
responsible for providing a set of services to Windows Workflow Foundation. A
wide variety of potential host processes are available on the Windows platform
including console applications, Windows applications, Web applications, Web
services applications, SharePoint Server and NT Service applications.
Effectively, any executable process can host the Windows Workflow Foundation.
WINDOWS COMMUNCATION FOUNDATION
Windows Communication Foundation (WCF) is the definitive model for distributed
programming on the Windows Platform. WCF unifies a number of the existing
technologies, including attribute based programming, .NET remoting, and message
oriented programming, to create a single API. This makes it possible to support
transactions in a single message based technology (programming in .NET) without
compromising the application’s reliability, availability or security.
WINDOWS PRESENTATION FOUNDATION
Windows Presentation Foundation (WPF) integrates various presentation elements
– such as 2D, 3D, sound, animation, effects, documents, and User Interface (UI)
– to create a unified API which lets developers deliver a superior user
experience for Windows applications. It uses a consistent programming model for
incorporating all these elements into the presentation layer of the
application.
WPF also introduces declarative programming through XAML (Extensible
Application Markup Language). This lets a development team separate the look
and feel of the application from the underlying business logic. This allows
designers to collaborate with developers to deliver a better user experience.
In addition WPF uses vector based graphics rendering, which results in dynamic
graphics and presentation for an application. WPF also has other features such
as layout, styling, and data binding, which, when you mix with interactivity,
enables truly interactive data visualization.
THE K2 [BLACKPEARL] APPLICATION PLATFORM
K2 blackpearl is the next generation of K2.net 2003 (the leading enterprise
workflow server for the .NET platform). K2 blackpearl enhances and extends the
.NET 3.0 framework to make it easier and quicker for businesses to design,
build and deploy the IT solutions they need. With K2 blackpearl, enterprises
can concentrate less on how to create the optimal business process application
and more on how the application supports and optimizes the way people work.
K2 blackpearl provides the complete set of tools necessary
for designing, building, deploying and managing a business process application
(BPA). K2 blackpearl features and functionality are geared towards providing a
total business process application platform, and include:
-
Support for discovering and building business process application
collaboratively, through multiple complementary design canvases
-
Seamless integration into the Microsoft Office 2007 platform, particularly
SharePoint, to extend Business Process Application modeling to the ubiquitous
Microsoft platform. This includes management of sites, libraries, lists, and
content types in SharePoint.
-
Extensive form building and capabilities using a variety of technologies,
including InfoPath 2007 forms in the browser or client, ASP.NET forms, and
custom Windows Forms
-
Rich and easily integrated reporting tools, enabling report creation and
generation using data from multiple backend systems. This allows managers to
see all of their business data in one place.
-
Efficient integration and management of line of business data, unstructured,
and ad-hoc data into business process applications
-
Abstraction of business logic in the form of Rules and Policies. This allows
Business Processes to reuse common business logic (e.g., routing based on Time
Zones and Working Hours, and automatic escalations) and localize processes to
different regions or departments.
-
Comprehensive process management (including versioning, process instance
management and role management), auditing and granular security configuration
(at process, role and user level) support
-
Automatic server upgrades (K2.net 2003 to K2 blackpearl) on install, the
ability to model hybrid K2.net 2003 - K2 blackpearl processes, and the ability
to reuse K2.net 2003 templates in new K2 blackpearl processes
-
General platform functionality including management tools for the application
build and deploy cycles , Visual Studio integration, provision of relevant host
servers, object browsers, SDKs, and environment libraries
K2 [BLACKPEARL] AND THE WINDOWS WORKFLOW
FOUNDATION
In building the Windows Workflow Foundation, Microsoft
abstracted and consolidated the following core workflow concepts that can be
used across multiple types of applications:
-
Design and visualization.
In WF workflows are trees of actions (individual work items called activities).
In this way the logical path of any application is shown – with representations
for both machine and human actions. The workflow tree can be manipulated
directly or as an object model.
-
Hosting.
The WF runtime is lightweight and is typically hosted in a client context – in
a rich application such as SharePoint Server. Interaction with the host is
facilitated through provider interfaces for services such as threading,
transactions, persistence, and communications.
-
Semantics. WF supports three main styles of workflow out of
the box: sequential, state machine, and rules driven.
WORKFLOW IN K2 [BLACKPEARL]
K2 blackpearl builds on the experience gained with K2.net
2003 and offers a more comprehensive process-centric application platform. Key
services of the K2 blackpearl Executor Service layer, which is built in .NET
code and hosts WF, are shown in Figure below:
K2 [BLACKPEARL] AUTHORED WF WORKFLOWS
As mentioned before WF requires a host environment for the WF runtime engine.
This separates the management of the execution of a specific workflow from the
management of the environment in which it will execute. The WF runtime engine
is typically hosted in SharePoint, ASP.NET, or a custom application server
(such as K2 blackpearl).
WF enables the host application to build on base functionality provided in the
WF runtime engine. K2 blackpearl makes use of the scheduling functionality and
provides more comprehensive server functionality in its own runtime engine. For
an overview of the K2 blackpearl server functionality, refer to Figure below.
The K2 Studio development experience fully integrates the WF Workflow Designer
at both design time and for debugging. K2 blackpearl seamlessly switches
between debugging the K2 blackpearl artifacts on the process design surface to
the WF Workflow Designer all the way down to the code, including code behind
XAML as well as various extenders. An extender is a program or component that
integrates into Visual Studio to extend the functionality and make the K2
blackpearl functionality and features available.
K2 blackpearl extends the Sequential Workflow designer to add visual cues to
identify which activities were created by K2 blackpearl wizards.
For each process K2 blackpearl generates and manages the WF
schedules, and uses the WF scheduling service to manage the execution of
specific activities. Figure below shows the lifecycle of an activity in a WF
schedule.
When designing a process or workflow in K2 blackpearl it is possible to use all
existing WF compatible activities including 3rd party activities. The reverse
is not true. K2 blackpearl activities are not accessible from a WF designer. K2
blackpearl activities can only be modified and extended within the context of a
K2 blackpearl activity. Once a K2 blackpearl process has been created, the WF
schedule and code can be modified from within a WF designer hosted in K2
Studio. This is facilitated through the use server definitions which are
essentially dlls with pointers to the relevant executable code modules.
The following diagram illustrates how a K2 blackpearl process leverages WF.
WHAT MAKES K2 [BLACKPEARL] WORKFLOWS
DIFFERENT?
At first glance it may seem as if workflows in K2 blackpearl and WF are very
similar in that both use activities and paths (or lines) to guide the flow of
work. However, the difference lies in the complexity and function of the
activities and lines. A K2 blackpearl activity consists of:
-
-
Preceding Rules –
Defines the time independent conditions that need to be met before the actions
/ events associated with the activity can be taken
-
Start Rules –
Delays the activity for a set interval or until a specific date and time
-
Destination Rules –
Defines who will be responsible for taking action
-
Succeeding Rules –
Defines at which point the activity can be considered complete
-
Events –
The type of action(s) required to complete this activity (e.g., a Client Event
requires user interaction, Server Mail Event sends an automated e-mail)
-
XML and Data Fields –
The fields storing the data being manipulated by the activity
-
Actions –
What the user would do within a task (e.g., approve the document, decline the
expense report)
-
Outcomes –
The result of the user actions (e.g., document approved, expense report
rejected)
-
Escalations – Actions to be taken when the activity is not
completed by the business acceptable deadline
Figure above illustrates how a significant amount of the process logic is
configured within an activity. The activity also resembles a work activity more
closely – making it easy to identify the actions, outcomes and consequences of
completing (or not) a task in time.
K2 blackpearl also abstracts all rules into reusable logic, making use of a
proprietary policy and rules engine, to determine the flow of activity within
the processes – that is, for evaluating line rules and other activity rules. If
needed, WF Rules can be used (or linked in) through manipulation of the in-line
code.
|
 |
| Subscribe |
|
|
To get updated product news and information on our new
events, please enter your email address and click submit.
|
|
| Email Address: |
|
|
|
|
|
| |
| |
 |
| U.S Office Location |
|
|
Inobits, Inc.
|
|
600 Anton Blvd. 11th Fl.
|
|
Costa Mesa, CA 92626
|
|
|
Phone: (714) 371-4232
|
|
Fax: (714) 371-4001
|
| |
|
|
| |
|
|