AICon上海|与字节、阿里、腾讯等企业共同探索Agent 时代的落地应用 了解详情
写点什么

Felix Bachmann 谈软件架构评估

  • 2009-05-30
  • 本文字数:937 字

    阅读完需:约 3 分钟

软件架构评估是企业架构(EA)中重要的一部分。软件工程研究所( SEI )的 Felix Bachmann 译者注:Felix 是 Jolt 大奖图书《软件架构编档》的作者)最近谈到了如何有效地评估软件架构、识别企业应用中的风险。在 SEI 架构(SATURN)会议上,Felix 主持了一个有关架构评估原则的讨论会。他还论述了SEI 的架构权衡分析法( ATAM )框架是如何利用这些原则来助力架构评估工作的。

Felix 提到,架构评估原则可分为三组:“度量”、“架构理解”和“窍门”。软件架构评估中的度量部分包括从利益相关方那里提取组织需求,并用精确和可度量的方式将其转化为质量属性。他谈论了该类别中的四条原则:

  • 质量属性决定架构。
  • 业务目标决定质量属性需求。
  • 业务目标意味着对利益相关方社区来说,什么是重要的。
  • 质量属性需求需要用好的度量方法指定。

了解架构师使用的方法、功能分布及薄弱环节也很重要。架构理解中有三个原则:

  • 要想理解架构,你必须要了解其质量属性。
  • 最重要的质量属性需求决定了系统中需要重点分析的部分。
  • 架构中的功能分布造就了质量属性。

软件架构评估的“窍门”部分包括:

  • “有罪推定”,也就是指,不要盲目相信提供过来的任何东西,要寻找令人信服的证据。提供不出证据会导致风险。
  • 正确的分析不允许假设。只有事实才是有价值的。
  • 被评估的组织必须承认评估结果。

使用坚持所有原则的架构评估方法基本上可以保证成功。Felix 表示,不利用任何原则的架构评估方法极有可能会导致一场灾难。他认为应该根据上下文应用这些原则,因为遵守某些原则要比遵守其它的更为重要。方法越能很好地利用原则,成功的几率就越大。

ATAM 架构利用了架构评估里的这些原则。ATAM 的主要部分包括分为四组的九个步骤,这四组是:

  • 描述,其中包括通过描述交流信息。
  • 调查和分析,涉及评估相对于架构方法的关键质量属性需求。
  • 测试,包括检查迄今为止相对于所有利益相关方需求的结果。
  • 报告,包括表述 ATAM 的结果。

下面是 ATAM 评估过程的步骤

  • 描述 ATAM。
  • 描述业务驱动者。
  • 描述架构。
  • 识别架构方法。
  • 生成质量属性效用树。
  • 分析架构方法。
  • 头脑风暴、给场景划分优先级。
  • 分析架构方法。
  • 描述结果。

Felix 在讨论的最后总结道,软件架构师应该仔细查看架构评估的结果,以不断提高评估过程。

查看英文原文: Felix Bachmann on Evaluating Software Architecture

2009-05-30 19:122052
用户头像

发布了 151 篇内容, 共 64.6 次阅读, 收获喜欢 18 次。

关注

评论

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

视频课程|Kube-OVN 入门与应用实战 (第2期)

York

灵雀云 Kubernetes k8s Kube-OVN

当我们谈论云原生网络时,Kube-OVN 究竟能带来什么?(下)|视频回顾

York

灵雀云 Kubernetes k8s Kube-OVN

又双叕更新,开源网络插件Kube-OVN 1.4.0 版发布!支持跨集群容器网络、NetworkPolicy 日志

York

灵雀云 Kubernetes k8s Kube-OVN

【架构中的物联网】影子机制

soolaugust

架构 物联网 28天写作

@Repeatable注解作用

张健

SpringCloud 从入门到精通 03---自动生成数据模型

Felix

架构师训练营第十二周笔记

李日盛

28 天写作营 Day 1--120%的技术人员体系

张老蔫

28天写作

区块链多币种钱包系统软件开发|区块链多币种钱包APP开发

系统开发

架构师训练营第十二周作业

李日盛

作业

灵雀云亮相KubeCon 揭秘Kube-OVN IPAM容器网络实践

York

灵雀云 Kubernetes k8s Kube-OVN

面向开发者的播客清单

LeanCloud

程序员 开发者 苹果 私有云 播客

灵雀云Kube-OVN 1.5.0新版本发布,支持鲲鹏云平台网络平面部署

York

灵雀云 Kubernetes k8s Kube-OVN

参加模拟交易活动,抢先一步体验全新升级版EternalWallet!

Geek_c610c0

数字货币 crypto 数字货币钱包开发

TCP波场拼智能合约系统开发技术

薇電13242772558

智能合约 dapp

视频课程|Kube-OVN 入门与应用实战 (第4期)

York

灵雀云 Kubernetes k8s Kube-OVN

MDF智能合约系统开发技术

薇電13242772558

智能合约 dapp

Spark 扫描 HDFS lzo/gz/orc异常压缩文件

kwang

大数据 spark hdfs

视频课程|Kube-OVN 入门与应用实战 (第3期)

York

灵雀云 Kubernetes k8s Kube-OVN

DeFi去中心化金融借贷系统开发有哪些需要了解的?

W13902449729

defi 去中心化金融借贷系统开发

架构师训练营第 1 期 -大作业2

习习

视频课程|Kube-OVN 入门与应用实战 (第1期)

York

灵雀云 Kubernetes k8s Kube-OVN

性能压测工具-JAVA

微信沟通小技巧

熊斌

远程办公 职场成长 远程协作 28天写作

20 行代码:Serverless 架构下用 Python 轻松搞定图像分类和预测

Serverless Devs

Python 人工智能 Serverless 云原生

即时通讯是怎么做到的?

v16629866266

架构师训练营第 1 期 - 大作业 1

习习

Spring Cloud(零)《总有一偏概述告诉你SpringCloud是什么》

小傅哥

小傅哥 springboot 28天写作

区块链挖矿软件系统开发|区块链挖矿APP开发

系统开发

细节爆炸!腾讯用13个案例实战讲明白MySQL,没想到这么全

996小迁

Java MySQL 架构 面试 程序人生

第十届中国云计算标准和应用大会落幕 灵雀云Kube-OVN斩获优秀开源项目奖

York

灵雀云 Kubernetes k8s Kube-OVN

Felix Bachmann谈软件架构评估_架构_Srini Penchikala_InfoQ精选文章