|
|
 |
 |
|
|
 |
|
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.
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 esaclation. The class has to implement an ITask interface.
- I am not recieveing 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 acitvity 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 acitivty 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 calssified 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 integarted to your exsiting 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.
| |
 |
Data Base 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, Oracle and My SQL. The data handlers can be easily developed (implement an interface) and configured for the other database drivers.
| |
 |
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.
| |
 |
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 adminstrator 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.
| |
 |
Miscellaneous Questions
- Do I need to retain the set
of tables that the Skelta Workflow.NET Engine u ses?
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 integarted 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
datasource, 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.
| |
 |
|
|
|
|
| |
|
|
 |
|