SSDLC 專案範本指南

簡介

本指南提供安全軟體開發生命週期 (Secure Software Development Life Cycle, SSDLC) 的完整範本體系,旨在協助團隊透過 AI 輔助完成專案的各個階段開發任務。

SSDLC 階段概覽

1. 需求分析階段 (Requirements Analysis)

目標: 收集、分析並定義專案需求,建立安全需求規範

工作項目

  • 業務需求收集
  • 功能需求分析
  • 非功能需求定義
  • 安全需求識別
  • 使用者故事撰寫
  • 風險評估

技術細節和業務需求

  • 需求追溯矩陣
  • 安全威脅模型分析
  • 合規性要求檢查
  • 效能基準定義

2. 設計開發階段 (Design & Development)

目標: 進行系統架構設計和安全編碼實作

工作項目

  • 系統架構設計
  • 安全架構設計
  • 資料庫設計
  • API 設計
  • 編碼實作
  • 程式碼審查

技術細節和業務需求

  • 設計模式應用
  • 安全編碼標準
  • 程式碼品質標準
  • 版本控制策略

3. 測試驗收階段 (Testing & Validation)

目標: 執行全面測試並進行安全驗證

工作項目

  • 單元測試
  • 整合測試
  • 系統測試
  • 效能測試
  • 安全測試
  • 使用者驗收測試

技術細節和業務需求

  • 測試策略制定
  • 自動化測試框架
  • 安全測試工具
  • 測試覆蓋率要求

4. 部署運維階段 (Deployment & Operations)

目標: 安全部署系統並建立持續監控機制

工作項目

  • 部署規劃
  • 環境配置
  • 監控設置
  • 日誌管理
  • 備份策略
  • 災難復原

技術細節和業務需求

  • CI/CD 流程
  • 容器化部署
  • 監控指標定義
  • 安全事件響應

使用指南

如何使用這些範本

  1. 選擇適當的階段: 根據專案當前狀態選擇對應的 SSDLC 階段
  2. 使用範本 Prompt: 複製對應階段的 prompt 範本並填入專案特定資訊
  3. 執行 AI 輔助: 將完整的 prompt 提供給 AI 以獲得相應的輸出
  4. 審查和調整: 檢查 AI 輸出並根據專案需求進行調整
  5. 文檔記錄: 將結果文檔化並納入專案管理系統

Prompt 撰寫原則

  1. 明確性: 清楚描述期望的輸出格式和內容
  2. 完整性: 包含所有必要的上下文資訊
  3. 可操作性: 提供具體的執行步驟和指導
  4. 一致性: 保持格式和術語的一致性
  5. 可測試性: 確保輸出結果可以被驗證和測試

目錄結構

.github/prompts/
├── SSDLC_專案範本指南.md          # 本文檔
├── 需求分析/
│   ├── 業務需求收集範本.md
│   ├── 功能需求分析範本.md
│   ├── 安全需求識別範本.md
│   └── 使用者故事撰寫範本.md
├── 設計開發/
│   ├── 系統架構設計範本.md
│   ├── 安全架構設計範本.md
│   ├── API設計範本.md
│   └── 程式碼審查範本.md
├── 測試驗收/
│   ├── 測試策略制定範本.md
│   ├── 自動化測試範本.md
│   ├── 安全測試範本.md
│   └── 效能測試範本.md
└── 部署運維/
    ├── 部署規劃範本.md
    ├── 監控設置範本.md
    ├── CI_CD流程範本.md
    └── 災難復原範本.md

快速開始

  1. 根據專案需求選擇對應的 SSDLC 階段
  2. 進入相應的目錄查看可用的範本
  3. 複製範本內容並根據專案實際情況填寫
  4. 將完整的 prompt 提供給 AI 以獲得輸出
  5. 檢查和調整輸出結果以符合專案需求

注意事項

  • 各階段範本可能需要根據特定專案類型進行調整
  • 安全考量應該貫穿整個開發生命週期
  • 建議定期更新範本以反映最佳實務的變化
  • 團隊成員應該熟悉相關範本的使用方法

聯絡資訊

如有問題或建議,請聯絡專案管理團隊。