Home
KnowledgeLake
K2 Introduction
K2 Training
K2 Training Calendar
K2 Open Enrollment
Services
Customers
Partners
Press
Company
Job Opportunities
Downloads
Site Map
About Us
Contact Us
 

History 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.

WWF

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:

WWF

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.

WWF

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.
WWF

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.

WWF

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

WWF
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