什么是 ALM(应用生命周期管理)?流程

什么是ALM?

ALM 是软件应用程序的规范、设计、开发和测试过程。它涵盖了从应用程序构思到开发、测试、部署、支持以及最终用户体验的整个生命周期。ALM 的全称是应用生命周期管理。

根据软件开发方法论(例如,瀑布模型、敏捷或 DevOps),ALM 可能被分为不同的阶段。ALM 过程主要分为三个要素:治理、开发和运营。

ALM 流程

以下是 ALM 的一些关键领域

治理

它包括需求管理、资源管理、数据安全、用户访问、审查、审计、部署控制和回滚。它还提供资源管理、数据安全和用户访问。

治理的好处

以下是治理的优点/好处

  • 一致的业务策略
  • 开发业务案例
  • 提供持续监控
  • 资助能带来最高价值的项目
  • 明确的问责制和控制

应用程序开发

它包括识别当前问题、规划、设计、构建和测试应用程序。此领域由传统的开发人员和应用程序制造商角色组成。此阶段包括识别当前问题、规划、设计、构建、测试、部署等。

应用程序运营

ALM 的下一个重要要素是应用程序运营。此领域包括应用程序的部署和技术堆栈的维护。在瀑布式软件开发方法中,运营是一个独立于开发的阶段。DevOps 团队将运营和开发结合成一个完全集成、持续的流程。

为什么 ALM 很重要?

以下是使用 ALM 的主要原因

  • 如果您使用 ALM,那么您将对项目状态有很好的可见性。
  • 团队能够有效地沟通。
  • 跟踪或定义需求很容易。
  • 软件经过充分测试。
  • 维护和运营解决方案的成本保持有限。

ALM(应用生命周期管理)的阶段

Stages of ALM (Application Lifecycle Management)

以下是 ALM 的不同阶段

1) 需求管理

需求管理是第一个 ALM 阶段,它帮助您记录、分析、跟踪、优先级排序和商定需求。它是一个持续的过程,将贯穿整个项目生命周期。另请查看我们最佳需求管理软件列表:- 点击此处

2) 设计

设计管理是一个通过提高可用性来帮助增强客户满意度和忠诚度的过程。它还提供客户和产品之间的交互。

3) 构建管理

构建管理也称为代码管理。它是将源代码文件转换为独立软件组件的过程。在此阶段,应用程序构想转化为实际应用程序。

在此阶段,应用程序被构建、测试和部署,测试人员开始准备他们的测试用例并为测试阶段编写测试脚本。

4) SCM

软件配置管理 (SCM) 是另一个 ALM 阶段,开发团队在此阶段系统地组织、管理和控制应用程序开发生命周期过程中文档、代码和其他实体的变化。

5) 运营与维护

运营与维护是下一个阶段。在 ALM 阶段,应用程序的监控、管理和开发过程将开始。在 DevOps 中,这个 ALM 阶段涵盖“发布”、“配置”和“监控”。

在此阶段,您会发现并解决错误。此阶段帮助您规划和确定产品下一次更新的优先级。

6) 测试管理

在测试阶段,测试人员需要验证应用程序是否符合流程初始步骤中定义的需求。

他们还需要确保,即使在需求阶段没有正确定义,应用程序也将满足用户期望以及所有其他需要在其整个生命周期中支持它的利益相关者。

7) 用户体验

维护或用户体验传统上是 ALM 中最长的阶段。然而,这也是测试和开发团队参与度通常最低的阶段。

应用程序开发完成后,用户的角色开始发挥作用。他们检查整个应用程序并根据他们的反馈分享他们的经验。最终的应用程序将被交付。

ALM 的优势

以下是使用 ALM 的优点/好处

  • ALM 通过组织和跟踪帮助您控制系统
  • 您可以在项目之间共享缺陷,从而通过帮助降低风险。
  • ALM 提供与其他测试工具的集成
  • 它在应用程序构建之前为其提供清晰的方向。
  • 没有 ALM,软件开发团队很难以保持竞争力所需的速度和敏捷性来生产软件。
  • ALM 以最小的团队“负担”高效交付软件。

ALM 工具

以下是一些重要的 ALM 工具

1) Kovair ALM Studio

