Workflow Soluiton

 View Only

Chapter 4: Altiris Workflow Designer 

Feb 06, 2008 01:00 PM

Altiris Workflow Designer lets you take a workflow scenario through the software development process and support its lifecycle through maintenance. Regardless of the type, workflow projects are edited within Workflow Designer using a common interface.


About Workflow Designer

The Workflow Designer user interface is made up of Toolbars, a Project Tree and Tabs, and a Workspace. Active options, including icons and functions, change based upon location and current interaction within Workflow Designer.

Workflow Designer Project Types

Altiris Workflow Solution encompasses several project types. Project type selection depends on the particular business-related need and how end-users will interact with the finished product. Projects can be tied together using features within Workflow Solution, but each project should be selected based on the end results. For example, while a Forms project produces Web forms for user interaction, if multiple parties need to interact with forms in a coordinated way to accomplish the business goal, then a Workflow project would be the best choice.

You can export most components from any project and import them into any project. However, there are components that are specific to project types that cannot be used in other project types. Example: Workflow components are only accessible within a workflow project type and Forms components are only available in Form project types.

The following are available project types:

  • Decision Only - The Decision Only project is best for a business process where interactions are mostly with back-end systems, or consist mostly of business decisions, but require no input through a user interface. It can be used for business rules and making automated decisions. It can be used whenever you need to process information without user involvement. Examples: Loan applicant screening or pre-populating documents that require signatures. The Decision Only project can handle thousands of transactions per second and runs as a Web service or as a .DLL. It can use the Integration Factory (Generators) for connecting to databases, Web services, and so forth. Decision Only projects are the only projects that do not require user interaction.

    Decision Only projects can be deployed as .DLLs and consumed by developers writing other software applications. However, this takes away the benefit of utilizing your rules and processes through a Service Oriented Architecture where different applications throughout your organization can leverage the exact same rules and processes and benefit from improvements and adjustments to those rules and processes.
  • Workflow - The Workflow project is best for workflow business processes, where a combination of user input, business decisions, and back-end data is required to complete the process. Human interaction occurs mostly through a user interface or e-mail, at different places within the process. The majority of Altiris workflow, both custom and Workflow Packs, are Workflow projects.

    The Workflow project can use the Integration Factory (Generators) for connecting to databases, Web services, and so forth. It has pluggable work queues that write to the file system, such as to the database.

    The Workflow project is used for any business process that involves people, such as document routing, document approval, human resources requests, and IT department approvals. Human interaction can occur at different places within the process. The human interaction points pause execution of the process until the requested action is taken, or some alternate action is taken.
  • Forms - The Forms project is best for building linear user interface based processes, such as building a web application that is consistently live and requires little moderated interaction. The Forms project can produce a user interface in these ways: Web Forms, Win32 Forms, Cisco Phone Forms, and Blackberry Forms. It lets you quickly create forms that have graphics and themes that let a user enter information or make a decision about information (example: it lets you add a resource). The Forms project using Web Forms creates ASPX applications that run on Microsoft IIS. The Forms project using Windows Forms creates desktop applications that can run in any Windows .NET environment and run on the desktop like any other application.
  • Integration - The Integration project is used to generate code, into components or raw source, using the integration engine and custom parameters. In Workflow Solution, component generators are used to build Task, Resource, ASDK, and Report components for workflows.
  • Monitoring - The Monitoring project is best for a business process that needs to run on a schedule or a regularly occurring process that runs in the background of other processes. These processes are normally invoked by a triggering event (Examples: Running a scheduled troubleshooting script that monitors another application, or monitoring data for certain conditions and taking some action as a result). The Monitoring project can be deployed as a task tray application, a Windows desktop service, or a Web service. You can use the Monitoring project to monitor the pulse of your business. Examples: Monitor hardware, check databases, monitor incoming faxes, and start a new workflow.

When creating a new project, the project types are displayed for selection.

Workflow Designer Plug-ins

Altiris Workflow Solution contains a set of plug-ins developed to coordinate interactions between the Workflow Solution and Altiris Platform. Some plug-ins are invoked directly from Workflow Designer; while the other plug-ins run automatically behind the scenes doing their job.

