大公司网站建设建网站漳州seo网站快速排名
web/
2026/1/12 10:20:47/
文章来源:
大公司网站建设建网站,漳州seo网站快速排名,简单网站系统,新冠三阳最新消息系列文章目录
系统架构设计高级技能 软件架构概念、架构风格、ABSD、架构复用、DSSA#xff08;一#xff09;【系统架构设计师】 系统架构设计高级技能 系统质量属性与架构评估#xff08;二#xff09;【系统架构设计师】 系统架构设计高级技能 软件可靠性分析与设计…系列文章目录
系统架构设计高级技能 · 软件架构概念、架构风格、ABSD、架构复用、DSSA一【系统架构设计师】 系统架构设计高级技能 · 系统质量属性与架构评估二【系统架构设计师】 系统架构设计高级技能 · 软件可靠性分析与设计三【系统架构设计师】
现在的一切都是为将来的梦想编织翅膀让梦想在现实中展翅高飞。 Now everything is for the future of dream weaving wings, let the dream fly in reality. 系统架构设计 · 系统质量属性与架构评估二 系列文章目录一、软件系统质量属性的概念★★★1.1 开发期的质量属性1.2 运行期的质量属性 二、面向架构评估的质量属性2.1 性能2.3 可用性2.4 安全性2.3 可修改性2.4 易用性2.5 可测试性2.6 可靠性2.7 功能性2.8 可变性2.9 互操作性 三、质量属性场景描述四、系统架构评估4.1 系统架构评估的重要概念4.1.1敏感点、权衡点、风险点、非风险点4.1.2 风险承担者或者相关利益人4.1.3 场景 4.2 系统架构评估方法4.2.1 基于场景 - 软件架构分析法SAAM4.2.2 基于场景 - 架构权衡分析法ATAM4.2.3 质量属性效用树 一、软件系统质量属性的概念★★★
1.1 开发期的质量属性
开发期的质量属性分为以下子属性
属性说明易理解性指设计开发人员理解的难易程度。可扩展性软件因适应新需求变化而增加新功能的能力也称为灵活性。可重用性指重用软件系统或某一部分的难易程度。可测试性当软件测试以证明其满足需求规范的难易程度。可维护性当需要修改缺陷、增加功能、提高质量属性时识别修改点并实施修改的难易程度。可移植性将软件系统从一个运行环境转移到另一个不同的运行环境的难易程度。
1.2 运行期的质量属性
运行期的质量属性分为以下子属性
属性说明性能软件系统及时提供相应的服务能力如速度、吞吐量和容量等。安全性软件系统同时兼顾向合法用户提供服务以及组织非授权使用的能力 。可伸缩性当用户数和数据量增加时软件系统维持高服务质量的能力。互操作性软件系统与其他系统交换数据和相互调用服务的难易程度。可靠性软件系统在一定时间内持续无故障运行的能力。可用性系统在一定时间内正常工作的时间所占比例。鲁棒性软件系统在非正常情况用户进行非法操作、相关软硬件系统发生故障下仍正常运行的能力也称健壮性或容错性。
二、面向架构评估的质量属性
在架构评估过程中评估人员所关注的是系统的质量属性。
2.1 性能
性能performance是指系统的响应能力即要经过多长时间才能对某个事件做出响应或者在某段时间内系统所能处理的事件的个数。
例如
同时支持1000并发响应时间小于1s显示分辨率达到4K
提升性能的策略性能战术可以从以下几个方面考虑
资源需求 ①提高计算效率、②减少计算开销、③管理减少处理事件数量事件率、④控制采样频率控制资源的使用资源管理 ①引入并发机制、②维持多个副本、③增加可用资源资源仲裁 资源调度策略①先进先出、②固定优先级、③动态优先级、④静态调式
2.3 可用性
可用性availability是系统能够正常运行的时间比例。经常用两次故障之间的时间长度或在出现故障时系统能够恢复正常的速度来表示。
例如
主服务器故障1分钟内切换至备用服务器系统故障1小时内修复系统支持7×24小时工作
提升可用性的策略可用性战术可以从以下几个方面考虑
错误检测 ①命令/响应【Ping/Echo】、②心跳、③异常错误恢复 ①表决、②冗余【主动/被动】、③备份【重新同步、内测、检查点/回滚】错误避免 ①进程监视器、②事务、③从服务器删除【服务下线】
2.4 安全性
安全性security是指系统在向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。安全性又可划分为机密性、完整性、不可否认性及可控性等特性。
例如
可抵御SQL注入攻击对计算机的操作都有完整记录日志审计追踪用户信息数据库授权必须保证99.9%可用
提升安全性的策略安全性战术可以从以下几个方面考虑
抵抗攻击 ①用户身份验证、②用户授权、③维护数据机密性和完整性、④限制暴露、⑤限制访问检测攻击 ①入侵系统检测从攻击中恢复 ①识别攻击者审计追踪、②恢复状态冗余【与可用性重叠】
2.3 可修改性
可修改性modifiability是指能够快速地以较高的性能价格比对系统进行变更的能力。通常以某些具体的变更为基准通过考察这些变更的代价衡量可修改性。
例如
更改系统报表模块必须在2人周内完成对Web界面风格进行修改修改必须在4人月内完成
可修改性分为四个子属性 可维护性局部修复使故障对架构的负面影响最小化。 可扩展性因松散的耦合更易实现新特性/功能不影响架构。 结构重组不影响主体进行的灵活配置。 可移植性适用于多样的环境硬件平台、语言、操作系统等。
提升性能的策略可修改行战术可以从以下几个方面考虑
局部化修改 ①高内聚低耦合、②预测变更、③使模块通用、④泛化模块、⑤维持语义的一致性、⑥限制可能的选择、⑦抽象通用服务防止连锁反应 ①隐藏信息、②维持现有接口、③限制通信路径、④使用仲裁者推迟绑定时间 ①运行时注册、②配置文件、③多态、④组件更换、⑤遵守已定义的协议
2.4 易用性
易用性关注的是对用户来说完成某个期望任务的容易程度和系统所提供的用户支持的种类。
例如
界面友好新用户学习使用系统时间不超过2小时
2.5 可测试性
软件可测试性是指通过测试揭示软件缺陷的容易程度。
例如
提供远程调试接口支持远程调试
2.6 可靠性
分为两个子属性 容错性出错后仍能保证系统争取运行且自行修正错误。 健壮性错误不对系统产生影响按既定程序忽略错误。
2.7 功能性
需求的满足程度。
2.8 可变性
总体架构可变。
2.9 互操作性
通过可视化或接口方式提供更好的交互操作体验。
三、质量属性场景描述
质量属性场景是一种面向特定质量属性的需求由刺激源、刺激、环境、制品、响应、响应度量组成。 1刺激源Source某个生成该刺激源的实体人、计算机系统或者任何其他刺激器。 2刺激Stimulus指当刺激到达系统时需要考虑的条件。 3环境Environment指该刺激在某些条件内发生。当激励发生时系统可能处于过载、运行或者其他情况。 4制品Artifact某个制品被激励可能是整个系统也可能是系统的一部分。 5响应Response指在激励到达后所采取的行动。 6响应度量Measurement当响应发生时应当能够以某种方式对其进行度量以对需求进行测试。
四、系统架构评估
架构评估的基准是架构质量属性。
4.1 系统架构评估的重要概念
4.1.1敏感点、权衡点、风险点、非风险点
敏感点Sensitivity Point 是一个或多个构件和/或构件之间的关系的特性。
权衡点Tradeoff Point 是影响多个质量属性的特性是多个质量属性的敏感点。
风险点Risk Point 是指架构设计中潜在的、存在问题的架构决策所带来的隐患。
非风险点Non-Risk Point 是指不会带来隐患一般以“XXX要求是可以实现或接受的”方式表达。
例如
对交易请求处理时间的要求将影响系统的数据传输协议和处理过程的设计敏感点假设每秒中用户交易请求的数量是10个处理请求的时间为30毫秒则“在1秒内完成用户的交易请求”这一要求是可以实现的 非风险点目前对系统信用卡支付业务逻辑的描述尚未达成共识这可能导致部分业务功能模块的重复影响系统的可修改性 风险点更改加密的级别将对安全性和性能产生影响 权衡点
4.1.2 风险承担者或者相关利益人
影响体系结构或被体系结构影响的群体。
4.1.3 场景
确定架构质量评估目标的交互机制一般采用触发机制刺激、环境和影响三方面来考虑。
4.2 系统架构评估方法
架构的评估方法通常分为3类 基于调查问卷或检查表的评估方法 是指组织相关人员进行评估这种方式最简单易行但是主观性强。 基于度量的评估方法 强调量化指标最客观但是这种方式实施难度大因为需要评估者对系统非常熟悉不然很难量化清楚各项指标。 基于场景的评估方法 筛选出系统的关键场景根据系统在不同场景中的表现进行评估这种方式客观程度介于2者之间这也是目前较为流行的结构评估方法。
基于场景的方式主要有三种前2种方式用得比较多
软件架构分析法SAAMSoftware Architecture Analysis Method架构权衡分析法ATAMArchitecture Tradeoff Analysis Method成本效益分析法CBAMthe Cost Benefit Analysis Method
4.2.1 基于场景 - 软件架构分析法SAAM
SAAM最初用于分析架构可修改性后扩展到其它质量属性。 SAAM分析评估架构的过程包括5个步骤 如下图 1场景开发 2架构描述 3单个场景评估 4场景交互评估 5整体评估
图4_1 SAAM分析评估过程 4.2.2 基于场景 - 架构权衡分析法ATAM
架构权衡分析法ATAMArchitecture Tradeoff Analysis Method是 在SAAM上发展而来。核心是结合质量属性效用树对系统进行评价 确定风险点、敏感点、权衡点并对系统架构做出决策和折中。整个评估过程 强调以质量属性作为评估核心主要针对性能、实用性、安全性和可修改性在系统开发之前对这些质量属性进行评价和折中。
ATAM分成4个阶段如下图 1场景和需求收集 2架构视图和场景实现 3质量模型构造和分析 4质量模型折中
图4_2 ATAM分析评估过程 4.2.3 质量属性效用树
质量属性效用树识别质量属性并排序主要包含性能、可用性、可修改性、安全性四个方面。
性能性能延时将用户数据库存储延迟到了最小值300ms提供了实时的视频图像交易吞吐量使认证服务器的平均吞吐量最大化。
可修改性新增产品目录商业产品修改已小于20人月的工作量添加CORBA中间件以小于4人周的工作量更改web界面。
可用性硬件故障若站点A断电要求在3秒内将任务重定向到站点B若磁盘出现故障要求在5分钟内重新启动要在1-5分钟之内检测并恢复网络故障商业软件故障。
安全性数据机密性信用卡交易在99.999%的时间内是安全的客户数据库z认证在99.999%的时间内能正常工作数据完整性。
质量属性效用树示例图如下
图4_3 质量属性效用树
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/89496.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!