Kovair 是最全面的应用程序生命周期管理产品。它可以处理从需求到发布的端到端开发生命周期阶段。

Kovair ALM Studio

功能

  • 采用 100% 基于 Web 的解决方案,无需客户端软件,以减少支持负担
  • 实践任何开发方法论,如瀑布、敏捷或混合
  • 实现可配置的基于任务的工作流引擎,以提高效率和生产力
  • 在每个可操作阶段获取实时通知
  • 提供有关每个步骤的完整开发覆盖,从而符合标准。
  • 允许实时查看工件状态,从而增加透明度并提高发布可预测性。

链接: https://www.kovair.com/alm-studio/


2) Microfocus

Microfocus ALM 是精益、敏捷和 DevOps 软件和解决方案,可帮助组织更快地发布软件。该工具允许各种规模的团队以更快的速度交付高质量的应用程序。该工具最初由 Mercury 开发,后来被 HP 收购,最终由 MicroFocus 接管。

Microfocus

功能

  • 以速度、质量和规模交付应用程序
  • 它允许利益相关者互动和协调以实现项目目标。
  • 它提供强大的跟踪和报告以及各种项目相关任务的无缝集成
  • 它允许详细的项目分析和有效的管理。
  • ALM 可以连接到电子邮件系统并向所有期望的团队成员发送有关任何更改的电子邮件。

链接:https://software.microfocus.com/en-us/select/free-trial


3) VersionOne

VersionOne 通过简单的待办事项管理简化了产品规划。它专为 DevOps 构建,并提供端到端的持续交付。它具有拖放界面。

VersionOne

功能

  • 它允许用户使用拖放功能对故事和缺陷进行优先级排序。
  • 使用产品组合项管理业务计划
  • 允许按主题分组项
  • 根据业务目标提供结果
  • 将所有功能请求集中在一处
  • 帮助用户确保公司目标和产品交付物之间的一致性
  • 它提供了一个与其他客户互动的论坛,以便向同行学习。
  • 为项目经理提供洞察力和端到端可见性。

链接: https://www.collab.net/products/versionone

从开发人员角度看 ALM 的用例场景

  • 开发人员开始工作
  • 检查分配给他的任务列表
  • 他根据优先级检查任务并选择一个。
  • 然后他将任务状态更改为“进行中”
  • 从源代码库中检出代码。
  • 他使用测试框架实现单元测试。
  • 使用标准构建脚本执行测试。代码检查显示非法命名约定或潜在错误。
  • 他修复代码并重新测试脚本。
  • 确认代码后,覆盖率达到目标率。他使用任务 ID 提交代码。
  • 然后他检出代码并运行构建脚本。
  • 编译并将代码部署到预生产机器。
  • 运行测试用例。如果出现问题,它会自动向开发人员和项目经理发送通知。
  • 开发人员随后回滚源代码库和预生产机器中的代码。
  • 如果测试通过,它将调用代码检查和覆盖率分析。如果存在问题,它将报告问题;否则,开发人员会通知所有实现都已成功完成。
  • 他在任务管理系统中编写他的工作历史
  • 项目经理收到任务已解决的通知。
  • 他检查任务结果的备注。
  • 开发人员完成他的工作日。

从项目负责人角度看 ALM 的用例场景

  • 项目负责人打开 Web 浏览器并进入 ALM 仪表板页面。
  • 每个项目都有一个页面仪表板。
  • 它显示未完成任务的数量、待处理任务的数量以及所有已打开的关键任务。
  • 项目负责人通过仪表板收到潜在风险和项目健康状态的通知。
  • 所有提交和更改都会自动报告。
  • 在此,ALM 流程以一种无需开会或打电话来检查关键任务的 CI 流程的方式帮助团队。

摘要

  • 应用生命周期管理(ALM)是软件应用程序的规范、设计、开发和测试过程。
  • ALM 的关键领域定义为 1) 治理,2) 应用程序开发,3) 应用程序管理。
  • 如果您使用 ALM,那么您将对项目状态有很好的可见性。
  • 需求管理、设计、编码、SCM、构建管理、测试管理和用户体验是 ALM 流程的重要阶段。
  • ALM 通过组织和跟踪帮助您控制系统。
  • ALM 流程对开发人员、项目经理和系统管理流程的所有入口都很有用。