The Publish Workflow Plug-in is invoked directly from Workflow Designer, under the Deploy to Server option and was created to handle deployment, or publishing, of a complete Altiris Workflow Solution to the Notification Server as a Workflow Task, a Service Catalog Item, or a Smart Task. A published task or item can be selected from the Altiris Console by selecting a published link or by right-clicking within the Console trees. The selection of a task or item invokes the Workflow Solution.

The Rebuild Plug-in runs silently and refreshes the Resource Service and the Task Service sitting on Notification Server. After the services are updated, the corresponding Component Generator must be run to update the Altiris Components.

The License Plug-in runs silently and handles license validation between Workflow Solution and Notification Server. This licensing plug-in ensures that a server trying to run a Workflow Project or a client computer trying to use the Workflow Designer is qualified to operate given licensing constraints defined by Altiris. License compatibility is controlled by Notification Server. The user will only be aware of this plug-in when a licensing infraction occurs, due to expiration, or a limitation with an attempted function.

The Notification Plug-in runs silently and listens for outdated components within a workflow opened in Workflow Designer. When outdated, the Notification Plug-in displays a message to the user indicating Notification Server has been updated with changes to the available Resources and Tasks. The user's response is to run the appropriate Altiris Component Generator, either the Resource Component generator or the Task Component generator, to rebuild the components and pick up any changes.

The NS Credentials Plug-in is invoked directly from Workflow Designer and is for the designer to use while building the process. The credential contains the user name, password, and Notification Server computer to be used by the components.

How to Prepare for Your First Use of Workflow Designer

When Workflow Designer is installed on a client computer, all the Altiris integration facilities are included. However, there is some preparation work needed to get started using Workflow Designer, using either Workflow Packs or a custom built scenario.

The resource components are already available, but in order to have the task and reporting components, their generators need to be run. The amount of components created from this process are equal to the tasks and reports available on Notification Server.

The component generators are Integration projects. The following tasks walk you through adding the project through Workflow Designer and running the generator to create the components; regardless of the generator run, the process is the same.

When using Workflow Designer for the first time, the Task, ASDK and Report generators need to be run to load components into the component toolbox from the tasks, ASDK methods, and reports available on Notification Server. Due to the number of potential components added, these generators are not run during installation.

Creating a New Integration Project

Besides the Altiris generators, the Workflow Designer provides other integration points. Example: You can create components that integrate with database tables, other Web services, XML files, Excel, and other file types. You can also create custom workflow components and create compatible libraries from other .NET libraries.

Every new project that is created in Workflow Designer already includes the libraries for Resource, ASDK, and Task component generators as a default. These libraries do not need to be re-imported on the Custom Library tab after regeneration.

To create a new integration project

  1. Open Workflow Designer Studio by clicking Start Menu > All Programs > Altiris Workflow Solution > Altiris Workflow Designer.
  2. Click the New button within the Studio Window, below the Local Projects window.
  3. From the New Project dialog box, select Integration.
  4. In the Name field, type a logical name for the project. Example: ASDK Generated Components.
  5. If you want to use another directory besides the default directory for storing the project, specify a new location using the Browse button to the right of the Directory field.
  6. Click OK.
  7. From the list of Altiris generators, select Altiris ASDK Component Generator and click OK.
  8. In the Component Generator wizard, enter the following information needed to connect to the component generator web service:
    • Under the Authentication heading, select Authenticate to display the Username and Password fields. Provide authentication credentials needed to connect to the Notification Server.
    • In the Notification Server Address field, enter the Notification Server address.
  9. Click Add to create the connection URL and click Next.

    After clicking Next, there may be a few seconds delay while the wizard connects to the Notification Server and retrieves the information; in this case a list of the ASDK methods available to create components.
  10. From the method list, select the methods that you want to become components.
  11. Click Finish to create component code.
  12. From the Virtual Integration Library dialog box, select Compile and Close.

    This creates the components and adds them to the component toolbox available to existing or newly created workflow.

    After compiling the components, the newly added component location is indicated by an orange star appearing within the Component Toolbox. Also, the library is added to the list of available libraries within projects.
  13. To use the new library in a project, click Import Components at the base of the Component Toolbox.
  14. From the Add Library to Project dialog box, click the Custom Libraries tab, locate the newly created ASDK library, highlight the library, and click Add.
  15. Click OK to finish importing.

    The newly added component locations are indicated by an orange star appearing within the Component Toolbox.
  16. Repeat this process for the Task and Report Component Generators to add selected task and report components to the component library. All components in the component library are available to workflow.

    Generating components can also be done inside a project by clicking the Create Integration Library button at the bottom of the Component Toolbox window.

