其他分享
首页 > 其他分享> > 软件架构设计-软件架构评估、 产品线、中间件

软件架构设计-软件架构评估、 产品线、中间件

作者:互联网

一、软件架构评估

软件架构评估是在对架构分析、评估的基础上,对架构策略的选取进行决策。它也可以灵活地运用于对软件架构进行评审等工作中。

二、软件架构评估的方法

业界已开发出多种软件架构评估的方法,按基于的技术手段来看,可以分为三类:基于调查问卷或检查表的方式、基于场景的方式和基于度量的方式。以属性作为架构评估的核心概念。

  1. 基于调查问卷或检查表的方式:该方式的关键是要设计好问卷或检查表,它充分利用系统相关人员的经验和知识,获得对架构的评估。其缺点是在很大程度上依赖于评估人员的主观推断。
  2. 基于场景的方式:基于场景的方式由 SEI 首先提出并应用在架构权衡分析法(Architecture Tradeoff Analysis Method,ATAM)和软件架构分析方法(Software Architecture Analysis Method,SAAM)中。它是通过分析软件架构对场景(也就是对系统的使用或修改活动)的支持程度,从而判断该架构对这一场景所代表的质量需求的满足程度。下节将对 ATAM 进行重点介绍。
  3. 基于度量的方式:它是建立在软件架构度量的基础上的,涉及三个基本活动,首先需要建立质量属性和度量之间的映射原则,即确定怎样从度量结果推出系统具有什么样的质量属性;然后从软件架构文档中获取度量信息;最后根据映射原则分析推导出系统的质量属性。它能提供更为客观和量化的质量评估,但它对评估人员及其使用的技术有较高
    的要求。ATAM 中也使用了度量的思想(度量效用)。

三、软件架构评估的质量属性

  1. 性能是指系统的响应能力,即要经过多长时间才能对某个事件做出响应,或者在某段时间内系统所能处理事件的个数。
  2. 可用性是系统能够正常运行的时间比例。(通过用两次故障之间的时间长度或出现故障时系统能够恢复的速度来表示)
  3. 可靠性是指软件系统在应用或错误面前,在意外或错误使用的情况下维持软件系统功能特性的基本能力。
  4. 健壮性是指在处理或环境中,系统能够承受压力或变更的能力。
  5. 安全性是指系统向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。
  6. 可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力。
  7. 可变性是指体系结构经扩充或变更成为新体系结构的能力。
  8. 易用性是衡量用户使用一个软件产品完成指定任务的难易程度。
  9. 可测试性是指软件发现故障并隔离、定位其故障的能力特性,以及在一定的时间和成本前提下,进行测试设计、测试执行的能力。
  10. 功能性是系统所能完成所期望工作的能力。
  11. 互操作性是指系统与外界或系统与系统之间的相互作用能力。

四、关键步骤

  1. 风险点: 架构设计中潜在的、存在问题的架构决策所带来的隐患。(业务逻辑不明确的地方)

  2. 非风险点:非隐患

  3. 敏感点: 为了实现某种特定的质量属性,一个或多个构件所具有的特征;(修改影响结果)

  4. 权衡点: 影响多个质量属性的特征,是多个质量属性的敏感点(如对两个质量属性特征产生相反的影响,一个好一个坏)(安全与性能)

五、软件架构评估SAAM

最初用于分析架构可修改性,后扩展到其他质量属性。

场景:问题描述/需求说明/架构描述
在这里插入图片描述
分析过程:场景开发/架构描述/单个场景评估/场景交互/总体评估。
在这里插入图片描述
先评估单个, 再评估多个相互作用。

六、架构权衡分析法ATAM

在SAAM的基础上发展起来的,主要针对性能、实用性、安全性和可修改性,在系统开发之前,对这些质量属性进行评价和这种。,ATAM 方法不但能够揭示架构如何满足特定的质量需求(例如,性能和可修改性),而且还提供了分析这些质量需求之间交互作用的方法。使用 ATAM 方法评价一个软件架构的目的是理解架构设计满足系统质量需求的结果。

场景包括:场景和需求收集、架 构视图和场景实现、属性模型构造和分析、属性模型折中
在这里插入图片描述
评估过程:
在这里插入图片描述

七、产品线及系统演化

在这里插入图片描述

软件产品线是指一组软件密集型系统,它们共享一个公共的、可管理的特性集,满足某个特定市场或任务的具体需要,是以规定的方式用公共的核心资产集成开发出来的。
包含的技术: 软件架构/领域工程/DSSA

  1. 特定领域软件架构(DSSA)

  2. 过程模型

    1. 双生命周期模型:
      在这里插入图片描述

    2. SEI模型

      在这里插入图片描述

    3. 三生命周期模型
      在这里插入图片描述

  3. 组织结构

在这里插入图片描述

  1. 建立方式

在这里插入图片描述

标签:产品线,质量,场景,架构,中间件,软件架构,评估,属性
来源: https://blog.csdn.net/qq_43692950/article/details/117854588