什麼是 ALM (應用程式生命週期管理)?


什麼是 ALM?

應用程式生命週期管理 (ALM) 是建立與維護軟體應用程式,直到不再使用。它涉及到多個過程、工具和人員協同合作來管理生命週期的各個方面,例如思想、設計和開發、測試、生產、支援及最終冗餘。

ALM 也被稱為整合應用程式生命週期管理,因為各軟體專家 (如開發人員、分析師、測試人員和變更經理) 要在整個應用程式生命週期中協同合作。團隊之間的協同合作以及各種支援工具的使用可確保應用程式開發符合業務目標,並確保專案成功。

為什麼 ALM 很重要?

在傳統的軟體開發中,軟體開發流程的不同領域是完全分開的。這種分段會導致處理效率低下、交付延遲、非預期的範圍變更以及成本超支。應用程式生命週期管理 (ALM) 透過將多個學科、實務和團隊整合在一起,來有效地解決這些問題。透過協同合作,您將能更輕鬆地建立、交付和管理複雜的軟體。

ALM 在軟體應用程式的整個生命週期中提供了幾個好處。

提供清晰的專案方向

ALM 流程和工具可幫助開發與測試團隊規劃及實作他們的專案策略。他們可以更準確地估計項目需求,並更好地規劃應用程式的未來。他們還可以根據情況變化做出即時決策並有效地調整計劃。

提高跨團隊的可見性

在 ALM 中使用的工具和技術可為所有團隊建立一致的專案檢視。每個人都知道,到目前為止已經完成的工作以及仍然需完成的任務。不同的團隊可以協同合作,以確定應用程式開發的後續步驟的優先順序。 

提升團隊滿意度

團隊可以更好地溝通及更有效地協作。這種溝通可以提高生產力及提升員工滿意度和工作場所參與度。

提升開發速度和品質

當軟體開發團隊遵循 ALM 原則時,開發人員與測試人員可有效協作以提高軟體品質。他們可以使用自動化來頻繁測試原始程式碼,並盡早對編碼錯誤進行疑難排解。透過針對每項變更測試整個程式碼,團隊可以更快、更有信心地提供新的軟體功能。

ALM 包含哪些階段?

應用程式生命週期有五個階段:

應用程式需求收集

在初始階段,相關利害關係人會定義他們對應用程式的需求。他們會分析應用程式將如何支援他們,以滿足他們的業務目標和法規合規要求。需求管理通常涉及編寫使用者案例,以展現不同的使用者將如何與應用程式進行互動。

應用程式需求收集範例

一家銀行正在考慮建置行動銀行應用程式。它定義了兩個使用者:客戶和管理員。需求管理團隊確定了兩個使用者案例:

  • 客戶使用者案例,說明客戶使用應用程式提交開立新銀行帳戶的請求。 
  • 管理員使用者案例,說明管理員使用應用程式來核准客戶文件。 

此外,需求管理團隊確定應用程式的軟體系統應符合安全標準,而這些安全標準應符合資料隱私權法律。

應用程式開發

在開發階段,各個團隊攜手合作,將需求轉換為可運作的應用程式。步驟範例如下所示:

  • 專案經理估算時間和開發成本。 
  • 開發人員確定設計任務和程式設計活動。
  • 品質分析師新增審核任務和檢查點,以進行品質和進度檢查。 

開發和測試團隊還為他們的軟體專案規劃時間表。他們會確定需求之間的任意相依性,並決定完成和發佈新功能的順序。

應用程式開發範例

該銀行的 IT 團隊為行動應用程式制定了開發計劃。團隊成員確定他們需要先完成客戶的使用者案例,然後在開始管理員的要求之前進行徹底測試。不過,他們知道在發佈新產品之前必須完成這兩個要求。他們編寫應用程式的程式碼,並在兩個月內將其發佈給測試組。

應用程式測試

在軟體測試階段,品質分析師評估應用程式以驗證其符合要求。他們識別任何軟體錯誤並確定優先順序,然後軟體開發團隊會予以修正。應用程式測試與開發通常在應用程式的生命週期期間同時進行。例如,開發人員每次進行軟體變更時,敏捷開發方法會使用自動化測試工具來測試整個程式碼庫。

應用程式測試範例

銀行的品質保證團隊會驗證其行動銀行應用程式開立帳戶的商業案例。他們發現客戶只能選擇駕照作為 ID 證明。由於銀行也接受護照作為 ID 證明,因此他們要求開發團隊更新應用程式以包含此資訊。

應用程式部署

在部署期間,開發人員會將應用程式發佈給最終使用者。發佈管理還包括規劃團隊如何隨時間部署軟體變更。敏捷開發團隊會自動化部署,以加快發佈新功能及更新。AWS CodeDeploy 等工具和服務可提供更佳的部署控制,並將生產中的錯誤降到最低。

應用程式部署範例

銀行的行動應用程式團隊使用雲端伺服器託管應用程式的程式碼,以便管理員可以從網站進行存取。他們還會在熱門行動平台的應用程式商店中部署程式碼,以便客戶能直接下載。

應用程式維護

