FlowSpace® Workflow Developer
FlowSpace is an integrated development environment (IDE) for managing, developing, debugging, and deploying fully distributed, mobile workflows processes. FlowSpace provides integrated project management. It presents a familiar "tabbed notebook" that allows multiple related workflows to be organized into their own labeled project sections. You can also capture related design information with your project by attaching annotations, project notes, design documents, pictures, email, web pages, or other documents to your workflows.
The FlowSpace application runs within a Nouveau Alliance Collaboration Server workspace. To create a new FlowSpace workspace, you start the FlowSpace thin Java client, select a Nouveau Alliance Collaboration server where FlowSpace is installed, and create a FlowSpace workspace using the FlowSpace Notebook template. The FlowSpace client presents a familiar notebook with tab sections for organizing your workflows into projects.
Creating a Workflow
You can create a new workflow in any workspace in the peer network that provides a Workflow Automation Service, including the FlowSpace application workspace.
The new workflow appears as a new page in the current section of the notebook, immediately after the current workflow page. You can rename the workflow by clicking and editing the workflow tab.
Once you create a workflow, you add nodes and connections to the workflow to define its functionality. Nodes represent logical steps within your workflow. You can create completely new nodes, or drag and drop them from the library of pre-defined nodes managed by the Workflow Automation Service. The library allows you to classify nodes that perform related tasks into convenient categories. When you develop a useful node, you can drag and drop it into the appropriate category in the library to make it available to other workflows.
Connections specify how execution moves from one node to the next. You can connect nodes as you add them, or once you have finished adding nodes to the workflow.
The Workflow Automation Service's unique intelligent processing simplifies workflows. For example, you can either use traditional start/end and branch/fork/merge/join nodes, or omit them completely and let the Workflow Automation service determine the starting and ending node, and whether you are branching and merging, or forking and joining from the connections and link labels. No other workflow system provides this intuitive level of simplicity.
Developing a Node
Developing a node is easy. A node contains a sequence of activities that you use to define the node logic. With the extensive library of pre-built activities, you can usually develop the logic for a node without programming. You simply add one or more activities to the node and connect them by setting their properties. The result of one activity is used as the input to the next one. By connecting activiies, it is simple to develop sophisticated node logic without programming.
If you need new functionality, you can either import activities developed externally with your favorite Java IDE, or use FlowSpace's integrated activity editor to create and modify activities. The activity editor provides you with all the framework required for a new activity. You simply add the logic, and FlowSpace automatically compiles the activity and installs it in the activity library. The activity library allows you to classify activities that perform similar functions into convenient categories. Activities in the library can also be reused in other workflows anywhere in the peer network.
Running a Workflow
Once you create a workflow, FlowSpace enables you to create and run instances. You can run any number of instances of the same workflow. For example, each instance of a document routing workflow represents a document being routed to a group of people. You set properties for each instance to specify the document being routed and the group of people who receive it. An integrated management GUI within FlowSpace enables you to monitor all running instances, and keep track of their progress.
FlowSpace is the only workflow development system that provides an, integrated graphical debugger. You can single step nodes and activities, step into subworkflows, set breakpoints, and view or modify all current values during execution. The FlowSpace debugger also enables you to connect to and debug any workflow within the peer network, no matter where it is running.
Once you have developed a workflow, FlowSpace provides a range of ways to deploy it. The easiest is to make the workflow available in the workspace where you created it. FlowSpace enables you to run a workflow instance in a workspace using a workflow defined in any other workskspace in the peer network. For instance, the accounting department can define a standard cost analysis workflow that an engineer can run in one of his or her own local workspaces. Similarly, engineering can incorporate the accounting department's costing workflow as a subworkflow in their own workflow-enabled application. As accounting updates the costing workflow, the change is immediately available throughout the organization.
Using FlowSpace's ability to generate the Java source code for a workflow allows you to create and test a workflow within FlowSpace, then include the code to create an identical workflow within your application. FlowSpace can also generate Workflow Management Consortium (WFMC) compliant XML for your workflow. This enables you to use compatible tools to process the workflows you create and test within FlowSpace.
Collaborative Workflow Development
FlowSpace is the first and only workflow developement enviroment to support collaborative workflow development. Because it is built on the Nouveau Alliance Collaboration Platform, FlowSpace supports both synchronous and asynchronous collaboration. As you interactively create, test, and debug workflows, everyone can see the results in real-time. Everyone can share the same view of the workflow and its layout, or each person can customize his or her own view. It even allows team member to create their own notebook views and work in different parts of the same FlowSpace notebook at the same time. This unique capability goes way beyond simple screen sharing, to provide a complete development environment for for both local and distributed teams.
FlowSpace also provides collaboration tools to help teams work more effectively. Team members can add both text and audio annotations to individual workflow nodes or to the entire workflow to help coordinate and keep track of open issues. They can also add notes pages to the workflow, and even attach related documentation, including Microsoft Office or OpenOffice documents,PDF files, images, and web pages. Each appears as a separate tab on the workflow page. No other workflow development environment provides this unprecidented level of support for team-oriented workflow development.