|
Process Designer Questions
-
How
can Business Users model Business Processes
using graphical Designer for developer
implementation?
Workflow.NET provides the Process Designer
for designing the workflows, using a set
of standard actions. The workflow process
can be designed by any user. In case any
custom action is to be added, a developer
has to implement an interface and configure
the actions.xml file to include this action.
Once this is done, the users can include
this action in the workflow process.
-
How
can the controls retrieve and submit data
from a running process?
The Content collection can be used to
submit data to the running process and
Variable collection can be used to retrieve
data from the running process.
-
Can
we store workflow designs as templates
to be used to create other workflows?
Workflow templates can be stored by Exporting
the workflow design. These templates will
have process design information in the
XML format. Importing these stored templates
will restore the Workflow design. The
workflow should be deployed first before
executing or instantiating. Various versions
of a workflow can also be exported and
stored.
| |
 |
Engine Questions
-
Is
there functionality to add escalation
and alerts
The actions like Approval, CheckList etc
have various timeouts which can be set,
and the task scheduler takes care of the
escalations.
-
Do
we have programmatic control over what
will happen in the event of an escalation
- i.e., can we execute our own assembly/code
at this point?
Yes we can have complete control over
the escalation events. The escalation
events are handled by a task scheduler.
The task scheduler accepts the assembly,
class name of the task for escalation.
The class has to implement an ITask interface.
-
I
am not receiving notification emails
You might not have configured the SMTP
server in the configuration file. By default
the SMTP host will be 'localhost'. Please
open the WorkflowNET.Config.Xml file under
the Workflow.NET directory and edit this
tag. The host attribute should be the
name or ip address of your smtp server.
I hope you should start getting the emails,
after you update the configuration file.
-
Questions
related to the ability to define our own
authentication class (preferably an interface
or abstract class)
The execution of the workflow and viewing
of the activity list accepts the user
id. The authentication can be done from
the application, and the user id can be
passed to the workflow client and the
activity list.
-
How
can you check if any errors occurred during
the Workflow execution? How are errors
handled?
All the errors during runtime are handled
by the engine. In case of database failure
the engine tries to make repeated attempts
at a certain interval, to access the database.
All the errors are logged to a log file.
The errors can also be viewed using the
SkeltaLoggerConsole. The skelta logger
console can be used to easily monitor
the activities of the engine, and all
the errors, warnings and information are
classified and logged to the log files
and the application event log.
-
What
steps need to be followed in order to
build a workflow capability into an existing
business process using Skelta Workflow.NET?
Skelta Workflow.net is a workflow management
tool that can be integrated to your existing
application,as you have seen in the sample
leave application,the starting Point for
Workflow has to come from the application(When
Leave Submission Happens). If we take
in to Consideration (MVC) I) 1) Skelta
Itself provides view called ActivityList
for the actions which needs User Interaction
(Example:Approval or Tasks) 2) But the
Application View from where skelta starts
has to be developed in the application(employee
purchase request form). 3) Once the Form
is submitted Workflow is alerted about
the Start of Workflow,From that Point
onWards the Flow is taken care by workflow,the
approval assigned to resource is displayed
in the activitylist for that resource.
(ActivityList needs to be Integrated to
the Existing Application as in the sample)
4) BuiltIn ActionsHandlers acts as the
Controller,the decision (Approved or Rejected)
for the approval action is taken from
the action handlers. 5) The Engine which
acts as the Model is alerted about the
decision and engine decides what action
to be executed next based on workflow
designed.
| |
 |
