实现基于SSH的门票管理系统开发的质量属性
我要做的是一个基于SSH的门票售卖系统,在系统中常见的质量属性有:可用性、可修改性、性能、安全性、易用性。
可用性方面:
可用性是指系统正常运行时间的比例,是通过两次故障之间的时间长度或在系统崩溃情况下能够恢复正常运行的速度来衡量的。实现可用性的战术分为三类:错误检测(用来检测故障的健康监视)、错误恢复(检测到故障时的恢复)、错误预防(阻止错误演变为故障)。用于检测错误的3个战术是: 信号/响应、心跳、异常。用于错误恢复的战术有7种:表决、主动冗余、被动冗余、备件、shadow操作、状态再同步、检查点/回滚。用于错误预防的战术有3种:从服务中删除、事务、进程监视器。
修改用户密码方面,当用户创建完账号时,会创建初始密码,但之后可能认为密码不安全,从而想要修改密码,当修改密码时,需要确认密码,当密码和确认的密码不一样是时,则不能完成对密码的修改。所以当用户输入的密码和第二个确认密码不同时,则立刻返回修改密码界面进行重新修改,而不会直接把第一个密码保存起来;还有当买票时,剩余的票不足够了用户所买的情况;管理员删除用户时,如果用户有购票信息,则先删除所有该用户的购票信息,在删除用户信息。
实例一
|
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
|
用户 |
输入的密码和确认密码不一样 |
系统 |
正常状态 |
重新返回修改密码界面。 |
1s之内 |
实例二
|
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
|
用户 |
需要购买的票比剩余的票多 |
系统 |
正常状态 |
返回到票的数量显示界面,并且提示出票的数量不足 |
在1s之内 |
实例三
|
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
|
管理员 |
删除用户信息时,该用户有购票记录。 |
系统 |
正常状态 |
先删除他的购票记录,之后再删除用户信息 |
在1s之内 |
可修改性方面:
关注的两个方面:两个关注点:可以修改什么?何时以及谁进行修改。可修改性的战术有:局部化修改(减少由某个变更直接影响的模块的数量);防止连锁反应(限制对局部化的模块的修改) ;推迟绑定时间(控制部署时间和成本)。
用户或着管理员修改自己密码方面,在不影响别人密码的前提下,在5s左右完成;设计人员修改用户界面用户购买的票的详细信息的界面,在不影响其他功能的前提下修改代码,要求在4小时内完成代码修改和测试,不产生有副作用的变;最终用户想要增加票的属性,在不影响其他功能的前提下,修改代码并进行测试。
实例一
|
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
|
管理员或用户 |
修改密码 |
系统 |
正常状态 |
查找改用户或管理员的密码,并且修改成新的密码 |
在5s之内 |
实例二
|
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
|
开发人员 |
希望修改用户购票详情界面 |
系统 |
设计时 |
修改并验证后,没有副作用的影响 |
在4小时之内 |
实例三
|
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
|
最终用户 |
增加票的种类 |
系统 |
设计时 |
修改并验证后,没有副作用的影响 |
在3小时之内 |
性能方面:
指系统的响应能力----即对外部刺激(事件)做出反应时所需要的时间或在某段时间内所处理的事件个数。
20人同时登陆进行买票等操作,查看系统是否响应正常。
实例一
|
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
|
20人 |
试图同时登陆系统 |
系统 |
正常运行 |
用户的操作被处理 |
平均响应时间5秒 |
24小时每隔一个小时随机登陆一次,参看系统是否登陆成功。
实例二
|
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
|
用户 |
没个一个小时随机登陆一次系统 |
系统 |
正常运行 |
用户的操作正常被处理 |
平均响应时间3秒 |
安全性方面:
安全性是衡量系统在向合法用户正常提供服务的情况下,阻止非授权使用的能力。
在售票管理系统中。管理员不能修改用户的基本信息以及用户的购票信息;用户不能查看别人的购票信息以及进行操作。
实例一:
|
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
|
管理员 |
修改用户信息或者购票信息 |
系统 |
正常运行 |
操作被禁止 |
100%禁止操作 |
实例二:
|
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
|
用户 |
查看其他用户信息 |
系统 |
正常运行 |
操作被禁止 |
100%禁止操作 |
易用性方面:
关注的是对用户来说完成某个期望任务的难易程度,分为:有效性、错误避免及错误处理、用户自信和满意度、可学习性。有用性和易用性很相似,可用性是指是否可以使用,而易用性是指是否方便使用。易用性运行时战术:一旦系统执行,就可以通过为用户提供关于系统正在做什么的反馈,以及为用户提供发出基于易用性命令的能力来增强易用性;易用性设计时战术:在测试过程中,通常会频繁修改用户接口。也就是说,易用性工程师将为开发人员提供对当前用户接口设计的修改。
用户注册后会直接进入系统,不需要再输入账号和密码。
实例一:
|
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
|
用户 |
用户注册进入系统 |
系统 |
正常运行 |
注册成功后,进入系统 |
响应时间少于2s |
当用户登陆后,买票时,会自动显示用户的账号和姓名,当选完数量后,自动显示总价。
实例二:
|
刺激源 |
刺激 |
制品 |
环境 |
响应 |
响应度量 |
|
用户 |
用户买票 |
系统 |
正常运行 |
显示总价 |
响应时间少于2s |
以上是我的项目的质量属性以及质量属性场景,可能我的分析或许不是很完整,但是我会尽量把我的项目做得完整。一个项目的质量属性影响着项目的好坏,所以要想做好项目,必须先分析好自己的质量属性。
实现基于SSH的门票管理系统开发的质量属性的更多相关文章
- 基于SSH框架的网上商城的质量属性
常见质量属性 1.性能 性能就是一个东西有多快,通常指响应时间或延迟. 响应时间:从发出请求到收到响应所用的时间,比如用户点击网页中的超链接或桌面应用程序中的按钮 延迟:消息从A点到B点,通过你的系统 ...
- 基于Struts2+Hibernate的朋友圈留言网站开发的质量属性
在课堂上我们了解了质量高于功能,质量属性是指影响质量的相关因素,是对质量的描述.现在我们对基于SSH的交友网站开发的质量属性可以从以下几个方向进行分析: (1)可用性: 当错误发生时,使用可用性战术进 ...
- 基于SSH实现员工管理系统之框架整合篇
本篇文章来源于:https://blog.csdn.net/zhang_ling_yun/article/details/77803178 以下内容来自慕课网的课程:基于SSH实现员工管理系统之框架整 ...
- 基于SSH框架的网上书店系统开发的质量属性
基于SSH框架的网上书店系统开发的质量属性 对于我的基于SSH框架的网上书店系统的开发要实现的质量属性有可用性.可修改性.性能.安全性.易用性和可测试性. 1.对于可用性方面的战术: 可用性(Avai ...
- 基于ssh框架的在线考试系统开发的质量属性
我做的系统是基于ssh框架的在线考试系统.在线考试系统有以下几点特性:(1)系统响应时间需要非常快,可以迅速的出题,答题.(2)系统的负载量也需要非常大,可以支持多人在线考试(3)还有系统的安全性也需 ...
- 基于SSH框架的在线考勤系统开发的质量属性
我要开发的是一个基于SSH框架的在线考勤系统. 质量属性是指影响质量的相关因素,下面我将分别从6个系统质量属性(可用性,易用性,可修改性,性能,安全性,可测试性)来分析我的系统,以及如何实现这些质量属 ...
- 基于Struts2CRUD的质量属性
基于struts2框架开发的<学生管理系统>的质量属性 我们经常重新设计系统,可能不是因为该系统在功能上有缺陷,而是由于:系统运行速度太慢.系统容易受到外界攻击.用另外的一句话说:我们修改 ...
- 基于SSH框架的学生公寓管理系统的质量属性
系统名称:学生公寓管理系统 首先介绍一下学生公寓管理系统,在学生公寓管理方面,针对学生有关住宿信息问题进行管理,学生公寓管理系统主要包含了1)学生信息记录:包括学号.姓名.性别.院系.班级:2)住宿信 ...
- SSH框架开发蛋糕房管理系统之质量属性
SSH框架开发蛋糕房管理系统之质量属性 我要开发的系统是基于ssh框架的蛋糕房管理系统.本系统前台提供的主要功能是在线预定蛋糕,本店管理员拥有最高权限,包括收银管理,设备管理,日常销售管理,蛋糕定制管 ...
随机推荐
- February 10th, 2018 Week 6th Saturday
It is not enough to have a good mind. The main thing is to use it well. 头脑聪明还不够,重要的是好好运用. From Rene ...
- mobx 入门
observable(可观察的数据) 数组 import { observable, isArrayLike } from 'mobx' const arr = observable(['a', 'b ...
- pandas中DataFrame对象to_csv()方法中的encoding参数
当使用pd.read_csv()方法读取csv格式文件的时候,常常会因为csv文件中带有中文字符而产生字符编码错误,造成读取文件错误,在这个时候,我们可以尝试将pd.read_csv()函数的enco ...
- linked-list-cycle-ii (数学证明)
题意:略. 这个题最关键的点在于后面,如何找到循环开始的节点. 第一阶段,先用快慢指针找到相遇的节点C.(至于为什么,了解一下欧几里德拓展解决二元不定方程.)A是表头.B是开始循环的位置. 第一次阶段 ...
- github(1)安装及使用图文详解
教程https://blog.csdn.net/qq_32166627/article/details/54427622 下载地址:https://desktop.github.com/
- gas问题out of gas的解决
1.昨天遇见了还是以前遇见的问题,就是发现有些函数就是不能用web3调用,然后怎么弄都写不到数组上,但是今天终于将它解决了web3的学习:https://github.com/ethereum/wik ...
- vue 路由的基本使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ubuntu环境下安装 eclipse
最近工作的需要,需要安装eclipse 软件 这是开发环境.废话少说 直接上安装步骤. 1.先下载jdk 最好下载jdk1.8 liunx版本的 http://www.oracle.com/tech ...
- js判断变量的类型(使用闭包来玩一把)
var Type = (function() { var Type = {}; for (var i = 0, type; type = ['Undefined', 'Null', 'Boolean' ...
- Spark笔记-DataSet,DataFrame
DataSet:面向对象的,从JVM进行构建,或从其它格式进行转化 DataFrame:面向SQL查询,从多种数据源进行构建,或从其它格式进行转化 RDD DataSet DataFrame互转 1. ...