Updating Component Generators

During an attempt to create a new component generator of an already existing type for Resource, ASDK, and Task component generators, a dialog box appears stating the generator is already created and prompts you to open the default instance.

Resource, ASDK, and Task component generators are singleton generators. There can only be one of each respective library. Whereas there can be any number of Report component generators created.

You must open the default instance in order to create the component generator.

To open the default instance of a generator, do the following

  1. In the Singleton Generator dialog box, click Yes.
  2. From the Integration Library dialog box, click Compile and Close to recreate the components.

    This retrieves any changes from Web services running on Notification Server.

Managing Connections to Notification Server

All Altiris components require two parameters in order to make Web service calls for data and functions on the Altiris Platform: an authentication token and a connection to a Notification Server computer. The Notification Server connection requirements are established by providing a User Name, Password, and Domain.

Workflow Designer provides a component that sets the default credentials when new projects are created. It is named Create Notification Server Credentials and adds global properties for Notification Server and an authentication token which are pre-populated as the default variables for all the Altiris components. When you enter your Notification Server and authentication settings on this one component, the Notification Server settings on all Altiris components pick up these values as a default.

At run-time, the Notification Server environment is set up with a default Notification Server computer. Any Notification Server connection strings set in Workflow Designer for use at design-time is ignored in the production environment and components using the default Notification Server setting locates the default Notification Server computer.

Note: You will still be prompted to add the Notification Server credentials to the Altiris NS Credentials plug-in because it is used to populate drop-down lists in some of the components (example: Create Ticket). See Creating a Notification Server credential at design-time.

To set up the Create Notification Server Credentials

  1. In Workflow Designer, create a new project.
  2. Right-click on the Create Notification Server Credentials component and select Edit Component.
  3. Choose the Create Token tab.
  4. To enter the user name, do the following in order:
    • In the Username field, click the [...] button.
    • Enter the user name login credential for the default Notification Server. This user name must be an administrator on the Notification Server computer.
    • Click OK.
  5. To enter the password, do the following in order:
    • In the Password field, click the [...] button.
    • Enter the password for the user entered in the Username field.
    • Click OK.
  6. To enter the Domain, do the following in order:
    • In the Domain field, click the [...] button.
    • Enter the domain for the Notification Server.
    • Click OK.
  7. To enter the token, do the following in order:
    • In the Output Token Variable Name field, click the [...] button.
    • Select the token for authenticating to the Notification Server.
    • Click OK.
  8. Click OK.

Creating a Notification Server Credential at Design-time

During development, or design-time, a default Notification Server credential needs to be established using the Altiris NS Credentials plug-in available within Workflow Designer. More than one set of credentials can be established, but only one can be designated as the default Notification Server connection.

To create a Notification Server Credential for workflow configuration

  1. In Workflow Designer, in the Plugins tab, select the Altiris NS Credentials option from the drop-down menu.
  2. In the Altiris: Notification Server Credentials Manager dialog box, click Add.
  3. In the New NS Credentials dialog box, enter a Machine Name or IP Address, Domain, User Name, and Password.
  4. If wanted, select Current NS to use this credential as the project default.
  5. Click OK.

    The newly added credential is added to a list in the Credential Manager.

To edit an existing credential

  1. Highlight a credential row within the Credential Manager, select the Edit button and change the values, or edit each property by typing over each value within a row.

To remove an existing credential

  1. Highlight a credential row and select the Remove button.

Setting Credentials Within Components

Each component picks up default credentials to connect to Notification Server, but default connections can be overwritten by individual components.

To override the default Notification Server and security tokens in a component

  1. In Workflow Designer, right-click on an Altiris component and select Edit Component.
  2. Choose the Notification Server tab.
  3. To override the default Notification Server for this component, do the following in order:
    • Select Override Default NS.
    • In the Notification Server Address field, click the [...] button.
    • Enter the Notification Server name as either a Constant Value, Dynamic Value, or Process Variable.
    • Click OK.
  4. To override the default security token for this component, do the following in order:
    • Select Override Default Security Token.
    • In the Security Token field, click the [...] button.
    • Select the token you want.
    • Click OK.
  5. Click OK.

