chartletv0.21.0chartlet.casoon.de

← All examples

Life of a support ticket

The states of a support ticket: a dot marks where it starts, a diamond the choice by severity, double outlines the two ways it ends. Transitions read event [guard] / action, a reminder loops on its state, and reopening runs back against the flow. The table lists every transition with its parts in columns of their own.

Life of a support ticket

examples/ticket-states.json
{
  "schemaVersion": 1,
  "type": "state",
  "title": "Life of a support ticket",
  "source": "Support handbook, ticket states",
  "width": 900,
  "height": 900,
  "state": {
    "initial": "new",
    "states": [
      {
        "id": "new",
        "label": "New"
      },
      {
        "id": "triaged",
        "label": "Triaged"
      },
      {
        "id": "severity",
        "label": "Severity?",
        "kind": "choice"
      },
      {
        "id": "handling",
        "label": "Being handled",
        "kind": "composite"
      },
      {
        "id": "progress",
        "label": "In progress",
        "sublabel": "assigned",
        "in": "handling"
      },
      {
        "id": "waiting",
        "label": "Waiting for customer",
        "in": "handling"
      },
      {
        "id": "resolved",
        "label": "Resolved"
      },
      {
        "id": "closed",
        "label": "Closed",
        "final": true
      },
      {
        "id": "rejected",
        "label": "Rejected",
        "final": true
      }
    ],
    "transitions": [
      {
        "from": "new",
        "to": "triaged",
        "event": "review"
      },
      {
        "from": "triaged",
        "to": "severity",
        "event": "classify"
      },
      {
        "from": "severity",
        "to": "progress",
        "guard": "valid",
        "action": "assign"
      },
      {
        "from": "severity",
        "to": "rejected",
        "guard": "duplicate"
      },
      {
        "from": "progress",
        "to": "waiting",
        "event": "ask"
      },
      {
        "from": "waiting",
        "to": "progress",
        "event": "reply"
      },
      {
        "from": "waiting",
        "to": "waiting",
        "event": "after 3 days",
        "action": "remind"
      },
      {
        "from": "progress",
        "to": "resolved",
        "event": "fix shipped"
      },
      {
        "from": "resolved",
        "to": "progress",
        "event": "reopen",
        "dash": "dashed"
      },
      {
        "from": "resolved",
        "to": "closed",
        "event": "after 7 days"
      }
    ],
    "mainPath": [
      "new",
      "triaged",
      "severity",
      "progress",
      "resolved",
      "closed"
    ]
  }
}
Focus
Life of a support ticket
Life of a support ticketState diagram with 9 states and 10 transitions. It starts in New. Final states: Closed and Rejected. Main path: New → Triaged → Severity? → In progress → Resolved → Closed. New to Triaged on review. Triaged to Severity? on classify. Severity? to In progress on [valid] / assign. Severity? to Rejected on [duplicate]. In progress to Waiting for customer on ask. In progress to Resolved on fix shipped. Waiting for customer to In progress on reply. Waiting for customer to itself on after 3 days / remind. Resolved to In progress on reopen. Resolved to Closed on after 7 days. Composite state Being handled contains In progress, Waiting for customer. Choices: Severity?.Being handledStart → NewNew → Triaged: reviewTriaged → Severity?: classifySeverity? → In progress: [valid] / assignSeverity? → Rejected: [duplicate]In progress → Waiting for customer: askWaiting for customer → In progress: replyIn progress → Resolved: fix shippedResolved → In progress: reopenResolved → Closed: after 7 daysWaiting for customer → Waiting for customer: after 3 days / remindreviewclassify[valid] / assign[duplicate]askreplyfix shippedreopenafter 7 daysafter 3 days / remindStartNewNewTriagedTriagedSeverity?Severity?In progress – assignedIn progressassignedWaiting for customerWaiting for customerResolvedResolvedClosedClosedRejectedRejected

Source: Support handbook, ticket states

Show chart data
Data for Life of a support ticket
FromEventGuardActionTo
StartNew
NewreviewTriaged
TriagedclassifySeverity?
Severity?validassignIn progress
Severity?duplicateRejected
In progressaskWaiting for customer
In progressfix shippedResolved
Waiting for customerreplyIn progress
Waiting for customerafter 3 daysremindWaiting for customer
ResolvedreopenIn progress
Resolvedafter 7 daysClosed
  • State diagram
  • Explain a lifecycle