Database Questions
-
Does
Skelta Workflow.NET have the ability to
integrate with our own existing user database
(LDAP SUN) for interaction with workflow
tasks?- this would preferably be in the
form of an interface/abstract class which
we would extend /provide our own implementation
for.
The database can be configured for each
application, and resource handler, it
could be ldap or any database. We are
providing a resource handler for active
directory. For other data sources, the
handlers can be implemented and configured.
- Does
Skelta Workflow.NET rely on any external
components for back end data sources?
Workflow.NET does not rely on any external
component. It can work with Any RDBMS be
it SQL SERVER , ORACLE or MSAccess.
-
Does
Skelta Workflow.NET have the ability to
integrate with/pull data from (SUN) LDAP
Directory for USER data - i.e., allow
for custom implementation of a User data
source?
Workflow.NET provides an interface which
has to implemented for using a custom
resource handler. Currently, Workflow.NET
provides the database handler and an active
directory resource handler. The custom
resource handler has to be configured
in the WorkflowNET.Config.xml file for
the application.
- Is
there a fail-safe mechanism for back up
and recovery of process state data (SQL
SERVER backups)?
All the workflow execution and the activity
data are stored in the database and backups
can be taken.
-
Is
there a backend data layer based on SQL
Server that can be backed up regularly?
Any RDBMS can be used, currently tested
for the products like SQL Server and Oracle.
The data handlers can be easily developed
(implement an interface) and configured
for the other database drivers.
-
Can
Skelta Workflow.NET 2004 function without
a database?
Skelta Workflow.NET does require a database.
It has more than thirty tables for storing
design, execution, activity, transaction
and schedule details. Using these tables,
audit data are shown in Skelta Report
Control. The entire data in Skelta Workflow.NET
is persisted in database. We support Oracle
8i & MS SQL and can work with any ODBC
compliant database. XQuery can be used
from actions within the process. This
would be a custom action & would have
to be developed.
| |
 |
Admin Questions
-
How
can administrators handle the monitoring
and administration of workflows in Skelta?
The status and reporting control provides
all the information of the workflows both
executing and completed. The actions like
Approval, Checklist, Tasks, ResourceSet
have a feature where in the various timeouts
can be set. Appropriate action can be
assigned for the timeouts. The task can
be forwarded to another user. The user
or administrator can mark the holidays
for a resource and also select an alternate
resource for a resource. All the tasks
get forwarded to the alternate resource,
when a resource is not available.
-
What
options are available to handle workflow
tasks that are overdue from the currently
assigned task owner? Is there a provision
to reassign the task to a new user or
apply alerts/escalation methods?
The status and reporting control provides
all the information of the workflows both
executing and completed. The actions like
Approval, Checklist, Tasks, ResourceSet
have a feature where in the various timeouts
can be set. Appropriate action can be
assigned for the timeouts. The task can
be forwarded to another user. The user
or administrator can mark the holidays
for a resource and also select an alternate
resource for a resource. All the tasks
get forwarded to the alternate resource,
when a resource is not available.
- Can
I access administration functionality through
framework (API)?
All the workflow executions and their details
are stored in the database. The status of
the workflow can be obtained by querying
the tables.
-
Is
it possible to query running/completed
process data through API or directly through
Database Queries?
All the workflow executions and their
details are stored in the database. The
status of the workflow can be obtained
by querying the tables.
-
How
is process data stored in the Database?
Is it in a form that allows querying?
All the workflow executions and their
details are stored in the database. The
status of the workflow can be obtained
by querying the tables.
| |
 |
