Marketplace

process-modeling

Process modeling using BPMN notation and flowchart patterns. Creates process diagrams with activities, gateways, events, swimlanes, and decision points for workflow documentation.

allowed_tools: Read, Glob, Grep, Task, Skill

$ 설치

git clone https://github.com/melodic-software/claude-code-plugins /tmp/claude-code-plugins && cp -r /tmp/claude-code-plugins/plugins/business-analysis/skills/process-modeling ~/.claude/skills/claude-code-plugins

// tip: Run this command in your terminal to install the skill


name: process-modeling description: Process modeling using BPMN notation and flowchart patterns. Creates process diagrams with activities, gateways, events, swimlanes, and decision points for workflow documentation. allowed-tools: Read, Glob, Grep, Task, Skill

Process Modeling

When to Use This Skill

Use this skill when:

  • Process Modeling tasks - Working on process modeling using bpmn notation and flowchart patterns. creates process diagrams with activities, gateways, events, swimlanes, and decision points for workflow documentation
  • Planning or design - Need guidance on Process Modeling approaches
  • Best practices - Want to follow established patterns and standards

Overview

Create and document business processes using BPMN (Business Process Model and Notation) and flowchart notation. Visualize activities, decisions, events, and participant interactions for process understanding and improvement.

What is Process Modeling?

Process modeling creates visual representations of how work flows through an organization. It documents:

  • Activities: What work is performed
  • Sequence: Order of activities
  • Decisions: Choice points and conditions
  • Participants: Who performs each step
  • Events: What triggers and ends the process

BPMN Core Elements

Activities (Rectangles)

TypeSymbolDescription
TaskRectangleAtomic work unit
Sub-ProcessRectangle with +Contains child process
Call ActivityRectangle with thick borderInvokes reusable process

Task Types:

TypeDescription
User TaskHuman interaction required
Service TaskAutomated system action
Script TaskScript/code execution
Business Rule TaskDecision table evaluation
Send TaskMessage sent
Receive TaskMessage received
Manual TaskPhysical work without system

Events (Circles)

PositionSymbolDescription
StartThin circleProcess trigger
IntermediateDouble circleMid-process event
EndThick circleProcess termination

Event Types:

TypeTrigger
NoneUnspecified start/end
MessageMessage received/sent
TimerTime-based trigger
ErrorError condition
SignalBroadcast signal
TerminateProcess termination

Gateways (Diamonds)

TypeSymbolDescription
Exclusive (XOR)Diamond with XOne path based on condition
Parallel (AND)Diamond with +All paths execute
Inclusive (OR)Diamond with OOne or more paths
Event-BasedDiamond with circleWait for events

Connectors

TypeSymbolDescription
Sequence FlowSolid arrowOrder of activities
Message FlowDashed arrowMessages between pools
AssociationDotted lineArtifacts to elements

Swimlanes

TypeDescription
PoolRepresents a participant (organization/system)
LaneSubdivisions within a pool (roles/departments)

Workflow

Phase 1: Define Scope

Step 1: Identify Process Boundaries

## Process Definition

**Process Name:** [Name]
**Purpose:** [Why this process exists]
**Scope:**
  - **Starts When:** [Trigger event]
  - **Ends When:** [Completion criteria]
  - **Includes:** [In-scope activities]
  - **Excludes:** [Out-of-scope activities]

**Participants:**
| Pool | Lanes (Roles) |
|------|---------------|
| [Org/System] | [Role 1], [Role 2] |

Step 2: Choose Model Type

TypeWhen to Use
As-IsDocumenting current state
To-BeDesigning future state
High-LevelOverview, communication
DetailedImplementation, automation

Phase 2: Model the Process

Step 1: Identify Main Path (Happy Path)

  1. Start event (trigger)
  2. Main sequence of activities
  3. End event (completion)

Step 2: Add Decision Points

For each decision:

  • Type of gateway (XOR/AND/OR)
  • Conditions for each path
  • Reconvergence point

Step 3: Add Exception Paths

  • Error handling
  • Timeout scenarios
  • Escalation paths

Step 4: Add Participants

  • Assign activities to lanes
  • Model inter-participant communication
  • Add message flows between pools

Phase 3: Validate and Document

Step 1: Validate Completeness

CheckQuestion
All paths connectedDo all activities have incoming and outgoing flows?
No dead endsDo all paths reach an end event?
Gateways balancedAre split gateways matched with joins?
Roles assignedIs every activity in a lane?
Triggers definedDoes every start event have a clear trigger?

Step 2: Add Documentation

## Process: [Name]

### Overview

[Brief description of process purpose and flow]

### Triggers

| Event | Description | Frequency |
|-------|-------------|-----------|
| [Trigger] | [What causes it] | [How often] |

### Activities

| # | Activity | Role | System | Duration |
|---|----------|------|--------|----------|
| 1 | [Activity name] | [Role] | [System] | [Time] |

### Decision Points

| # | Decision | Conditions | Paths |
|---|----------|------------|-------|
| 1 | [Decision] | [Criteria] | [Path A], [Path B] |

### Exceptions

| Exception | Handling |
|-----------|----------|
| [Error] | [How handled] |

Output Formats

Mermaid Flowchart (BPMN-Style)

flowchart TD
    Start((Start))
    Task1[Receive Order]
    Gateway1{Valid Order?}
    Task2[Process Payment]
    Task3[Reject Order]
    Task4[Ship Product]
    End1((Complete))
    End2((Rejected))

    Start --> Task1
    Task1 --> Gateway1
    Gateway1 -->|Yes| Task2
    Gateway1 -->|No| Task3
    Task2 --> Task4
    Task4 --> End1
    Task3 --> End2

