NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

亚马逊云科技发布架构决策记录指南

作者:Abner Ballardo

  • 2022-06-28
  • 本文字数:975 字

    阅读完需:约 3 分钟

亚马逊云科技发布架构决策记录指南

亚马逊云科技发布了使用架构决策记录(architecture decision record,ADR)的指南。他们推荐了一个在软件工程团队中采用和审查 ADR 的过程,这个过程的结果是包含已批准、已拒绝和已废弃的 ADR 集合的决策记录。


亚马逊云科技提出该 ADR 过程的目的是改善架构决策,避免对相同主题的重复性讨论,并有效地对决策进行沟通。


ADR 是一个简短的文档,描述了会影响软件架构的团队决策。它不仅包含决策,还包含了相关的背景和影响。一组 ADR 组成了一个决策日志,它提供了关于项目或产品的更广泛的背景、设计信息和实现细节。


ADR 过程中,最常见的输入是需要在架构方面进行重大决策的功能性或非功能性需求。发现了这种决策的任何团队成员都应该创建一个 ADR。使用模板可以简化 ADR 的创建,并且能够确保它会捕获所有相关的信息。


按照亚马逊云科技的指南,创建 ADR 的团队成员也是该 ADR 的所有者,要负责维护和交流它的内容。在初始阶段,ADR 所有者会提供一个“proposed”状态的 ADR,这意味着它可以进行审查了。随后,ADR 所有者要安排一个团队会议,以审查并决定该 ADR 要被批准、返工还是拒绝。


如果团队发现该 ADR 需要改进的话,它会依然保持“proposed”状态,所有者和其他团队成员会对其进行优化。否则的话,ADR 的状态将会变为“accepted”或“rejected”,ADR 就不可改变了。如果团队需要更新这个决策的话,那应该提出一个新的 ADR,当该 ADR 被批准后,会取代之前的 ADR。


下图展示了 ADR 的创建、所有权和采用的过程。



图片来源:https://docs.aws.amazon.com/prescriptive-guidance/latest/architectural-decision-records/adr-process.html


亚马逊云科技建议,ADR 应该有一个变更历史。一旦 ADR 被批准或拒绝,它就应该被认为是不可改变的。如果团队批准了一个新的 ADR,并且该 ADR 取代或更新了以前的决策,ADR 的所有者应该将旧 ADR 的状态变更为“superseded”。如果新的 ADR 被拒绝了,则不需要对旧的 ADR 进行任何改变。


下图显示了 ADR 的更新过程。



图片来源: https://docs.aws.amazon.com/prescriptive-guidance/latest/architectural-decision-records/adr-process.html


决策日志会随着时间的推移而增长,它会提供团队所做出的所有决策的历史。例如,在代码或架构审查期间,团队可以使用决策日志作为参考,以验证变更是否符合商定的决策,或者是否需要创建一个新的 ADR。


原文链接:

AWS Publishes Guide to Architecture Decision Records

2022-06-28 09:274580

评论

发布
暂无评论
发现更多内容

低功耗深度休眠后无法唤醒、烧录程序,怎么办?(华大半导体HC32L136)

不脱发的程序猿

嵌入式软件 单片机 4月日更 华大半导体 HC32L136

干货拉满!阿里公开内部P9级架构师(Java)成长路线图,满满的干货

Java架构追梦

Java 阿里巴巴 架构 面试 成长路线

6 张图带你彻底搞懂分布式事务 XA 模式

阿里巴巴云原生

Java 数据库 云原生 存储

连续三年入围 Gartner 容器竞争格局,阿里云容器服务新布局首次公开

阿里巴巴云原生

容器 运维 云原生 k8s 边缘计算

BOE(京东方)成都数字医院开诊,投资60亿打造西南智慧医疗创新典范

爱极客侠

传统行业为什么需要互联网人才

陈俊

20年研发安全积累,5大研发安全能力让软件“天生安全”

华为云开发者联盟

DevOps 安全 DevSecOps 华为云 devcloud

新疆重点人员管控系统搭建,指挥调度系统开发

【论文分享】Presto: SQL on Everything(二)

小舰

4月日更

commons-pool2 池化技术探究

vivo互联网技术

Java common-pool2 池化技术

应“云”而生的 Java 框架 Quarkus:构建小而快的镜像

张晓辉

Java Docker Serverless CloudNative Quarkus

curl使用

Hex

工具

BOE(京东方)亮相数字中国 “三驾马车”加速物联网战略转型

爱极客侠

如何用iMazing备份恢复贪婪洞窟

懒得勤快

又有400多个组件支持鸿蒙了!

Geek_283163

华为 鸿蒙

FusionInsight MRS:你的大数据“管家”

华为云开发者联盟

大数据 数据湖 云原生 华为云 FusionInsight MRS

机器学习训练营第一次作业

学习

软件 IT 专业的高校大学生创新创业问卷调查

五分钟学大数据

问卷调查

8K视频指的什么?8K视频处理和工作原理分析

科技猫

技术 分辨率 视频 视频处理 8k

使用开源项目必须保留作者姓名?开源软件不能商用?我们需要先学会分辨开源许可证

郭旭东

开源 开源文化

德赛西威与华为签署全场景智慧出行生态解决方案合作协议

聚力区块链 共建数字中国丨“桂链”平台正式发布并启动全面接入“星火·链网”

浪潮云

云计算

Python异常的这些知识点你都get到了吗?

老猿Python

Python 编程语言 异常处理

Java中&、|、&&、||详解

Sakura

4月日更

全球案例 | Dropbox: 在 COVID-19 时代通过 Atlassian 为远程工作提供动力

Atlassian

DevOps 敏捷 远程办公 Atlassian Jira

老爷子这代码,看跪了!

why技术

Java

Leveldb解读之二:Read

Jowin

leveldb

谁说 Java 不能用来跑 Serverless?

张晓辉

Java Serverless Knative Quarkus

CloudIDE:为开发者写代码开启“加速”模式

华为云开发者联盟

开发者 代码 华为云 CloudIDE HDC2021

如何快速准备高质量的AI数据?

华为云开发者联盟

AI 数据 华为云 modelarts 数据标注

全球案例 | Dropbox: 在 COVID-19 时代通过 Atlassian 为远程工作提供动力

Atlassian

敏捷 Atlassian Jira 远程工作 Dropbox

亚马逊云科技发布架构决策记录指南_服务革新_InfoQ精选文章