前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >《架构整洁之道》第 2 章 两个价值维度

《架构整洁之道》第 2 章 两个价值维度

原创
作者头像
巴啦啦的积累
发布2023-05-19 09:07:12
2080
发布2023-05-19 09:07:12
举报
文章被收录于专栏:巴啦啦的积累

该篇提出了一个问题:系统行为和系统架构的灵活性,哪个更重要?即系统正常工作更重要,还是系统易于修改更重要。分别对应了软件系统的两个价值维度。

对于业务人员来说,是系统行为和正常工作更重要,而开发通常跟随采取这种态度。这种态度是错误的。

理由如下:

  1. 如果程序可以正常工作,但是无法修改,当需求变更时,即使正常工作的程序,也会变得不正常。
  2. 如果程序不可以正常工作,但是容易修改,那么将其修复增改是能够轻松做到的事。

艾森豪威尔矩阵

将矩阵中的事件按价值排序如下:

1. 重要且紧急

2. 重要不紧急

3. 不重要但紧急

4. 不重要且不紧急

我有两种难题:紧急的重要的,而紧急的难题永远不是重要的,重要的难题永远是不紧急的。

将上述两个价值维度代入到这种难题中:

系统行为:是紧急的,但是并不总是特别重要。

系统架构:是重要的,但是并不总是特别紧急。

可以看出,系统架构这个价值维度,占据了该矩阵中的前两名。即都重要。

而业务部门和开发部门常常犯的错误就是将排名第三的,不重要但紧急的事情,放在第一优先级去做。

其次就是业务部门原本就没有能力去评估系统架构的重要性,这应当是开发部门的职责。

所以开发部门有义务和责任,将系统架构的重要性放在第一位。

为好的软件架构而持续斗争

为了做好上述的职责,开发部门需要做好长期斗争的准备,必须要为公司的长远利益出发,和其他业务部门做抗争。公司雇佣你来做软件开发的原因就是需要你把这个角色做好。

如果你是软件架构师,那么这项工作就更重要了。如果系统变得越来越难以维护,则说明软件开发团队没有和需求方做足够的斗争,没有完成自己应尽的职责。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 艾森豪威尔矩阵
  • 为好的软件架构而持续斗争
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档