软件系统架构评估⽅法ATAM介绍
越来越多的⼈认识到,软件系统架构的选择对于软件系统开发的成败⾄关重要,那么问题来了,软件架构各种风格各种⽅法,光分层架构⽅法就很多,⼜是CS、⼜是BS,现在还有AS,⼜是两层、三层甚⾄多层的,还有各种混合,⾃⼰开发中的这个软件系统,如何评估哪个软件系统架构⽅法更合适呢?
延吉特色美食
CMU/SEI(卡梅隆⼤学软件⼯程协会)提出了⼀套架构权衡分析⽅法,Architachture Tradeoff Analysis Method,简称ATAM。
传统软件架构评估⽅法按评估形式,⼀般分为三种,。⼀是调查问卷法,即直接请对系统架构了解的专家学者对系统架构做出主观评估。⼆是度量法,即将软件系统架构完全量化,通过⼀些客观的数字指标来评估架构的好坏。三是场景评估法,即挑选出重要的系统使⽤场景(⼀系列有序的使⽤或修改系统的步骤,即系统涉众如何使⽤系统的 ),根据不同场景中各架构的表现分别作评估,ATAM属于场景评估法,主客观程度介于前⾯两种⽅法之间。
ATAM具体如何做呢?
搞清楚这个问题之前,我们先来了解三个概念。
科学家英文
⼀、软件质量属性
公园的英文
软件质量属性说的是我们评估软件架构,到底评估它的什么特性,⼀般有如下⼏个,
性能:指系统的响应能⼒,即系统执⾏某个特定事务所需要的时间。
可靠性:即在意外或错误使⽤的情况下,维持软件系统的功能特性的能⼒。⼀般包括容错和健壮性两个⽅⾯的能⼒。
可⽤性:是系统能够正常运⾏的时间⽐例,和可靠性相⽐,可⽤性除了体现出错概率外,还体现出错后恢复正常的速度上。
怎么锻炼手臂力量
安全性:是指阻⽌⾮授权⽤户使⽤的企图或拒绝服务的能⼒。⼜可分为机密性、完整性、不可否认性及可控性。
可修改性:是指能够快速地以较⾼的性价⽐对系统进⾏变更的能⼒。包括可维护性,可扩展性,结构重组和可移植性。
触摸屏是什么
⼆、敏感点和权衡点
敏感点和权衡点都是在软件架构中所做的关键决策,不同的是,敏感点决策只影响⼀个软件质量属性,⽽权衡点则同时影响多个质量属性,有时不同属性间还会互相冲突,⽐如选择不同的加密⽅式同时影响性能和安全性,所以需要权衡。
三、风险承担者
风险承担者是指那些关⼼软件架构,个⼈利益受软件架构好坏影响的⼈,在项⽬管理领域也称为项⽬⼲系⼈或涉众。这照些⼈整体上⼜可以分为系统的⽣产者和系统的消费者。⽣产者包括架构师,开发⼈员,维护⼈员,测试⼈员等;消费者包括客户,最终⽤户等。
检查妇科病需要做哪些项目
ATAM通过理解体系结构⽅法来分析体系结构,评估过程分9个步骤
1- 描述ATAM⽅法
即评估⼩组负责⼈向参加会议的风险承担者介绍ATAM评估⽅法,让⼤家清楚接下来要做什么,每个⼈的⾓⾊和任务。
2- 描述业务动机
项⽬经理从业务⾓度介绍系统的概况,⼀般包括业务环境,背景,业务约束条件,技术约束,质量属性需求等内容。
3- 描述体系结构
肝病的早期治疗⾸席设计师或设计⼩组对体系结构进⾏详略适当的介绍。包括技术约束,与本统交互的其他系统,⽤以满⾜质量属性要求的体系结构⽅法(功能,模块,进程,硬件)。
4- 确定体系结构⽅法
闺蜜结婚由设计师确定体系结构⽅法,由分析⼩组捕获,但不进⾏分析。
5- ⽣成质量属性效⽤树
评估⼩组,设计⼩组,管理⼈员和客户代表⼀起确定系统最重要的质量属性⽬标,并对这些⽬标设置优先级和细化。6- 分析体系结构⽅法
7- 讨论分级场景
8- 分析体系结构⽅法
9- 描述评估结果