首页 > 其他分享 >软件质量属性之性能 科技小论文

软件质量属性之性能 科技小论文

时间:2023-04-14 17:46:18浏览次数:38  
标签:性能 论文 用户 响应 软件 属性 优化 页面

软件质量属性之性能

耿晴

(石家庄铁道大学信息科学与技术学院软件工程系;河北省石家庄市; 050000)

 

摘要:性能是一个软件架构的重要指标,从用户的角度来看对于一个运行速度很慢的软件是很难长久地存在的,所以软件的性能的优化对于软件的存亡有着至关重要的作用。本文从开发人员视角、用户视角、管理人员视角、web前端写起,使读者对其有初步的认识和了解。只有合理地遵循质量属性原则,才能开发出更好的产品

关键词:软件架构;质量属性;性能优化;web前端;

Performance of software quality attributes

Geng Qing

(Department of Software Engineering, School of Information Science and Technology, ShijiazhuangRailway University; Shijiazhuang City, Hebei Province; 050000)

 

Absrtact: Performance is an important indicator of software architecture. From the perspective of users, it is difficult for a slow running software to exist for a long time, so the optimization of software performance plays a vital role in the survival of software. This article starts with six quality attributes, namely usability, modifiability, performance, safety, testability, and usability, to provide readers with a preliminary understanding and understanding of them. Only by following the principle of quality attributes reasonably can better products be developed

 

Key words: software architecture; Quality attributes; Performance optimization;

概述:性能:表明软件系统或构件对于其及时性要求的符合程度;可以用时间来度量。

性能的及时性:用响应时间或吞吐量来衡量;

响应时间:对请求做出响应所需要的时间;对于单个事务,响应时间是完成事务所需的时间;对于用户任务,响应时间体现为端到端的时间,比如“用户单击‘确定’按钮后两秒内收到结果”。

一、不同角色视角的软件性能

 

 (一)、用户视角的软件性能:

对于交互式的应用来说,一般以用户感受到的响应时间来描述系统的性能。即最为直观的感受的web应用的响应速度的快慢,用户感受的时间包括用户计算机和网站服务区通信的时间、网站服务器处理的时间、用户计算机浏览器构造请求解析响应数据的时间。

 

对于非交互式应用而言,响应时间是指系统对事件产生响应所需要的时间。

 

(二)、管理员视角的软件性能:

软件系统性能首先提现系统的响应时间上,管理员是一种特殊的用户,和一般用户相比,除了会关注一般用户体验之外,还会关心和系统状态相关的信息;

另一方面还会想要知道系统具有多大的可扩展性、处理并发的能力如何,系统可能的最大容量是什么、系统可能的性能瓶颈在哪里、通过更换哪些设备或者进行哪些扩展能够提高系统性能等。

之后还需要关心系统在场时间运行中是否足够稳定是否能够不间断的提供业务服务等。

 

(三)、开发视角的软件性能:

主要关心用户的感受——响应时间,因为这是用户的直接体验;’也会关心系统管理员关心的内容,因为这些也是产品需要面向的用户;但对开发人员来说,其实最想知道的是如何通过调整设计和代码实现、系统设置等方法提高软件的性能表现,以及如何发现并解决软件设计和开发过程中由于多用户访问引起的缺陷。因此最关注的是使性能表现不佳的因素和多用户访问引发的软件故障,而应用程序本身及其相关子系统的性能也是开发人员关注的一大方面,其包括响应延迟、系统吞吐量、并发处理能力、系统稳定性等技术指标。

对于开发人员来说,单纯获知系统性能“好”或者“不好”的评价没有太大的意义,他们更想知道的是:哪些地方是引起不好的性能表现的根源,或者哪里可能存在故障发生的可能,或者是如何优化系统的性能延长应用的寿命。

二、Web前端性能

 

web应用的前端响应时间指的是浏览器的页面加载时间,主要指的是页面元素的加载、客户端点执行以及页面展现相关,与服务器本身和并发用户量的大小并没有太大直接关系。

前端性能关注的主要问题:如何提高浏览器下载和执行资源的并发性、如何让浏览器尽快开始渲染页面、如何让浏览器尽可能充分的利用缓存。 

三、性能优化

 

对于前端来所,网络耗时、页面加载耗时、脚本执行耗时、渲染耗时情况会影响以哦那个胡的等待时常,而CPU占用、内存占用、本地缓存占用等则可能会导致页面卡顿甚至卡死,因此,性能优化可以分别从耗时资源占用两方面解决,也可以将其称为‘时间’‘空间’两个维度。

 

(一)、时间角度优化:减少耗时

浏览器在页面加载过程中,会进行以下步骤:网络请求相关、浏览器解析HTML渲染页面、加载JavaScript代码时会暂停页面渲染。

在浏览器的首次加载和渲染完成之后,不代表用户就可以马上交互和操作。根据业务代码加载过程,页面还会分别进入开始渲染、渲染完成、用户交互等阶段。除此之外,页面交互过程中,会根据逻辑进行逻辑元素,页面更新等任务。

 

根据这个过程,我们可以从四个方面进行耗时优化:网络请求优化、首屏加载优化、渲染过程优化、计算/逻辑运行提速

