// SDLC · SOLID · Role Design · Agentic Dev · 2026-05-27

AI 時代軟體開發
流程設計完全指南

SOLID 架構原則 × PD / RD / QA 角色分工 × Agentic SDLC——系統化建立可量測、可追溯、可改善的工業級開發生命週期。整合 Claude × Gemini × GPT 三模型分析,以 ISO / Google / OpenAI / NIST 官方文件為基準。

SOLID 原則 SDLC 7 階段 PD / RD / QA 分工 Agentic / AI 工具 品質 / 安全 / 量測
最後更新 2026-05-29
↗ NotebookLM
① 點 PDF 匯出檔案,或 Copy Link 複製網址 ② 開 NotebookLM →「新增來源 → 網站」貼上,加入你的筆記本
// 目錄
  1. 五大主題一眼看懂
  2. SOLID 五大原則深解
  3. 現代 SDLC 七階段流程
  4. PD / RD / QA 角色分工與 RACI
  5. 品質工程:Code Review、測試分層、Definition of Done
  6. 安全內嵌 SDLC
  7. Agentic SDLC:AI 重塑開發流程
  8. 交付量測:DORA + SLO + 品質指標
  9. 常見反模式與校正
  10. 決策樹:你的團隊現在缺什麼?
  11. 導入路線:0–90 天行動計畫
// 01

五大主題一眼看懂

業界成熟的軟體開發流程不應只用「需求 → 開發 → 測試 → 上線」描述,而應設計成一個可量測、可追溯、可改善的生命週期系統。

🏗

SOLID
架構原則

可維護、可擴展程式碼的設計基礎

🔄

SDLC
7 階段流程

從探索到維護的完整生命週期

👥

PD / RD / QA
角色分工

RACI 邊界與跨職能協作

🤖

Agentic
SDLC

AI Agent 融入開發全流程

品質 / 安全
量測

DoD、DORA、SLO、安全門檻

ISO/IEC/IEEE 12207:2026 Google Engineering Practices OpenAI Codex / AGENTS.md NIST SSDF SP 800-218 ISTQB CTFL v4.0

// 02

SOLID 五大原則深解

Robert C. Martin(Uncle Bob)提出的五項物件導向設計原則,目標是防止程式碼產生 rigid(難以修改)、fragile(一動就壞)、non-reusable(無法複用)三大症狀。

S

Single Responsibility

一個 class / module 只有一個改變理由。禁止建立承載過多業務邏輯的「God Class」。

訂單處理應將「價格計算」「資料庫持久化」「發送通知」拆分為各自獨立的類別。

違反症狀:修改 A 功能導致 B 壞掉

O

Open / Closed

對擴充開放,對修改關閉。新增功能透過增加新程式碼,而非修改已通過測試的既有邏輯。

依賴多型(Polymorphism)與介面(Interface)架構設計達成。

違反症狀:新需求必須改動既有邏輯

L

Liskov Substitution

子類別可完全替換父類別。禁止修改父類別既有的不變行為或拋出未預期 Exceptions。

確保繼承體系在語意上完全相容。

違反症狀:繼承後行為不可預測

I

Interface Segregation

客戶端不應依賴不需要的方法。將臃腫的通用介面拆分為多個職責單一的微型介面。

MultiFunctionPrinter 拆為 PrinterScannerFax

違反症狀:Fat interface,大量空實作

D

Dependency Inversion

依賴抽象,不依賴具體實作。高層模組不應直接 new 低層具體實現,透過抽象介面 + IoC / DI 管理依賴。

落地方式:優先使用 Dependency Injection 容器。

違反症狀:難以替換 DB / third-party

🔍

SOLID 在 Code Review 的落地方式

PR CHECKLIST · REFACTOR
原則Code Review 檢查問題重構觸發條件
SRP這個 class / module 是否只有一個改變理由?修改一處邏輯連帶影響多個不相關功能
OCP新增行為時能否透過擴充而非修改核心邏輯?每次新增功能都需修改多處現有程式碼
LSP子類型是否能安全替代父類型而不破壞行為?繼承後出現 if instanceof 判斷
ISP呼叫方是否被迫依賴不需要的方法?介面中出現大量空實作(throw not implemented)
DIP高層政策是否依賴抽象,而非直接依賴低層實作?高層模組直接 new 具體資料庫 / 服務
⚠️

避免過度抽象(Premature Abstraction):先解決業務問題,再 refactor 對齊 SOLID 原則。不要為了套 SOLID 而過度抽象;以可讀性、測試性、變更頻率為判斷依據。SOLID 是目標,不是教條。


