

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用生成式 AI 為軟體開發體驗提供支援
<a name="generative-ai"></a>

將生成式 AI 整合到軟體開發生命週期 (SDLC) 代表整個軟體開發團隊如何構想、設計、實作和維護軟體解決方案的範式轉移。生成式 AI 有可能徹底改變 SDLC 的每個階段，包括專案管理、需求收集、設計、編碼、測試、部署和維護。

產生式 AI 支援開發體驗的核心是做為整個軟體開發團隊的智慧協作者，包括產品經理、設計師、解決方案架構師、開發人員、測試人員和營運人員。它提供內容感知協助、產生成品 （例如使用者案例、設計模型、程式碼片段和測試案例）、提供近乎即時的建議，甚至在潛在問題出現之前預測問題。這種 AI 擴增方法可大幅降低團隊成員的認知負載。這可以讓他們專注於高階策略決策和複雜的問題解決，而生成式 AI 可以處理更單調、重複性更高的任務。

生成式 AI 也可做為知識擴大器。它可協助團隊成員從大量的資料儲存庫快速存取相關資訊、最佳實務和模式。這可以有效地讓整個組織的專業知識普及化。透過在整個開發工具鏈中無縫整合生成式 AI 功能，您可以為整個軟體開發團隊建立更直覺、更有效率且更具生產力的環境。此增強型開發體驗可加速 SDLC 並改善整體品質。它也可以減少錯誤並促進創新，因為團隊成員可以更快地探索新想法和方法。

若要在您的組織中採用生成式 AI 驅動的開發體驗，請考慮下列關鍵元素：
+ [5-I 架構](generative-ai-dimensions.md) – 5-I 架構由五個維度組成，** **提供全方位方法來導覽現代軟體開發的程序。它提供結構化方法，可協助您在 SDLC 的所有階段有系統地套用生成式 AI。
+ [基礎功能](generative-ai-capabilities.md) – 若要充分利用現代軟體開發維度的生成式 AI 功能，您需要建立一組強大的基礎功能。這些功能構成 AI 驅動開發體驗的骨幹。這些功能可協助您在整個 SDLC 中整合和使用生成式 AI。

