我要作的是一个基于SSH的门票售卖系统,在系统中常见的质量属性有:可用性、可修改性、性能、安全性、易用性。安全
可用性方面:性能
可用性是指系统正常运行时间的比例,是经过两次故障之间的时间长度或在系统崩溃状况下可以恢复正常运行的速度来衡量的。实现可用性的战术分为三类:错误检测(用来检测故障的健康监视)、错误恢复(检测到故障时的恢复)、错误预防(阻止错误演变为故障)。用于检测错误的3个战术是: 信号/响应、心跳、异常。用于错误恢复的战术有7种:表决、主动冗余、被动冗余、备件、shadow操做、状态再同步、检查点/回滚。用于错误预防的战术有3种:从服务中删除、事务、进程监视器。学习
修改用户密码方面,当用户建立完帐号时,会建立初始密码,但以后可能认为密码不安全,从而想要修改密码,当修改密码时,须要确认密码,当密码和确认的密码不同是时,则不能完成对密码的修改。因此当用户输入的密码和第二个确认密码不一样时,则马上返回修改密码界面进行从新修改,而不会直接把第一个密码保存起来;还有当买票时,剩余的票不足够了用户所买的状况;管理员删除用户时,若是用户有购票信息,则先删除全部该用户的购票信息,在删除用户信息。测试
实例一spa
刺激源设计 |
刺激接口 |
制品进程 |
环境事件 |
响应事务 |
响应度量 |
用户 |
输入的密码和确认密码不同 |
系统 |
正常状态 |
从新返回修改密码界面。 |
1s以内 |
实例二
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
用户 |
须要购买的票比剩余的票多 |
系统 |
正常状态 |
返回到票的数量显示界面,而且提示出票的数量不足 |
在1s以内 |
实例三
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
管理员 |
删除用户信息时,该用户有购票记录。 |
系统 |
正常状态 |
先删除他的购票记录,以后再删除用户信息 |
在1s以内 |
可修改性方面:
关注的两个方面:两个关注点:能够修改什么?什么时候以及谁进行修改。可修改性的战术有:局部化修改(减小由某个变动直接影响的模块的数量);防止连锁反应(限制对局部化的模块的修改) ;推迟绑定时间(控制部署时间和成本)。
用户或着管理员修改本身密码方面,在不影响别人密码的前提下,在5s左右完成;设计人员修改用户界面用户购买的票的详细信息的界面,在不影响其余功能的前提下修改代码,要求在4小时内完成代码修改和测试,不产生有反作用的变;最终用户想要增长票的属性,在不影响其余功能的前提下,修改代码并进行测试。
实例一
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
管理员或用户 |
修改密码 |
系统 |
正常状态 |
查找改用户或管理员的密码,而且修改为新的密码 |
在5s以内 |
实例二
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
开发人员 |
但愿修改用户购票详情界面 |
系统 |
设计时 |
修改并验证后,没有反作用的影响 |
在4小时以内 |
实例三
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
最终用户 |
增长票的种类 |
系统 |
设计时 |
修改并验证后,没有反作用的影响 |
在3小时以内 |
性能方面:
指系统的响应能力----即对外部刺激(事件)作出反应时所须要的时间或在某段时间内所处理的事件个数。
20人同时登录进行买票等操做,查看系统是否响应正常。
实例一
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
20人 |
试图同时登录系统 |
系统 |
正常运行 |
用户的操做被处理 |
平均响应时间5秒 |
24小时每隔一个小时随机登录一次,参看系统是否登录成功。
实例二
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
用户 |
没个一个小时随机登录一次系统 |
系统 |
正常运行 |
用户的操做正常被处理 |
平均响应时间3秒 |
安全性方面:
安全性是衡量系统在向合法用户正常提供服务的状况下,阻止非受权使用的能力。
在售票管理系统中。管理员不能修改用户的基本信息以及用户的购票信息;用户不能查看别人的购票信息以及进行操做。
实例一:
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
管理员 |
修改用户信息或者购票信息 |
系统 |
正常运行 |
操做被禁止 |
100%禁止操做 |
实例二:
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
用户 |
查看其余用户信息 |
系统 |
正常运行 |
操做被禁止 |
100%禁止操做 |
易用性方面:
关注的是对用户来讲完成某个指望任务的难易程度,分为:有效性、错误避免及错误处理、用户自信和满意度、可学习性。有用性和易用性很类似,可用性是指是否可使用,而易用性是指是否方便使用。易用性运行时战术:一旦系统执行,就能够经过为用户提供关于系统正在作什么的反馈,以及为用户提供发出基于易用性命令的能力来加强易用性;易用性设计时战术:在测试过程当中,一般会频繁修改用户接口。也就是说,易用性工程师将为开发人员提供对当前用户接口设计的修改。
用户注册后会直接进入系统,不须要再输入帐号和密码。
实例一:
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
用户 |
用户注册进入系统 |
系统 |
正常运行 |
注册成功后,进入系统 |
响应时间少于2s |
当用户登录后,买票时,会自动显示用户的帐号和姓名,当选完数量后,自动显示总价。
实例二:
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
用户 |
用户买票 |
系统 |
正常运行 |
显示总价 |
响应时间少于2s |
以上是个人项目的质量属性以及质量属性场景,可能个人分析或许不是很完整,可是我会尽可能把个人项目作得完整。一个项目的质量属性影响着项目的好坏,因此要想作好项目,必须先分析好本身的质量属性。