在維護階段,支援與開發團隊會攜手合作,以解決剩餘的錯誤、規劃新更新並進一步改進產品。它們會整合使用者回饋並發佈與客戶相關的新功能。這些團隊還使用 AWS X-RayAWS CloudTrail 等工具來監控維護階段的應用程式效能及使用情況。隨著時間的推移,在技術不斷發展後,他們可能還會決定在現代系統上建立一個新的應用程式,並停止使用當前的應用程式。

應用程式維護範例

銀行的 IT 團隊會監控他們的行動應用程式效能,然後發現客戶上傳文件時速度會變慢。它們會在發佈下一次更新之前進行系統變更並改善設計。

什麼是 ALM 工具?

ALM (應用程式生命週期管理) 工具是開發人員、分析師和其他利害關係人用於應用程式管理的軟體。它們提供了一個標準化環境,每個人都可以利用這個環境來進行溝通與協作。下面列出了整合集成 ALM 套件的一些常見功能。

專案管理

大多數 ALM 工具本質上是專案管理工具。您可以在 ALM 的所有階段檢視專案狀態。這些工具會顯示詳細的任務,以及包括用於評估和專案規劃的功能。 

要求管理

ALM 工具可充當您的應用程式使用者要求的中央儲存庫。您可以將使用者案例與技術和功能規格進行連結。例如,使用者存取的應用程式需求可以包含密碼加密技術要求。

原始程式碼管理

許多 ALM 工具為開發人員提供了追蹤程式碼變更的選項。不同的開發人員可以在單個程式碼庫上運作、執行與合併變更,以及有效地管理開發程序。

測量管理

分析師使用 ALM 工具編寫和維護軟體測試,以便持續整合。這種開發方法會自動測試應用程式的每個程式碼變更。它可改善品質保證,並支援持續向客戶提供新的應用程式功能。

其他功能

ALM 工具可以包括其他一些用於有效管理的功能,例如:

  • 即時聊天支援
  • 專案組合管理
  • 可視化工具,例如圖表和圖形

ALM 與其他生命週期管理方法有何異同?

生命週期是技術中的常用術語,意指技術創新與支援的整個過程。下面列出了其他類似的術語。

軟體開發生命週期

軟體開發聲明週期 (SDLC) 是一種系統方法,您可用它來有效地產生高品質的軟體成本。軟體開發團隊使用 SDLC 的逐步方法,以有效地設計、開發、測試和部署軟體。 

ALM 與SDLC

SDLC 更詳細地描述了應用程式開發階段。它是應用程式生命週期管理 (ALM) 的一部分。ALM 包括應用程式的整個生命週期,並繼續超越 SDLC。ALM 可以在應用程式的生命週期中有多個 SDLC。

產品生命週期管理

產品生命週期管理 (PLM) 負責管理實體產品的設計、生產和銷售,尤其是製造業和工程業。

ALM 與PLM

ALM 主要是指軟體元件,而 PLM 表示產品中存在某些硬體、電子元件或其他實體元件。雖然 PLM 和 ALM 的基本原則是相同的,但這些原則的應用卻有所不同。

例如,PLM 的開發階段包括製造規格,而產品行銷階段則包括封裝設計。由於這些差異,PLM 擁有自己獨立的工具集。您可以針對特定 PLM 調整和設定某些 ALM 工具。

什麼是 ALM 中的應用程式管控?

應用程式管控是組織用來在應用程式生命週期中有效分配資源的一組政策、程序和規則。它有助於縮短交付時間,並在整個應用程式生命週期管理 (ALM) 過程中建立明確的責任和控制。強有力的管控能確保應用程式符合組織的資料安全、法規與合規要求。 

應用程式管控包括以下內容:

  • 資料安全與使用者存取
  • 應用程式審核、稽核和回復
  • 集中管理資源
  • 效能與系統監控

什麼是 ALM 中的應用程式治理?

應用程式管控是組織用來在應用程式生命週期中有效分配資源的一組政策、程序和規則。它有助於縮短交付時間,並在整個應用程式生命週期管理 (ALM) 過程中建立明確的責任和控制。強有力的管控能確保應用程式符合組織的資料安全、法規與合規要求。 

應用程式管控包括以下內容:

  • 資料安全與使用者存取
  • 應用程式審核、稽核和回復
  • 集中管理資源
  • 效能與系統監控

Amazon 如何在 ALM 方面提供協助?

AWS 管理與管控服務可支援組織,因此您能更快速地創新,同時仍能維持成本、合規與安全方面的控制。這些服務可大規模管理高度動態的雲端資源,同時提供單一控制平面進行管理。您還可以使用 AWS 管理與管控服務,評估資源使用並確定降低成本的方法。

例如,您可以使用以下服務:

立即建立 AWS 帳戶,開始使用應用程式生命週期管理 (ALM)。

AWS 應用程式生命週期管理後續步驟

查看額外的產品相關資源
AWS 上的免費雲端控管服務 
註冊免費帳戶

立即存取 AWS 免費方案。 

註冊 
開始在主控台進行建置

開始在 AWS 管理主控台進行建置。

登入