// 03

現代 SDLC 七階段流程

ISO/IEC/IEEE 12207:2026 將軟體生命週期涵蓋 conception → development → operations → support → retirement,並明確可套用於 Agile,但不強制指定單一開發模型。每個階段需定義責任人、輸入、輸出、品質門檻。

01

需求探索與策略對齊(Discovery & Strategic Alignment)

分析市場與用戶痛點,界定核心商務目標,定義 MVP 範疇。輸出:Problem Statement、Target User、Success Metrics、Scope/Non-scope、Prototype / Flow。可用 Google Design Sprint + HEART Framework

PD / PM 主導RD 諮詢QA 諮詢
02

架構設計與安全建模(Architecture & Design)

技術選型、Schema Design、Threat Modeling(Secure by Design)。輸出:ADR、API Contract、Data Model、Sequence Diagram、Threat Model、Test Strategy

RD 主導Security 參與QA 諮詢
03

產品與衝刺規劃(Product & Sprint Planning)

將需求拆解為 User Stories 與 Backlog,排定迭代時程。共同定義 Definition of Ready 與 Definition of Done。ISO/IEC/IEEE 29148:2018 規範需求工程流程

PD / PM 主導RD 協作QA 協作
04

開發與實現(Development & Implementation)

功能實作、API 定義、單元測試、Code Review。2026 普遍引入 AI Pair Programming。PR 必須通過 lint / type-check / unit test 才可 merge

RD 主導QA 協同
05

持續測試與合規審查(Testing & Compliance)

多層級自動化測試、Regression 防護、資料隱私合規掃描。ISTQB CTFL v4.0:測試活動可迭代並行,不應簡化為「最後測一下」

QA 主導RD 協同Security
06

部署與可觀測性(Deployment & Observability)

CI/CD Pipeline 自動化上線,部署生產環境 Telemetry 監控(log / metric / trace / alert)。SRE / DevOps 準備 rollback plan、feature flag、SLO 告警

SRE / DevOps 主導RD 協同
07

長期維護與優化(Maintenance & Optimization)

基於生產數據效能調優、Refactoring、弱點修補。Post-release review → 指標回饋 → 下輪探索。Incident Response + Postmortem

SRE 主導RDPD 知會
💡

每個 Feature 的標準流程(GPT 報告 §11):PD 定義問題 → PD+RD+QA 釐清需求 → RD 技術設計 → QA 設計測試策略 → RD 實作 + PR → Code Review 通過 → QA 驗收 → SRE 準備發布 → Feature flag 小流量 → 觀察指標 + Post-release review


// 04

PD / RD / QA 角色分工與 RACI

專業分工(Segregation of Duties)與共享責任(Shared Responsibility)的動態平衡是成功關鍵。每個角色有核心職責,也有「不應承擔的錯誤責任」。

👥

核心職責與交付物矩陣

PD · RD · QA · SRE · SECURITY
角色核心職責核心交付物不應承擔
PD / PM / PO定義問題、使用者價值、目標指標、需求優先級、驗收條件PRD、User Story Map、Wireframe、Success Metrics指定低階技術實作細節
UX / Design使用者流程、互動設計、可用性驗證、設計規格Prototype、Flow Chart、Design Spec只在開發後補 UI
RD架構設計、技術拆解、實作、單元測試、可維護性、效能與可觀測性Source Code、ADR、API Spec、Unit Tests需求不清時盲目開發;繞過 QA gate
QA測試策略、風險分析、測試設計、自動化測試、驗收把關、缺陷分析Test Plan、Automation Scripts、Bug Report、Quality Dashboard只做開發後手動點擊測試;替 RD debug
SRE / DevOpsCI/CD、部署、監控、SLO、Incident ResponsePipeline、Runbook、SLO Dashboard成為所有線上問題的唯一責任人
Security威脅建模、資安需求、供應鏈安全、弱點管理Threat Model、Security Test Cases、SBOM只在上線前掃描一次
📊

RACI 分工矩陣

R=執行 · A=最終負責 · C=諮詢 · I=知會
工作項目PD / PMRDQASRESecurity
產品目標與成功指標A/RCCII
使用者研究與需求探索A/RCCII
PRD / User StoryA/RCCIC
驗收條件A/RCC/RIC
技術架構CA/RCCC
測試策略CCA/RCC
實作與單元測試IA/RCIC
Code ReviewIA/RCIC
CI/CD PipelineICCA/RC
Release Go/No-GoARRRC
Incident 事故處理IRCA/RC
Postmortem 事後檢討CRCA/RC
🎯

