步驟 1. 評估您的應用 - AWS 規定指引

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

步驟 1. 評估您的應用

這個階段的目標是:

  • 徹底瞭解您的應用程式環境,並為現代資料平台做好應用程式準備,以便在不影響業務的情況下加速實現價值的時間,然後進行現代化、最佳化和擴充。

  • 剖析您的應用程式環境,以識別與變更相關的優點、風險和成本。

  • 提供一組端對端服務:從策略和規劃;到部署、移轉和應用程式現代化,再到持續支援。

  • 建立原則、建議和控制項,提供可重複使用的做法和工具,以提供持續的商業價值。

在評估階段,應用程式擁有者和架構師會使用現代化診斷教戰手冊來驗證其現代化目標和優先順序。

使用現代化診斷教戰手冊

現代化診斷教戰手冊提供了一個過程,用於確定企業從當前狀態轉移到 future 狀態的價值。這包括現代化涉及的技術變化。

您可以使用診斷教戰手冊來判斷應用程式或應用程式套件進行雲端現代化的優先順序,並識別在現代化期間需要解決的元件。

診斷尺寸

現代化診斷教戰手冊可協助您瞭解應用程式或一組應用程式之目前和目標 (移轉後) 狀態的下列維度:

  • 應用程式分組 — 是否有理由將應用程式分組 (例如,依技術或作業模型) 以進行現代化?

  • 排序 — 是否存在應用程序應該根據依賴關係進行現代化的順序?

  • 技術 — 技術類別是什麼 (例如,中介軟體、資料庫、訊息)?

  • 相依性 — 應用程式是否對其他系統或中介軟體具有金鑰相依性?

  • 環境 — 使用了多少個開發、測試和生產環境?

  • 儲存 — 什麼是儲存需求 (例如,測試資料的副本數)?

  • 操作模式 — 應用程序的所有組件是否可以採用持續整合和持續交付 (CI/CD) 管道?

    • 如果是這樣,應將哪些基礎架構責任分配給應用程式團隊,以及向誰分配?

    • 如果不是,營運團隊應該保留哪些基礎架構責任 (例如修補)?

  • 交付型號:

    • 根據應用程序或應用程序組,您是否應該重新平台,重構,重寫還是替換?

    • 現代化的哪一部分應該使用雲端原生服務?

  • 技能 — 需要什麼專業知識? 例如:

    • 雲端應用程式背景,可從頭開始使用容器和無伺服器技術,建置具有模組化架構的應用程式。

    • DevOps透過使用開放原始碼和AWS工具和服務,在 CI/CD 程序、基礎架構即程式碼以及自動化或應用程式觀察等領域開發解決方案的專業知識。

  • 現代化方法 — 考慮到應用程式的目前狀態、雲端技術選擇、目前的技術債務、CI/CD、監控、技能和作業模式,需要完成哪些技術移轉工作?

  • 現代化時機 — 可能會影響現代化時機的業務組合時間考量或其他計劃的工作考量是什麼?

  • 基礎架構的單位和總成本 — 根據經濟分析AWS,在內部部署維護工作負載的年度成本是多少?

根據這些維度評估應用程式,可協助您在將現代化推向雲端的同時,保持業務、技術和經濟效益的基礎。

建置組塊

當您將應用程式現代化時,您可以將觀察結果分為三個基礎:業務敏捷性、組織敏捷性和工程效率。

  • 業務敏捷性 — 關注企業內部有效性的實踐,將業務需求轉化為需求。遞送組織對業務請求的回應程度,以及企業在將功能發行至生產環境方面具有多少控制權。

  • 組織敏捷性 — 定義交付程序的做法。範例包括敏捷的方法和DevOps儀式,以及角色指派和清晰度,以及整個組織的整體協作、溝通和支援。

  • 工程效率 — 與品質保證、測試、CI/CD、組態管理、應用程式設計和原始碼管理相關的開發實務。

識別指標

要了解您是否要向客戶提供重要的事情,您必須實施推動改進和加速交付的措施。目標、問題、量度 (GQM) 提供有效的架構,以確保您的測量符合這些準則。請遵循下列步驟,使用此架構從您的目標回溯:

  1. 確定您正在進行的目標或結果。

  2. 導出必須回答的問題,以確定是否滿足目標。

  3. 決定應該或可以衡量什麼來充分回答問題。測量可分為兩類:

    • 產品指標,確保您向客戶提供重要的事情。

    • 操作指標,可確保您改善軟體交付生命週期。

產品指標

產品指標著重於業務成果,應在確定新工作範圍的投資回報率(ROI)時確定。建立產品指標的有用技術是詢問實施新工作範圍時,業務中會發生什麼變化。將這種思維正式化為測試的形式很有幫助,該測試專注於交付現代化功能時會是真實的。

例如,如果您認為將交易從舊系統遷移出來將為客戶帶來新的機會,那麼有什麼改進? 需要建立多少容量才能讓下一個用戶端上線? 如何構建測試來驗證結果? 對於此做法,您的產品指標可能包括下列內容:

  • 確定業務價值測試或假設(例如,釋放交易容量的 x 百分比將在新業務中佔 y 百分比)。

  • 建立基準線 (例如,目前 x 個交易的容量支援 y 客戶)。

  • 驗證結果 (例如,您已經將容量提升了 x 百分比,因此您現在是否可以加入新業務的百分?)

操作指標

若要判斷您是否要改善軟體交付生命週期並加速現代化,您必須知道交付軟體的前置時間和實作時間。也就是說,您可以多快將業務需求轉換為生產中的功能?

有用的操作指標包括:

  • 交貨時間 — 從請求到生產的工作範圍需要多少時間?

  • 循環時間 — 從開始到結束實施一個工作範圍需要多長時間?

  • 部署頻率 — 您多久將變更部署到生產環境?

  • 恢復服務的時間 — 從故障恢復需要多長時間 (以平均修復時間或 MTTR 來衡量)?

  • 更改失敗率 — 什麼是平均故障之間的時間(MTBF)?