软件质量是指系统中软件部分的质量,即满足用户需求,其中包括功能需求和性能需求的程度。
软件质量模型
内部&外部质量
- 过程质量由QA人员检验
- 内部质量由开发人员检验,如使用手册、代码检验
- 外部质量由测试人员进行系统测试
- 使用质量由真实用户体验反馈
质量的定义:
符合需求规格:符合开发者明确定义的功能目标,产品可以正确完成功能。
符合用户需求:符合用户提出的需求
反面例子:没有正确按照需求执行功能,也没有完成用户所需。ISO有关质量的定义如下:
产品实体的特性可以满足明细或隐含的需求,产品质量就是实体特性能够满足需求的程度。
实体指的是:
产品:电脑、手机、平板、汽车
服务:司机、教师、外卖员
软件功能性
1、合适性
软件产品为特定需求与目标客户提供合适的功能,如打印机面向需要打印纸质文档的用户。
2、安全性
是否能安全存储隐私信息
3、美观性
4、精确性
产品提供精确、正确、相符的结果
- 精确数值,如产品尺寸、程序计算、温度统计
- 产品规格
软件交互性
开发出的产品与一个或者多个系统进行联合工作。
- 第三方支付、第三方登录
- 原生安卓系统,定制为OPPO,小米,华为系统
- 网站服务,背后是多个系统在工作
软件安全性
- 软件必须保护用户数据,防止未授权的用户访问/修改软件产品数据,经过授权的即可有权限查阅。
- 好比网站的登录功能,未登录的用户无法进行安全系数较高的操作,比如淘宝购买支付
- 网站的匿名用户与管理员用户的权限区别
- SQL注入防范
DDos攻击,拒绝服务攻击
- ddos攻击使得网站服务器充斥大量要求回复的信息,消耗服务器的网络与系统资源,造成系统崩溃,无法提供服务
- 好比宜家家具,本来是正常提供家具商品的店铺,提供客人浏览,而大量的"闲人"占用了家具,导致想要购买商品的用户无法浏览,造成宜家损失