前端开发入门到精通的在线学习网站

网站首页 > 资源文章 正文

软件架构质量属性之可用性(软件质量可用如下特性来评价)

qiguaw 2024-11-04 13:29:18 资源文章 23 ℃ 0 评论

软件架构的质量属性分为 6 种:可用性、可修改性、性能、安全性、可测试性、易用性。其他的质量属性一般可纳入这几个属性中。

系统可用性是指在给定的时间间隔内,计算机系统处在可工作状态的时间比例。考察时间为指定瞬间,则称瞬时可用性;考察时间为指定时段,则称时段可用性;考察时间为连续使用期间的任一时刻,则称固有可用性。它是衡量设备在投入使用后实际使用的效能,是设备或系统的可靠性、可维护性和维护支持性的综合特性。

采用质量属性场景作为一种描述质量属性需求的规范,它由6个部分组成(刺激源、刺激、环境、制品、响应、响应度量)

刺激源:生成该刺激的实体(人、计算机系统或其他激励器);

刺激:刺激到达系统时可能产生的影响(即需要考虑和关注的情况);

环境:该刺激在某条件内发生。如系统可能正处于过载情况;

制品:系统中受刺激的部分(某个制品被刺激);

响应:刺激到达后所采取的行动;

响应度量:当响应发生时,应能够以某种方式对应其度量,用于对是否满足需求的测试。

可用性及其实现战术

(1)可用性的描述。

可用性一般场景表示。

对一般场景进行具体化可以得到可用性具体场景。

(2)可用性战术。可用性战术的目标是阻止错误发展成故障,至少能够把错误的影响限制在一定范围内,从而使修复成为可能。战术分为:错误检测、错误恢复、错误预防。

① 错误检测

命令/响应:一个构件发出一个命令,并希望在预定义的时间内收到一个来自审查构件的响应,例如远程错误的检测。

心跳(计时器):一个构件定期发出一个心跳消息,另一个构件收听到消息,如果未收到心跳消息,则假定构件失败,并通知错误纠正构件。

异常:当出现异常时,异常处理程序开发执行。

② 错误恢复

表决:通过冗余构件(或处理器)与表决器连接,构件按相同的输入及算法计算输出值交给表决器,由表决器按表决算法(如多数规则)确定是否有构件出错,表决通常用在控制系统中。

主动冗余(热重启、热备份):所有的冗余构件都以并行的方式对事件做出响应。它们都处在相同的状态,但仅使用一个构件的响应,丢弃其余构件的响应。错误发生时通过切换的方式使用另一个构件的响应。

被动冗余(暧重启/双冗余/三冗余):一个构件(主构件)对事件做出响应,并通知其他构件(备用的)必须进行的状态更新(同步)。当错误发生时,备用构件从最新同步点接替主构件的工作。

备件:备件是计算平台配置用于更换各种不同的故障构件。

状态再同步:主动和被动冗余战术要求所恢复的构件在重新提供服务前更新其状态。更新方法取决于可以承受的停机时间、更新的规模及更新的内容多少。

检查点/回滚:检查点就是使状态一致的同步点,它或者是定期进行,或者是对具体事件做出响应。当在两检查点之间发生故障时,则以这个一致状态的检查点(有快照)和之后发生的事务日志来恢复系统(数据库中常使用)。

③ 错误预防

从服务中删除:如删除进程再重新启动,以防止内存泄露导致故障的发生。

事务:使用事务来保证数据的一致性,即几个相关密切的步骤,要么全成功,要么都不成功。

进程监视器:通过监视进程来处理进程的错误。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表