zoukankan      html  css  js  c++  java
  • 《信息领域热词分析》,如何设计编码实现六种质量属性战术

    重构上学期的大型数据库大作业《信息领域热词分析》,这里将介绍如何设计编码实现六种质量属性战术,为什么这样设计,解决什么问题,实现的过程、难度是什么。

    1.可用性战术

    可用性与系统故障及其后果相关,当系统不再提供其规范中所说的服务时,就出现了系统故障。系统用户可以观察到此类故障。可用性战术有错误检测,错误预防,错误恢复,我们可以使用try…catch…finally处理机制:try关键字后跟一个花括号栝起的代码块(即使该代码块只有一行也不能省略花括号),简称try块。catch对应异常类型和代码块,用于表明更改catch块用于处理该种类型的异常。一个try块后可以跟多个catch块。在catch块后还可以跟一个finally块,finally块用于回收在try块里打开的资源。

    2.可修改性战术

    可修改性战术目标:控制实现、测试、和部署变更的时间和成本。可修改性可以理解为系统或软件的能够快速地以较高的性价比对系统举行调换的能力。局部化修改,在设计期间为模块分配责任,以便把预期的变更限制在一定的范围内,从而降低修改的成本。我们应该维持语义大的一致性,确保模块之间不过分依赖,在代码设计时,将可能会修改的地方和其他部分独立,这样就会使可修改性更强,也可以封装到一个模块内,模块的划分以及构造也是需要我们思考的,这也是一大难点。

    3.性能战术

    性能主要就是看这个系统的吞吐量,数据丢失以及响应的时间等情况,我们需要做到减少处理事件流所需的资源:提高计算效率(如改进算法)、减少计算开销(如在可修改性与性能之间权衡,减少不必要的代理构件)。减少所处理事件的数量:管理事件率、控制采样频率。我们应该加快爬取速度,减少响应时间,提升性能。

    4.安全性战术

    我们在开发过程中需要保证系统的安全,安全性战术主要包括抵抗攻击的战术、检测攻击的战术和从攻击从恢复的战术。为了系统的安全,可以对用户身份进行认证;隐藏用户的身份;阻止对数据或服务的访问;允许访问数据或服务;授予或收回对访问数据或服务的许可;根据身份记录访问/修改或试图访问/修改数据/服务等,我们在系统登录时就可以对用户的身份进行验证,对不同的用户赋予不同的使用权限,这样就能够提升系统的安全性。

    5.可测试性战术

    软件工件的可测试性不是一个内在性质,不像软件大小一様可以直接量测。软件可测试性是一个外在性质,由待测试的软件及测试目标、方法及测试资源(测试环境)之间的相互关系来决定。若软件的可测试性低,可能会造成测试工作的增加。在一些极端的情形下,缺乏可测试性可能会使部分甚至全部的测试或软件需求无法进行。在爬取或者热词统计的时候我们可以采取面向对象编程的方法,利用接口的方式,可以实现高内聚低耦合,可以根据实际情况使用特定的设计模式,这样也能提高我们的开发效率,尽可能的提高可测试性。

    6.易用性战术

    易用性与用户完成期望任务的难易程度以及系统为用户提供的支持种类有关。易用性战术分为运行时战术、系统主动战术运行时战术:通过为用户提供关于系统正在做什么的反馈,以及为用户提供发出基于易用性命令的能力来增强易用性,如帮助、撤销、取消等。系统主动战术: 系统主动性战术就是那些确定系统用来预测其自身行为或用户意图的模型的战术,它必须依赖关于用户的某些信息。在设计热词分析系统的界面时,我们需要从用户的角度出发,考虑页面的布局控件的大小。在页面中避免出现冗余操作,实现操作方便快捷,提供相应的说明文档,帮助用户快速掌握使用方法,使界面的设计更加流畅,提升软件的易用性

  • 相关阅读:
    反射学习系列3反射实例应用
    (转)华为牛人在华为工作十年的感悟!
    利用日志记录所有LINQ的增,删,改解决方案
    qt5摄像头
    opencvcartToPolar笛卡尔坐标转极坐标
    逆矩阵
    方阵的行列式
    qt5右键菜单
    矩阵的转置
    opencvpyrDown降采样和pyrUp升采样
  • 原文地址:https://www.cnblogs.com/zhang12345/p/13073497.html
Copyright © 2011-2022 走看看