![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Process Manager User's Guide
APPENDIX C
Activity An activity is a unit of work within a process model, representing a business task. On an operational level, an activity is a named operation with a signature that specifies the inputs, outputs, and possible faults associated with the operation. The activity is separate from its implementation. The implementation (which can be any Composer component type, or any Component service) performs a task on behalf of the activity.
Addressee The Addressee property (which exists only on the Web Service Receive activity type) provides a way to tag activity instances with a label, typically corresponding to the name of an individual in the organization.
Asynchronous A mode of operation in which work is done independently and in parallel with other work. (That is, there are no time-order dependencies between parties.) In software terms, an asychronous task executes in its own thread. The term "fire and forget" is often used when referring to a process that has been spawned asynchronously. See also Thread and Spawn, below.
Business Process Management (BPM) Business Process Management is the study of ways to model business functions in terms of their component activities and participant roles.
BPML Business Process Modeling Language: an XML grammar for describing workflow, created and managed by the Business Process Management Initiative (http://www.bpmi.org). It is roughly comparable in scope to WSFL. Process Manager follows WSFL closely; it does not adhere to BPML.
Call A call event is one of two lifecycle events that can invoke an instance of a process. (The other such event is spawn; see below.) Unlike a spawned process, which returns an instance ID immediately, a called process does not return until the process flow has completed. A call operation implies synchronous processing, whereas a spawn operation is equivalent to "fire and forget."
Choreography A particular set of sequenced operations is often colloquially referred to (in a business-process context) as a choreography. See also PIP, below.
Control Link A control link is the WSFL construct that defines a single step in the flow of control from one activity to another.It specifies the "activity traversal order" so that the workflow engine knows how to get from a given activity to the next one in sequence.
Correlation ID In Process Manager, a Correlation ID is an arbitrary user-specified string or number that can be used to associate data in a given message part with a transaction context. Correlation ID is a common term for this kind of user-defined label, but it is not a formal WSDL or WSFL concept.
Cyclic Graph A cyclic graph is a graph that permits links from downstream nodes back to upstream nodes, forming a loop. Such graph patterns are not allowed in Process Manager.
Data Link A data link is an atomic unit of data flow, specifying one or more data sources along with one or more data targets. The sources and targets are activities within the running process. While in most cases data flow will mirror control flow, it is possible that data can bypass certain activities in a flow or arrive at a target by a more direct path than might be specified in the control flow. Hence, data links do not always follow control links.
Dead-Path Elimination Dead-path elimination refers to the special lookahead operation that the Process Server conducts every time a conditional expression (a link condition, for example) evaluates to false. When flow along a given path is no longer possible due to a false link condition, all downstream links must be marked as false so that joins can be evaluated in the course of operation. (The path goes from being dead to being known-false.) If this were not done, downstream joins could hang indefinitely.
Exit Condition An exit condition is a boolean value (determined by runtime evaluation of user-supplied XPath logic) that indicates whether a given activity executed normally. Outgoing control links cannot be followed until and unless the exit condition is true. If the exit condition is false, the activity will execute again (if allowed by the timeout and retry settings).
Factoring In programming, factoring is the attempt to split code into smaller, more generic (and thus reusable) units of work.
Fan-Out A type of execution pattern in which a collection of N discrete works items gives rise to an asynchronous invocation of N instances of a particular process designed to work on the work items.
FlowInstanceID Every WSFL process that is invoked via a spawn operation is required to return a unique FlowInstanceID to the caller immediately. This ID can be a timestamp or can be an arbitrary string, but it must uniquely identify a particular instance of a running process. This value is used as the input value of other lifecycle operations (such as enquire; see Lifecycle Interface, below).
Flow Model The flow model is the XML representation of the directed graph that models the business process. In other words, it is the all-encompassing set of activities, control links, and data links that comprise a given process. A flow model makes the choreography of a process explicit, such that an execution engine can instantiate the process at runtime and understand how to manage the flow of control over the process's lifecycle.
Graph An abstract visual representation of a system of nodes. In Process Manager terms, a graph of a process is what you draw on the Process Designer canvas.
Implementation The concrete realization in software of an activity. Every activity must have an implementation.
Join Condition When two or more activities target the same successor activity, the decision of whether the successor activity can be invoked may depend on factors that can be evaluated only when upstream activities have finished executing. The runtime engine makes this decision based on user-supplied logic in a join condition. The join condition takes as input the respective boolean values (or "truth values") of incoming links. It performs some user-specified set of logical operations on the link values and returns true or false. A true condition means that the join target will be invoked. False means that control flow ends at the join. Note that unlike link and exit logic (which both use XPath), join logic is expressed in a simple pseudocode-like boolean logic. The join condition, in other words, has no knowledge of messages or message parts (nor any data whatever). It only knows about link boolean values.
Lifecycle Interface The Lifecycle Interface is the WSDL-defined web service interface that describes the basic set of operations that all WSFL processes must support. These operations include spawn, call, suspend, resume, enquire, and terminate. These operations are global in scope (they apply to the process-as-a-whole) and can be managed administratively.
Link Condition A link condition is an XPath expression that resolves to a boolean value. Its value determines whether a given link can be traversed by the process engine at runtime. The XPath expression typically utilizes data from an upstream activity's output.
Long Running Some processes can take days or weeks to run to completion. Such processes are called long-running.
Map Policy A map policy specifies how data should be mapped in the special case where two or more data links target the same message part(s). A policy of Last Writer Wins (LWW) means that newly arriving data will overwrite older data. A policy of First Writer Wins (FWW) means that once any data have been written, data arriving later will be ignored. Map Order means that for any given incoming message, XPath-to-XPath mappings will occur in the order listed in the Messages tab of the activity's property sheet, completely ignoring timestamps.
Message In WSFL and WSDL, a message is an abstract definition of a bundled set of data. The logical parts that are bundled together as part of the message structure are known as message parts (see below). Activities operate on messages; hence, the interface to an activity can be specified in terms of its input and output messages.
Message Part In WSFL and WSDL, a message part is a logical unit of a message. In Process Manager terms, the parts correspond to XML documents that activity implementations can inspect, modify, and transform into new parts of new messages.
Metadata Data about data. In Process Manager terms, the metadata representation of a process is a non-visual XML representation of a given process's actual structure and attributes. The metadata blueprint of a process is used by Process Server to construct process instances at runtime.
Notification A one-way operation is a web service execution pattern in which the service proactively sends a message, with no expectation of a response. It is "fire and forget" pattern. However, it is often used in conjunction with the One-Way pattern (see below) in order to complete an asynchronous roundtrip communication with a partner. In such a case, the web service that implements the Notification pattern will typically embed correlation information in the outgoing message, so that information received in a later One-Way operation can be "matched up" with the transaction context of the Notification. See also One-Way, below.
One-Way A one-way operation is a web service execution pattern in which the endpoint receives a message (but does not send one back to the initiator). The one-way web service is a passive receiver. See also Notification.
Operation In WSDL, an operation is a specified sequence of message transfers (described in terms of named input messages and output messages). See also Port Type, below.
PIP® RosettaNet Partner Interface Processes: a set of de facto industry standards that define business interaction patterns between trading partners. The interaction patterns include sequencing and timeout rules for various kinds of common business transactions. The patterns, because of their intricate sequencing (time domain) requirements, are often called choreographies.
Port Type In WSDL, a port type is a named set of operations. (An operation, in turn, is a specification of a particular time-order sequence of particular messages.) Four port types are supported by WSDL: One-Way, Request-Response, Solicit-Response, and Notification. (See individual definitions of these items.)
Process A description of the activities, control-flow patterns, and data-flow relationships involved in performing a particular business task. WSFL (see below) describes processes as web services compositions. It is assumed, in WSFL, that processes (or workflows) are automated.
ProcessID A number that uiniquely identifies a process instance (a running process) within the Process Server at runtime.
Request-Response A request-response operation is a web service execution pattern in which the service receives a message, then sends a (correlated) message back to the initiator. The request-response web service is a passive receiver. It responds with an output message.
RosettaNet A non-profit industry organization dedicated to "the adoption and promotion of open content and open transaction standards in electronic commerce across the Information Technology (IT), Electronic Components (EC) and Semiconductor Manufacturing (SM) supply chains." See http://www.rosettanet.org/ for details.
Semaphore A flag value meant to signal the availability or unavailability of (typically) a function or file, in the context of the file's lock status.
Service Provider A service provider is the party responsible for performing a particular activity within a business process.
Service Provider Type In order to maintain separation between the definition of a business process and its implementation, WSFL defines activities as being implemented by abstract service provider types rather than by specific service providers (which can later be mapped to the types). The service provider type and its associated interface are defined by a WSDL document. Service providers must properly implement a given web service interface in order to handle a particular activity in the business process.
SOAP Simplified Object Access Protocol: a lightweight XML-based protocol for exchange of information in a distributed environment. The protocol definition consists of three parts: an envelope that defines a framework for describing what is in a message and how to process it, a grammar for specifying application-defined datatypes, and a grammar for representing remote procedure calls and responses.
Solicit-Response A solicit-response operation is a web service execution pattern in which the service sends a message proactively, then receives a response. In this scenario, the web service is an initiator of a transaction. Since a response from a participant is required as part of the pattern, this type of web service is assumed to execute synchronously. (That is, on sending its message, it blocks until the reply message comes back.) See also Request-Response, above.
Spawn Spawn is a WSFL-defined lifecycle operation that allows one-way (asynchronous) invocation of a process. (The corresponding synchronous launch event is the call event. See further above.) When a process is spawned, it returns a result (the Process ID) immediately.
Subprocess A process that has been called by another process.
Synchronize Subprocesses Activity The Synchronize Subprocesses Activity is one of Process Manager's core activity types. It is a special-purpose activity type designed to aid in the collection and collation of data from multiple spawned instances of a component. The implementation to the activity is often called a "merge component," because it typically merges incoming data. The Synchronize Subprocesses Activity thus constitutes the "fan-in" piece in a fan-out/fan-in scenario.
System Fault
The runtime engine raises a System fault when an activity implementation generates an unhandled exception; or a subprocess activity returns a fault message; or the runtime engine encounters a message or message type that it doesn't know how to handle; or a Timeout fault occurred and was not handled by an activity designed for that purpose. (In this case, two faults are actually generated: one Timeout and one System.) When a System fault occurs, the process instance produces a message called _SystemFault, with a part name called (also) _SystemFault
.
Thread An execution context with no time-order dependencies on other operations occurring in other contexts.
Transition Condition (Link Logic) As a process is run, the execution engine must be able to recognize when a particular activity is finished, identify the next activity in the flow, and make a decision as to whether the next activity should be invoked or not invoked, based on user-specified transition logic. A transition condition determines whether flow should continue along the current path. The transition condition is specified in XPath and always evaluates to true or false.
UDDI Universal Description, Discovery and Integration specification (maintained by http://www.uddi.org).A scheme for exposing business services via web-based registries.
Waiting Activity Any time an activity (such as a subprocess or Web Service Receive activity) is in a wait state, waiting to receive a response to some request that was made asynchronously by another activity, it is said to be a waiting activity.
Web Service Receive The Web Service Receive Activity is one of the core Process Manager activity types. It is a passive, "listening" activity type meant to implement the Request-Response or One-Way transaction patterns described by WSDL.
Web Services Composition A process model based on web services. Essentially, any WSFL process.
Workflow In the context of BPM, a workflow is a process. WSFL favors the term process because its authors anticipate that most automated workflows will rely, ultimately, on Web Services. (In more traditional workflow systems, activities tend to center around human-mediated activities.)
WSDL Web Services Description Language: An XML format for describing web services as a set of endpoints operating on messages. The operations and messages are described abstractly, then bound to a concrete network protocol and message format to define an endpoint. Related concrete endpoints are combined into abstract endpoints (services). Services are thus defined using six major elements: types, message, portType, binding, port, and service.
WSFL Web Services Flow Language: An XML format for describing workflow processes as linked activities. The activities may be web services, or other workflow processes.
Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved. more ...