mcpField
P
process-modeling

process-modeling

github.com/melodic-software生产力2862 次安装今天更新
代码仓库

关于 process-modeling

process-modeling 是用于业务流程建模与文档编写的技能,适合规划、分析和系统设计工作。它以 BPMN 和流程图表示活动、决策、事件及参与者,并提供校验步骤和多种输出格式。

主要功能

  1. 01使用 BPMN 和流程图表示流程
  2. 02建模活动、事件、网关和泳道
  3. 03覆盖异常处理与参与者交互
  4. 04提供完整性校验清单
  5. 05输出 Mermaid、叙述文档或 YAML

适用场景

  1. 01记录现有业务流程
  2. 02设计目标流程和异常路径
  3. 03说明部门或系统间的交互
  4. 04整理流程自动化需求

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/melodic-software/claude-code-plugins --skill process-modeling

安装后在 Claude Code 中输入/process-modeling确认已加载。

详细介绍

流程建模

何时使用此技能

在以下情况下使用此技能:

  • 流程建模任务 - 使用 BPMN notation 和流程图模式进行流程建模。创建包含活动、网关、事件、泳道和决策点的流程图,用于工作流文档编制
  • 规划或设计 - 需要流程建模方法方面的指导
  • 最佳实践 - 希望遵循成熟的模式和标准

概述

使用 BPMN(业务流程模型与符号)和流程图符号创建并记录业务流程。通过可视化活动、决策、事件和参与者交互,帮助理解和改进流程。

什么是流程建模?

流程建模通过创建可视化表示,展示工作如何在组织中流转。它记录以下内容:

  • 活动:执行哪些工作
  • 顺序:活动的先后次序
  • 决策:选择点和条件
  • 参与者:由谁执行每个步骤
  • 事件:触发和结束流程的事项

BPMN 核心元素

活动(矩形)
类型符号描述
任务矩形原子工作单元
子流程带 + 的矩形包含子流程
调用活动粗边框矩形调用可复用流程

任务类型:

类型描述
用户任务需要人工交互
服务任务自动化系统操作
脚本任务脚本/代码执行
业务规则任务决策表评估
发送任务发送消息
接收任务接收消息
手动任务无需系统的实体工作
事件(圆形)
位置符号描述
开始细圆圈流程触发器
中间双圆圈流程中间事件
结束粗圆圈流程终止

事件类型:

类型触发条件
无未指定的开始/结束
消息收到/发送消息
计时器基于时间的触发器
错误错误条件
信号广播信号
终止流程终止
网关(菱形)
类型符号描述
排他(XOR)带 X 的菱形根据条件选择一条路径
并行(AND)带 + 的菱形执行所有路径
包容(OR)带 O 的菱形执行一条或多条路径
事件驱动带圆圈的菱形等待事件
连接符
类型符号描述
顺序流实线箭头活动顺序
消息流虚线箭头池之间的消息
关联点线工件与元素的关联
泳道
类型描述
池表示参与者(组织/系统)
泳道池内的细分区域(角色/部门)

工作流

阶段 1:定义范围
步骤 1:确定流程边界
## 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] |
步骤 2:选择模型类型
类型使用场景
现状记录当前状态
目标状态设计未来状态
高层级概览、沟通
详细实施、自动化
阶段 2:对流程建模
步骤 1:确定主路径(理想路径)
  1. 开始事件(触发器)
  2. 活动的主序列
  3. 结束事件(完成)
步骤 2:添加决策点

对于每个决策:

  • 网关类型(XOR/AND/OR)
  • 各路径的条件
  • 汇合点
步骤 3:添加异常路径
  • 错误处理
  • 超时场景
  • 升级路径
步骤 4:添加参与者
  • 将活动分配到泳道
  • 对参与者之间的通信建模
  • 在池之间添加消息流
阶段 3:验证并记录
步骤 1:验证完整性
检查项问题
所有路径均已连接所有活动是否都有流入和流出?
没有死路所有路径是否都能到达结束事件?
网关配对平衡分支网关是否都有对应的汇聚网关?
已分配角色每项活动是否都位于某个泳道中?
已定义触发条件每个开始事件是否都有明确的触发条件?
步骤 2:添加文档
## 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] |

输出格式

Mermaid 流程图(BPMN 风格)
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
泳道图
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
叙述摘要
## 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
结构化数据(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

常见流程模式

顺序流程

活动严格按照先后顺序依次进行。

flowchart LR
    A[Step 1] --> B[Step 2] --> C[Step 3] --> D[Step 4]
并行分支与汇聚

可同时进行的活动。

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]
排他决策

根据条件只选择一条路径。

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

重复活动,直到满足条件。

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

处理错误和异常。

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]

最佳实践

实践描述
从简单开始先从顺利路径入手,再增加复杂性
一个开始,一个结束理想情况下,每个池各有一个
为活动命名使用动词-名词格式(例如,“审核订单”)
为网关添加标签显示决策问题
为条件添加标签描述每条流出路径
平衡网关使用类型匹配的网关进行分支和汇聚
避免线路交叉调整布局以提高可读性
记录异常展示错误处理路径

集成

上游
  • stakeholder-analysis - 流程参与者
  • domain-storytelling - 当前流程发现
  • capability-mapping - 能力背景
下游
  • value-stream-mapping - 价值流分析
  • Requirements - 流程需求
  • System design - 自动化机会

相关技能

  • value-stream-mapping - 从精益视角看待流程流转
  • data-modeling - 流程中的数据实体
  • journey-mapping - 客户体验视角
  • capability-mapping - 流程与能力的匹配

版本历史

  • v1.0.0(2025-12-26):首次发布

评论

支持 Markdown