质量属性指的是影响质量的相关因素,是对质量的描述。下面我从6个常见的系统质量属性和一些其他质量属性进行系统的质量描述。
系统质量属性:
可用性:
在可用性方面,本系统可以相对应的任务如用户信息的传输,页面信息与数据库的传输,即可以完成特定任务和达到特定任务时具有高度的正确和完整度。在任务执行和信息传输时所用时间短和所占资源少。基于以上两个准则,让用户可以正常操作无障碍,使得系统具有较高的用户主管满意度。在应对可用性的战术中应用如心跳、异常等进行错误检测。
可修改性:
软件不是一成不变的,跟着用户需求,往往会对系统做出改变。为了应对这些改变,就要提高此信息系统的可修改性。所使用的可修改战术有三种:①减少由某个变更直接影响的模块的数量—局部化修改,②限制对局部化的模块的修改—防止连锁反应,③控制部署时间和成本—推迟绑定时间。在第一个战术的应用中,开发过程中尽量维持语义一致性,即提高组件的可重用性,减少对其他模块的依赖。如登陆模块中,它被其他模块所引用而对它的修改因为对其他模块的依赖少就不需要对其他模块进行过多修改,只需要修改登陆模块就可以了。第二个战术的实践,第一是实现信息隐藏,将变更隔离在一个模块内,防止变更扩散。我们可以对信息和类进行封装,把某个实体或系统的责任分解为更小的部分,并选择使哪些信息成为公有的,哪些信息成为私有的;可以通过指定的接口获得公有责任。
性能:
为了提高系统的性能,此系统要做到减少资源消耗和闭锁时间。我通过简化事件流和进行资源管理。如在系统的设计中,通过简化事件流来提高系统性能,我们要做一个电子设备信息登记和查询系统,管理员已经向系统中添加了一个设备的信息,当企业或普通用户再想添加这个设备,只需要提醒用户进行修改或者进行两个信息的合并来减少重复信息给系统性能带来的损失。
安全性:
对于安全性的设计,此系统首先通过用户身份的授权和验证,来保证不同用户拥有相应的权限。如企业和个人用户只能拥有对信息的查询、修改和添加的权限。修改和添加的过程需要进行审核。而管理员则拥有更高的权限,即删除的权限,还有对用户信息的管理。对于传输的信息进行加密,如密码加密,用户详细信息加密等。
可测试性:
为了提高可测试性,在设计和编码阶段,将接口与实现分离,即方便了功能的重写,也对单元测试有着积极的意义。还可以对系统编写,内部监视器,对系统的可维持状态,性能负载、容量、安全性或其他可通过接口访问的信息进行监视,当监视状态被激活时可以记录事件。如此系统中,我们可以记录访问数量,某时间节点的同时在线的用户数量,页面响应时间等。
易用性:
用户在系统中想要做的是完成用户心中的访问目的,而到达这个目的的难易程度对用户的使用的直观感受有很大的影响。易用性是指用户是否方便使用。方便使用就设计到人机交互的过程,既做到更加的人性化。在系统实现时,可以进行错误避免及错误处理的设计,如当用户输入某一项信息时,例如用户注册时,当用户输入非法字符时,对用户进行错误提醒和提交的限制。来避免因为非法输入带来的更多的错误。还可以让系统“主动”进行的方式提高易用性,即维持任务的一个模型的战术。如用户搜索一个型号的电子设备,我们可以按照默认浏览量的多少或关注度的多少来进行排序,保证系统显示的信息,越靠前越有可能是用户想要要的,从而方便了用户的查找过程。
其他质量属性:
可移植性:
因为此系统是一个网页信息系统,所以在网页的设计中,要满足的是对不同操作系统和浏览器的兼容,还有对硬件的兼容,硬件兼容中最大的问题就是在不同分辨率的显示器没有较大差异。如果没有对浏览器的兼容进行测试,网站往往在实际的使用中会出现各种问题。在构架中对与平台相关问题的封装常采用一个可移植层,可移植层是信息隐藏原则运用的结果,它是一组软件服务的集合,使上层应用软件与其环境具有抽象接口,并且在移植时接口不变。
可重用性:
提高可重用性可以提高我们系统开发的效率,可重用性与构架密切相关,它还可以看作是可修改性或可集成性的特例。这相当于一个硬币的两面:建立的系统可修改导致了系统可重用。构架的各个组件就是重用的单位,一个组件的可重用程度依赖于它与其它组件的耦合程度。
可集成性:
可集成性是使独立开发的系统组件能够协同运行的能力。集成性依赖于:
l 组件的外部复杂性
l 组件之间的交互机制和协议
l 组件功能划分的清晰程度
l 组件接口的定义是否完整、合理
可集成性表明了一个系统内个组件之间相互协作的能力,而互操作性衡量的则是一个系统与另一个系统的协作能力。