现代化准备情况因素 - AWS 规范性指导

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

现代化准备情况因素

对应用程序进行现代化改造时,请遵守以下标准和最佳实践。

代码

  • 提供记录软件功能的代码注释,并使用它们来生成文档。

  • 遵循代码管理和部署流程,这些流程支持频繁的代码检查和功能请求的可追溯性。

  • 构建包含单元测试、功能测试、性能测试和关键路径测试的测试套件,代码覆盖率为 100%。

  • 鼓励重复使用代码,以便在代码库中提供相同或相似的功能。

  • 在投资完整代码开发之前,开发原型以与用户一起验证功能。

构建和测试

  • 根据测试重新定义功能完整性,以提高质量并防止问题反复出现。

  • 自动化验收测试。

  • 监控所有自动测试,并建立处理故障的流程。

  • 跟踪生产和非生产环境中的性能,根据实际流量和负载测试定义服务级别目标 (SLO),并提供扩展以满足性能要求的能力。

  • 从配置文件中提取敏感数据,并提供自动配置和监控配置的工具。

版本

  • 通过支持依赖关系(例如数据库发布)、回归测试和跟踪,实现自动化部署。

  • 每次成功构建后,以增量方式将代码发布到生产环境。

  • 有效地管理功能标志(切换):支持运行时配置,监控使用情况,在整个开发周期中维护标志,并按类别分配所有者。

  • 在构建管道中提供可追溯性,以跟踪触发器、失败通知和成功完成。

  • 运行自动部署流程并测试持续交付中的 “零接触”代码更新。

  • 使用零停机时间、全自动蓝/绿部署方法。

  • 确保在所有开发和生产环境中一致实施数据库架构更改。

操作

  • 创建与您的通知系统集成的 DevOps 分类运行手册。

  • 确保您的监控和通知系统符合服务级别目标 (SLO),并支持阈值、运行状况检查、非标准 HTTP 响应和意外结果。

  • 建立有效的风险管理和灾难恢复流程。

  • 制定符合您的业务和法律要求的日志轮换和保留策略。

  • 开发仪表板,用于跟踪产品性能,衡量新功能的成功程度,并在指标未达到预期时显示警报。

优化

  • 根据绩效和质量衡量标准,定期审查和改进流程。

  • 实施根本原因分析和预防流程,防止问题再次出现。

  • 提供数据驱动的指标,以捕捉产品运行状况,并确保所有通知和操作都基于这些指标。

准备就绪

  • 让跨职能团队(包括业务合作伙伴、开发人员、测试人员和架构师)专门负责您的现代化工作。