(二)、空间角度优化:降低资源占用

提到性能优化,大多数我们都在针对页面加载耗时进行优化,对资源占用的优化会更少,因为资源占用常常直接受到用户设备性能和适应场景的影响,大多数情况下优化效果会比耗时优化局限,因此这里只能说些大概的思路。

 

资源占用常见的优化方式包括:合理使用缓存,不滥用用户的缓存资源,即使进行缓存整理;避免存在内存泄漏,比如尽量减少全局变量的使用,即使解除引用等;避免复杂的递归调用,调用栈的一处;通过使用数据结构享元的方式,减少对象的创建,从而减少内存的占用。

 

  参考文献

 

  [1]  李智慧.大型网站技术架构.北京:电子工业出版社,2001,8.

[2] Steve Souders 高性能网站建设指南.北京:电子工业出版社

[3]  木子飞——什么是软件性能

 

标签:性能,论文,用户,响应,软件,属性,优化,页面
From: https://www.cnblogs.com/gnn40036/p/17319068.html

相关文章

  • 软件质量属性之可测试性
    软件质量属性之可测试性张榕(石家庄铁道大学信息科学与技术学院软件工程系,河北省石家庄市50000 )摘 要:软件可测试性对软件研发和质量保障有着至关重要的作用,是实现高质量、高效率交付的基础。可测试性差,会直接增加测试成本,让测试的结果验证变得困难,进而会让工程师不愿意做测试......
  • 自主阅读笔记04《多种软件体系结构风格的分析与比较》
    文章来源《计算机与数字工程》作者:刘凯′梁欣?李欣宜’张俊萍赵丽娜软件体系结构的基本概念软件体系结构是从一个较高抽象层次来考虑组成系统的构件、构件之间的交互,以及由构件与构件交互形成的拓扑结构的关系。这些要素应该满足一定的限制,遵循一定的设计规则,能够在一定的环......
  • 原型设计软件Axure RP 9中文mac版
    AxureRP是一款简单易用的原型设计工具,能够创建符合用户体验标准的模型和操作界面。它能有效地实现对数据图表、项目管理、交互、图形设计、图像编辑等功能的支持及用户界面风格的个性化设置。对于专业设计师或非专业人员用户来说,这种简易便捷的工具带来了极大的方便,同时也为用户......
  • SOLIDWORKS如何批量填写焊件切割清单属性信息
    在SOLIDWORKS中,焊件是指含有可用切割清单描述的多实体特殊零件模型。焊件有一系列的专用命令,这些命令位于CommandManager的【焊件】选项卡中。用户可以使用焊件命令进行以下操作:1.插入结构构件。2.使用特殊工具对结构构件进行剪裁和延伸。3.添加角撑板、顶端盖及圆角焊缝。结......
  • 软件质量属性易用性
    软件质量属性之易用性 一、易用性概念 软件易用性是软件质量体系中一个重要的质量特性。 1. 在各个标准体系中都有关于软件易用性的定义描述。 (1)关于易用性的描述都是围绕着“用户对于产品的使用感受”这个中心展开的。 (2)易用性体现了用户在使用过程中所实际感受......
  • 使用Java反射机制将类的属性名和属性值打印出来
    可以使用Java反射机制来读取类的属性名和属性值。以下是一个示例代码,可以输出指定类的所有属性及其对应的值:1publicstaticvoidprintFields(Objectobj){2Classclazz=obj.getClass();3Field[]fields=clazz.getDeclaredFields();4for(Fieldfie......
  • 软件体系结构概念架构设计
    某大银行的一位银行卡办公室的收账经理Liz遇到了一个问题。她每周都收到一份过期未付款的账户名单。这份报告已经从两年前的250个账户增加到现在的1250个账户。为了确定那些严重拖欠债务的账户,Liz需要通读这份报告。严重拖欠债务的账户由几个不同的规则确定,每个规则都要求Liz检查......
  • 关于 css 伪元素 content属性值 为中文字符时出现乱码问题的处理
    更多关于csscontent属性的介绍点我 场景:需要在右箭头(点击该箭头是可以跳转到详情页)的左侧补充一个“更多”的文字描述 在一些场景下,使用CSS去做改动会是最优的,比如无源码等 易出现乱码的代码示例i.common-right-arrow-icon{position:relative;}i.comm......
  • 软件系统设计-2-策略模式
    1.策略模式引入:鸭子1.1.从SimUDuck应用程序开始我们需要添加功能使得鸭子可以飞简单的修改鸭子父类,我们可以发现这样子橡皮鸭也可以飞我们需要意识到不是所有的鸭子都会飞考虑继承我们总是可以像使用quack()方法一样在橡皮鸭中覆盖fly()方法…但是,当我们在程序中添加木制诱饵......
  • 批量改名高手软件批量重命名TXT文档文件的方法
    最近有很多朋友在问,如何管理文件?比如说各种形式的文件该怎么批量重命名呢?今天小编能给大家分享一个新的处理技巧,下面一起来试试。材料准备:一台Win系统的电脑安装一个文件批量改名高手文件素材若干步骤演示:步骤1:打开【文件批量改名高手】,在“文件批量重命名”中,单击“添加文件”步骤......