软件质量属性
格里芬阀门工
这个作者很懒,什么都没留下…
展开
-
软件质量属性:易用性
定义:指用户使用软件的难度的高低,主要考虑用户能否更快得上手一款软件,降低用户的错误操作对系统的影响,用户使用的舒适度等提高易用性有两个大方向:运行时策略和设计时策略运行时策略的具体实现有:1.系统猜测用户想要完成的任务,如输入法和搜素引擎的联想功能2.系统给予用户实时反馈,如进度条等,降低用户等待的焦虑3.系统给用户提供一致的体验,如鼠标灵敏度的设置4.支持撤销操作,降低误操作的影响,比如回收站功能,或是各种编辑软件的撤销功能设计时策略的具体实现有:1.把用户界面和系统其他原创 2020-06-29 08:40:16 · 968 阅读 · 0 评论 -
软件质量属性:可测试性
测试的目的:尽可能多地发现软件中存在的BUG,不符合需求的部分或者是未实现的需求测试的意义:尽可能确保软件正式上线运行后不出现问题,减少潜在的风险和损失可测试性定义:指软件测试的难易度和效率,如果测试结果越直观,测试效率越高,可测试性就越好。因为软件测试主要分为黑盒测试和白盒测试,前者只关注输入和输出是否对因,后者要关心内部逻辑是否正确,所以提高可测试性的思路也围绕着这两种方法进行对于黑盒测试,主要策略有:1.记录/回放:用自动化/半自动化的方式测试,测试工具来模拟人与系统的交互2.把接原创 2020-06-29 08:34:18 · 577 阅读 · 0 评论 -
软件质量属性:安全性
定义:在确保用户正常使用系统的情况下,软件抵御攻击的能力。主要的关注方面有:不可否认性,私密性,完整性,保证性,可用性和审计提高安全性的方法主要分为三大类:抵抗攻击,检测攻击,从攻击中恢复一、抵抗攻击:防止攻击队系统和数据造成影响乃至破坏1.用户的证实:通过账号密码,指纹等识别手段,确定现在正在访问系统的人是真正的用户2.用户的授权:管理用户权限,确认用户的操作在自己的权限内3.维持数据的保密性:数据传输时进行加密4.维持数据的完整性:利用MD5码等校验文件是否未修改。MD5码是原创 2020-06-29 08:16:06 · 1395 阅读 · 0 评论 -
软件质量属性:可修改性
修改顾名思义就是修改软件的内容,可修改性,就是通过修改花费的时间,金钱,人力等数据衡量修改是否足够简单方便低成本。可修改性越高,每次修改所花费的人力物力成本也就越低提高方法:主要分为两大类:1.限制修改范围;2.延迟绑定时间一、限制修改范围:让修改所影响的软件范围尽可能小,具体方法有:1.高内聚低耦合,让软件模块化,每次只修改一个模块。通过尽可能地借助中间件可以达到这个效果2.预先考虑到可能的修改3.让模块通用,这样修改时不需要修改许多模块,只需要修改通用的模块4.隐藏信息,借助面向原创 2020-06-28 16:53:11 · 1622 阅读 · 0 评论 -
软件质量属性:性能
定义:系统的性能是指系统响应事件的速度。性能主要与事件数量和事件到达的模式有关。其中事件到达的模式主要是指事件到达的周期性规律和变化提升性能也有三个大的方向:资源的需求,资源的管理和资源的仲裁一、资源的需求:从需求入手,改变处理这些事件所需要的资源总量具体方法有:1.提高效率:采用更高效合适的算法,减少单个事件占用的资源数2.减少要处理的数据总量:只抽取一部分事件进行处理,防止系统资源被耗尽3.限制执行时间:有的事件的处理结果会随着处理时间变多和越来越精确,但为了减少资源占用量.原创 2020-06-28 16:51:14 · 490 阅读 · 0 评论 -
软件质量属性:可用性
定义:用户使用系统时,系统可用的概率(预先告示的停机维护不算做不可用的情况)大白话就是,系统故障崩溃概率越小,可用性越高提高可用性有三个大的方向:故障检测,故障恢复和故障避免一、故障检测:检测整个系统是否有故障,如果检测到了故障则及时通知厂商的运维人员。具体方法有:1.ping/echo。监控组件不定时地向被监控组件发送消息并等待回应,如果能够收到回应则视为正常,如果收不到则视被监控组件为故障。2.心跳:被监控组件主动地,周期性地向监控组件发送消息,如果监控组件连续一段特定的时间没收到消原创 2020-06-28 16:43:40 · 2415 阅读 · 0 评论