软件构架活动与建议

来源:互联网 发布:淘宝店名怎么修改 编辑:程序博客网 时间:2024/06/01 10:17

软件构架活动与建议

Version 1.0

2008-11-24

本文为《软件构架实践》一书的学习笔记。

一、           构架相关活动

按照大概的时间顺序,构架活动包括如下几个过程:

Ø        创建商业案例:构架师需参与该活动;

Ø        理解系统需求:用况、场景、原型等需求获取工具;了解现有系统;本书对需求场景进行了细致的描述,并使用场景方法详细阐述了数个重要的质量属性;

Ø        创建或选择构架:本书总结归纳了质量战术,并提供了一个称为ADD的构架设计方法;

Ø        构架编档及交流:构架编档主要是视图编档,本书讨论了构架编档,并给出了文档模板;

Ø        构架分析评估:构架评估需要针对系统所需满足的质量属性进行,而基于场景进行评估很一种最有效的评估方法;本书给出了ATAMCBAM两种构架评估方法,前者是一种以考察构架对场景的满足为中心的非定量评估方法,后者则期望为构架评估提供一些定量的参考数据;

Ø        依据构架实现系统:尽量创建一个可用来帮助设计人员创建并维护构架的环境或基础结构,这将有利于实现阶段的工作;

Ø        保证实现符合构架:构架重构用于从已完成的系统中提取出构架,这可用于检验实现是否符合构架;

除了第1步和倒数第2步,本书对其他各步骤都有涵盖。

二、           关于过程的建议

1,  构架设计由一位设计师、或一位设计师主导的设计小组完成;

2,  设计师全面掌握需求,并拥有一份带优先级的需求列表;

3,  构架文档齐备并易理解,至少需包括一个静态视图和一个动态视图;

4,  让涉众了解构架并积极参与构架评估;

5,  分析构架获得量化度量指标,对质量属性进行正式评估;

6,  构架设计应有利于增量实现,可以先创建一个骨架系统,再在其上扩充以实现整个系统;

7,  在发生资源争用时,应明确各部分的资源占用情况,例如给各部分分配网络流量限制,以满足系统总的流量限制;

三、           关于构架结构的建议

1,  定义良好的模块,信息隐藏与相互独立原则,隔离基础计算结构;

2,  使用众所周知的战术实现质量属性需求;

3,  构架绝不可以依赖某个特定版本的商业产品或工具;

4,  将产生数据的模块与使用数据的模块分开,这有利于未来变更;

5,  对并行处理系统采用定义良好的进程或任务;

6,  考虑进程、任务与特定处理器的关系,并使该关系易于改变;

7,  采用少量、简单的交互模式,以利于理解和实现;

8,  构架应体现概念完整性;

四、           参考资料

《软件构架实践》

 

原创粉丝点击