Swimlane Diagram

flowchart TD
    subgraph Customer
        A[Place Order]
        G[Receive Product]
    end

    subgraph Sales
        B[Review Order]
        C{Approved?}
    end

    subgraph Warehouse
        D[Pick Items]
        E[Pack Order]
        F[Ship Order]
    end

    A --> B
    B --> C
    C -->|Yes| D
    C -->|No| A
    D --> E
    E --> F
    F --> G

Narrative Summary

## Process: Order Fulfillment

**Version:** 1.0
**Date:** [ISO Date]
**Owner:** [Name]

### Summary

This process handles customer orders from receipt to delivery.

### Flow Description

1. **Start**: Customer places order (online or phone)
2. **Review Order**: Sales validates order details
3. **Decision**: Is order valid?
   - Yes: Proceed to fulfillment
   - No: Return to customer for correction
4. **Pick Items**: Warehouse locates products
5. **Pack Order**: Items packaged for shipping
6. **Ship Order**: Handed to carrier
7. **End**: Customer receives product

### Metrics

| Metric | Current | Target |
|--------|---------|--------|
| Cycle Time | 3 days | 2 days |
| Error Rate | 5% | 1% |
| Automation | 40% | 70% |

### Improvement Opportunities

1. Automate order validation
2. Parallel picking for multi-item orders
3. Real-time tracking integration

Structured Data (YAML)

process_model:
  name: "Order Fulfillment"
  version: "1.0"
  date: "2025-01-15"
  type: "as_is"  # or "to_be"
  owner: "Operations"

  boundaries:
    trigger: "Customer places order"
    end_state: "Customer receives product"
    scope:
      includes:
        - "Order receipt"
        - "Payment processing"
        - "Fulfillment"
        - "Shipping"
      excludes:
        - "Returns"
        - "Customer support"

  participants:
    - pool: "Company"
      lanes:
        - name: "Sales"
          activities: ["Review Order"]
        - name: "Warehouse"
          activities: ["Pick Items", "Pack Order", "Ship Order"]
    - pool: "Customer"
      lanes:
        - name: "Buyer"
          activities: ["Place Order", "Receive Product"]

  elements:
    events:
      - id: "start_1"
        type: "start"
        name: "Order Received"
        trigger: "message"

      - id: "end_1"
        type: "end"
        name: "Order Complete"

    activities:
      - id: "task_1"
        type: "user_task"
        name: "Review Order"
        lane: "Sales"
        duration: "15 minutes"

      - id: "task_2"
        type: "service_task"
        name: "Process Payment"
        lane: "Sales"
        system: "Payment Gateway"

    gateways:
      - id: "gw_1"
        type: "exclusive"
        name: "Order Valid?"
        conditions:
          - path: "task_2"
            condition: "Order validated"
          - path: "task_reject"
            condition: "Validation failed"

  sequence_flows:
    - from: "start_1"
      to: "task_1"
    - from: "task_1"
      to: "gw_1"
    - from: "gw_1"
      to: "task_2"
      condition: "valid"

  metrics:
    cycle_time:
      current: "3 days"
      target: "2 days"
    automation_rate:
      current: 40
      target: 70

Common Process Patterns

Sequential Process

Activities in strict order, one after another.

flowchart LR
    A[Step 1] --> B[Step 2] --> C[Step 3] --> D[Step 4]

Parallel Split and Join

Activities that can occur simultaneously.

flowchart TD
    A[Start] --> B{Parallel Split}
    B --> C[Task A]
    B --> D[Task B]
    B --> E[Task C]
    C --> F{Join}
    D --> F
    E --> F
    F --> G[End]

Exclusive Decision

Only one path taken based on condition.

flowchart TD
    A[Review] --> B{Decision}
    B -->|Approve| C[Process]
    B -->|Reject| D[Notify]
    C --> E[End]
    D --> E

Loop/Iteration

Repeat activities until condition met.

flowchart TD
    A[Start] --> B[Process]
    B --> C{Complete?}
    C -->|No| B
    C -->|Yes| D[End]

Exception Handling

Handle errors and exceptions.

flowchart TD
    A[Process] --> B{Success?}
    B -->|Yes| C[Continue]
    B -->|Error| D[Handle Error]
    D --> E{Recoverable?}
    E -->|Yes| A
    E -->|No| F[Escalate]

Best Practices

PracticeDescription
Start simpleBegin with happy path, add complexity
One start, one endPer pool, ideally
Name activitiesUse verb-noun format (e.g., "Review Order")
Label gatewaysShow the decision question
Label conditionsDescribe each outgoing path
Balance gatewaysSplit and join with matching types
Avoid crossing linesRearrange for clarity
Document exceptionsShow error handling paths

Integration

Upstream

  • stakeholder-analysis - Process participants
  • domain-storytelling - Current process discovery
  • capability-mapping - Capability context

Downstream

  • value-stream-mapping - Value flow analysis
  • Requirements - Process requirements
  • System design - Automation opportunities

Related Skills

  • value-stream-mapping - Lean perspective on process flow
  • data-modeling - Data entities in processes
  • journey-mapping - Customer experience perspective
  • capability-mapping - Process-capability alignment

Version History

  • v1.0.0 (2025-12-26): Initial release

Repository

melodic-software
melodic-software
Author
melodic-software/claude-code-plugins/plugins/business-analysis/skills/process-modeling
3
Stars
0
Forks
Updated1d ago
Added6d ago