最近评论
正在载入评论列表...
![]() |
![]() |
13.6 PM Tool实战:确定关键需求
表13-2列出了PM Tool架构师确定的对软件架构设计最为关键的需求子集。
表13-2 关键需求
|
非功能需求 |
功能需求 |
||
|
约束 |
运行期质量属性 |
开发期质量属性 |
|
|
|
跨平台运行 |
可扩展性 |
创建项目 |
|
|
易用性 |
查看项目信息 |
|
|
|
互操作性 |
添加项目任务 |
|
|
|
从HR系统导入资源发布通知 |
||
不难看出,通过类似这种表格的形式进行思维有利于“全面整理需求”;接下来,必须“分析约束性需求”,把有些遗漏的需求找出来,确保约束真正被满足。例如,“和其他系统交换数据”意味着PM Tool应当提供“从HR系统导入资源”的功能。
继续下去,应“确定关键功能需求”。例如,为什么“从HR系统导入资源”是对架构设计关键的需求呢?这是因为该功能涉及了PM Tool与外部系统接口的模块,而其他功能没有“覆盖”这一点,所以架构师应特别关注这个功能的设计。
最后,应“确定关键质量属性需求”。让人高兴的是,例子中清晰地反映了一个架构师必须了解的现实:很多对架构关键的质量属性都和包括商业层面的目标、期望和限制等在内的“商业需求”有直接关系。这也从一个侧面说明了本书建议架构师采用的架构设计方法,和软件架构师所承担的责任(为不同的涉众负责)相匹配的一面。