Appearance (Web UI related)
Questions
-
Are
the Skelta Web User Interfaces reusable,
i.e., can forms be built once and re-used
in either editable or read-only views
to capture and/or display information?
The activity list control displays and
captures the information. The custom document
view can be added by the user.
- Does
Skelta Workflow.NET provide total control
over the presentation layer i.e., does it
have a set of controls that allow us to
easily build UI's that allow user's to add/view/modify
workflow data items?
The workflow.net uses the html templates
with CSS and place holders, which can be
easily customized.
-
Can
we implement our UI as ASP.NET pages?
Can we add our own control logic for the
UI?
Yes, the UI has to be implemented as ASP.NET
pages. Skelta Workflow.NET provides controls
which can be dragged and dropped on to
the ASP.NET pages. The UI for the Skelta
Workflow.NET controls is taken from the
HTML templates with place holders, which
can be easily customized.These files can
be customized or replaced, but the HTML
should have the place holders.
-
Will
we be able to hide all branding of the
underlying workflow engine, especially
in the workflow designer which will be
presented to the end user as an application
front end?
Skelta Workflow.NET is completely embeddable.
The HTML templates can be customized by
removing or hiding the images or text
in the templates to meet the above requirements.
The color scheme can also be changed as
the style sheet file is also attached
along with the product element folder.
The ASP.Net Server control components
in Skelta Workflow.Net hides any presence
of our Engine working in the background.
| |
 |
API Questions
-
Does
Skelta Workflow.NET have a robust framework
(API) for interacting with a Business
Access to Process Data - user input process?
The Workflow.NET can get the action property
values through the context object. The
user can also submit the html form data
to the workflow as xml content. The xml
content can be added to the workflow using
the designer. Once the content is configured,
the data is accessible to the runtime
through the content collection.
-
Can
any other functionality be accessed through
the API i.e., re-assigning workflow items
(tasks) to different users, redirecting
workflow down a different path etc?
The resource or an administrator can select
an alternate resource and mark his holidays
and worktimings on a calendar. The workflow
depending on the availability of the resource
decides whether the task has to be assigned
to the alternate resource. Functionality
to check if the resource is available
at a point of time, the alternate resource
for a resource and the resource calendar
details are exposed through an api. For
redirection, the workflow provides a feature
of conditional routing. Based on the output
of an action in the workflow, the execution
of the next action happens. Actions like
script, approval, com object, shell, checklist
etc use conditional routing. For eg, for
an approval, the workflow can take two
different paths (approved, rejected).
This conditional routing can also be done
for any action. To specify that a particular
action supports conditional routing the
user needs to edit a configuration file,
and specify the possible return values
in the process designer. The process designer
automatically adds the conditions for
the links leading from this action.
- Is
there a robust and complete API that allows
programmatic access to all of the workflow
administration functions in Skelta Workflow.NET?
The workflow can be initiated, switched
to sleep mode and reinitiated through an
api. The status engine shall provide the
status of all the workflow executing.
-
Can
we submit approval, rejection or acceptance
to the workflow engine through an API?
It is possible to make approvals or rejections
using APIs. By providing relevant data,
it is possible to retrieve the entire
information related to any Key Action
in Skelta Workflow.Net.
| |
 |
