发布管理最佳实践

什么是发布管理?

在开发和IT运营中,发布管理是该过程的内容和释放软件并部署到其用户。这包括从规划,开发,测试和所有方式的部署/发布软件的一切。发布管理为生产团队提供了一个系统,用于管理有时可能是一个令人生畏的软件交付生命周期。此外,良好的发布管理系统必须确保最终用户的最佳体验并与整体业务优先级对齐。

发布管理的主要目标是:

  • 管理整个软件交付生命周期遇到的风险
  • 优化并监督开发和发布流程
  • 见面带有一致性的交付目标
  • 递送价值和对客户/用户的最佳体验
  • 确保盈利能力和满足业务目标

发布管理在Devops:它是如何不同的?

Devops团队旨在重视发展和IT运营团队之间的加强合作和沟通。在孤岛或移交生产项目并忘记他们的人不再工作。这意味着发布管理是什么缩短的反馈循环,允许团队释放软件更快,沿途较少的并发症。

什么是典型的发布管理过程?

发布管理进程将与团队团队略有不同。您的发布管理过程应该是您的业务和人员独有的,目标是优化您为客户和用户提供价值服务的流程。

通常,释放管理过程可以如下分解:

步骤1:定义即将发布的特定要求和标准。例如,假设您正在向现有移动应用程序添加新部分。您需要确保添加的加法在不同的移动操作系统(例如iOS和Android)上。

第2步:为定义要求指定具体验收标准。基于在步骤之一确定的要求,您将需要每个都需要可测试的断言。通过前面的示例,验收标准可能包括:

  • 添加在iOS上正确显示
  • 添加在Android操作系统上正确显示
  • 新功能必须在每个操作系统的版本X上工作

步骤3:将部署推向暂存服务器或环境。这将允许您在不直接影响现有客户或用户使用的当前或实时版本的情况下进行必要的应用程序更改和更新。暂存环境应尽可能接近生产环境,以便在切换到生产时最小化任何问题。

第4步:质量保证团队(也称为经验保证专家或Devops的XA团队)将审查分期环境,以确保满足所有验收标准。除了测试新功能或添加之外,还要重新测试旧功能或现有功能,以避免回归。

第5步:部署到生产软件。一旦QA / XA签署了新软件,它就准备好过渡到生产并为用户提供。

提高您发布管理过程的提示

有几个提示和发布管理的最佳实践,可以帮助您进一步提高您的流程。这些包括:

  • 确保验收要求明确定义和目标。不要将这些留给解释或意见。相反,定义可以轻松测量和检查的密钥释放度量。
  • 限制对用户的影响。一个好的版本经理的目标是快速有效地发布新的更新,同时最大限度地减少对用户和客户的任何停机或影响。使用主动测试,主动监控和实时警报,以便在版本期间快速识别和解决任何事件。
  • 保持暂存环境更新所以它总是尽可能接近生产环境。
  • 自动化您可以在哪里。在今天的世界中,速度至关重要。发布管理中的自动化不仅会加快部署时间,还可以减少人为错误的机会。质量保证等流程可以从自动化中受益。
  • 始终创建新的更新而不是修改新的。更改现有配置通常会导致错误或错误的可能性。通过创建完全新的更新,发布将更加可靠,导致客户更快乐。

发布管理与更改管理

那么,如何与变革管理不同的发布管理?更改管理是上面发布管理的步骤,并负责为一个或多个部署准备舞台。变更管理负责所有先前和发布后的活动,包括实施后审查。发布管理是整体变更管理生命周期的更具体部分。

发布管理的重要角色是什么?

拥有合适的人员对良好的释放管理进程至关重要。一些基本角色包括:

产品拥有者

产品所有者的主要责任是确定并清楚地确定即将发布的具体要求和验收标准。上面讨论的一个和两个过程的步骤是产品所有者采取铅的位置。

质量经理

质量经理(或XA)的角色是首先确保产品所有者定义的验收标准准确地反映了要求。新的代码或功能不应该能够通过验收标准,并且仍然将产品所有者留出不满。质量管理人员也负责确保QA测试正确完成,没有误报或否定。

devops团队

在发布管理中,Devops团队负责维护一个一致的阶段环境,开发人员可以快速有效地工作。暂存环境应始终尽可能接近生产环境,以便质量经理可以信任阶段完成的所有测试将准确地携带到生产。DevOPS团队还需要实现高可用性生产部署,以最大限度地减少停机时间和用户/客户影响。

是什么让一个好的版本经理?

一个好的版本经理必须始终考虑客户和最终用户。有效的释放管理系统将始终如一地向其用户提供价值,同时最小化停机时间和任何部署后事件。通过发布管理的最佳实践,开发和运营团队将能够更快地部署新版本,并且较少的错误,为更可靠的服务和更快乐的客户提供。

Baidu