软件体系结构评估方式主要有以下三种:

1.基于调查问卷或检查表的评估方式

调查问卷是一系列可以应用到各种体系结构评估的相关问题,其中有些问题可能涉及到体系结构的设计决策;有些问题涉及到体系结构的文档,有的问题针对体系结构描述本身的细节问题。检查表中也包含一系列比调查问卷更细节和具体的问题,它们更趋向于考察某些关心的质量属性。

这一评估方式比较自由灵活,可评估多种质量属性,也可以在软件体系结构设计的多个阶段进行。但是由于评估的结果很大程度上来自评估人员的主观推断,因此不同的评估人员可能会产生不同甚至截然相反的结果,而且评估人员对领域的熟悉程度、是否具有丰富的相关经验也成为评估结果是否正确的重要因素。

尽管基于调查问卷与检查表的评估方式相对比较主观,但由于系统相关的人员的经验和知识是评估软件体系结构的重要信息来源,因而它仍然是进行软件体系结构评估的重要途径之一。

2.基于场景的评估方式

基于场景的方式由SEI首先提出并应用在体系结构权衡分析方法(ATAM)和软件体系结构分析方法(SAAM)中。这种软件体系结构评估方式分析软件体系结构对场景也就是对系统的使用或修改活动的支持程度,从而判断该体系结构对这一场景所代表的质量需求的满足程度。例如,用一系列对软件的修改来反映易修改性方面的需求,用一系列攻击性操作来代表安全性方面的需求等。

3.基于度量的评估方式

度量是指为软件产品的某一属性所赋予的数值,如代码行数、方法调用层数、构件个数等。传统的度量研究主要针对代码,但近年来也出现了一些针对高层设计的度量,软件体系结构度量即是其中之一。代码度量和代码质量之间存在着重要的联系,类似地,软件体系结构度量应该也能够作为评判质量的重要的依据。

赫尔辛基大学提出的基于模式挖掘的面向对象软件体系结构度量技术、Karlskrona和Ronneby提出的基于面向对象度量的软件体系结构可维护性评估、西弗吉尼亚大学提出的软件体系结构度量方法等都在这方面进行了探索,提出了一些可操作的具体方案。我们把这类评估方式称作基于度量的评估方式。

笔记-信息系统开发基础-架构设计-软件体系结构评估方式相关推荐

  1. 笔记-信息系统开发基础-架构设计-软件架构主要职责

    软件架构主要职责 (1)确认需求在项目开发过程中,架构师是在需求规格说明书完成后介入的,需求规格说明书必须得到架构师的认可.架构师需要和分析人员反复交流,以保证自己完整并准确地理解用户需求. (2)系 ...

  2. 笔记-信息系统开发基础-架构设计-软件架构风格

    参考<信息系统项目管理师教材(第3版)>P45,软件架构风格,Garlan和Shaw对通用软件架构风格进行了分类,他们将软件架构分为数据流风格.调用/返回风格.独立构件风格.虚拟机风格和仓 ...

  3. 笔记-信息系统开发基础-架构设计-软件系统架构视图

    软件系统架构视图是从特定的视角出发,专注于该视角系统的结构,模块划分,基本组件职责和主要的控制流(协作接口). Kruchten(克鲁奇顿)在1995年提出了一个"4+1"的视图模 ...

  4. 笔记-信息系统开发基础-架构设计-分布式应用的架构设计问题

    针对目前广泛使用的分布式应用,其软件架构设计需要考虑如下问题. (1)数据库的选择问题:目前主流的数据库系统是关系数据库. (2)用户界面选择问题:HTML/HTTP (S)协议是实现 Interne ...

  5. 笔记-信息系统开发基础-信息系统生命周期

    1. 生命周期阶的五阶段划分 为了有效地进行系统的开发和管理,根据系统生命周期的概念,一般可以将信息系统的开发分成5个阶段,即总体规划阶段.系统分析阶段.系统设计阶段.系统实施阶段.系统运行和评价阶段 ...

  6. 笔记-信息系统开发基础-信息系统开发方法

    信息系统开发方法知识,信息系统开发方法分为: 1.结构化开发方法 2.面向对象开发方法 3.原型化开发方法 4.面向服务的方法 1. 结构化开发方法 (Structured method) Struc ...

  7. 笔记-信息系统开发基础-信息系统开发模型

    信息系统项目的生命周期模型主要包括有瀑布模型.V模型.喷泉模型.螺旋模型.统一过程,增量.迭代模型. 1. 瀑布模型 瀑布模型是一个经典的软件生命周期模型,一般将软件开发分为可行性分析(计划).需求分 ...

  8. 笔记-信息系统开发基础-软件测试-软件测试的类型

    本题考查软件测试的类型相关知识,请参考<信息系统项目管理师教程>第3版P50 (1)单元测试 单元测试也称为模块测试,测试的对象是可独立编译或汇编的程序模块.软件构件或00软件中的类(统称 ...

  9. 笔记-信息系统开发基础-软件工程-评审与审计

    软件质量指的是软件特性的总和,是软件满足用户需求的能力,即遵从用户需求,达到用户满意. 软件质量包括"内部质量""外部质量"和"使用质量"三 ...

最新文章

  1. Linux那些事儿 之 戏说USB(3)我是一棵树
  2. Swift中出现“no such module cocoa”的错误
  3. tcl把文本产生html,TCL脚本数据文件格式(译文)
  4. 泛型与操作符重载杂谈
  5. 程序员面试系列——选择排序
  6. Python入门学习---第四天
  7. Express中间件工作原理介绍
  8. 【一步解决】eclipse jee左边的项目栏不见了
  9. SpringCloud Consul自定义服务注册
  10. linux用户空间注册按键事件,linux下获取按键响应事件
  11. c语言去除图像斑点,武汉理工-图像检测与处理技术-实验报告.doc
  12. Docker 入门使用 (二)
  13. 移动商城html 源码,基于weui的移动商城html5模板
  14. 当技术遇上管理,Linaro 与 CSDN 掌舵人对话开源现状及下一代技术趋势
  15. URAL 1934 Black Spot --- 最短的简单修改
  16. I²C、SMBus、PMBus关系
  17. 韩顺平Linux操作系统视频教程
  18. 帝国CMS7.5仿可可礼物网漂亮大气淘宝客网站源码 带手机版+火车头采集
  19. 人体神经网络分布图高清,周围神经组成及分布
  20. python3中26个英文字母排序_26个英文字母的排序是怎样排的?

热门文章

  1. Visual Studio 2013或2015工程属性中包含目录和库目录的添加方法,附加依赖项,相对路径
  2. 0点mysql_【转载】MySQL查询当天0点,昨天时间
  3. mysql8安装错误_Windows安装MySQL8.0.16 的步骤及出现错误问题解决方法
  4. 独占设备的分配和回收模拟_系统设计硬核知识(4)——操作系统的设备管理...
  5. Java获取近七天的数据条数,及页面实现折线图(附前后端代码)
  6. cas 注销不关闭浏览器异常_上海公司经营异常注销麻烦吗
  7. C++ WMI获取usb deviceID数据不全的问题 Win32_USBHub
  8. python的回溯信息_基于Python的回溯算法
  9. sql计算留存_链家面试题:如何分析留存率?
  10. lua如何判断是否支持cookie_我们应该如何判断机油是否变质?