Rebuilding the Altiris Component Generators

There are four Altiris component generators. Each component generator is an Integration project, created through Workflow Designer, which builds or rebuilds available Altiris components. After these components are built, you can use them in your workflow.

Resource, ASDK, and Task component generators are singleton generators. There can only be one of each respective library. Whereas there can be any number of Report component generators created.

If there are changes to the Notification Server, then the Resource, ASDK, and Task component generators should be rebuilt.

Altiris component generators (chapter 3)

Resources

When Workflow Solution is installed, it analyzes your Notification Server resource types, data classes, and items types and creates concrete representations of them. This includes resource types that you have created in Notification Server. This makes the interaction with Workflow Designer fast and natural.

Example: In Workflow Designer, when you get a computer, Workflow Designer recognizes that computer as a resource and you can immediately work with it. You do not need to get a resource, get the resource's type, and see if that type name is computer before you can work with that computer.

Because of this, whenever you add new resource types, data classes, or item types in a Notification Server, you need to rebuild the Altiris Resource Component generator.

To rebuild the Altiris Resource, ASDK, and Task generators

  1. In Workflow Designer, select New.
  2. Select the Integration project type.
  3. Type a name for your library and click OK.
  4. Select the Altiris Workflow Resource, ASDK, or Task generator you want to rebuild and click OK.

    These are singleton generators and will retrieve the existing libraries.
  5. Choose the Notification Server to run the generator against and then adjust definitions to select new components to include in the library.
  6. Click Recompile and Close.

    After the generator is recompiled and you open a project that utilizes this library, the project is updated with new components.

To rebuild the Altiris Report generator

  1. In Workflow Designer, select New.
  2. Select the Integration project type.
  3. Type a name for your library and click OK.
  4. Select the Altiris Workflow Report generator and click OK.
  5. Enter the Notification Server address and click Get Reports.
  6. Select the reports you want to regenerate.
  7. Click Next.
  8. Click Run to regenerate the reports.
  9. Click Finish.
  10. Click Compile and Close.

    Existing projects are updated with library changes after reopened.

Workflow Designer Studio

Projects are managed using the Altiris Workflow Designer Studio. The Designer Studio lets you manage tool preferences (Example: look and feel of Workflow Designer) and global settings (Example: server locations and deployment parameters for projects). However, the majority of interaction within Workflow Designer Studio is to manage, create, and edit projects using Workflow Designer.

To view the Workflow Designer Studio, start the Altiris Workflow Designer by selecting the shortcut installed on the Desktop, or by clicking Start Menu > All Programs > Altiris Workflow Solution > Altiris Workflow Designer. When the Altiris Workflow Studio screen appears, toolbars, tabs, a preview window, and view controls are present.

The Local Projects tab in the upper-right corner of the screen lists any projects available for viewing or modification through Workflow Designer.

Workflow Designer is accessible by opening a project, either newly created or preexisting.

From the Studio screen, the following buttons are displayed at the base of the window:

  • Open - Lets you select a project from the Project List and open the project for editing.
  • New - Lets you create a new project from the available project types.
  • Add - Lets you locate a local project and add it to the project list.
  • Remove - Lets you remove a project from the project list.
  • Copy from Selected - Lets you create an exact copy from a project within the project list.

To view Workflow Designer, either add a new project or open an existing project listed in the Local Projects window, or double-click a project file from a local directory.

About Workflow Designer Toolbars

Altiris Workflow Designer always displays two toolbars: Menus and Icons. The most commonly used functions are represented as menu options and icons; some with shortcuts. By default, all menus have File and Help, and others appear according to interactions and context of use.

For example, the icons displayed when in the Model: Primary window are different than those displayed when in the Input Data window. In addition, active icons are in color, while inactive icons are gray and cannot be selected.

About Workflow Designer Project Tree

Every project contains at least one model. In larger projects, there may be multiple models. Regardless of the number of models within a project, each project has its own tree that contains model specific settings and information.

Project Metadata

The primary model and sub-models have one set of project metadata. To view project metadata, click on the project name. A tab titled Project: Project Name appears displaying a project information section and several important tabs.

