# Chapter 1 - Introduction

# 1.1) General

Workflow Ascendant is an all-in-one design template which allows individuals with minimal programming experience to develop robust workflow applications in a responsive web environment. Anchored in a coherent methodology, this development model has been refined over the years through extensive experience in working with large companies in an international environment. Notes developers can leverage their existing expertise with minimal knowledge of web technologies. Non Notes developers can easily adapt to Workflow Ascendant's "plug and play" component approach. End-users can intuitively navigate workflow documents.

All aspects of a process are defined via easily configurable documents. This includes document states, routing rules, notifications, time triggers, etc. There are no "black boxes" to deal with, providing complete visibility and direct control over every aspect of the workflow. The source code of Workflow Ascendant is exposed.

Workflow Ascendant is copyrighted software owned by Horizon Ascendant Inc. Use of this Software and derived applications from the Software are subject to the terms and conditions of the GNU General Public License. Please review the terms of this document carefully. By using the Software and/or derived applications, you agree to all of the terms contained therein. Use of this document is subject to the GNU Free Documentation License.

We highly recommend that you view the various presentation and training videos made available on our web site: www.horizonascendant.com. These videos demonstrate and explain in great detail the various mechanisms of Workflow Ascendant and how they affect application behavior. After viewing these, you should have a firm grasp of the methodology which underlies this workflow development tool.

All the materials needed to get you going are available on the Horizon Ascendant web site. This includes the basic Workflow Ascendant template; videos along with the actual applications used therein, additional sample applications as well as a complete Domino environment to run those applications. To note that provision of the latter in no way confers licenses to use that software. It is made available only to provide you a jump start -- you will need to obtain corresponding licenses from HCL for applications put into production.

Use this guide as a reference. In addition to systematically presenting Workflow Ascendant, it has been designed to provide easy access reminders to assist you in the context of you developing your workflow applications.

Our well wishes to you in your development efforts from all of us here at Horizon Ascendant!

# 1.2) Benefits

Workflow Ascendant allows you to rapidly create Business Process Management applications with the latest web functionality USING A COHERENT AND COMPREHENSIVE METHODOLOGY.

  • Minimal end-user training costs. Avoid the "not another application to learn" syndrome. Once users learn how to use one application developed with Workflow Ascendant, they know how to use any new ones later put in place as they all operate by the same principles: only the data/content changes.

  • Minimal maintenance costs. Workflow Ascendant developed applications are designed such that volatile elements (the process, email notifications, allocating specific users, etc.) are configured in easily understood documents (by version!) while more stable and complex elements (code) are referenced as stand-alone modules in a centralized code library. And as is true for end-users, a system administrator need only understand how to manage one of these applications in order to manage any new ones.

  • Minimal development costs. Workflow Ascendant has been designed to leverage existing, traditional Notes developer skills. Develop fast and efficiently. Seeing is believing. We invite you to take a look at the various presentation videos contained on our web site.

A few specific benefits to cite:

  • Routing Conditions.

    As rules are rooted in a methodology - mix and match them to suite your needs: manual and automatic routing; selective, parallel, inclusive, extended parallel and extended sequential operations; automatically create child documents; route documents based on time events, etc.

  • Workflow Actions.

    Send personalized emails, launch agents and update document fields based on document state changes.

  • Reference Allocation.

    Automatically assign unique and sequential references to documents.

  • Counters / Delays.

    Automatically send emails and/or update document fields when a trigger is activated or deactivated.

  • Real-Time Delegation.

    Users can designate replacements (while away from the office, for example). Control is automatically returned to the original users after the designated period.

  • Intervention History.

    Each intervention is automatically recorded along with the number of days spent at that step in the process.

  • Display Statistics Graphically.

    Display Bar Charts and Gantt Charts for your end-users via plug-and-play components.

  • Version Control.

    Migrate easily from one workflow version to another. All existing documents adhere to the previous process while new documents follow the new workflow.

  • Multi-lingual end-user environment.

    Change languages with the click of a button.

  • Multi-date format.

    Force all dates to appear in a specific format (American or European) - regardless of the date parameters set on user's PCs.

  • Rich Test Environment.

    Simulate the passing of time via built-in agents to test your workflow definitions. Variable logging levels allow you to monitor every aspect of the workflow process.

  • Integrated Responsive Web Design.

    Automatically adjusts to the characteristics of the device being used (mobile phone, tablet, desktop), making your Workflow Ascendant applications out-of-the-box ready for mobile access.

