All services

Application Integration

AWS Step Functions

Serverless visual workflows that coordinate AWS services.

Official docs

Overview

Step Functions lets you compose Lambda, ECS, Glue, SageMaker and 200+ services into reliable state machines using Amazon States Language (ASL).

When to use it

  • Long-running workflows requiring retries and branching
  • Orchestrating ETL or ML pipelines
  • End-to-end test pipelines

Setup

  1. Console → Step Functions → Create state machine. Pick Standard (long, durable) or Express (high volume, short).
  2. Author ASL JSON or use Workflow Studio.
  3. Grant the state machine an IAM role with permission to invoke targets.

How to use

Tiny state machine
{
  "StartAt": "Provision",
  "States": {
    "Provision": { "Type": "Task", "Resource": "arn:aws:lambda:...:provision", "Next": "RunTests" },
    "RunTests": { "Type": "Task", "Resource": "arn:aws:lambda:...:runTests", "End": true }
  }
}

QA use cases

  • Orchestrate: provision env → seed DB → run API tests → run UI tests → publish report → teardown.
  • Implement retry-with-backoff for flaky tests at the workflow level instead of inside test code.