There are several key elements to the project information screen. In addition to being able to modify the name of the project and the author and provide a description of the project, the tabs let you set global parameters for information used by the project.

These tabs are provided as follows:

  • Resource - Lets you add documents, configuration files, web pages, and so forth, to the project and make decisions about how they are used based on the stage of the project (example: during debugging or deployment).
  • Libraries - Lets you manage libraries, mostly component .DLLs, used by the project and its models. Code libraries can be added or removed to be accessible on a project-wide basis.
  • Models - Displays models contained within the project.
  • Deployment - Displays information and settings used to govern project deployment or workflow publishing.
  • Properties - Lets you manage properties used by the project. As Altiris components are added to the workflow, properties may be added to this list requiring values needed for component execution. You can also specify important project data on this tab to be universally accessible by components during configuration.
  • Storage Preferences - Lets you set specific parameters for storing data used within the project.

About Input and Output Data

Components and models operate on data, either coming into, being modified by, or going out of a component as it is executed. The start of a model may require data to be provided from an external source, or may need to set data for consumption by an external system. The Input Data branch establishes data requirements for the model, while the Output Data branch creates data to externalize at the end of execution.

Within Workflow Solution, all data is stored in a format based on the characteristics of the data. Example: A Get Current Date component gathers and stores a date in a date/time format (DD/MM/YYYY HH:MM:SS), or a Date Time data type. Workflow Designer components use data types to get, modify, and set data.

Data types within Workflow Designer can be categorized in two ways: simple and complex. The Altiris components use both simple and complex data types.

The types are as follows:

  • Simple Data Types - Workflow Solution has a base set of data types, many common and recognizable to a technical audience (Example: number (integer or decimal), text, boolean, and date time).
  • Complex Data Types - These combine basic data types into a data group referenced by a single, meaningful name (Example: a Project data type combines seven text fields, two boolean fields (check boxes), and a number (integer) field to hold project related data).
  • Custom Data Types - Workflow Solution has its own custom data types used to pull together related data from the Altiris database into relevant groupings. The data types are dependent upon the components available and being used and are dynamic to the component added to a project. Some example data types are listed in Altiris Component Data Types (Appendix B).
  • User Defined Data Types - User defined data types are data types designed to hold customized types of data. These can include any piece of data important to group for the workflow. Example: you may wish to create a data type called user which holds user data (such as First Name, Address, and Telephone Number). Creating a user-defined type can speed project functions by simplifying how you work with data types. Without the user-defined type, you may be required to have several individual variables to organize and work with user data. With the userdefined type, you would only need one variable.

Custom data types and user defined data types can be set up on the Input and Output Data branches of the Project Tree and appear to all components in a project.

You set up custom data types and create user defined data types by using the User Defined Type integration wizard. The User Defined Type integration wizard is found by creating an Integration project type and selecting User Defined Type.

After you import the custom library that was created after running the User Defined Type integration wizard, the data type is available for selection on the drop-down list of data types.

About Workflow Designer Documentation

A workflow project can be documented using the Documentation tab. For a workflow project, the documents provide the high-level description of the workflow process, plus any additional details relevant to the workflow configuration.

  • Tabs - In general, there are many different windows within Altiris Workflow Designer. Windows are typically organized by tabs and each tab displays different information and options, different ways of searching, and so forth. Some tabs are fixed, but any tab that appears based upon selection can be hidden. For example, the project tree branches create new tabs which can be managed in three ways: Hide Page, Hide All Pages but This, or Hide All Pages. Right-clicking a tab indicates whether any tab specific functionality exists.
  • Workspace - The main portion of any project within Workflow Designer is the workspace. Workflow creators and developers spend the majority of time here configuring components or setting properties, depending on the screen. Regardless of the project selected, the workspace layout appears and functions similarly.
  • Component Toolbox - Components are required for workflow to function. They are managed and organized within the Component Toolbox. The toolbox lets you search for components by name and function, using the search field, or locate components by exploring the component tree. The Altiris components are grouped under the Altiris branch.

    The Component Toolbox also is used to import components and create integration libraries for a model.

Workflow Designer Components

At its basic level, a workflow consists of arrangement of components into a meaningful sequence representing the steps within a business process. Components control each interaction point with either a person or technology, such as communicating with a database, people involved in the process, and any supporting technology.