Shift-Left Testing(左移測試):QA 需在 PD 釋出 PRD 初稿階段即介入審查,從測試視角找出邏輯漏洞。採用 Shift-Left 的團隊非計劃性工作減少 22%,可將 49% 時間用於新功能開發(vs 傳統團隊 38%)。

📋

Scrum 角色映射 × 需求品質門檻

DEFINITION OF READY · DONE

Definition of Ready(可開始的條件)

  • 問題已定義(清楚說明為何要做)
  • 使用者與情境明確(服務誰、哪個場景)
  • 驗收條件明確(QA 可設計測試)
  • 依賴已識別(API / 設計 / 法務 / 安全)
  • 風險已標註(技術 / 品質 / 安全 / 時程)
  • 可在一個迭代完成或可拆分

Definition of Done(完成的標準)

  • 功能符合驗收條件(PD / QA 可驗收)
  • 自動化測試通過(unit / integration / e2e)
  • Code Review 通過(設計 / 複雜度 / 測試 / 文件)
  • 文件更新(API / Runbook / ADR)
  • 安全檢查通過(secrets / dependency / 權限)
  • 可觀測性完成(log / metric / trace / alert)
  • 可 rollback(回滾策略或 feature flag)
需求格式(ISO/IEC/IEEE 29148 × ISTQB)
需求品質合格標準
明確性RD 與 QA 能用同一理解拆任務與測試
可驗收有可觀察結果(Given / When / Then 格式)
可測試QA 能設計測試條件與邊界案例
可追溯可回連產品目標、設計稿、測試案例、發布紀錄
有邊界明確列出 non-scope 與例外情境

// 05

品質工程:Code Review、測試分層、DoD

Google Engineering Practices 定義 Code Review 目的是維持程式碼與產品品質;ISTQB 強調測試流程可依情境調整,且應前移到需求與設計階段。

🔬

測試分層策略

TESTING PYRAMID · SHIFT-LEFT
層級責任主體目的工具示例
Unit Test 單元測試RD 主導驗證函式、class、module 行為Jest / pytest / JUnit
Integration Test 整合測試RD + QA驗證服務、DB、外部 API 整合Testcontainers / Supertest
Contract Test 契約測試RD驗證服務間介面相容性Pact / Spring Cloud Contract
E2E Test 端對端測試QA + RD驗證核心使用者流程Playwright / Cypress
Exploratory Test 探索式測試QA找出規格外風險與體驗問題手動 + Session-Based
Performance Test 效能測試QA + SRE驗證延遲、吞吐、資源使用k6 / Locust / JMeter
Security Test 安全測試Security + RD驗證弱點、權限、資料保護OWASP ZAP / Burp Suite
🚪

PR 品質門檻 × Code Review 準則

QUALITY GATES · GOOGLE ENG PRACTICES
Gate必要條件
PR 前需求明確、任務可驗收、影響範圍清楚;有 Definition of Ready 確認
PR 內容小批量(單一目的)、附測試、附說明;AI 生成程式碼與人寫同等對待
Code Review至少一位熟悉模組的人審查;檢查 design / functionality / complexity / tests / naming(Google 準則)
自動檢查lint / type-check / unit test / security scan 通過;Coverage 達標;未通過自動封鎖 merge
QA 驗收關鍵路徑與風險場景通過;探索式測試執行
發布前rollback plan / feature flag / 監控指標 / 告警設定完成;SBOM + 簽章
💡

品質指標不只是覆蓋率:測試覆蓋率被當作唯一指標會被遊戲化。應搭配 Escaped Defects(逃逸缺陷率)、Defect Reopen Rate(缺陷重開率)、Flaky Test Rate(不穩定測試率)綜合評估品質。


// 06

安全內嵌 SDLC(Security by Design)

NIST SSDF SP 800-218 建議將安全軟體開發實務整合進任何 SDLC;OWASP SAMM 提供安全成熟度模型。安全不是上線前補掃描,而是每個階段都有控制點。

🔒

每階段最低安全門檻

NIST SSDF · OWASP SAMM · SECURE BY DESIGN
SDLC 階段安全控制
需求資料分類(PII / 機密 / 公開)、權限模型設計、合規需求確認(GDPR / 個資法)
設計Threat Modeling(威脅建模):識別攻擊面、攻擊者、威脅行為;設計防禦措施
開發Secret scanning(禁止硬編碼 API key)、SAST 靜態分析、dependency scanning(供應鏈安全)
測試AuthZ / AuthN 驗證測試、輸入驗證測試、OWASP Top 10 測試案例
發布SBOM(軟體物料清單)、Artifact 簽章、部署審批、Artifact Registry 存取控制
營運弱點修補 SLA(高危 <7 天)、Incident Response 計畫、Audit Log、定期滲透測試

