写点什么

来自荷兰格罗宁根大学的架构决策捕捉工具 RGT

  • 2013-01-24
  • 本文字数:2036 字

    阅读完需:约 7 分钟

格罗宁根大学的 Dan Tofan 向软件架构师提供了开源软件工具 RGT (Repertory Grid Tool),这种工具用于捕获和评估他们的架构决策。这个工具可以帮助架构师更好的文档化他们的决策及对决策进行回顾。

构建复杂软件系统通常需要作出许多重要的决策。在这些决策中,架构师们处理满足利益相关者关于各种功能和非功能需求的各种关注点,以便满足商业和技术目标。另外,架构师们需要他们回顾决策过程的质量,比如“我是否考虑了决策的所有可行的方案?”

为了帮助架构师,格罗宁根大学的软件工程研究者为架构决策提供了这个工具。关于这个开源工具的细节可以通过这个链接了解 https://github.com/danrg/RGT-tool/wiki .

InfoQ:Dan, 能否用最少的词描述下你自己和你的研究?

我是一名软件开发者,在业界工作六年后成为研究员。我研究方向主要是改进软件架构的决策。

InfoQ:你为什么要创造 RGT?以及它和你现在做的研究工作有什么联系呢?

我认为决策技能是架构师必备的技能,不只是为了设计软件,也为了向其他利益相关者说明基本原理。所以如果你把决策作为一种技能,比如游泳或者烹饪,那么下一步你就会理性的问:怎么才能改进自己的架构决策能力?

决策和获取架构决策知识是同时的。对获取的决策知识有效追踪。所以,使用 RGT 获得架构决策有两个主要优点:储备用于架构决策的知识,改进架构师的决策能力。

InfoQ:能否描述下 RGT?

RGT 通常有这些步骤。首先,我们有一个要决策的问题。第二步,找出问题的各种可选方案。第三步,我让你找出两个你觉得相似但又和另外一个不同的方案。第四步,你描述为什么这两个是相似的,和第三个又为什么是不同的。这样就产生了关注点(用 RGT 的术语叫“观点”)。Java 和 C#是类似的,因为他们都是由大厂商维护支持的,而 Ruby 只是社区维护支持的。然后产生更多的关注点,下一步是对各种可选方案按照关注点进行评分(通常从 1 到 5)。然后,各种可选方案会产生一个矩阵(或者叫网格),分析这些关注点以及评分,比如使用层序聚类分析,根据可选方案与关注点的相似性进行分组。最后,架构师可以通过更新可选方案,关注点,评分,精简这个网格。这个最终的网格可以反映这个决策的思维模型。总的来说,这个网格提供了这个决策的精炼文档。相对于一般的文字描述,这个文档更精炼地描述了决策。

InfoQ:RGT 的典型应用场景有哪些?

典型应用场景是从 4 到 9 种可选方案获得架构的决策。对太少的可选方案,RGT 可能误判。

对更多的替代方案,RGT 则可能会花费太长的时间。

InfoQ:RGT 对使用者提供了那些好处?

RGT 提供了获取决策的一种系统方法。同时,它也帮助产生关于决策的新的灵感。RGT 使架构师可以回顾他们的决策。最后,RGT 交付一个关于决策的文档。

当日,RGT 也有缺点。主要是 RGT 是花费时间的。因此,我觉得 RGT 更适用于那些需要周密考虑的重要决策,这也是软件架构师经常碰到的事情。当使用 RGT 讨论软件架构时,他们经常抱怨缺乏好的工具支撑。所以我们就创造了这个软件来解决。

InfoQ:这个工具有哪些主要特性?

首先,该工具帮助架构师网格化他们所有独立决策。第二,这个工具支持从现有的网格进行协同决策。办法是通过多轮的表格填写, 澄清各种利益者之间的各种分歧,最终达到一致。

