Kerry 的筆記本
  • Table of contents
  • Kerry的Mac裝機必要
  • ASP.NET Core 教育訓練文件
    • .NET 9 OpenAPI 介紹與教學
    • 目錄
    • ASP.NET Core Authentication系列(一)理解Claim, ClaimsIdentity, ClaimsPrincipal
    • ASP.NET Core Authentication系列(三)Cookie選項
    • ASP.NET Core Authentication系列(二)實現認證、登錄和註銷
    • ASP.NET Core Authentication系列(四)基於Cookie實現多應用間單點登錄(SSO)
    • ASP.NET Core Consul 教學
    • ASP.NET Core Hangfire 排程管理
    • ASP.NET Core KeyCloak 實作
    • ASP.NET Core NLog-依照Environment使用Nlog.Config檔案
    • ASP.NET Core NLog-如何使用 NLog 將 log 寫到檔案
    • ASP.NET Core Nlog-發送訊息到ElasticSearch
    • 目錄
    • ASP.NET Core Quartz.NET 管理介面
    • ASP.NET Core RDLC 報表設計
    • ASP.NET Core SFTP (使用第三方套建 SSH.Net) - 類別庫為案例
    • ASP.NET Core 中使用 HttpReports 進行接口統計,分析, 可視化, 監控,追踪等
    • ASP.NET 使用 MassTransit 與 RabbitMQ,實現事件發佈、訂閱
    • Asp.Net Core 分散式Session – 使用 Redis
    • ASP.NET Core 前台會員修改個人資料
    • ASP.NET Core 前台會員忘記密碼與重設密碼
    • ASP.NET Core 前台會員登入
    • ASP.NET Core 前台會員註冊
    • ASP.NET Core 呼叫 API 發生 CORS 錯誤
    • ASP.NET Core 如何套網頁設計樣版
    • ASP.NET Core 客製化Model Validation 預設錯誤訊息
    • ASP.NET Core 後台查詢頁面教學
    • ASP.NET Core 網站生命週期
    • ASP.NET Feature Management 使用說明與教學
    • ASP.NET RulesEngine 介紹
    • ASP.NET WinForms APP 程式安裝檔
    • LinePay 支付完成後返回 LINE 應用而不跳出外部瀏覽器
    • EntityFramework
      • EF Core Migrations 完整教學手冊
      • EntityFramework Core DB Migrations
      • 使用 Entity Framework Core (EF Core) 的 Migrations 功能進行版本控制
    • NET 6
      • .NET 6 Autofac範例
      • .NET 6 Automapper範例
      • .NET 6 BenchmarkDotNet範例
      • .NET 6 Bogus範例
      • .NET 6 Dapper範例
      • .NET 6 Dapper語法說明
      • .NET 6 EFCore範例
      • .NET 6 EFCore語法說明
      • .NET 6 EPPlus圖表範例
      • .NET 6 EPPlus範例
      • .NET 6 Hangfire範例
      • .NET 6 HttpClient單元測試範例
      • .NET 6 MailKit前置作業
      • .NET 6 MailKit範例
      • .NET 6 Moq範例
      • .NET 6 NLog範例
      • .NET 6 NLog進階範例
      • .NET 6 Serilog範例
      • .NET 6 Serilog進階範例
      • .NET 6 Telegram.Bot前置作業
      • .NET 6 Telegram.Bot範例
      • .NET 6 Text.Json範例
      • .NET 6 swagger授權
      • .NET 6 swagger範例
      • .NET 6 xUnit範例
      • .NET 6 取得appsettings檔案內容
      • .NET 6 更改回傳Json時為大駝峰命名
      • .NET 6 解決System.Text.Json序列化後會將所有非ASCII轉為Unicode
    • WDMIS
      • CORS
      • FeatureManagement
      • Serilog
      • Spectre.Console
      • 資料模型實戰:從 MSSQL 設計到 .NET 8 WebAPI 實作(以刀具管理為例)
  • Azure
    • 如何在 ASP.NET CORE 5.0 WEB 應用程序中實現 AZURE AD 身份驗證
    • Azure App Configuration 使用教學
    • Azure Blob Storage
    • Azure DevOps 持續整合(CI) + Artifacts
  • CSharp
    • ASP.NET await 與 wait 的差異
    • AutoMapper —— 類別轉換超省力
    • C# 中的 HTTPClient — 入門指南
    • C# 正則表達式:從零到英雄指南
    • C# 集合, List<> 取交集、差集、聯集的方法
    • C#單元測試教學
    • CORS 介紹與設定方式
    • CSharp Coding Conventions
    • Using jQuery Unobtrusive AJAX in ASP.NET Core Razor Pages
    • 深入Dapper.NET源碼
    • 菜雞與物件導向
      • 菜雞與物件導向 (0): 前言
      • 菜雞與物件導向 (1): 類別、物件
      • 菜雞與物件導向 (10): 單一職責原則
      • 菜雞與物件導向 (11): 開放封閉原則
      • 菜雞與物件導向 (12): 里氏替換原則
      • 菜雞與物件導向 (13): 介面隔離原則
      • 菜雞與物件導向 (14): 依賴反轉原則
      • 菜雞與物件導向 (15): 最少知識原則
      • 菜雞與物件導向 (2): 建構式、多載
      • 菜雞與物件導向 (3): 封裝
      • 菜雞與物件導向 (4): 繼承
      • 菜雞與物件導向 (5): 多型
      • 菜雞與物件導向 (6): 抽象、覆寫
      • 菜雞與物件導向 (7): 介面
      • 菜雞與物件導向 (8): 內聚、耦合
      • 菜雞與物件導向 (9): SOLID
      • 菜雞與物件導向 (Ex1): 小結
  • DBeaver
    • 如何強制讓 DBeaver 在 Mac 上使用英文介面
  • DesignPattern
    • OAuth
    • Repository 模式 (Repository Pattern)
    • Single Sign On 實作方式介紹 (CAS)
    • 【SOP製作教學】新手適用,SOP範例、流程圖、製作流程全公開!
    • 【SOP製作教學】流程圖教學、重點範例、BPMN符號介紹!
    • 【SOP製作教學】流程圖符號整理、BPMN2.0進階符號教學!
    • 多奇數位 C# 程式碼撰寫規範 (C# Coding Guideline)
    • 軟體分層設計模式 (Software Layered Architecture Pattern)
    • 開源程式碼檢測平台 SonarQube
    • 菜雞新訓記
      • 菜雞新訓記 (0): 前言
      • 菜雞新訓記 (1): 使用 Git 來進行版本控制吧
      • 菜雞新訓記 (2): 認識 Api & 使用 .net Core 來建立簡單的 Web Api 服務吧
      • 菜雞新訓記 (3): 使用 Dapper 來連線到資料庫 CRUD 吧
      • 菜雞新訓記 (4): 使用 Swagger 來自動產生可互動的 API 文件吧
      • 菜雞新訓記 (5): 使用 三層式架構 來切分服務的關注點和職責吧
      • 菜雞新訓記 (6): 使用 依賴注入 (Dependency Injection) 來解除強耦合吧
      • 菜雞新訓記 (7): 使用 Fluent Validation 來驗證參數吧
  • DevOps
    • Repository 模式 (Repository Pattern)
    • pipeline工具研究
    • 單例模式 (Singleton Pattern)
    • 單元測試
    • 軟體分層設計模式 (Software Layered Architecture Pattern)
    • 雙重檢查鎖定模式 (Double-Checked Locking Pattern)
  • Docker
    • Docker 中部署 .NET 8 Web App 並支援 HTTPS
    • Docker指令大全
    • 第七章 安裝Nomad
    • Docker - 第三章 | 安裝 MSSQL
    • Docker - 第九章 | 安裝 datalust seq
    • 第二章 docker-compose 教學
    • Docker - 第五章 | 安裝 Redis
    • 第八章 安裝SonarQube
    • Docker - 第六章 | 安裝RabbitMQ
    • 第十一章 安裝 VtigerCRM
    • 第十二章 安裝KeyCloak
    • Docker - 第十章 | 安裝 Redmine
    • 第四章 安裝MySQL
    • Docker Desktop (含更改 Docker Image 路徑)
  • Git
    • Git Flow 指令大全(完整指令整理) 🚀
    • Git 安裝及配置SSH Key
    • Git 建立到上傳
    • 將現有專案的遠端儲存庫直接更改為新的儲存庫
    • Git 流程規劃
    • Git 語法大全
    • 30 天精通 Git 版本控管
      • 30 天精通 Git 版本控制
        • 第 01 天:认识 Git 版本控制
        • 第 02 天:在 Windows 平台必装的三套 Git 工具
        • 第 03 天:建立仓库
        • 第 04 天:常用的 Git 版本控制指令
        • 第 05 天:了解仓库、工作目录、物件与索引之间的关系
        • 第 06 天:解析 Git 资料结构 - 物件结构
        • 第 07 天:解析 Git 资料结构 - 索引结构
        • 第 08 天:关于分支的基本观念与使用方式
        • 第 09 天:比对文件与版本差异
        • 第 10 天:认识 Git 物件的绝对名称
        • 第 11 天:认识 Git 物件的一般参照与符号参照
        • 第 12 天:认识 Git 物件的相对名称
        • 第 13 天:暂存工作目录与索引的变更状态
        • 第 14 天: Git for Windows 选项设定
        • 第 15 天:标签 - 标记版本控制过程中的重要事件
        • 第 16 天:善用版本日志 git reflog 追踪变更轨迹
        • 第 17 天:关于合并的基本观念与使用方式
        • 第 18 天:修正 commit 过的版本历史记录 Part 1
        • 第 19 天:设定 .gitignore 忽略清单
        • 第 20 天:修正 commit 过的版本历史记录 Part 2
        • 第 21 天:修正 commit 过的版本历史记录 Part 3
        • 第 22 天:修正 commit 过的版本历史记录 Part 4 (Rebase)
        • 第 23 天:修正 commit 过的版本历史记录 Part 5
        • 第 24 天:使用 GitHub 远端仓库 - 入门篇
        • 第 25 天:使用 GitHub 远端仓库 - 观念篇
        • 第 26 天:多人在同一个远端仓库中进行版控
        • 第 27 天:通过分支在同一个远端仓库中进行版控
        • 第 28 天:了解 GitHub 的 fork 与 pull request 版控流程
        • 第 29 天:如何将 Subversion 项目汇入到 Git 仓库
        • 第 30 天:分享工作中几个好用的 Git 操作技巧
      • zh-tw
        • 第 01 天:認識 Git 版本控管
        • 第 02 天:在 Windows 平台必裝的三套 Git 工具
        • 第 03 天:建立儲存庫
        • 第 04 天:常用的 Git 版本控管指令
        • 第 05 天:了解儲存庫、工作目錄、物件與索引之間的關係
        • 第 06 天:解析 Git 資料結構 - 物件結構
        • 第 07 天:解析 Git 資料結構 - 索引結構
        • 第 08 天:關於分支的基本觀念與使用方式
        • 第 09 天:比對檔案與版本差異
        • 第 10 天:認識 Git 物件的絕對名稱
        • 第 11 天:認識 Git 物件的一般參照與符號參照
        • 第 12 天:認識 Git 物件的相對名稱
        • 第 13 天:暫存工作目錄與索引的變更狀態
        • 第 14 天: Git for Windows 選項設定
        • 第 15 天:標籤 - 標記版本控制過程中的重要事件
        • 第 16 天:善用版本日誌 git reflog 追蹤變更軌跡
        • 第 17 天:關於合併的基本觀念與使用方式
        • 第 18 天:修正 commit 過的版本歷史紀錄 Part 1
        • 第 19 天:設定 .gitignore 忽略清單
        • 第 20 天:修正 commit 過的版本歷史紀錄 Part 2
        • 第 21 天:修正 commit 過的版本歷史紀錄 Part 3
        • 第 22 天:修正 commit 過的版本歷史紀錄 Part 4 (Rebase)
        • 第 23 天:修正 commit 過的版本歷史紀錄 Part 5
        • 第 24 天:使用 GitHub 遠端儲存庫 - 入門篇
        • 第 25 天:使用 GitHub 遠端儲存庫 - 觀念篇
        • 第 26 天:多人在同一個遠端儲存庫中進行版控
        • 第 27 天:透過分支在同一個遠端儲存庫中進行版控
        • 第 28 天:了解 GitHub 的 fork 與 pull request 版控流程
        • 第 29 天:如何將 Subversion 專案匯入到 Git 儲存庫
        • 第 30 天:分享工作中幾個好用的 Git 操作技巧
  • Hands-On Labs - LineBotSDK 實作手札 (C#, .net core)
    • 00. 如何申請LINE Bot
    • CLI
      • 使用CLI來發送新的Channel Access Token(LINE Bot)
      • 使用CLI免費發送LINE Notify通知
    • basic
      • 如何發送LINE訊息(Push Message)
      • 如何發送LINE Template Messages
      • 如何發送ImageMap訊息
      • 如何發送Flex Message
      • 如何在訊息後面加上QuickReply快捷選項
    • liff
      • Lab 21: 建立第一個LIFF應用
    • webhook
      • 如何建立可Echo的基本LINE Bot
      • 如何在WebHook中取得用戶個人資訊(名稱、頭像、狀態)
      • 如何在WebHook中取得用戶上傳的圖片(Bytes)
  • Markdown
    • Markdown Cheatsheet 中文版
    • Markdown語法大全
    • 使用HackMD建立書本目錄
    • 使用HackMD建立簡報
  • SAP ABAP
    • ABAP開發環境和總體介紹
    • SAP MM模塊常用表總結
    • SAP QM數據庫表清單
    • SAP欄位與表的對應關係
  • SQL Server
    • [SQL SERVER] Like in
    • SQL Server 中,移除資料庫中所有的關聯限制
    • SQL Server 刪除資料庫中所有資料表
    • SQL Server View、Function 及 Stored Procedure 定義之快速備份
    • SSMS v18 清除登入畫面中,下拉選單歷史紀錄
    • [MS SQL]如何透過Database Mail進行郵件發送
    • [SQL SERVER]撰寫Stored Procedure小細節
    • 使用 Data Migration Assistant 移轉 SQL Server 資料庫與帳戶
    • 使用SSIS創建同步資料庫數據任務
  • Tools
    • 免費 FTP 伺服器 FileZilla Server 安裝教學 (新版設定)
  • VisualStudio
    • .NET CLI 指令碼介紹
    • Visual Studio 使用 Git 版本控制
    • 使用 Visual Studio 2022 可透過 .editorconfig 鎖定文字檔案的儲存編碼格式分享
  • Web API
    • ASP.NET Core 6 Web API 進行 JWT 令牌身份驗證
    • [ASP.NET Core]如何使用SwaggerAPI說明文件
    • ASP.NET Core Web Api實作JWT驗證筆記
    • ECFIT API 範例
    • JWT Token Authentication And Authorizations In .Net Core 6.0 Web API
    • 微服務架構 - 從狀態圖來驅動 API 的設計
  • Windows
    • [C#] 伺服器監控常用語法 (事件檢視器、CPU 硬碟使用率、程式執行狀況)
    • Configure IIS Web Server on Windows Server 2019
    • Log Paser Studio 分析 IIS W3C Log
    • Windows Server 2019 如何安裝 IIS 運行 ASP.NET 專案
    • 如何檢查安裝在 IIS 上的 .NET Core Hosting Bundle 版本
    • [IIS] 如何解決網站第一個請求 Request 特別慢 ?
    • IIS 不停機更版設置
    • SQL Server 2019 Standard 繁體中文標準版安裝
    • WINDOWS共用資料夾的網路認證密碼放在哪?如何清除?
    • 如何設定 ASP.NET CORE 網站應用程式持續執行在 IIS 上
  • 專案管理
    • SSDLC (Secure Software Development Life Cycle)
    • 系統開發原則
    • MIS及專案管理-使用Redmine
      • 第10章 - [日常管理]MIS部門週會工作進度追蹤
      • 第11章 - [日常管理]MIS部門主管月會報告管理
      • 第12章 - [日常管理]機房工作日誌
      • 第13章 - [日常管理]MIS部門耗用工時及工作進度檢討
      • 第14章 - [日常管理]MIS文件知識庫
      • 第15章 - [日常管理]整理及管理分享
      • 第16章 - [異常管理]使用者問題回報系統
      • 第17章 - [異常管理]資安事件及異常紀錄
      • 第18章 - [異常管理]整理及管理分享
      • 第19章 - [變革管理]MIS的專案及專案管理五大階段
      • 第1章 - [MIS及專案管理]中小企業MIS的鳥事
      • 第20章 - [變革管理]MIS的新專案管理:起始階段
      • 第21章 - [變革管理]MIS的新專案管理:規劃階段
      • 第22章 - [變革管理]MIS的新專案管理:執行階段
      • 第23章 - [變革管理]MIS的新專案管理:監控階段
      • 第24章 - [變革管理]MIS的新專案管理:結束階段
      • 第25章 - [變革管理]整理及管理分享
      • 第26章 - [ISMS管理]ISMS平台整體規劃
      • 第27章 - [ISMS管理]ISMS文管中心
      • 第28章 - [ISMS管理]ISMS表單紀錄的管理
      • 第29章 - [ISMS管理]整理及管理分享
      • 第2章 - [MIS及專案管理]專案管理的概念及MIS應用
      • 第30章 - 初心、來時路及感謝:系列文章總結回顧
      • 第3章 - [MIS及專案管理]管理工具的選擇
      • 第4章 - [Redmine]Redmine的安裝及設定
      • 第5章 - [Redmine]Redime系統邏輯說明
      • 第6章 - [Redmine]自行建立及維護表單
      • 第7章 - [Redmine]專案版面的規劃
      • 第8章 - [日常管理]AR管理
      • 第9章 - [日常管理]資訊服務申請
  • 微服務架構
    • DDD + CQRS + MediatR 專案架構
    • 微服務架構 #2, 按照架構,重構系統
    • 淺談微服務與網站架構的發展史
    • API First Workshop 設計概念與實做案例
      • API First #1 架構師觀點 - API First 的開發策略 - 觀念篇
      • API First #2 架構師觀點 - API First 的開發策略 - 設計實做篇
    • 基礎建設 - 建立微服務的執行環境
      • Part #1 微服務基礎建設 - Service Discovery
      • Part #2 微服務基礎建設 - 服務負載的控制
      • Part #3 微服務基礎建設 - 排隊機制設計
      • Part #4 可靠的微服務通訊 - Message Queue Based RPC
      • Part #5 非同步任務的處理機制 - Process Pool
    • 實做基礎技術 API & SDK Design
      • API & SDK Design #1, 資料分頁的處理方式
      • API & SDK Design #2, 設計專屬的 SDK
      • API & SDK Design #3, API 的向前相容機制
      • API & SDK Design #4, API 上線前的準備 - Swagger + Azure API Apps
      • API & SDK Design #5 如何強化微服務的安全性 API Token JWT 的應用
    • 建構微服務開發團隊
      • 架構面試題 #1, 線上交易的正確性
      • 架構面試題 #2, 連續資料的統計方式
      • 架構面試題 #3, RDBMS 處理樹狀結構的技巧
      • 架構面試題 #4 - 抽象化設計;折扣規則的設計機制
    • 架構師觀點 - 轉移到微服務架構的經驗分享
      • Part #1 改變架構的動機
      • Part #2 實際改變的架構案例
    • 案例實作 - IP 查詢服務的開發與設計
      • 容器化的微服務開發 #1 架構與開發範例
      • 容器化的微服務開發 #2 IIS or Self Host
  • 系統評估
    • RPA 與 WebAPI 評估
    • 數位轉型:從現有系統到數位化的未來
    • 數位轉型:從現有系統到數位化的未來
  • 面試
    • CV_黃子豪_2024
    • HR 問題集
    • .NET 工程師 面試問題集
    • 資深工程師 問題集
    • 資深開發人員 / 技術主管
    • 題目
Powered by GitBook
On this page
  • 【SOP製作教學】流程圖符號整理、BPMN2.0進階符號教學!
  • 本篇除了介紹BPMN2.0流程圖符號的進階用法,也會用流程圖來展示符號使用方法,並將流程圖符號整理給大家!
  • 【SOP製作教學】流程圖教學、重點範例、BPMN符號介紹!
  • 唯一判斷符號-排他關口(Exclusive Gateway)
  • 多次判斷符號-包容關口(Inclusive Gateway)
  • 流程圖的分流符號-並行關口(Parallel Gateway)
  • 複雜流程的判斷-複雜關口(Complex Gateway)
  • 事件判斷符號-事件關口(Event-Based Gateway)
  • 流程圖的事件(Event)延伸介紹
  • ※補充1:BPMN2.0 流程圖符號分類心智圖
  • ※補充2:BPMN2.0流程圖中文符號整理
  • 流程圖符號整理 #1 事件(Event)
  • 流程圖符號整理 #2 活動(Activity)
  • 流程圖符號整理 #3 關口(Gateway)
  1. DesignPattern

【SOP製作教學】流程圖符號整理、BPMN2.0進階符號教學!

Previous【SOP製作教學】流程圖教學、重點範例、BPMN符號介紹!Next多奇數位 C# 程式碼撰寫規範 (C# Coding Guideline)

Last updated 10 months ago

【SOP製作教學】流程圖符號整理、BPMN2.0進階符號教學!

本篇除了介紹BPMN2.0流程圖符號的進階用法,也會用流程圖來展示符號使用方法,並將流程圖符號整理給大家!

img

【SOP製作教學】流程圖教學、重點範例、BPMN符號介紹!

本篇介紹SOP中的「流程圖製作」,除了流程圖範例、基本教學外,也會介紹BPMN的流程圖符號使用法,讓你輕鬆、快速學會標準的流程圖製作方法!

medium.com

在讀完前一篇文章後,相信你已具備畫出完整流程圖的能力了!

但是例如「同步並行任務」、「有條件地執行任務」是沒辦法用一般的流程圖符號畫出的,此時就要介紹到另外一個BPMN的重要符號:

「關口」(Gateway)

它是用空心的菱形符號表示,最大的用途是能將流程分流或合併,讓整個流程會「先經過判斷再決定做什麼」。

▲ 本篇是延伸技巧,因此都將直接針對符號來解釋與說明,不會畫出完整的流程圖。

唯一判斷符號-排他關口(Exclusive Gateway)

排他關口(Exclusive Gateway),表示流程會在此關口分流,而且只能選擇一個順序流繼續走,判斷的方式則會寫在順序流上,並且被依序判斷,如果符合,則執行該流向的活動,並且停止判斷其他條路徑。

它的符號,是在菱形的框框內加上「×」,或是不加任何符號保持空白。

流程圖符號-排他關口(Exclusive Gateway)

如流程圖中展示,在排他關口(Exclusive Gateway)符號後的三條路徑,將會被由上而下地判斷,當符合判斷條件時,則會選擇該條路徑執行。

▲ 關口 Gateway
A Gateway is used to control the divergence and convergence of Sequence Flows in a Process and in a Choreography. Thus, it will determine branching, forking, merging, and joining of paths. Internal markers will indicate the type of behavior control.▲ 排他關口 Exclusive Gateway
A diverging Exclusive Gateway (Decision) is used to create alternative paths within a Process flow. This is basically
the “diversion point in the road” for a Process. For a given instance of the Process, only one of the paths can be taken.

多次判斷符號-包容關口(Inclusive Gateway)

包容關口 (Inclusive Gateway),則是判斷之後雖會執行該路徑,但不會排擠其他的選擇,也就是說可能每一條路徑都走,但也可能一條都不走。

它的符號,是在菱形的框框內加上「⚪」。

流程圖符號-包容關口(Inclusive Gateway)

上示流程圖中,當判斷為非瑕疵品時,會與客人說明瑕疵品的定義。

如果為一級瑕疵品時,則會發送維修申請。

但如是二級的瑕疵品,因為它同時滿足≥一級瑕疵品,也滿足≥二級瑕疵品,所以不但會發送維修申請,也會提供賠償。

在設計流程圖時,為了確保流程會持續進行,因此,只要使用包容關口(Inclusive Gateway)符號,都最好有一個預設路徑,或是至少有要能符合其中一個條件,不然有可能會莫名地中斷流程。

▲ 包容關口 Inclusive Gateway
A diverging Inclusive Gateway (Inclusive Decision) can be used to create alternative but also parallel paths within a Process flow.Unlike the Exclusive Gateway, all condition Expressions are evaluated. The true evaluation of one condition Expression does not exclude the evaluation of other condition Expressions. All Sequence Flows with a true evaluation will be traversed by a token. Since each path is considered to be independent, all combinations of the paths MAY be taken, from zero to all. However, it should be designed so that at least one path is taken.

流程圖的分流符號-並行關口(Parallel Gateway)

並行關口(Parallel Gateway)不同於其他關口,它並不具備判斷功能,而是必須全部都做、全部滿足,它的用途就是純粹的分流、合併。

它的符號,是在菱形的框框內加上「+」。

流程圖符號-並行關口(Parallel Gateway)

如圖中,就表示在確認訂單與產品後,就要同步並行「與客說明瑕疵品定義」、「發送檢修申請」、「發送維修申請」,三者缺一不可。

因此,並行關口(Parallel Gateway),也同時表達了這些活動沒有必須遵循的順序,是可以同時執行的。

並行關口(Parallel Gateway)還有合併的用途,也就是「只有三件事情都完成,才可以做下一步」。

▲ 並行關口 Parallel Gateway
A Parallel Gateway creates parallel paths without checking any conditions; each outgoing Sequence Flow receives a token upon execution of this Gateway. For incoming flows, the Parallel Gateway will wait for all incoming flows before triggering the flow through its outgoing Sequence Flows.

複雜流程的判斷-複雜關口(Complex Gateway)

複雜關口(Complex Gateway),則用於表達較為複雜的情況,它有和包容關口(Inclusive Gateway)類似的概念,也就是只要條件符合就可以執行。

通常,判斷較難在流程中呈現、需要額外說明、輔助文件時,就可以使用複雜關口。

它的符號,是在菱形的框框內加上類似「*」圖案。

流程圖符號-複雜關口(Complex Gateway)

複雜關口 (Complex Gateway)也具備並行關口(Parallel Gateway)的合併特色,但它未必要所有條件滿足,可以只滿足部分條件。例如:

流程圖符號-複雜關口(Complex Gateway)

如上圖就是並行關口(Parallel Gateway)、複雜關口 (Complex Gateway)的綜合運用,它表達的是當客訴來的時候,就需要和客戶詢問4項資訊。

但電戶、帳戶名稱、收件地址只要有其中2項符合,再加上訂單與產品資訊,就可以執行下一步的維修申請。

也有一些其他的運用例子:

  • 「3個面試官中有2位同意,即可讓面試者到下一階段」

  • 「3種登入方法,只要其中一個成功,即可到達下一個畫面」

▲ 複雜關口 Complex Gateway
The Complex Gateway can be used to model complex synchronization behavior.

事件判斷符號-事件關口(Event-Based Gateway)

事件關口(Event-Based Gateway),雖然同樣有判斷性,但它的判斷是來自於非流程內的項目,是以事件作為觸發點(Trigger)。

它還具備了排他關口(Exclusive Gateway)的排他性,也就是只執行一個路徑的項目,但因為是以事件觸發,所以是「誰先發生,就做那一個」。

流程圖符號-事件關口(Event-Based Gateway)

圖中的例子,表示當「接到同位客人的客訴」或「客訴兩天後」,才會開始處理客訴。

但如果先發生了「不同的客人、在兩天內,總共的客訴數量達到30筆」時,則是先召開部門大會,在開會之後,即便到了已經2天後,或是接到同一位客訴,也不會再回過頭處理。

另外,之前也提到過,因為事件和活動某種程度是可以互相替代的,因此「收到信件的事件」也可用「收取信件的活動」來表達。

▲ 事件關口(Event-Based Gateway)
The Event-Based Gateway represents a branching point in the Process where the alternative paths that follow the Gateway are based on Events that occur, rather than the evaluation of Expressions using Process data (as with an Exclusive or Inclusive Gateway).A specific Event, usually the receipt of a Message, determines the path that will be taken. Basically, the decision is made by another Participant, based on data that is not visible to Process, thus, requiring the use of the Event-Based Gateway.

流程圖的事件(Event)延伸介紹

在第一篇介紹符號時,只說明了開始事件(Start event)、結束事件(End event),但事件關口(Event-Based Gateway)的事件卻不屬於這兩類,它屬於「流程中的事件」,也就是中間事件(Intermediate Event)。

所有夾在開始、結束之間的事件,都屬於中間事件(Intermediate Event)。隨著內建福號的不同,它還可以具備觸發、啟動的概念。

因此,就算沒有事件關口(Event-Based Gateway),中間事件(Intermediate Event)一樣可以獨立和其他活動一起運作,例如:

流程圖符號-中間事件(Intermediate Event)

這個流程,基本上可以說是接到客訴的2天後,客服才會開始行動。

中間事件,它是用兩個細框的空心圈所組成。在圈圈內的符號,則是用來表達不同類型的中間事件,例如:

流程圖符號-事件特色

另外,事件除了以流程位置來定義的「開始、中間、結束」。還有以主被動來區分的捕獲事件(Catching Event)、拋出事件(Throwing Event)。

所謂捕獲事件(Catching Event),代表著一種被動的觸發機制,也就是活動是「當會接獲某個消息、當某個情況發生後…」才要執行。因此,所有的開始事件(Start event)一定是一種捕獲事件(Catching Event),畢竟它是整個流程觸發的開關。

符號表示,是以白色為底的所有事件符號。我們在前面的舉例中,也都是以捕獲事件(Catching Event)作為例子。

反之,**拋出事件(Throwing Event)代表隨著上一個活動完成,某個事件會隨之發生,有著主動產生結果的意涵。**同樣地,結束事件(End event),則必定是一種拋出事件(Throwing Event)代表著在這個流程階段完成後,某件事情隨之發生(事情都做完了→結案發生、流程結束)。

通常有拋出事件(Throwing Event)時,也有捕獲事件(Catching Event)來呼應。它的符號,則是以黑色為底的所有事件符號。

以下就用實際的流程圖,舉幾個例子吧!

流程圖符號-捕獲事件(Catching Event)、拋出事件(Throwing Event)

▲ 捕獲事件 Catching Event
Events that catch a trigger. All Start Events and some Intermediate Events are catching Events.▲ 拋出事件 Throwing Event
Events that throw a Result. All End Events and some Intermediate Events are throwing Events that MAY eventually be caught by another Event. Typically the trigger carries information out of the scope where the throw Event occurred into the scope of the catching Events. The throwing of a trigger MAY be either implicit as defined by this standard or an extension to it or explicit by a throw Event.

目前為止,已經說明了80%新手會用到的符號表示法,另外還有非常多進階用法、不同的圖示也很值得學習,在有了這些基礎後查資料會容易很多。

當然上述的說明有些是為了方便理解,因此並沒有非常精準、正確,也請大家多多包涵。

系列文到現在,大家都應該能做出很多份SOP文件、流程圖了,下一步則是要把這些流程串連、管理好,讓它們能更好地用於商場上,下一回將介紹的是基本的ISO文件管理方法。

按下「Follow」,追蹤我或我的專欄,將能定期收到優質的文章!
我會在系列完結時,製作統整表給有Follow的人喔!「1下」拍手:到此一遊,留個記錄吧。
「5下」拍手:表示喜歡這篇文章。
「15下」拍手:表示你想要知道更多相關的內容。
「50下」拍手:表示這篇文章對你非常實用!

※補充1:BPMN2.0 流程圖符號分類心智圖

※補充2:BPMN2.0流程圖中文符號整理

BPMN2.0流程圖的中文符號說明Excel檔,會在本系列完結時,發送給所有Followers,有需要的話追蹤我即可!(下圖為部分精選符號)

流程圖符號整理 #1 事件(Event)

流程圖符號整理 #1 事件(Event)

流程圖符號整理 #2 活動(Activity)

流程圖符號整理 #2 活動(Activity)

流程圖符號整理 #3 關口(Gateway)

流程圖符號整理 #3 關口(Gateway)

img
img
img
img
img
img
img
img
img
img
img
img
img