作者简介
Gavin,程序员、软件架构师、企业架构师,关注智能制造。
本文是专栏《智能制造系统架构》中的文章,其它文章请参阅入坑智能制造系统架构。
最近团队作架构评审,所以整理一下架构评审要考虑的问题。很多时候,软件项目在进度和预算的压力下经常会优先考虑业务功能实现,尽量先把功能做出来,同时会忽略掉一些其它问题,考虑后续根据情况再逐步完善。特别是搞敏捷的团队,经常拿迭代当万金油,遗留一些问题给后续迭代,随后就成了技术债。最后发现,填坑的成本奇高无比,更有甚者干脆推翻重做。所以架构评审集合一些有经验的人,提前识别出重要的问题,做好规划,对于产品或者项目很有好处。并且,架构评审的过程团队成员可以共同学习,共同成长。
架构评审的第一个问题就是要评审什么?从哪里入手?所以本文汇总整理一下架构评审可能的关注点和相应的问题,作为评审入手的参考。但架构的关注点有很多,在不同阶段,评审的内容也会不同,所以实际评审时没必要挨个问一遍。只是作为基础参考,根据评审的关注点选择需要的内容即可。
架构评审的目的是为了识别出影响产品质量的风险,所以架构评审的问题点也是围绕产品质量要求。业界有一些相关的总结或者标准,以ISO 9126为例,对软件质量模型定义了如下属性以及相应的评估问题如下:
质量属性 |
质量子属性 |
评审点 |
Functionality 功能性
|
Suitability 适合性 :系统提供了满足需求的功能 |
|
Accurateness 准确性 (包含数据一致性、事务性) :系统执行的结果是正确的(用户需要的) |
|