# 1.3) Principles


  • A Notes Form contains all the data associated with a workflow document and corresponds to a collection of State (configuration) documents which define the process.

  • Each State document has a unique name (identifier) in the context of a given process.

  • State documents are connected to each other via a Current State -- Next State relationship.

  • The behavior of a given workflow document is dictated by the definitions contained in the corresponding State document while in that state.

  • The State document entitled $created$ is always the first state in the workflow.

  • A State document which has no Next State is known as a Terminal State (archived).

  • Each State document is comprised of a set of rules, each of which is associated with a given Constraint.

  • Constraints refer to a profile of those who can intervene in a workflow document at that state.

  • Workflow documents advance in the process when a user selects the Send button.

  • A workflow document will be automatically archived when the Send button is selected if the following state is a Terminal State or if there are no valid users defined for the next state (which constitutes an undefined error condition).


  • Constraints refer to the profiles of those who can intervene in a workflow document at a particular state.

  • A Constraint consists of either a role name (in the initial state only) or a field name (in all other states).

  • In a workflow document, the corresponding field of a State document constraint must resolve to a list of user names.

  • The aforementioned list of user names are the only individuals who can intervene in the workflow document at that particular state.

  • Workflow Ascendant provides several mechanisms by default to facilitate the assignation of individual user names to the various roles and fields of a workflow application.


  • Who can modify a workflow document at a given point in time is dictated by the constraints defined in the corresponding State document.

  • In addition, Workflow Ascendant provides a number of mechanisms by which to define which parts of a document the aforementioned individuals can modify.

  • Information in workflow documents can be initialized and controlled by routines referenced in the various State documents.

  • Routines which initialize and control data in the workflow documents, some of which are supplied by default and others supplied by the workflow developer, are contained in a centralized code library.

# 1.4) Roles and Reserved Names


  • [WAArchive]. Workflow Ascendant automatically assigns the current user (field WACurrentAuthors) to this role when a document arrives at a terminal state.

  • [WAListRI]. Those individuals who are responsible for managing lower level configuration documents such as lists accessed in the workflow documents.

  • [WAManager]. Those individuals who are responsible for managing the database. By default, the administrative portion of Workflow Ascendant is only visible to users assigned to this role.

  • [WARefAlloc]. Workflow Ascendant automatically assigns the current user (the server specified in the active Language document) to this role when a document is awaiting reference allocation. This is the case if you are working in a distributed environment and the replica you are working with does not reside on that server.

  • [WASupervisor]. Those individuals who can see all documents.


  • WAAuthor. The user name of the individual who created the workflow document.

  • WACurrentAuthors. The list of user names who can intervene in the document at that moment in time.

  • WACurrentAuthorsDisplay. The list of current user names displayed to the end users in the various views.

  • WACurrentState. The name of the workflow document's current state.

  • WADocRef. Contains the unique reference allocated to the workflow document.

  • WAErrorMessage. Contains any error messages which block advancing the document in the workflow.

  • WAFormName. The process name displayed to end users.

  • WAHistoryAuthors. The list of users who have intervened in the workflow document to date.

  • WAReaders. The list of users who can visualize the workflow document (in addition to those who have or who can modify the workflow document).

  • WAVersionRef. The version of the workflow document.

  • Information Completeness. A workflow document should contain all the information necessary for a responsible individual (RI) to make a decision regarding the next step in the process.

  • Process Ignorance. Individuals who intervene in a given process should generally not need to know what that process is -- only what they need to do when it is their turn to intervene in the workflow.

  • Next State Coherence. Choices to be made by a RI relative to a given dossier should be presented in a consistent way across a given workflow and across applications. An example of this would be to always present the following choices in the same order: To be modified, Rejected, Approved.

  • Data Modification. One and only one individual should be responsible for modifying any given piece of data in the workflow document (to ensure data integrity). For those cases where modifications need to be made, the workflow document should be routed back to the responsible individual (such as the document author).

  • Comments. Each individual who intervenes in the workflow should have a field reserved for his or her usage to add any and all comments related to that dossier. To note this is particularly essential in the context of a request for modification (as mentioned prior).

  • Email Notifications. When a document is advanced in the workflow, those who are next in line to intervene should be notified by email with a document link back to the original workflow document. It is also often the case that all those who have intervened in the document are notified when the document is eventually archived (or rejected).

# 1.6) About This Guide

This guide is designed to be used in conjunction with videos and applications (WAApplication01.nsf and WAApplication02.nsf) provided on the Horizon Ascendant website. The videos demonstrate what the various mechanisms look like in operation to the end-user while the applications provided hands-on experience in using them. The guide illustrates (in most cases graphically) the components which make up those mechanisms and (hopefully) serves as an ongoing reference in developing workflow applications.

The objective of this guide is not to demonstrate how to put those mechanisms in place. As most of the "development" involves configuring documents, a large majority of these manipulations should be straightforward. In cases where they are not, however, videos have been provided to assist in this and others will continue to be added as time goes on as the need for such becomes apparent.

This guide was created with you the developer in mind.

  • One concept, one page. Everything regarding a given topic is put right in front of you.

  • Consistent presentation:

    • Purpose -- a concise description of what the section is about

    • What it looks like -- typically what the end-user sees in operation

    • How to make it happen -- an illustration of the components behind the displayed functionality

    • Additional notes and references -- where to go for additional information

  • Graphical presentation. Visually see how components are connected to each other.

  • Hyperlinks. Select Ctrl+Click on entries in the index or any blue highlighted text to navigate through various subjects in the document. Select highlighted links to display additional information.

Last Updated: 8/25/2023, 8:58:02 AM