软件架构评估
权衡点: 多个质量属性的敏感点,在多个质量属性之间取平衡 敏感点: 一个或者多个构件(构件之间的关系)的特性 风险点: 是指架构设计中潜在的、存在问题的架构决策所带来的隐患 非风险点:
架构评估方法
- 基于调查问卷(检查表)的方式
- 基于度量的方式
- 基于场景的方式(刺激源、++刺激++、制品、++环境++、++响应++、响应度量)
基于场景的评估方法
- 软件架构分析法 SAAM 最关注可修改性 、后扩充到可移植性、可扩充性
- 架构权衡分析法 ATAM 主要针对性能、实用性、安全性和可修改性。在系统开发之前,对这些质量属性进行评价和这种
- 成本效益分析法 CBAM
质量效应树
软件复用
需求分析文档 设计过程 设计文档 程序代码 测试用例 领域知识 复用维度:
- 水平复用 不分行业领域 通用
- 垂直复用:分行业领域,专用
构架复用
- 检索与提取构件 -- 基于关键字检索 -- 可免检索 -- 超文本检索
- 理解与评价构架(遵循标准)
- 修改构件
- 组装构件
中间件优点
-
面向对象
-
业务的分隔和包容性
-
设计与实现隔离
-
隔离复杂度系统资源
-
符合标准的交互模式
-
软件复用
-
提供对应用构件的管理 中间件 构件标准
-
COBRA
-
J2EE[EJB] -- 会话Bean 实现业务逻辑 -- 实体Bean 实现O/R映射 -- 消息驱动Bean 处理并发与异常访问
-
DNA2000