zoukankan      html  css  js  c++  java
  • 在线考试系统的质量属性

    6个常见的系统质量属性

    可用性(Availability)
    可修改性(Modifiability)
    性能(Performance)
    安全性(Security)
    可测试性(Testability)
    易用性(Usability)
     
    关于易用性可用性
    易用性和可用性有时容易混淆。
    其实可以把易用性看做可用性的一个方面。
    指的是产品对用户来说意味着易于学习和使用、减轻记忆负担、使用的满意程度等。
    产品易用性好,很可能是因为产品功能少,界面简单;也可能是用户认知成本低等因素。
    同样的产品,功能、界面和环境都相同,对于不同的用户而言,易用性也是不同的,因为用户的认知能力、知识背景、使用经验等都不同。
    一般来说,可用性是指是否可以使用,而易用性是指是否方便使用。
     
    1.可用性战术
    可用性是交互式IT产品/系统的重要质量指标,指的是产品对用户来说有效、易学、高效、好记、少错和令人满意的程度,即用户能否用产品完成他的任务,效率如何,主观感受怎样,实际上是从用户角度所看到的产品质量,是产品竞争力的核心。
    可用性是指系统正常运行时间的比例,是通过两次故障之间的时间长度或在系统崩溃情况下能够恢复正常运行的速度来衡量的。
     
    错误检测:用户通过点击考试参加在线考试,获取题库题目,进行答题,提交题目,并查询答题结果,当同时考试人数过多,超过了系统承载的范围。
    错误预防:对同时能进行的考试数目进行限制。
    错误恢复:题库定期备份,出现错误后通过数据回滚找到数据。
     
    2.可修改性战术
    实现、测试和部署变更的难易程度。
    可修改性战术的目标:控制实现、测试和部署变更的时间和成本。
    根据目标进行分组,分为3类
    减少由某个变更直接影响的模块的数量—--局部化修改
    限制对局部化的模块的修改----防止连锁反应
    控制部署时间和成本----推迟绑定时间
    根据mvc设计模式,将系统分层构建,使层与层之间的耦合性降低。
     
    3.性能战术
    性能是指系统的响应能力----即对外部刺激(事件)做出反应时所需要的时间或在某段时间内所处理的事件个数。
    影响性能的因素:事件源的数量和到达模式。
    到达模式:周期性、随机或偶然。
    一般用等待时间、处理期限、系统吞吐量、响应抖动(等待时间的变化)、未处理事件(由于系统太忙无法响应)、丢失数据(由于系统太忙)等指标了解系统性能。
     
    在软件过程的各个阶段严格设计,比如对数据库字段长度的限制。
    考试系统中拥有大量的题目,当查询这些题目时,在同一页面显示将会大大降低系统的性能,因此采用分页显示。同时尽量避免查询所有题库,最好将题库分类,查询时有选择的进行。
     
    4.安全性战术
    安全性是衡量系统在向合法用户正常提供服务的情况下,阻止非授权使用的能力。
    试图突破安全防线的行为被称为“攻击”。
    攻击有以下三种方式:
    未经授权试图访问数据或服务。
    未经授权试图修改数据。
    试图使用系统拒绝向合法用户提供的服务。
     
    不设置记住密码,自动登录等操作。对用户信息进行MD5加密操作。管理员密码设置不应过于简单。每隔一定时间系统提示更换密码。
     
    5.易用性战术
    关注的是对用户来说完成某个期望任务的难易程度。
    分为以下几个方面:
      有效性
      错误避免及错误处理
      用户自信和满意度
      可学习性
     
    整个系统界面设置应该统一,页面简洁,在进行操作时有相应的提示信息。
    以易用性战术为例:
    在登录界面,当用户没有输入账号,密码中的一个或全部而点击登录时,将会给出提示,数据不进行提交:
    输入账号,不输入密码:
    输入密码,不输入账号:
    通过JS进行控制:
    username.oninput=function(){
        username.setCustomValidity("");
    };
    username.oninvalid=function(){
        username.setCustomValidity("请输入账号!");
    };
    password.oninput=function(){
        password.setCustomValidity("");
    };
    password.oninvalid=function(){
        password.setCustomValidity("请输入密码!");
    };
     6.可测试性战术
    指通过测试揭示软件缺陷的难易程度。
    特别地,假设软件中至少有一个错误,软件在下次测试运行时不能正常工作的可能性。
    可测试性的响应度量处理的是测试在发现缺陷方面的效率以及想要达到某个期望的覆盖范围,需要用多长时间进行测试。
     
    允许在完成软件开发的一个增量后,较轻松地对软件进行测试。
    将接口与实现分离:将接口与实现分离允许实现的代替。占位实现允许在缺少被占位组件时,对系统的剩余部分进行测试。
     
     
  • 相关阅读:
    2.4.6 处理表单 的 工作原理的解释
    nginx proxy模块
    nginx负载均衡模块
    Oracle正在执行和执行过的SQL语句
    nginx
    linux :故障提示:Error:No suitable device found: no device found for connection "System eth0"
    memcached
    一致性哈希算法(consistent hashing)(转)
    大规模网站sesson会话保持思路及实践配置
    AB压力测试工具
  • 原文地址:https://www.cnblogs.com/SanShaoS/p/5505544.html
Copyright © 2011-2022 走看看