// 07

Agentic SDLC:AI 重塑開發流程

2025–2026 年關鍵轉變:從工具導向的 Copilot 轉向工作流整合的 Agent。Spec-Driven Development(SDD)將規格書作為 SDLC 的一等公民(first-class citizen)。

🤖

AI 增強的 SDLC 各階段

SPEC-DRIVEN · MULTI-AGENT · HUMAN REVIEW
需求 / 設計
AI 輔助 PRD 生成、User Story 拆解、需求一致性審查;Spec Kit(GitHub 2025)以 specification 為中心驅動實作與 checklist
開發
AI Pair Programming 加速常規程式碼生成;Codex CLI / Claude Code 讀檔、執行命令、修改程式;AI 生成程式碼必須通過同等 Code Review 門檻
Code Review
AI 輔助 Code Review 品質提升率從 55% 提高到 81%(Qodo 2025);Atlassian RovoDev 2026:38.7% 的 AI agent 評論導致實質 code 修正
測試
AI 生成測試案例、自動化測試腳本;批次 agent 執行安全掃描、提升測試覆蓋率;QA agent 擔任虛擬 QA 角色
部署 / 維護
Release Manager agent 自動化發布流程;監控 agent 分析異常並觸發告警;AI 分析 postmortem 提出改善建議
📝

AI 工具納入流程的規則(必要控制)

AGENTS.md · CLAUDE.md · GOVERNANCE
規則說明
AI 產出不得繞過 Code ReviewAI-generated code 與人寫程式碼同等審查;不因「AI 寫的」而降低標準
Repo 必須有 AI instructionsAGENTS.md(Codex)/ CLAUDE.md(Claude Code)或等效文件;定義工作協議、禁止操作、測試指令
必須明確列測試指令讓 coding agent 知道如何驗證變更(Build / Test / Lint 指令)
禁止讀取敏感資料.env、金鑰、客戶資料需 permissions allow/deny 控管;不靠自然語言「提醒」
AI 修改需小批量降低 review 與 rollback 成本;避免 AI 一次大範圍改動難以審查
AI 只能輔助決策架構選型、風險判斷、Release Go/No-Go 仍由人負責;critical script 建議三模型 audit
⚠️

過度依賴 AI 的風險:RD 直接接受 AI 建議而不理解底層邏輯,處理複雜新問題的能力會下降。研究顯示在需要創新解法的場景中,過度依賴 AI 會抑制創造力。AI 是增強工具,不是替代思考的機器。

🏗

三層設計模型(Claude 報告)

PRINCIPLE · PROCESS · AGENTIC
L1

原則層 — SOLID + DRY + YAGNI

程式碼設計哲學,驅動架構決策。這一層決定程式碼的長期可維護性。

L2

流程層 — PD 定義 → PM 排序 → RD 實作 → QA 驗收

Agile Sprint 迭代 + CI/CD 自動化。這一層決定交付速度與品質的可預測性。

L3

Agentic 層 — Spec-Driven Dev → Multi-Agent 協作 → Human Review

AI 生成 + 人類 audit;不單模型 ship critical work。這一層決定 AI 時代的生產力槓桿。


// 08

交付量測:DORA + SLO + 品質指標

DORA(DevOps Research and Assessment)歸納五個核心軟體交付績效指標;Google SRE 以 Error Budget 平衡可靠性與創新速度。指標應用於服務層級的持續改善,不應跨不同上下文硬比較。

📈

指標體系總覽

DORA · SLO · PRODUCT · QUALITY
類別指標目的
DORA 交付Change Lead Time(變更前置時間)/ Deployment Frequency / Failed Deployment Recovery Time / Change Fail Rate / Deployment Rework Rate衡量軟體交付效能,識別瓶頸
產品Adoption / Retention / Task Success / 轉換率(Google HEART Framework)衡量產品對用戶的實際價值
穩定SLO 達成率 / Error Budget 消耗速率 / MTTR(平均恢復時間)平衡可靠性與功能交付速度
品質Escaped Defects / Defect Reopen Rate / Flaky Test Rate / Code Coverage(輔助)評估品質工程成效
安全高風險弱點修補時間 / 依賴風險數 / Secret Leakage 次數追蹤安全改善進度
團隊Review Time / WIP / Blocked Time / Retro Action 完成率識別協作與流程瓶頸