Miscellaneous Questions
-
Do
I need to retain the set of tables that
the Skelta Workflow.NET Engine uses?
Details like the Workflow designed, actions
to be executed, the different properties
set for each action etc., are stored in
Workflow.NET engine related tables. So
these tables have to be retained.
-
I
see that when I submit the request for
leave, then the Engine will automatically
update certain tables. How will I handle
this for my process?
Skelta Workflow.NET Supports Custom Actions
to be built and integrated to the workflow
being built; these Custom actions can
have application specific updation.
-
Using
Skelta with WinForms
Skelta Workflow.NET controls are web server
controls which can be dragged and dropped
on to ASPX pages. These controls can be
used in WinForms by loading the web pages
in WinForms.
-
How
can total control of the presentation
layer, from an application development
point of view, be achieved?
The Workflow.NET uses HTML templates for
the presentation. These HTML templates
use place holders for displaying the data.
The developer can completely customize
the HTML template and the style sheet.
-
Can
documents be attached to a process?
Currently the workflow process can attach
documents to the emails. Workflow.NET
provides a feature of viewing the custom
documents. Using this feature the users
can provide functionality of viewing a
document or uploading a document. The
user implements the custom document view
and has complete control over it.
-
Is
it possible to authenticate or 'digitally
sign' data and/or integrate with NT 2000
domain authentication / Active directory?
Also is it possible to have Web UI's incorporating
SSL?
Workflow.NET does not provide authentication,
it has to be implemented in the application
specific manner. The Web UI is provided
in the form of Web Controls and can be
easily incorporated with https.
-
Is
it possible to access Current Task Data
i.e., Task responses?
All the actions return an output (response).
The output helps in the conditional routing.
Each action gets the output of the action
leading to the current action.
-
Is
it possible to call custom assemblies
to implement server-side processes?
All the actions implement the IActionRun
interface. The assembly and the class
name for these actions can be configured
in the actions.xml file.
-
Is
it possible to call our own custom .NET
assemblies to implement server side code
All the actions and the resource handlers
are configured in the xml file. The instances
of all the objects are created from the
assembly configured for the actions and
resource handlers.
-
What
is the User Id - can it be associated
with our own LDAP directory?
The user id is a unique identifier for
a resource. The Workflow uses the resource
handler for all the resource related actions
and displaying the activity list. The
user id of the resource and the other
parameters related to the resource(designation,
email etc) should be configured in an
xml file. This xml file is the mapping
between the database, ldap etc, where
the resource details are stored and the
resource handler. The user can implement
the resource handler for any data source,
by implementing an IResource interface.
The resource handler for an application
is configurable. That is one application
can use resource handler for ldap, another
for database etc.
-
Does
Skelta Workflow.NET have the ability to
query the system (through a UI) and programmatically
find a running process based on information
contained in that process i.e.,- where
Data Item ("Name") = "Fred smith"?
The status engine provides this facility.
-
What
error handling options are available in
Skelta Workflow.NET 2004?
Application related exception should be
handled in the Application itself. Skelta
related error messages are logged in the
Skelta Logger Console as well as in the
Log files. Also if any Workflow execution
status is found to be "FE" (Finished with
Error) or "EP" (Execution Pending), the
Administrator or the resource with rights
to review the details can RESUME the workflow
by using APIs or through the Skelta Report
Control. If any error occurs an exception
mail will be sent to a resource whose
email Id is configured in workflowNET.config.xml
file in "exceptionemail" tag.
-
What
do you mean by the term 'concurrent workflows'?
Can you illustrate it with an appropriate
example?
The term ‘concurrent workflows’
refers to the simultaneous processing
of multiple instances of one or more workflows.
The multiple processes may belong to the
same workflow or to different workflows.
The following example illustrates concurrent
workflows.
Example:
ABC, Inc. has deployed two workflows –
one for Employee Leave Management and
the other for Expense Claims. The Employee
Leave Management workflow commences with
the submission of a leave request. Jack
Smith, the company’s accountant
enters a leave request. While his leave
request is being processed, he also submits
an expense claim. Skelta Workflow.NET
is now processing two workflows concurrently.
Jack’s leave application
has been approved and his expense claim
is awaiting the approval of his manager.
Hence number of workflow instances is
one. Jack’s colleague, Mary now
fills out her expense claim form. The
number of concurrent workflows is two,
even though Jack and Mary’s requests
trigger the same workflow for Expense
Claims.
The maximum number of
concurrent workflows that Skelta will
process depends on the product license.
For instance, the Unlimited Server license
of Skelta does not impose any restrictions
on the number of concurrent workflows.
However, for all types of licenses, there
are no restrictions on the number of users
or the number of process definitions that
can be created.
If the number of instances
of workflows being processed reaches the
maximum number of concurrent workflows,
and a user initiates a new workflow, Skelta
will automatically send emails to the
administrator and the user of that workflow
informing them that it is unable to process
the new request as the limit has been
reached. The email ids have to be configured
in “WorkflowNET.Config.xml”
file.
Please note that the
workflows initiated when the maximum limit
is reached are not queued. The administrator
has to inform the user to re-initiate
the process after the number of workflows
has been brought under the allowed limit.
| |
 |
|