最后,这个工具是开源 ( https://github.com/danrg/RGT-tool ) 的,并且部署在 http://repertorygridtool.com .

InfoQ:你希望从 RGT 用户那里获得什么样的反馈?

通常研究成果需要花费很长时间才会被工业界采用,有人说甚至要 10 到 15 年。获得用户的反馈对减少这个时间是非常有必要的。我期望两种类型的反馈:关于 RGT 和关于工具本身的。

所以,我希望听到 RGT 如何帮助架构师进行他们的决策。

因为这个工具是开源的。对这个工具的建议,Bug 的报告,以及贡献代码都是我关心的。我想围绕这个工具构建一个小的社区。

InfoQ:Grad Booch 曾经说过“傻瓜即使拥有工具还是傻瓜”。你如何确保架构师正确而有效率的方式使用 RGT?

关于更好的利用这个工具有三点。首先,确保你在正确的时间正确的地方使用 RGT:RGT 是一种利基(niche, 指范围狭窄)方法,不可能用于一切场景。第二,花一些时间学习 RGT。第三,从一些以前的架构决策开始,然后逐步在当前的决策和集体决策中使用。最后,分享你的经验,我很愿意提供帮助。

InfoQ:关于 RGT 和你的方法,你下一步有什么打算?

下一步打算增加一些基于关注点评估可选方案的实用功能,这会使评估比现在简单打分的方式更加精确。另外,我想实现关于风险管理的特性。其他的还有实现复合决策,这种决策的各种可选方案又由多种原子决策选择组合而成。复合决策可以对设计空间进行更彻底的探索,以确保那些有效的组合不会被忽略。

查看英文原文: University of Groningen Offers Repertory Grid Tool for Capturing Architecture Decisions


感谢崔康对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-01-24 01:191992

评论

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

React-Native开发鸿蒙NEXT-video

悬空八只脚

React Native HarmonyOS HarmonyOS NEXT

混沌工程与服务依赖治理

FunTester

OpenAI的“噩梦”,DeepSeek V3-0324效率革命展现中国AI雄心

AI数据云Relyt

openai LLM DeepSeek

「高盛」最新人形机器人研报:主流人形机器人公司梳理和商业化瓶颈(附报告)

机器人头条

科技 大模型 人形机器人 具身智能

图灵数据洞察平台-TDF(Turing Data Finder)

百度Geek说

百度 用户行为分析 数据分析、 增长营销

WebGL开发3D模型的流程

北京木奇移动技术有限公司

软件外包公司 webgl开发 3D开发

鸿蒙知识点笔记(二)

悬空八只脚

HarmonyOS HarmonyOS NEXT

火山引擎推出大模型应用防火墙,为企业开辟安全推理空间

极客天地

家政上门按摩/预约网站微信抖音小程序系统源码开发

网站,小程序,APP开发定制

AD域迁移:最佳实践与工具指南

运维有小邓

AD域管理 AD域迁移 AD域组管理

React Native开发鸿蒙Next---图片浏览与保存的问题交流

悬空八只脚

React Native HarmonyOS HarmonyOS NEXT

华为开发者空间新体验:一站式开发工具Notebook正式上线!

华为云开发者联盟

开发工具 notebook 华为开发者空间

几个实操案例,告诉你什么是真正可用的企业级通用智能体

王吉伟频道

自动化 智能体 AI应用 AI Agents 通用智能体

和鲸科技入选数健委数字健康新质生产力服务平台首批企业,推动医疗数智化发展

ModelWhale

鸿蒙知识点笔记(一)

悬空八只脚

HarmonyOS HarmonyOS NEXT

融云上线智能体接口,让通信从工具进化为生产力伙伴

融云 RongCloud

React-Native开发鸿蒙NEXT-cookie设置

悬空八只脚

React Native HarmonyOS HarmonyOS NEXT

因聚而生,众智有为:华为中国合作伙伴大会2025圆满举行

新消费日报

企业AI应用找不到好场景?无法落地?这场来自华为的宝藏直播千万别错过!

轶天下事

Vue3组合式API从原理到实战终极指南

秃头小帅oi

智能制造:条码的应用

积木链小链

数字化 智能制造 条码应用

React Native开发鸿蒙Next---灰度模式

悬空八只脚

React Native HarmonyOS NEXT

保障飞行安全:飞机起落架收放系统的挑战与突破

DevOps和数字孪生

INTERSPEECH2025-MLC-SLM挑战赛正式启动!语音AI的巅峰之战!

数据堂

大语言模型 语音ai 语音数据集

Nexpose 8.0.0 for Linux & Windows - 漏洞扫描

sysin

Nexpose

VMware ESXi 8.0U3d macOS Unlocker & OEM BIOS Huawei (华为) 定制版

sysin

esxi

React Native开发鸿蒙Next---富文本浏览

悬空八只脚

React Native HarmonyOS HarmonyOS NEXT

关键词搜索淘宝商品列表数据接口详解

tbapi

淘宝商品列表数据接口 淘宝API 关键词搜索淘宝接口

直播预告 | TDgpt 智能体发布 & 时序数据库 TDengine 3.3.6 发布会即将开启

TDengine

tdengine 时序数据库

Apache Flink 2.0.0: 实时数据处理的新纪元

Apache Flink

大数据 flink Apache Flink

Studio 3T 2025.5 (macOS, Linux, Windows) - MongoDB 的终极 GUI、IDE 和 客户端

sysin

Studio 3T

来自荷兰格罗宁根大学的架构决策捕捉工具RGT_架构_Michael Stal_InfoQ精选文章