// 09

常見反模式與校正

整合三模型報告中共同指出的高頻反模式,是教學重點也是流程防雷點。

反模式後果正確修正
PD 丟一句需求給 RD反覆返工,需求失真需求需有驗收條件(Given/When/Then)、成功指標、non-scope
QA 最後才加入缺陷晚期爆發,修復成本 10xQA 參與需求與設計(PRD 初稿階段即介入)
RD 只追求實作完成可維護性下降,技術債累積Code Review 加入設計(SOLID 檢查)與測試檢查
每次改動過大Review 困難、回歸風險高小批量 PR;AI 任務也要小範圍、可驗證
覆蓋率被當唯一品質指標指標被遊戲化,品質假象搭配 Escaped Defects、Defect Reopen Rate、Flaky Test Rate
沒有 SLO 與 rollback上線不可控,風險不透明發布前定義 SLO、feature flag、監控告警、回滾策略
AI 工具直接改大範圍程式難審查、難追責、難 rollbackAI 任務必須小範圍、可驗證;與人寫程式碼同等 Code Review
安全只在上線前掃描修復成本高,系統性漏洞難修Threat Modeling 在設計階段;SAST + secret scan 在開發階段
Context 越長越好(AI)效能下降、成本高、中段資訊遺忘良好上下文管理;用 AGENTS.md 定義工作協議
過度套用 SOLID過度抽象,可讀性反而下降先解決業務問題,以可讀性 / 測試性 / 變更頻率為判斷依據

// 10

決策樹:你的團隊現在缺什麼?

🌿 根據現況情境診斷優先行動

需求不清楚、反覆返工、PD 與 RD 理解不同
建立需求格式(Given/When/Then)+ Definition of Ready
測試都在最後、發現缺陷太晚
Shift-Left:QA 介入 PRD 初稿 + 建立測試分層策略
程式碼修改一處就壞很多地方
Code Review 加入 SRP / DIP 檢查 + 重構規劃
每次 PR 改動太大、Review 困難
建立小批量 PR 規範 + PR template
上線後才發現問題、沒有 rollback
定義 SLO + Feature Flag + Rollback Plan
AI coding agent 用了但品質不穩
建立 AGENTS.md / CLAUDE.md + 同等 Code Review 門檻
安全問題總是最後才發現
設計階段加入 Threat Modeling + 開發加入 SAST / Secret Scan
不知道團隊交付速度是快是慢
導入 DORA 五指標 + 服務層級 SLO
角色責任邊界不清、互相推責
建立 RACI 矩陣 + Definition of Done 共識
新需求必須改很多既有程式碼
OCP / SRP 重構:用擴充取代修改,模組化設計
// 11

導入路線:0–90 天行動計畫

最小可行制度:清楚需求、明確分工、小批量開發、強制 Code Review、自動化測試、可觀測發布、持續量測改善。(GPT 報告核心原則)

// 0–30 天:建立基本秩序
  • 定義 PD / RD / QA RACI 矩陣
  • 建立 PR template + Definition of Ready / Done
  • 每個 repo 加入測試指令、開發規範、AGENTS.md / CLAUDE.md
  • 建立最小 CI:lint + type-check + unit test
  • 設計階段加入 Threat Modeling(輕量版)
// 31–60 天:建立品質工程
  • QA 前移到需求與設計階段
  • 建立測試分層策略(Unit / Integration / E2E)
  • 導入 Code Review 準則(SOLID + Google Practices)
  • 加入 security scanning + dependency scanning
  • 建立 release checklist + rollback 策略
// 61–90 天:建立可量測系統
  • 導入 DORA 五指標追蹤
  • 定義核心服務 SLO + Error Budget
  • 建立 Incident Response + Postmortem 流程
  • 建立 ADR(架構決策紀錄)習慣
  • 每月檢視品質與交付瓶頸
🎯

最終原則(GPT 報告 §14):PD 對價值負責 / RD 對技術解法與可維護性負責 / QA 對品質策略與風險揭露負責 / SRE 對發布與可靠性負責 / Security 必須內嵌 SDLC / AI coding agent 必須納入同一品質門檻。

ISO/IEC/IEEE 12207:2026 · 29148:2018 · 29119-1:2022 Google Design Sprint · HEART · Eng Practices · SRE OpenAI Codex AGENTS.md · Claude Code Best Practices NIST SSDF SP 800-218 · OWASP SAMM · DORA Metrics ISTQB CTFL v4.0 · Agile Manifesto · Scrum Guide
關於 · 編輯原則與方法論