Alteryx is a great productivity tool. Its easy-to-use interface empowers “citizen developers” (i.e., someone with little to no experience in formal coding, IT, or computer science) to develop workflows and applications. Often, their detailed understanding of business requirements enables them to improve tasks and processes through Alteryx in agile and nimble ways.
Enabling citizen developers can also raise challenges. Where IT professionals adhere to established procedures to ensure the management and testing of code, citizen developers may operate without access to the same tools, professional training, or structured documentation. As citizen developers may work on processes and workflows critical for successful business operations, some of our clients have asked if Alteryx could provide ways to guide them toward a set of best practices.
In response, this community article introduces an Alteryx application we call “Risk and Audit Manager.” Its purpose is to collect information on risks inherent to a specific workflow so this information can be leveraged when promoting to production. For instance, workflows needed to complete business-critical operations that write information to a System of Record or that carry material financial or reputational risk may necessitate a review process. In contrast, workflows that meet none of these criteria may require less scrutiny before promoting to production.
Leveraging this application, we can also accomplish a secondary benefit. Often, business associates or Centers of Excellence are interested in understanding the benefits delivered by the Alteryx platform. We propose a solution that allows inputting benefit information as well, facilitating reporting for senior management and demonstrating the power of citizen developers.
In our mind, the solution should meet the following requirements:
Our “Risk and Audit Manager” meets these requirements. It consists of several Alteryx workflows:
Figure 1 displays a potential process flow, illustrating how the Risk and Audit Manager could enhance the overall Alteryx user experience.
Figure 1: Process Flow Risk and Audit Manager
As we strive to limit administrative overhead, this application is designed to be filled out in under 2 minutes. We focus on 3 risk and 3 benefits categories:
Of course, users can easily add additional questions (we provide some ideas at the end).
Figure 2 shows the main screen of the Risk and Audit Manager: going from top to bottom, the user selects the workflow (1) and then inputs risks (2) and benefits (3). Upon clicking the RUN button, the information is then stored in a database, which can also be leveraged for reporting or audit purposes (hence the name "Risk and Audit Manager").
Figure 2: Leveraging Risk and Audit Manager to track benefits
While not overly complex, the Risk and Audit Manager relies on a few features casual Alteryx users may not be familiar with, notably the Server API Tools and chained apps.
Let’s look at installing and configuring the Alteryx workflows.
As we will need to access the server, first install the Server API Tool (v 1.3.4 is the latest at the time of writing) from the Alteryx Marketplace. If the tool is not installed, the server API icon in the workflow will be grayed out. We will store all temporary files in c:\temp
, so please verify that the folder exists and that Alteryx has read/write permissions (we describe below how to change that).
Then, open the "Audit and Server Management" workflow. Detailed setup instructions are in the workflow (see Figure 3); at a high level, the steps are to connect the workflow to your server (the green box “Step 1” in the workflow) and create a SQL Lite database in which data can be stored (the “Step 2” box). As we explain in more detail below, the file location is determined by a user constant (user.location), which can be changed in the workflow.
Figure 3: Setting up Server and DB Connections
One complexity arises from the fact that we first need to set up a database to store the information. While we assume that most clients will use their existing database infrastructure for demo purposes, the workflow allows the setup of a database from scratch. We have added red and green containers (which can be turned on/off) to facilitate that process. Here is our recommended solution (see also Figure 4):
Figure 4: Database Setup
That’s it!
The workflow itself is fairly straightforward, but a special callout is that since our goal is to create an Audit trail, we do not delete any information from the database. Instead, when a workflow is replaced or deleted, we mark the prior version as “inactive” (this is why the tool configuration in Step 3 is set to “Overwrite Table (drop)”).
The location for the audit database by default is set to c:\temp
; this is obviously not ideal and should be changed to match the overall data and audit strategy. The file path can be changed in the workflow settings, where we have defined a user constant (user.location
); we have attached a screenshot of the workflow with the location clearly marked.
One extra feature we find quite useful is the option to send out automated emails to users who upload, modify or delete workflows. This could also be extended to provide users with instructions on the process to promote a workflow to production. If this functionality is used, setup of the email is required in “Step 4” of the workflow (see Figure 5).
Figure 5: Setting up Automatic Emails
Once the workflow is configured, upload it to the server and schedule it to run regularly (e.g., every hour). Correct implementation can be tested by uploading a new Alteryx workflow to the server and triggering a manual run. If the email functionality is enabled and setup is successful, you should immediately see a new email notification.
Once the “Audit and Server Management” workflow is up and running, installation of the “Risk and Audit Manager” chained application is required. While setup is relatively straightforward, and no changes should be required using the default file locations, a lack of experience with chained apps may pose some challenges. Figure 6 shows the first workflow: To set it up, connections to the server and database created in step 1 are needed (if you did not change the default location, no changes to the app are required). Then, we need to temporarily store information to hand off to the second workflow. The directory is clearly indicated in the workflow and will likely not be changed, but please verify that the application has read/write permissions on the server for this directory.
Because we are dealing with a chained app, we need to call a second workflow after the first workflow is completed. Again, when running the application with the default configuration, no changes are required. For those interested in the inner workings: Changing the configuration is accomplished in the properties window of the Interface designer: click on “View – Interface Designer” and go to the “Properties” tab; there, verify that the “On Success – Run Another Analytic App” box is checked and that the file path is correctly set for the second workflow (which we will configure below).
The workflow itself is short and unremarkable, though the container in the top-left corner may deserve a special callout: this is where we dynamically retrieve the user to authenticate. Specifically, we have added a text box in the Interface Designer with the name "__cloud:UserId" in the annotations tab, which will gather the information. Note also that we give users the ability to either enter risk information for a new workflow or to update an existing workflow. This is done with a radio button; the workflow then filters down existing data and stores the information gathered so far in two (temporary) files labeled “ChainedAppInput” and “ChainedAppDropdown.” This provides us with a means to hand information to the second chained app (which is called in the Interface Designer pane under “On Success Run Another App”).
Figure 6: Configuration of the chained application
The second part of the chained app looks a bit more complex (Figure 7), but the general idea is remarkably simple: The second application reads in the two files just created and accesses the server through the Server API macro to download the list of workflows specific to the user. The application then guides the user through a series of questions, which are built out at the top using repeated interface tools.
For demonstration purposes, we ask for basic risk and benefit information, but this is where options for customization exist. Ideally, the questions and risk categories are aligned to a broader risk framework and provide information useful to guide the promotion process. Setup of this last application is fairly unremarkable (and when run using our default configuration, no changes are needed): in two clearly marked containers, information about the database setup from step 1 needs to be added (circled “1” and “4” in Figure 7 below), and locations to store temporary information for the chained application needs to be verified (circled “2“ and “3” below).
Figure 7: Setting up the chained application (part 2)
As an added feature, we added the option to generate a PDF report for users, providing instant feedback. This option can be turned on by enabling the blue container (the circled “5” in Figure 7).
Once setup is complete, upload the application to a server. To ensure proper handoff of data, please make sure that the database and temporary files from the server are used. This can be accomplished by unchecking the relevant boxes in the “Save to server” dialog box. For instance, the following figure shows the correct configuration for the chained app.
Once done, make the application public for all users, and you should be ready to go!
We propose making the “Risk and Audit Manager” an integral part of the process to migrate a workflow to production. This can easily be accomplished in the following way:
Managing information in a database allows us to simplify the workflow for the community, but an obvious improvement to the existing demo workflow is to leverage a database solution to store the risk and benefit information. Besides performance gains, this can enable versioning and is indispensable for an Enterprise solution.
The “Risk and Audit Manager” is a principal element in managing workflows, but this post can only scratch the surface of what is possible. We can think of several ways to customize, enhance, or extend:
We hope to inspire others to improve upon this demo application! If you have feedback or additional cool ideas to enhance, please make sure to post in the comments below.
Lastly, for clients who are seeking to expand this sample application into an Enterprise solution to suit their specific purposes but need help to do so, we should mention that our vast partner network or Alteryx Professional Services can be of help.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.