5-I 架構和基礎功能共同形成了重新構想軟體開發體驗的策略。五個維度提供套用生成式 AI 的策略架構，而基礎功能可讓您的組織準備好支援這種 AI 驅動型方法。 AWS 服務例如 [Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-bedrock.html)、[Amazon SageMaker AI](https://docs.aws.amazon.com/sagemaker/latest/dg/whatis.html)、[Amazon Q Developer](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/what-is.html) 和 [Amazon Q Business](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/what-is.html)，可提供生成式 AI 功能和功能，您可以將這些功能整合到您的軟體開發體驗中。



![\[使用 AWS AI 服務、5-I 架構和基礎功能來達成目標。\]](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/strategy-accelerate-software-dev-lifecycle-gen-ai/images/objectives.png)


# AI 驅動的軟體開發體驗的 5-I 架構
<a name="generative-ai-dimensions"></a>

5-I 架構為軟體開發團隊提供結構化方法，以有效地將生成式 AI 整合到其開發實務中。它可協助您為在整個 SDLC 中使用生成式 AI 建立堅實的基礎。它還可協助您設定正確的開發實務、工作流程和思維，以充分利用生成式 AI 的潛力。

**Topics**
+ [架構概觀](#generative-ai-dimensions-overview)
+ [與軟體開發生命週期整合](#generative-ai-dimensions-integration)

## 架構概觀
<a name="generative-ai-dimensions-overview"></a>

5-I 架構是以五個關鍵維度建置：調查、整合、互動、反覆運算和影響。每個維度代表生成式 AI 大幅增強軟體開發程序的關鍵區域。透過策略性地整合這些維度的生成式 AI，架構可解決現代軟體開發不斷演進的需求。它可以減少認知負載並擴增創造潛力。它認識到理想的開發體驗不僅與工具有關，還與建立 AI 在每個階段無縫增強人類功能的環境有關。

下圖顯示採用 AI 的軟體開發的五個維度。對於每個維度，它會顯示您可以整合生成式 AI 的位置，以提高效率和創新。



![\[AI 驅動的軟體開發的五個維度。\]](http://docs.aws.amazon.com/zh_tw/prescriptive-guidance/latest/strategy-accelerate-software-dev-lifecycle-gen-ai/images/dimensions.png)


以下是架構中的五個維度：
+ **調查** – 使用生成式 AI 增強軟體開發過程中的每個分析任務。使用生成式 AI 來了解需求、處理大量資料、辨識模式，以及產生可能超過人類容量或產生更長時間的洞見。這些洞見可協助您做出更明智的決策、快速識別改善機會，以及更有效率地交付高品質的軟體。生成式 AI 可以是整個 SDLC 分析程序的智慧型合作夥伴。透過利用生成式 AI，您將深入分析套用至關鍵領域，例如需求收集、舊版程式碼庫檢查和產品待處理項目最佳化。例如，產品擁有者可以在建立使用者案例之前，使用生成式 AI 來分析使用者旅程或需求。開發團隊可以發現效率低下，並識別現有程式碼庫中的最佳化機會。DevOps 工程師可以套用根本原因分析，以快速診斷效能問題或安全漏洞，進而改善可靠性。
+ **整合** –** **整合生成式 AI，以在整個 SDLC 中自動化各種任務和程序。這包括自動產生程式碼片段、測試案例、架構設計、使用者案例和部署管道。透過自動化這些通常為手動的任務，團隊可以專注於更具策略和創新性的工作，從而加快上市時間和高品質的應用程式。整合維度代表軟體開發中的範例轉移，其中 AI 成為開發過程中不可或缺的一部分。它與您的軟體開發團隊合作，以提高生產力、提高品質並推動創新。這會導致更快的上市時間。它挑戰您的軟體開發團隊定期評估其程序和工作流程，方法是在每個步驟中詢問：「可以自動化嗎？」
+ **互動** – 使用生成式 AI 輔助，為您的團隊提供跨各種任務和查詢的即時情境式支援。這些智慧型助理充當知識淵博的協作者，從大量的資訊儲存庫中擷取。他們可以回答編碼問題、提供設計建議、解釋標準操作程序，以及協助疑難排解複雜的問題。將這些 AI 助理整合到開發工作流程中可提高生產力，並促進更協作、解決問題的環境。
+ **迭代** – 使用生成式 AI 在整個 SDLC 中啟用快速、資料驅動的調整。您可以持續分析來自客戶意見回饋、使用模式、市場趨勢和團隊績效指標等來源的資料，以便快速做出明智的決策。這種適應性會將您的軟體開發從靜態、預先定義的程序精簡為流暢、回應式的方法。它以各種方式顯示資訊清單，包括對待處理項目的動態優先順序、靈活的資源配置、適應性測試策略、不斷發展的文件和回應式部署程序。例如，產品管理員可以使用 AI 產生的洞見來重新排序其待處理項目，以近乎即時的方式整合新的客戶需求和市場趨勢。DevOps 工程師可以根據效能分析調整部署計劃和基礎設施組態，確保應用程式保持彈性和最佳化。開發團隊可以將衝刺回顧的意見回饋轉換為可行的改進，以供下一次反覆運算使用，進而推動持續程序增強的文化。
+ **影響** – 套用生成式 AI 來評估軟體開發程序的有效性和效能。透過使用 AI 支援的分析和指標，您可以深入了解開發效率、程式碼品質、使用者參與度和整體應用程式效能。此資料驅動型方法可協助您做出明智的決策、最佳化開發工作流程，並持續改善應用程式的品質和使用者體驗。評估軟體團隊生產力時，生成式 AI 會分析各種資料點，例如程式碼遞交頻率、問題解決時間、發行速度、功能交付率等。它也可以評估程式碼檢閱的品質、協作工具的有效性，以及不同開發實務對整體團隊輸出的影響。透過將這些指標與專案結果建立關聯，AI 會識別人類分析師可能遺漏的模式和趨勢，並且可以提供可採取行動的洞見來提高團隊生產力。此外，生成式 AI 可協助您根據產業標準或歷史資料對團隊效能進行基準測試，提供個人化的改善建議。它也可以預測開發過程中的潛在瓶頸或風險，以便您可以採取主動措施。

## 與軟體開發生命週期整合
<a name="generative-ai-dimensions-integration"></a>

SDLC 由多個階段組成，可能因組織而異。這些階段通常包括下列項目：需求和規劃、設計和架構、實作、測試、部署，以及操作和維護。

下表將 5-I 架構的維度映射至 SDLC 階段，並提供每個維度的整合層級。


****  

| 架構維度 | 需求和規劃 | 設計和架構 | 實作 | 測試 | 部署 | 操作和維護 | 
| --- | --- | --- | --- | --- | --- | --- | 
| 調查 | 高 | 低 | 低 | 低 | 低 | 中 | 
| 整合 | 中 | 中 | 高 | 中 | 高 | 高 | 
| 互動 | 高 | 高 | 高 | 中 | 中 | 高 | 
| 反覆運算 | 中 | 低 | 低 | 低 | 低 | 中 | 
| 影響 | 高 | 中 | 高 | 低 | 高 | 高 | 

整合層級從高到低不等。映射會顯示每個維度的關鍵重點區域。例如，*調查*會在需求和規劃階段顯示高強度。*Integrate* 會在實作、部署、操作和維護階段展現高強度。

透過使用此映射，您可以有效地排定工作的優先順序。我們建議您專注於高、中、低。請務必採用平衡且具影響力的方法，透過生成式 AI 增強軟體開發體驗。

# AI 驅動軟體開發體驗的基礎功能
<a name="generative-ai-capabilities"></a>

若要成功實作生成式 AI 驅動的軟體開發體驗，您需要在組織中建立一組跨越多個角色的基礎功能。這些功能代表您能夠有效地部署資源、實作程序，並在採用 AI 的軟體開發環境中實現所需的成果。透過培養這些功能，您可以建立強大的基礎，協助您在 SDLC 的所有階段無縫整合生成式 AI。

AWS 提供關鍵服務，協助您實作這些功能。例如，[Amazon Q Developer](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/what-is.html) 透過擔任採用 AI 技術的助理，協助加速軟體開發。[Amazon Q Business](https://docs.aws.amazon.com/amazonq/latest/qbusiness-ug/what-is.html) 可協助您取得快速且相關的問題加急解答、解決問題和產生內容。它也可以整合與軟體開發相關的工具，代表您採取行動。[Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/what-is-bedrock.html) 可讓您存取基礎模型和廣泛的功能，以自訂特定的開發工作流程和需求。

透過 培養這些功能 AWS 服務，您可以建立強大的基礎，協助您在 SDLC 的所有階段無縫整合生成式 AI。

以下是您應該關注的基本功能：
+ [專案管理](generative-ai-capabilities-proj-mgmt.md)
+ [需求管理](generative-ai-capabilities-req-mgmt.md)
+ [架構和設計](generative-ai-capabilities-arch-design.md)
+ [協作](generative-ai-capabilities-collaboration.md)
+ [DevSecOps](generative-ai-capabilities-devsecops.md)
+ [操作和維護](generative-ai-capabilities-ops-maintenance.md)
+ [AI 助理](generative-ai-capabilities-assistants.md)
+ [分析與洞察](generative-ai-capabilities-analytics.md)
+ [知識管理](generative-ai-capabilities-knowledge-mgmt.md)
+ [可擴展性](generative-ai-capabilities-extensibility.md)

每個基礎功能都與架構維度和 SDLC 的不同階段整合。此整合可協助您在整個軟體開發過程中有效使用 AI 功能。可提升每個步驟的效率、品質和創新能力。這些基礎功能、架構和 SDLC 階段之間的協同合作，為 AI 驅動的軟體開發建立全面的生態系統。這可協助您充分利用生成式 AI 的潛力、推動持續改進、加速開發週期，以及提供高品質的軟體產品。

下表顯示基礎功能和子功能如何對應至架構維度和 SDLC 階段。


****  

| 功能：子功能 | 調查 | 整合 | 互動 | 反覆運算 | 影響 | 
| --- | --- | --- | --- | --- | --- | 
| 專案管理：問題管理 | 需求和規劃 | 無 | 無 | 無 | 無 | 
| 專案管理：Sprint 和任務管理 | 需求和規劃 | 需求和規劃 | 無 | 無 | 無 | 
| 專案管理：產品待處理項目管理 | 需求和規劃 | 無 | 無 | 需求和規劃 | 無 | 
| 專案管理：使用者案例映射 | 需求和規劃 | 無 | 無 | 無 | 無 | 
| 專案管理：報告和分析 | 需求和規劃 | 無 | 無 | 無 | 需求和規劃 | 
| 專案管理：產品藍圖管理 | 需求和規劃 | 無 | 需求和規劃 | 無 | 無 | 
| 專案管理：回饋迴圈 | 無 | 無 | 無 | 需求和規劃 | 無 | 
| 專案管理：回溯性 | 無 | 無 | 無 | 需求和規劃 | 無 | 
| 需求管理 | 需求和規劃 | 需求和規劃 | 無 | 無 | 無 | 
| 架構和設計：解決方案設計 | 設計和架構 | 設計和架構 | 無 | 無 | 無 | 
| 協同合作：文件管理 | 所有 SDLC 階段 | 無 | 所有 SDLC 階段 | 無 | 無 | 
| 協同合作：知識分享 | 所有 SDLC 階段 | 無 | 所有 SDLC 階段 | 無 | 無 | 
| 協同合作：專案資產管理 | 無 | 所有 SDLC 階段 | 所有 SDLC 階段 | 無 | 無 | 
| DevSecOps：CI/CD | 測試、部署 | 實作、測試、部署 | 部署 | 無 | 無 | 
| DevSecOps：DevOps 安全性 | 實作 | 實作、測試、操作和維護 | 無 | 實作、測試、操作和維護 | 無 | 
| DevSecOps：應用程式效能監控 | 無 | 操作和維護 | 無 | 無 | 無 | 
| DevSecOps：日誌彙總和分析 | 操作和維護 | 操作和維護 | 無 | 無 | 無 | 
| DevSecOps：AIOps | 操作和維護 | 無 | 無 | 操作和維護 | 無 | 
| DevSecOps：持續改善 | 無 | 無 | 無 | 操作和維護 | 無 | 
| DevSecOps：儀表板監控 | 無 | 操作和維護 | 無 | 無 | 無 | 
| DevSecOps：效能洞察 | 操作和維護 | 無 | 無 | 操作和維護 | 無 | 
| 操作和維護：事件管理 | 無 | 無 | 無 | 操作和維護 | 無 | 
| 操作和維護：程式碼升級 | 無 | 操作和維護 | 無 | 無 | 無 | 
| 操作和維護：程式碼最佳化 | 操作和維護 | 操作和維護 | 無 | 無 | 無 | 
| 操作和維護：技術債務管理 | 無 | 操作和維護 | 操作和維護 | 無 | 無 | 
| 操作和維護：變更管理 | 無 | 實作、部署 | 無 | 無 | 無 | 
| 操作和維護：反向工程 | 操作和維護 | 無 | 無 | 無 | 無 | 
| 操作和維護：程式碼現代化 | 無 | 實作 | 無 | 無 | 無 | 
| 操作和維護：效能最佳化 | 無 | 操作和維護 | 無 | 操作和維護 | 無 | 
| 分析和洞見 | 無 | 需求和規劃 | 無 | 無 | 所有 SDLC 階段 | 
| AI 助理 | 無 | 無 | 所有 SDLC 階段 | 無 | 無 | 
| 知識管理 | 無 | 無 | 所有 SDLC 階段 | 無 | 無 | 
| 可擴展性 | 無 | 部署 | 無 | 無 | 無 | 

# 用於專案管理的生成式 AI 使用案例
<a name="generative-ai-capabilities-proj-mgmt"></a>

有效的專案管理是軟體開發成功的核心。在生成式 AI 的背景下，專案管理會採用新的維度。它可以變得更具預測性、適應性和資料驅動性。AI 支援的專案管理工具會分析歷史專案資料，以產生更準確的時間和資源預估。他們可以根據業務目標和團隊容量自動排定任務的優先順序，甚至可以在任務發生之前預測潛在的障礙。例如，專案經理可能會根據專案的需求和類似專案的歷史資料，使用生成式 AI 來建立初步專案計劃。然後，AI 可以建議考慮技能、工作負載和專案需求的最佳團隊組成。在整個專案中，AI 驅動的儀表板會透過自動產生報告並反白顯示需要注意的區域，提供近乎即時的專案狀態洞見。

這種 AI 擴增的專案管理方法可以提高效率。它有助於專案經理專注於策略決策和團隊領導，而不是陷入例行管理任務中。

下表顯示專案管理使用案例，您可以使用生成式 AI 和負責這些使用案例的角色來增強這些案例。


****  

| 子功能：使用案例 | 角色 | 
| --- | --- | 
| 問題管理：建立和指派問題 | 專案經理 | 
| 問題管理：在測試期間偵測問題並將其記錄 | 測試工程師 | 
| 問題管理：根據嚴重性排定問題的優先順序，並將其指派給開發人員 | 專案經理 | 
| 問題管理：識別和合併重複的問題 | 專案經理 | 
| 問題管理：追蹤和產生有關專案的關鍵問題、指標和整體運作狀態的報告 | 專案經理 | 
| 衝刺和任務管理：估計任務的工作量，並根據團隊容量指派故事點 | Scrum Master | 
| 衝刺和任務管理：在團隊成員之間分配任務，以在整個衝刺中實現平均工作負載 | Scrum Master | 
| 衝刺和任務管理：促進衝刺規劃工作階段，使團隊的工作與衝刺目標保持一致 | Scrum Master | 
| 產品積壓管理：根據商業價值、緊迫性和使用者意見回饋重新排序積壓項目 | 產品擁有者 | 
| 產品待辦項目管理：將新的客戶意見回饋和市場洞察整合至產品待辦項目中，以進行近乎即時的優先順序 | 產品擁有者 | 
| 產品積壓管理：識別和管理積壓項目之間的相依性，以簡化開發 | 產品管理員 | 
| 使用者案例映射：建立使用者旅程的映射，以識別所有必要的功能及其對應的使用者案例 | 產品擁有者 | 
| 使用者案例映射：識別使用者流程中的差距或缺少的步驟 | 業務分析師 | 
| 使用者案例映射：根據使用者案例對商業價值的影響來排定其優先順序 | 產品管理員 | 
| 報告和分析：產生近乎即時的儀表板，以視覺化關鍵專案指標，例如衝刺速度和問題解決率 | 專案經理 | 
| 報告和分析：分析歷史資料並預測未來的專案結果，例如潛在的延遲或瓶頸 | 專案經理 | 
| 報告和分析：建立針對不同利益相關者量身打造的自訂報告，例如團隊績效或專案狀態報告 | 專案經理 | 
| 產品藍圖管理：建立和維護概述主要里程碑和發行日期的產品藍圖 | 專案經理 | 
| 產品藍圖管理：根據專案優先順序或時間表的變更來更新藍圖 | 產品管理員 | 
| 產品藍圖管理：與利益相關者共用藍圖，以提供產品方向的可見性 | 產品管理員 | 
| 意見回饋迴圈：在每次衝刺後從團隊收集意見回饋，並識別需要改進的領域 | Scrum Master | 
| 回顧性：將意見回饋轉換為下一個衝刺的可行項目，推動持續改進 | Scrum Master | 
| 追溯性：追蹤從先前追溯性實作的變更的影響，以衡量其有效性 | Scrum Master | 

# 用於需求管理的生成式 AI 使用案例
<a name="generative-ai-capabilities-req-mgmt"></a>

需求管理是與專案管理密切相關的重要程序。假設產品擁有者使用 AI 工具來分析客戶意見回饋、市場趨勢和利益相關者輸入。AI 工具可以產生一組完整的使用者案例和要求、自動分類它們、偵測潛在的衝突或差距，甚至根據業務價值和實作複雜性建議優先順序。隨著專案的進展和需求發展，AI 可以持續更新和精簡需求，以確保它們與不斷變化的業務需求和技術限制保持一致。這種動態、AI 驅動的需求管理方法有助於確保開發工作在整個專案生命週期中與使用者需求和業務目標保持緊密一致。

下表顯示您可以使用生成式 AI 和負責這些使用案例的角色來增強的需求管理使用案例。


****  

| 使用案例 | 角色 | 
| --- | --- | 
| 建立業務需求 | 業務分析師 | 
| 從 功能建立 epics | 產品擁有者 | 
| 透過監控其相關聯使用者案例的完成情況，追蹤史詩級的進度 | 產品管理員 | 
| 建立使用者案例 | 產品擁有者 | 
| 估計每個使用案例所需的工作量，並指派案例點 | Scrum Master | 
| 定義每個使用者案例的接受條件 | 產品擁有者 | 

# 適用於架構和設計的生成式 AI 使用案例
<a name="generative-ai-capabilities-arch-design"></a>

憑藉專案管理的堅實基礎和明確定義的需求，下一個關鍵功能是架構和設計。在這裡，生成式 AI 為建立強大、可擴展且高效率的軟體架構提供了新的可能性。採用 AI 的設計工具可以分析需求和限制條件，以建議最佳的架構模式和設計方法。它們會產生多個設計替代方案，每個都針對不同的優先順序進行最佳化，例如效能、可擴展性或可維護性。例如，解決方案架構師可能會使用 AI 助理，根據專案需求快速產生數個高階架構設計。這種 AI 擴增方法可加速設計程序，並協助架構師做出更明智的決策。這會導致更強大且面向未來的軟體設計。

下表顯示您可以使用生成式 AI 和負責這些使用案例的角色來增強的架構和設計使用案例。


****  

| 使用案例 | 角色 | 
| --- | --- | 
| 建立架構文件 | 解決方案架構師 | 
| 建立詳細的設計文件 | 技術主管 | 
| 了解現有的架構和設計標準 | 解決方案架構師 | 
| 開發使用者界面的詳細模擬和原型 | UX/UI 設計師 | 

# 用於協同合作的生成式 AI 使用案例
<a name="generative-ai-capabilities-collaboration"></a>

軟體開發本質上是協作工作。您可以使用生成式 AI 來增強軟體開發團隊的協作。採用 AI 技術的協作工具不僅止於簡單的訊息和檔案共用。他們透過摘要冗長的討論主題、強調關鍵決策，甚至根據團隊成員的排程和生產力模式建議會議的最佳時間，促進更有效的溝通。AI 可以透過自動識別潛在問題、建議改進，甚至向檢閱者解釋複雜的變更，來協助程式碼檢閱。在腦力激盪工作階段期間，AI 可以充當主持人、產生想法、協助組織想法，甚至主持討論，以確保聽到所有聲音。對於分散式團隊，AI 可協助彌補文化和語言障礙。它可以在聊天和視訊通話中提供近乎即時的語言翻譯，並提供文化內容以協助防止誤解。透過增強人類與 AI 的協作，此功能可協助團隊更有效率且有效地工作，進而促進創新並改善整體專案成果。

下表顯示如何使用生成式 AI 來增強協作使用案例。


****  

| 子功能：使用案例 | 角色 | 
| --- | --- | 
| 文件管理：建立和維護集中式文件儲存庫 | 技術寫入器 | 
| 文件管理：允許多個團隊成員即時協作處理文件 | 開發團隊 | 
| 知識分享：使用討論論壇做為開發人員以協作方式提出問題、分享知識和疑難排解問題的平台 | 開發團隊 | 
| 知識分享：使用討論論壇記錄和追蹤專案討論期間所做的決策，確保擷取並存取關鍵決策背後的理由以供日後參考 | 產品管理員 | 
| 專案資產管理：協助輕鬆共用專案相關資源 | 開發團隊 | 
| 專案資產管理：針對共用內容實作版本控制，讓團隊成員可以追蹤變更、還原至先前的版本，以及協同處理內容更新 | 開發團隊 | 

# DevSecOps 的生成式 AI 使用案例
<a name="generative-ai-capabilities-devsecops"></a>

採用 AI 技術的 DevSecOps 工具可自動化軟體交付管道的許多層面。例如，當開發人員編寫程式碼時，他們可以執行智慧程式碼檢閱、偵測潛在錯誤、偵測安全漏洞，以及近乎即時地識別效能問題。AI 會產生並執行全面的測試套件，並隨著程式碼庫的演進自動更新這些套件。這種 AI 擴增的 DevSecOps 方法可加速交付管道，並大幅增強交付軟體的安全性和可靠性。

下表顯示您可以使用生成式 AI 和負責這些使用案例的角色來增強的 DevSecOps 使用案例。


****  

| 子功能：使用案例 | 角色 | 
| --- | --- | 
| DevOps 和持續交付：自動化整個部署管道 | DevOps 工程師 | 
| DevOps 和持續交付：接收有關程式碼品質和潛在問題的近乎即時意見回饋 | 軟體開發人員 | 
| DevOps 和持續交付：接收近乎即時的安全問題和修補建議 | 軟體開發人員 | 
| DevOps 和持續交付：接收近乎即時的程式碼和最佳實務建議 | 軟體開發人員 | 
| DevOps 和持續交付：自動化重複性任務，並將命令整合到指令碼中 | DevOps 工程師 | 
| DevOps 和持續交付：在每個程式碼遞交後自動建置程式碼並產生成品 | 軟體開發人員 | 
| DevOps 和持續交付：根據組織的標準和架構建置程式碼 | 軟體開發人員 | 
| DevOps 和持續交付：自動對每個遞交執行單元測試，以在開發程序的早期發現錯誤 | 軟體開發人員 | 
| DevOps 和持續交付：分析單元測試的涵蓋範圍，以確保所有關鍵程式碼路徑都經過測試 | 軟體開發人員 | 
| DevOps 和持續交付：管理分支和合併變更 | 軟體開發人員 | 
| DevOps 和持續交付：管理程式碼和成品版本控制 | 軟體開發人員 | 
| DevOps 和持續交付：存放和管理建置成品和相依性 | DevOps 工程師 | 
| DevOps 和持續交付：在建置過程中解決和擷取相依性 | 軟體開發人員 | 
| DevOps 和持續交付：產生並執行整合測試，以確保元件可如預期一起運作 | 測試工程師 | 
| DevOps 和持續交付：在整合測試期間使用模擬服務來模擬與外部系統的互動 | 測試工程師 | 
| DevOps 和持續交付：在不同負載下的基準應用程式效能 | 效能工程師 | 
| DevOps 和持續交付：模擬高流量案例，以測試應用程式的可擴展性和回應時間 | 效能工程師 | 
| DevOps 和持續交付：測試系統從故障中復原的能力，例如伺服器當機或網路中斷 | 站點可靠性工程師 | 
| DevOps 和持續交付：執行混沌工程 | 站點可靠性工程師 | 
| DevOps 和持續交付：執行測試以確認應用程式符合業務需求 | QA 工程師 | 
| DevOps 和持續交付：執行使用者接受度測試 | 產品擁有者 | 
| DevOps 和持續交付：掃描相依性是否有漏洞和授權合規問題 | 安全工程師 | 
| DevOps 和持續交付：監控和管理開放原始碼相依性，以確保它們是最新且安全的 | 安全工程師 | 
| DevOps 和持續交付：產生和維護軟體物料清單 (SBOM)，以追蹤所有元件和相依性 | 安全工程師 | 
| DevOps 和持續交付：使用 SBOM 進行合規稽核 | 合規主管 | 
| DevOps 和持續交付：建立版本備註 | 版本管理員 | 
| DevOps 和持續交付：規劃和協調版本 | 版本管理員 | 
| DevOps 和持續交付：實作復原和發行管理的標準操作程序 | 版本管理員 | 
| DevOps 和持續交付：使用功能旗標在生產環境中啟用或停用功能，而無需部署新程式碼 | 產品管理員 | 
| DevOps 和持續交付：使用功能旗標執行 A/B 測試，以測量不同功能對使用者行為的影響 | 產品管理員 | 
| DevOps 和持續交付：分析和監控管道故障 | DevOps 工程師 | 
| DevOps 和持續交付：建立和管理基礎設施資源 | DevOps 工程師 | 
| DevOps 和安全性：掃描程式碼儲存庫以取得硬式編碼的秘密 | DevOps 工程師 | 
| DevOps 和安全性：實作近乎即時的偵測，在秘密遞交至儲存庫時立即提醒開發人員 | DevOps 工程師 | 
| DevOps 和安全性：強制執行持續的程式碼品質監控 | 軟體開發人員 | 
| DevOps 和安全性：偵測和標記程式碼中潛在安全漏洞的指標 | 軟體開發人員 | 
| DevOps 和安全性：實作 Open Worldwide Application Security Project (OWASP) 前 10 個安全風險的自動化測試，以確保應用程式符合業界標準的安全實務 | 安全工程師 | 
| DevOps 和安全性：透過將檢查整合到開發程序中，定期更新和教育開發人員 OWASP 風險 | 安全工程師 | 
| DevOps 和安全性：掃描第三方程式庫和相依性是否有已知的安全漏洞 | DevOps 工程師 | 
| DevOps 和安全性：掃描應用程式程式碼和基礎設施以偵測漏洞 | DevOps 工程師 | 
| DevOps 和安全性：在部署之前分析漏洞的程式碼 | 安全工程師 | 
| DevOps 和安全性：透過防止具有關鍵漏洞的程式碼合併來強制執行安全政策 | 安全工程師 | 
| DevOps 和安全性：實作角色型存取控制 (RBAC)，以限制對敏感系統和資料的存取，並確保只有獲得授權的人員才能存取關鍵資源 | 安全工程師 | 
| DevOps 和安全性：根據角色和責任調整存取控制，方法是適應團隊結構中的變更 | DevOps 工程師 | 
| DevOps 和安全性：透過模擬生產環境的攻擊，近乎即時地測試執行中的應用程式是否有安全漏洞 | 安全工程師 | 
| DevOps 和安全性：持續監控部署的應用程式是否有安全漏洞 | DevOps 工程師 | 
| DevOps 和安全性：排定所有環境的定期漏洞掃描，以識別和解決安全性漏洞 | 安全工程師 | 
| DevOps 和安全性：根據漏洞掃描結果套用修補程式和更新，以協助維護安全系統 | DevOps 工程師 | 
| 應用程式效能監控：近乎即時地持續監控應用程式效能，以在效能問題影響使用者之前對其進行偵測和診斷 | 站點可靠性工程師 | 
| 應用程式效能監控：偵測效能異常，例如回應時間突然遽增或錯誤率提高，並啟動警示 | DevOps 工程師 | 
| 應用程式效能監控：追蹤透過分散式系統傳播的請求，以識別效能瓶頸和延遲問題 | DevOps 工程師 | 
| 應用程式效能監控：使用分散式追蹤來精確找出負責失敗或效能降低的確切服務或元件 | DevOps 工程師 | 
| 日誌彙總和分析：將多個來源的日誌彙總到集中式系統，以便於搜尋和分析，以識別趨勢和問題 | 站點可靠性工程師 | 
| 日誌彙總和分析：實作自動日誌剖析，以擷取相關資訊並偵測可能指出問題的模式或異常 | DevOps 工程師 | 
| 日誌彙總和分析：收集和視覺化關鍵效能指標 | 站點可靠性工程師 | 
| 日誌彙總和分析：根據預先定義的服務層級協議 (SLAs) 監控指標 | 產品管理員 | 
| AI 操作：偵測事件、分析根本原因，以及啟動修正動作，無需人工介入 | DevOps 工程師 | 
| AI 操作：預測未來資源需求並最佳化容量規劃，以避免中斷 | 站點可靠性工程師 | 
| 持續改進：監控與應用程式的真實使用者互動，以收集有關效能的洞見並識別需要改進的領域 | UX 設計工具 | 
| 持續改進：追蹤不同地理區域的應用程式效能，以確保全球一致的使用者體驗 | 產品管理員 | 
| 儀表板監控：建立可自訂的儀表板，以近乎即時的方式視覺化關鍵指標、日誌和追蹤，以提供系統運作狀態的完整檢視 | 站點可靠性工程師 | 
| 儀表板監控：為不同的團隊 （例如開發、營運和產品團隊） 建立儀表板，以根據其重點領域提供相關洞見 | DevOps 工程師 | 
| 效能洞察：對應用程式效能進行詳細分析，以識別效率低下並最佳化程式碼或基礎設施 | 軟體開發人員 | 
| 效能洞見：使用效能洞見反覆改善應用程式效能，並隨著時間最佳化使用者體驗 | 產品管理員 | 

# 用於操作和維護的生成式 AI 使用案例
<a name="generative-ai-capabilities-ops-maintenance"></a>

在部署軟體之後，焦點會轉移到操作和維護。生成式 AI 可以透過提供更主動、更有效率的系統管理來增強傳統方法。AI 驅動的操作工具會持續監控系統效能，並在影響使用者之前預測潛在問題。當問題發生時，它們會執行自動化根本原因分析，大幅縮短解決的平均時間。AI 也會近乎即時地最佳化系統效能。它會根據不斷變化的負載模式和使用者行為自動調整組態。例如，營運團隊可能會使用 AI 助理來產生預測性維護排程、自動識別可能失敗的元件，並建議先佔動作。AI 也可以透過分析用量趨勢並以高準確度預測未來資源需求，協助規劃容量。

下表顯示您可以使用生成式 AI 和負責這些使用案例的角色來增強的操作和維護使用案例。


****  

| 子功能：使用案例 | 角色 | 
| --- | --- | 
| 事件管理：透過將監控工具與聊天平台整合，讓團隊可以直接在聊天環境中偵測、討論和解決問題，以近乎即時的方式管理事件 | 站點可靠性工程師 | 
| 事件管理：允許團隊直接從聊天界面啟動部署、執行指令碼和執行命令，以簡化操作 | DevOps 工程師 | 
| 程式碼升級：升級程式碼相依性和程式庫，以減少手動工作，並確保程式碼庫與最新版本保持最新狀態 | 軟體開發人員 | 
| 程式碼最佳化：檢閱程式碼以取得最佳化機會 | 軟體開發人員 | 
| 程式碼最佳化：識別程式碼中的瓶頸，並重構或最佳化程式碼以增強效能 | 軟體開發人員 | 
| 技術負債管理：將技術負債記錄為開發程序的一部分 | 產品管理員 | 
| 技術債務管理：根據影響、風險和成本來優先考慮和解決技術債務，並將其整合到定期衝刺規劃程序中 | 軟體開發人員 | 
| 技術負債管理：減少現有應用程式程式碼中的技術負債 | 軟體開發人員 | 
| 變更管理：實作變更核准程序，確保所有程式碼變更在部署之前都經過必要的利益相關者的檢閱、測試和核准 | 變更管理員 | 
| 變更管理：對提議的變更執行影響分析 | DevOps 工程師 | 
| 反向工程：分析和了解舊版程式碼的結構和行為 | 解決方案架構師 | 
| 反向工程：說明現有程式碼並產生文件 | 軟體開發人員 | 
| 程式碼現代化：將程式碼從一種程式設計語言轉換為另一種程式設計語言 | 軟體開發人員 | 
| 程式碼現代化：將舊版程式碼現代化為最新的程式設計語言 | 軟體開發人員 | 
| 效能最佳化：透過最佳化資源配置、負載平衡和重新設定應用程式，持續監控和調整系統效能 | 站點可靠性工程師 | 
| 效能最佳化：識別和重構導致效能降低的程式碼，以提高速度和系統回應能力 | 軟體開發人員 | 

# 軟體開發中生成式 AI 助理的使用案例
<a name="generative-ai-capabilities-assistants"></a>

AI 助理功能是生成式 AI 驅動開發體驗的核心。這個智慧型、內容感知系統可做為整個 SDLC 所有團隊成員的虛擬協作者。試想一名開發人員正在處理複雜的程式碼。他們可以簡單地向 AI 助理尋求協助，並且可以提供相關的程式碼片段、解釋複雜的演算法，甚至根據目前的內容和最佳實務建議最佳化。AI 助理可協助 ITOps 管理員根據內部文件了解標準操作程序。透過提供即時的情境式支援，AI 助理可大幅降低團隊成員的認知負載。這有助於他們專注於更高階的問題解決和創意任務。此功能可做為力乘數，增強軟體開發所有階段的生產力和品質。

下表顯示您可以使用 AI 助理和受益角色增強的使用案例。


****  

| 使用案例 | 角色 | 
| --- | --- | 
| 透過回答有關需求、架構和標準操作程序等問題，為開發團隊提供即時協助 | 軟體開發團隊 | 
| 從廣泛的文件中搜尋或擷取摘錄，或使用自然語言查詢產生摘要 | 軟體開發團隊 | 
| 摘要長的技術文件，例如需求文件、架構設計文件和內部程序 | 軟體開發團隊 | 
| 維護提示程式庫，供團隊用於常見任務 | 軟體開發團隊 | 
| 將生成式 AI 無縫整合到現有的工具和系統中 | 軟體開發團隊 | 
| 自動化跨各種平台、工具和內部系統的任務 | 軟體開發團隊 | 
| 建立集中式的知識儲存庫，包括最佳實務、專案特定資訊和團隊知識，可供所有團隊成員存取 | 軟體開發團隊 | 
| 根據任務的內容，從儲存庫擷取相關知識 | 軟體開發團隊 | 
| 執行自動化程式碼檢閱、根本原因分析、建議改進、偵測潛在錯誤，以及執行故障診斷 | 軟體開發人員、DevOps 工程師和網站可靠性工程師 | 
| 分析效能資料以識別趨勢和模式，這些趨勢和模式可為效能最佳化的決策提供資訊 | 站點可靠性工程師 | 
| 提供改善效率、降低複雜性和增強安全性的建議 | 軟體開發人員 | 
| 建議最佳化雲端資源用量，例如擴展建議或節省成本的策略 | 軟體開發人員、DevOps 工程師、網站可靠性工程師和解決方案架構師 | 
| 產生新內容，例如以程式碼、使用者指南或產品功能版本為基礎的文件 | 軟體開發團隊 | 

# 用於分析和洞察的生成式 AI 使用案例
<a name="generative-ai-capabilities-analytics"></a>

分析和洞見功能有助於將大量資料轉換為可採取行動的洞見，以推動決策和持續改進。透過使用生成式 AI，此功能可處理各種來源的資料，包括程式碼儲存庫、專案管理工具和團隊協作平台，以提供開發程序和團隊生產力的整體檢視。生成式 AI 超越傳統指標，以提供預測和方案分析。它可以預測潛在問題，並建議有針對性的改善。例如，它可以分析程式碼遞交、錯誤解決率和特徵交付速度中的模式，以識別高效能團隊、找出瓶頸，並建議程序最佳化。此外，它可以提供團隊動力和個人績效的洞見。這些洞察有助於領導者對工作負載分佈、訓練需求和團隊組成做出資料驅動型決策。透過互動式儀表板呈現這些洞見，此功能可讓所有層級的利益相關者做出明智的決策、最佳化程序，並持續提高團隊生產力，進而加快交付高品質軟體的速度。

下表顯示您可以使用生成式 AI 和負責這些使用案例的角色來增強的分析使用案例。


****  

| 使用案例 | 角色 | 
| --- | --- | 
| 監控個人和團隊的生產力 | 開發管理員 | 
| 分析生產力趨勢以偵測潛在的倦怠，讓您可以採取主動措施來維護團隊的良好狀態和生產力 | 開發管理員 | 
| 追蹤程式碼變更部署到生產環境的頻率，以衡量開發程序的速度和敏捷性 | 產品管理員 | 
| 分析部署頻率資料，以識別低部署活動的期間，這可能表示程序效率低下或資源限制 | 產品管理員 | 
| 測量程式碼遞交至部署之間的時間，以識別簡化開發和部署程序的機會 | 開發管理員 | 
| 追蹤導致需要立即修復之失敗的部署百分比，以評估發行程序的可靠性 | 站點可靠性工程師 | 
| 使用變更失敗率指標來識別經常導致問題的程式碼區域，以引導有針對性的重構和測試工作 | 軟體開發人員 | 
| 監控中斷或事件發生後還原服務所需的時間，以便減少停機時間並改善整體系統彈性 | 站點可靠性工程師 | 
| 分析還原時間的趨勢，以增強事件回應程序，並加快從系統故障中復原的速度 | DevOps 工程師 | 
| 建立自訂儀表板來彙總關鍵指標，例如部署頻率、前置時間和變更失敗率，以提供開發和營運運作狀態的完整檢視 | 產品管理員 | 
| 建立專為不同團隊需求量身打造的儀表板，以針對其特定責任領域提供重點洞察，例如開發、營運或業務 | 產品管理員 | 
| 追蹤業務關鍵績效指標 KPIs)，例如營收影響、客戶滿意度和市場佔有率，使開發工作與更廣泛的業務目標保持一致 | 產品管理員 | 
| 分析新功能對業務 KPIs的影響，以評估其成功並引導未來的產品開發 | 業務分析師 | 
| 監控程式碼品質指標，例如程式碼複雜性、測試涵蓋範圍和錯誤密度，以確保程式碼庫保持可維護且安全 | 軟體開發人員 | 
| 識別需要重構的程式碼庫區域，以推動長期永續性並減少技術債務 | 解決方案架構師 | 

# 用於知識管理的生成式 AI 使用案例
<a name="generative-ai-capabilities-knowledge-mgmt"></a>

在任何軟體開發組織中，知識都是關鍵資產。知識管理功能採用生成式 AI，可增強此資產的擷取、組織和使用方式。傳統的知識管理系統通常包含太多資訊、包含過時的內容，或難以搜尋以快速尋找相關資訊。

生成式 AI 可解決這些挑戰。它會根據程式碼變更、對話和專案成品自動產生和更新文件。這可確保知識庫保持最新狀態，而不需要團隊成員的手動工作。更重要的是，AI 可讓您以直覺的方式存取這些知識。團隊成員可以自然語言提出問題，AI 可以提供相關的答案。AI 可以利用各種來源，例如官方文件、程式碼評論、討論執行緒，甚至是外部資源。例如，嘗試了解特定元件的新團隊成員可能會詢問 AI：「身分驗證模組如何運作？」 然後，AI 會提供相關程式碼區段、架構圖和最近變更的簡潔說明和連結。它甚至可以根據團隊成員的角色和專業水準來量身打造此資訊。

此功能可加速加入、減少重複性問題，並提升整個組織的知識分享。它有助於保留機構知識，讓團隊隨著時間的推移更輕鬆地維護和發展複雜的系統。

下表顯示知識管理使用案例，您可以使用生成式 AI 和負責這些使用案例的角色來增強這些案例。


****  

| 使用案例 | 角色 | 
| --- | --- | 
| 建立統一的平台，讓您輕鬆存取所有專案相關的知識 | 軟體開發團隊 | 
| 從各種開發活動擷取知識 | 軟體開發團隊 | 
| 提供進階搜尋功能，以在儲存庫中快速尋找相關知識 | 軟體開發團隊 | 
| 為團隊個人化學習模組和途徑 | 軟體開發團隊 | 

# 擴充性的生成式 AI 使用案例
<a name="generative-ai-capabilities-extensibility"></a>

可擴展性可無縫整合現有工具和工作流程，同時讓組織根據其特定需求量身打造 AI 系統。此功能提供強大的 APIs、SDKs和可自訂的界面，有助於將 AI 功能整合到熱門的開發和專案管理工具中。例如，組織可以使用 AI 支援的功能來增強 Jira，以實現自動化票證優先順序、工作量估算和衝刺規劃。您可以使用 AI 增強 Jenkins 管道，以進行智慧型建置最佳化和預測測試選擇。

此外，可擴展性允許與整合開發環境 (IDEs)、版本控制系統和程式碼檢閱平台進行深度整合。AI 可協助程式碼、自動化程式碼檢閱，以及產生情境文件。

此功能也支援針對組織特定資料訓練和微調 AI 模型。這有助於 AI 了解公司特定的編碼模式、架構偏好設定和領域知識。結果在所有整合工具中具有更相關和內容感知的協助。透過提供這種程度的靈活性和整合，可擴展性可確保 AI 驅動的開發體驗隨著組織的發展而演進。它可以適應不斷變化的技術和業務需求，同時無縫地增強現有的工具鏈和工作流程。

下表顯示可擴展性使用案例，您可以使用生成式 AI 和負責這些使用案例的角色來增強這些使用案例。


****  

| 使用案例 | 角色 | 
| --- | --- | 
| 將第三方工具整合到開發環境 | DevOps 工程師 | 
| 建立自訂自動化工作流程，根據團隊的獨特開發程序量身打造 | DevOps 工程師 | 
| 連線至各種 APIs和服務 | DevOps 工程師 | 
| 建立跨平台工具的連接器 | DevOps 工程師 | 