软件架构特征的识别、度量与治理
1. 架构特征的识别
在软件项目中,架构特征的识别至关重要。以 Silicon Sandwiches 为例,我们可以从需求中提取出多个关键的架构特征。
- 国际化(i18n) :母公司有海外扩张计划,这意味着软件需要支持国际化。虽然有多种设计技术可以处理这一需求,但它会影响设计决策。
- 可用性 :确保用户能够访问三明治网站,这是一个隐含的架构特征。
- 可靠性 :保证网站在交互过程中保持稳定,避免用户因连接中断而重新登录。
- 安全性 :在每个系统中,安全性都是一个隐含的特征。对于 Silicon Sandwiches,假设支付由第三方处理,只要开发者遵循一般的安全规范,就不需要特殊的结构设计。
- 可定制性 :问题领域的多个部分,如食谱、本地销售和方向等,可能需要支持定制行为。通常这属于应用设计的范畴,但如果需要定制结构来支持,就成为了架构特征。不过,这一特征对应用的成功并非至关重要。
在选择架构特征时,没有绝对正确的答案,只有不正确的选择。架构师需要与开发人员、项目经理、运营团队等密切合作,共同决定如何实现这些特征。同时,架构师还需要对架构特征进行优先级排序,尝试找出最简单的必要集合。例如,在 Silicon Sandwiches 的案例中,可定制性或性能可能是最不重要的架构特征。
2. 架构特征的度量
架构师需要处理软件项目中各种各样的架构特征,包括操作方面(如性能、弹性和可扩展性
超级会员免费看
订阅专栏 解锁全文
5万+

被折叠的 条评论
为什么被折叠?



