Community Spring Cleaning week is here! Join your fellow Maveryx in digging through your old posts and marking comments on them as solved. Learn more here!

Alter.Nation

Community news, customer stories, and more!
KelleyS
Alteryx
Alteryx

by Kelley Sinnock (@KelleyS) and Joe Kressler (@jfkressler


Alteryx Customer Success Managers (CSMs) partner closely with some of our most strategic customers to maximize the value of their investment.  We engage in discussions with customers around topics like governance, security, and data quality, as well as the ways to support the Alteryx user base directly through enablement.  A request we get time and time again is support for Alteryx reviewers.  These are individuals in the business who may not develop Alteryx solutions themselves but need to understand & interpret the results of their team’s Alteryx efforts.  They are also responsible for communicating the results upwards to management.  In hopes of supporting these important members of the Alteryx community, we present...

 

Five Things All Workflow Reviewers Should Be Doing

 

1. Facilitate both pre-build and pre-review meetings with developers

 

Pre-Build

 

Before your team member kicks off a new workflow build, hold upfront discussions to ensure they understand the desired result of their work and how Alteryx will be used to achieve it.

 

Discuss the inputs used in the process, what you expect around documentation best practices, and walk through your preferred review process. If you plan to provide feedback directly in the workflow, make sure the developer gives you space to do so and knows to look for it after your review. You might consider generating a list of expectations for developers:

1. Workflow Expectations.PNG

 

Pre-Review

 

Once a complete version of the build exists, have the developer walk you through their workflow (at least at a high level) before you spend time reviewing it on your own.  Make sure you understand the specific Alteryx file type you are working with and whether or not the data being ingested/output is included in the workflow file. Also, consider documentation – expect layman’s terms and narratives positioned at critical locations in the workflow so anyone not familiar with the workflow can follow its purpose and functionality.

 

2. Stay fresh on how to use Alteryx Designer

 

Arming yourself with a working knowledge of Alteryx Designer is crucial to your ability to effectively review a workflow – start with the ‘Getting Started’ learning path in Alteryx Community and keep these few tips in mind:

 

Search

 

Use Alteryx Designer’s native Search function to view examples & tool documentation and access Alteryx Community user forums.  From the search results, you can even link directly to free interactive online trainings right from Designer.

 

2. Search.png

 

Help

 

Right-click on any tool in the toolbar to access the Tool’s Help Documentation and open an example workflow.

 

3. Help.PNG

 

Results Window

 

Toggle between a tool’s Input/Output Anchors shown in the Results window to see how data is transformed by a specific tool.

 

4. Results Window.PNG

 

Browse

 

Leverage a Browse tool anywhere in a workflow to break out and profile data at that point in time.

 

5. Browse.png

 

3. Understand tools that present opportunities for data loss...and mitigate this risk

 

Proper quality control is critical around certain tools that adjust, aggregate or change your data.

 

Tools that present data loss risk

 

KelleyS_5-1669122343666.png

 

Join

 

 

Purpose: combines two inputs based on common unique identifier(s).  Similar to a V-Lookup in Excel.

 

Consider: because a Join contains three outputs (L, J, R), it is important to interpret the data in each of these outputs. If the data from any of these outputs is not intentionally incorporated into a subsequent tool, the data will be dropped from further analysis.  Consider whether this is appropriate given the workflow’s objective.

 

 

KelleyS_6-1669122343668.png

 

Filter

 

 

Purpose: splits data into two streams based on specified condition(s).

 

Consider: typically, the workflow continues from either the T or F output – consider what should be done with the other stream.

 

KelleyS_7-1669122343671.png

 

Formula

 

 

Purpose: creates a new field, or updates an existing field, based on an expression or by assigning a data relationship.

 

Consider: the tool may affect certain existing values in unintended ways - add a Browse tool after a Formula to check for nulls and unexpected values.

 

KelleyS_8-1669122343672.png

 

Summarize

 

Purpose: similar to a pivot table - group, sum, count, or concatenate your data (plus much more).

 

Consider: inspect the tool’s configuration for proper data aggregation and functions – typically the starting point & ending points vary a great deal with this tool, significantly decreasing the number of records in your data. 

 

Just a heads up – if there are no records in the incoming data, the summarize tool will not create an output that says there are zero records.  The Count Records tool should be used in this instance instead.

 

KelleyS_9-1669122343673.png

 

Macros

 

 

Purpose: consolidates a workflow or group of tools built into a single tool that can be inserted into another workflow for ease of repeatability, sharing & organizational purposes

 

Consider: a macro can contain any of these higher risk tools, with an additional layer of interface between you and the details. Right click on a Macro and select ‘Open Macro’ to see the workflow that drives the macro’s functionality.

 

 

Encourage your team to use these tools to help mitigate data loss risk

 

KelleyS_10-1669122343676.png

 

Comment

 

 

Purpose: creates a text box for any workflow documentation to supplement tool annotations.

 

Consider: use to create a workflow header that describes the workflow’s objectives, further describe the purpose of a tool or section of a process, or highlight locations in the build that require user input.  You can even embed an image or company logo in a comment box!

 

 

KelleyS_11-1669122343678.png

 

Message

 

 

Purpose: prompts a custom message to appear in the Results window if a given condition is met.

 

Consider: use to warn a user if input data is not in a correct format, is missing a certain field, contains null values, etc.

 

 

KelleyS_12-1669122343679.png

 

Browse

 

 

Purpose: provides advanced data profiling – frequency counts and data health indicators, maps, and reporting snippets, can all be further explored via the Browse tool

 

Consider: use a Browse tool to investigate high-level data insights at any point in your workflow.  Trends identified via a Browse can help you decide how to proceed as well as identify any unexpected values so you can handle them accordingly.

 

 

KelleyS_13-1669122343682.png

 

Count Records

 

Purpose: returns a count of the number of records passing through the tool.

 

Consider: use to confirm that records haven’t been lost, or to identify records where they aren’t expected.

 

KelleyS_14-1669122343685.png

 

Test

 

 

Purpose: permits custom configuration to ensure input data meets specified criteria and triggers descriptive error message(s) if your test criteria are not met.

 

Consider: use to verify there are zero records coming out of an L or R output of a Join tool, to ensure the appropriate number of files were input during a batch input process, or to determine whether two values are equivalent.

 

 

4. Ensure workflow documentation quality meets auditability and transferability requirements

 

While defining your particular style & expectations around workflow design will take some time, there are certain guiding principles you can start with:

 

Containers

 

Containers are used around sub-processes with descriptive headers and intentional color coordination (consider absolute consistency vs. different colors for different phases of workflows (e.g., data input, processing, output).

 

6. Containers_1.PNG

 

6. Containers_2.PNG

 

Containers can be toggled on/off, which is ideal for testing portions of workflows and/or disabling tools that aren’t fully configured yet. You can also collapse a container (tools inside will still run) to save space on the canvas.

 

6. Containers_3.PNG

 

Connection Strings

 

The flow of data is clear. Customize your connection strings’ settings.  Use wired connections when appropriate, and consider wireless connections when bridging great distances in the workflow (comment boxes can help clarify when data sources aren’t obvious).

 

7. Connection String_1.PNG

 

7. Connection String_2.PNG

 

Tool Alignment and Distribution

 

Ensure tools are vertically/horizontally aligned and distributed, organized tools and containers with wired connections used as a general standard.

 

8. Tool Alignment.PNG

  

Annotations

 

Tool annotations are used to show the purpose and function of critical tools.  Annotations should highlight configuration choices that benefit from a description or are not intuitive; annotations should be removed or updated when they are confusing, unclear, or purposeless.

 

9. Annotations.PNG

 

Comment Boxes

 

Use comment boxes to summarize workflow/container processes and call out end-user instructions/review comments.  Consider formatting comment boxes intentionally for different audiences or purposes (e.g., grey for narrative descriptions, blue for end-user instructions, red where updates are required, etc.).

 

10. Comment Boxes.PNG

 

5. Plan for workflow change management and maintenance

 

We can guarantee that one or both of these things will happen eventually –  your workflow will break and need fixing, and the person who built it will be unavailable to help! Start planning for the inevitable today:

  • Licensing: make sure at least a few people in your team are licensed to use Alteryx Designer & Server – get to know your enterprise License Administrator for future updates.
  • Enablement: have developers of critical workflows train the team on functionality & usage; have a succession plan for workflow ownership for out-of-office days or changes in roles.
    • Scheduling critical workflows in Server can eliminate the risk of workflows not running timely or consistently; it’s best to still define who’s in charge of keeping an eye on things.
  • Access: best practice for storing critical workflows is in a Collection on Alteryx Server with validated access & version control – shared drives work, too, so long as everyone knows how to get there and there are rules established around access & updates.
  • Credentialing: leverage the Alteryx Community to provide a well-rounded Designer education – the Designer Core credential is the global standard.

 

And Finally…

 

For support in continuing this conversation at your company, consider the following resources:

  • User groups or internal Alteryx specialists (request ‘best practice’ workflows to review & take in)
  • Alteryx Community (Weekly Challenges provide ample examples of workflows from genuine Alteryx experts (and users like us!))
  • Alteryx Customer Success Managers at your company

If all else fails, develop your own ‘standard’ and share it with us here!

Comments