Workflow Solution provides a set of components that communicate and operate on different parts of the Altiris platform. In addition to the Altiris specific components, Workflow Designer comes with standard pre-built components. Each project type has pre-loaded components specific to the type or medium, but other component libraries can be loaded to provide more functionality.

At its most basic description, a component is an object that accomplishes a discrete task and can perform its job standing alone. Example: A Send Email component works without any dependencies on other components. However, a component is most useful when combined with other components to accomplish a task. In workflow, Send Email would be one action taken within a business process. The equivalent of a component in the Altiris platform is a task.

All components have similar responsibilities: to store configuration settings, expose tool interfaces, validate configuration, and execute according to their specific interfaces.

Components are stored within libraries as .DLL files. The libraries are loaded through the Import Components tab, or as a project resource. Each component is housed and stored in a Component Toolbox for use in a workflow. The Altiris components are grouped in the Component Toolbox under the Altiris branch, which can be collapsed and expanded by clicking on the + and - signs.

Adding Components to a Model

Workflow Designer provides many components for you to design a workflow. The available components for a model are found in the toolbox. The components of your project are what makes the project perform when executing. They are the building blocks of your workflow.

After you add components, you need to configure them to meet the needs of your workflow. Keep in mind that components pass on information to each other.

To add a component to a model

  1. Locate any component within the component toolbox.
  2. Either double-click the component or drag it into the workspace.

The component validity is displayed, indicating requirements for that component that have not been met and debugging will be prevented until the requirements are resolved.

To resolve the component validation issues

  1. Right-click the component.
  2. Select the Validate Component option.

    This displays the reasons for invalidity.

To edit the component requirements

  1. Double-click the component or right-click and select Edit Component to display the Component Editor.

    Every component requirement will be indicated.

To set component requirements

  1. Click on the [...] next to the required fields.
  2. Set data, either from the project or as a constant.

Linking Components

After required data is set, the component needs to be linked into the surrounding process. Components are linked in a logical way depending upon how the data of a project is shared and the order of the process.

When a component is selected, the component's graphical nodes around the perimeter become visible and are used to link components.

All components must be connected either directly or indirectly to both the Start Component and the End Component.

To link two components

  1. Click one of the grey nodes surrounding the component.
  2. Drag the cursor to another component nearby.

    A blue arrow line is generated, and is snapped to one of the grey nodes of the other component.

To change a connection

  1. Click on the link.

    The arrow turns a maroon color and three nodes appear.
  2. To edit the location of the arrow's tail:
    • Select and drag the green diamond node to a new location.
  3. To change the location of the arrow's head:
    • Drag the green diamond node, located towards the arrow's head, to a new location.

Component Help

Each component comes with instructions on how to set up component parameters. Right-clicking any component shows a list of available options. One of those options is Help. By selecting Help from the right-click menu, an HTML file is shown with a description of the component functionality and information on how to set component parameters in order for the component to validate and run.

Component Data

Each component uses data to execute its function. This might be input data required to run, configuration instructions on how to perform its function, or output data to be set post-execution. Each component self-validates and informs you of any requirement not fulfilled. Component execution or debugging the model, is prevented until the requirements are met. An invalid component displays its errors by displaying a symbol on the page containing errors and the same sign and error text on the field requiring configuration.

After a project is configured with no exceptions, it is ready to be tested.

Chapter 3: Using Workflow Solution

Chapter 5: New Employee Set Up Scenario

Statistics
0 Favorited
6 Views
0 Files
0 Shares
0 Downloads

Tags and Keywords

Comments

Oct 01, 2010 09:26 AM

Knowing the basic of setting up your integration libraries and selecting the definitions you require is essential if you are using any non-standard data classes, tasks, resources and relationships.

Jul 06, 2010 09:40 AM

Admin,

Er, I have been trying to do this with WF7 SP2, but lots of the instructions seem to be invalid for WF7.

I have been trying to get creating integration libraries in WF7, but I have none of the options that are shown in the WorkFlowSwat site for generating Integration Libraries and I think that this might be valid...?!

Regards,

QuietLeni

Jan 07, 2010 01:00 AM

As a newbie, I found this article very useful to know about workflow designeer:-)

Related Entries and Links

No Related Resource entered.