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

敏捷开发之基于价值的架构决策

  • 2011-07-23
  • 本文字数:1053 字

    阅读完需:约 3 分钟

在最近的 SATURN 2011 大会上,来自 eBay 的首席架构师 Jeromy Carriere 以其报告——在 Vistaprint(一家快速前进的敏捷公司)中引入可持续架构实践的经验,而被授予了“架构实战”大奖。Jeromy 讲述了对于架构转型,经济价值核算制与所有制如何为自治、但是一致的设计决策奠定了基础。

Jeromy 还提及了,在克服开发人员——将架构等同于大规模预先设计活动、并将架构师角色等同于规范强化人员——的心理障碍上的挑战。他与团队频繁地对话以了解项目的问题,并在被询问时施以援手以获得组织内的信誉。最终,“架构是一个量化决策的工具,以及架构师是一个跨越整个工程部门的共享角色”的观点被广为接受。

通过赋予架构转型以经济价值(对项目的影响),项目组就能够遵循一个合理且透明的决策流程,决定​​是否需要继续进行架构转型。为了将组织的转型需要与项目的转型需要结合在一起,决策流程遵循了一个最小集合的指导方针,包括例如:

  • 集思广益不同的选项,选择将经济价值完整最大化的选项
  • 选择将导致最小、最少耦合软件的设计
  • 利用标准化,以提升可预见性和可扩展性

LAAAM(轻量级架构选型评估方法,“ Lightweight Architecture Alternative Assessment Method ”的缩写),是一个受软件工程研究所(SEI)的严格的 ATAM(体系结构权衡分析方法,“ Architecture Tradeoff Analysis Method ”的缩写)流程启发而产生的决策流程。该决策流程针对于结构型与权重型质量,在不同层面上发挥了关键的作用。他解释说:

当决策需要同时考虑局部(如项目)和全局(如企业)关注时,我通常会尝试建立一个综合的质量树——诸如,也许,在企业层面上指定了质量以及次级质量,并且依照评级部分排序(例如,性能比安全性更重要,可靠性也比安全性更重要;但性能与可靠性相比较,孰重孰轻则未定),而项目则对所有的质量属性都排定了顺序(与前面的部分排序一致)。此外,项目还指定了与其特定上下文相关的场景。

LAAAM 提供了一个计算架构方案价值的简单方式——基于各方案在解决项目与企业的相关场景(根据其在质量树上的排名进行加权)时的适用程度(拙劣、尚可、足够或优秀)。目标不在于盲目选择“赢家”方案,而是验证相关的场景得到了有效地解决。当候选方案的得分区别不大时,一个好的策略是把场景深化为子场景,并在子场景上应用该方法。

Jeromy 告诉 InfoQ 他认为对于 LAAAM 演化,最优先的是:整合成本模型(因功能交付延误的机会成本、因技术债务导致生产力下降的成本以及营运成本等),并提供工具支持。

查看英文原文: Value-based Architectural Decisions in Agile Development

2011-07-23 11:021928
用户头像

发布了 76 篇内容, 共 23.4 次阅读, 收获喜欢 3 次。

关注

评论

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

【LeetCode】数组的度Java题解

Albert

算法 LeetCode 28天写作 2月春节不断更

架构设计篇之微服务实战笔记(一)

小诚信驿站

架构师 刘晓成 小诚信驿站 28天写作 架构师成长笔记

IDEA 敏捷开发技巧——后缀完成

程序员小航

Java 后端 IDEA

SpringBoot之自定义启动异常堆栈信息打印

false℃

产品训练营--第四期作业

曦语

产品训练营

Kafka.02 - Topic 介绍

insight

kafka 2月春节不断更

诊所数字化:搭建网络路径的信息铺设策略

boshi

数字化转型 医疗 七日更 28天写作

重大更新!一文了解京东通用目标重识别开源库FastReID V1.0

京东科技开发者

AI 监控

读书总结2020

IT民工大叔

#读书

大小厂必问Java后端面试题(含答案)

yes

Java 面试 后端

Java实体映射利器---MapStruct

是小毛吖

Java MapStruct

APM 行业认知系列 - 二

东风微鸣

APM Trace 可观察性

电子产品中EMC隔离设计的方法

不脱发的程序猿

二月春节不断更 电路设计 EMC 电子产品

全网最新、最全面蚂蚁金服面经分享:简历模板/面试题库/Java核心技术笔记

比伯

Java 编程 程序员 面试 技术宅

如何 0 改造,让单体/微服务应用成为Serverless Application

阿里巴巴云原生

Docker Serverless 容器 微服务 云原生

日记 2021年2月20日(周六)

Changing Lin

2月春节不断更

APM 行业认知系列 - 三

东风微鸣

APM Trace 可观察性

构建万物可信互联的基石,带你深度剖析区块链跨链的关键技术,满满是干货!

华为云开发者联盟

区块链 智能合约 云原生 跨链技术 分布式账本技术

著名的Java并发编程大师都这么说了,你还不知道伪共享么!

看点代码再上班

Java 后端

Golang代码测试:一点到面用测试驱动开发

华为云开发者联盟

测试 TDD 代码 Go 语言

EMC设计中电缆屏蔽使用方法

不脱发的程序猿

二月春节不断更 电路设计 EMC 电子产品 电缆屏蔽

Elasticsearch踩坑记之深度分页

topsion

大数据 elasticsearch 深度分页

你的面试专属!JVM G1GC的算法+实现,90张图+33段代码

Java架构追梦

Java 架构 JVM 调优 G1GC

数据库的两个好帮手:pagehack和pg_xlogdump

华为云开发者联盟

数据库 故障 GaussDB pagehack pg_xlogdump

Elasticsearch filter vs. query 对比

escray

elastic 七日更 28天写作 死磕Elasticsearch 60天通过Elastic认证考试 2月春节不断更

《经济学人》2021年2月20日刊精彩文章导读及资源下载

wbliu85

LoadRunner测试中遇见的不可思议的问题及其解决方法

陈磊@Criss

APM(应用性能监控) 行业认知系列 - 一

东风微鸣

APM Trace 可观察性

LeetCode题解:53. 最大子序和,动态规划,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

【STM32】CubeMX+HAL 点亮 LED

AXYZdong

硬件 stm32 2月春节不断更

可能是Java 8 Optional最佳实践

ES_her0

28天写作

敏捷开发之基于价值的架构决策_研发效能_Manuel Pais_InfoQ精选文章