5.1 质量属性与质量模型


文档摘要

5.1 质量属性与质量模型 安检的第一步不是拦人,是定标准——不知道查什么,安检就只剩随机翻包。本节用国际通行的质量模型把"质量"这个词拆开,教你为一类系统挑出真正重要的属性,并把它们写成带数字的目标。这是全章的地基:评审的判据、度量的对象,全部从这里长出来。 把"质量不好"翻译成人话 "这系统质量不行"是一句无法行动的抱怨。质量模型的作用就是给它做切片:国际标准 ISO 25010 把软件产品质量拆成八个特性——功能性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性、可移植性,每个特性下再分子特性。

5.1 质量属性与质量模型

安检的第一步不是拦人,是定标准——不知道查什么,安检就只剩随机翻包。本节用国际通行的质量模型把"质量"这个词拆开,教你为一类系统挑出真正重要的属性,并把它们写成带数字的目标。这是全章的地基:评审的判据、度量的对象,全部从这里长出来。

把"质量不好"翻译成人话

"这系统质量不行"是一句无法行动的抱怨。质量模型的作用就是给它做切片:国际标准 ISO 25010 把软件产品质量拆成八个特性——功能性、性能效率、兼容性、易用性、可靠性、信息安全性、维护性、可移植性,每个特性下再分子特性。挑最常打架的几个说明它们各在考什么:

属性 考什么 典型验收问句
功能性 该做的做了、不该做的没做 需求基线逐条对得上吗
性能效率 时间与资源够不够省 峰值并发下响应还达标吗
可靠性 出故障的频率与恢复速度 连续跑一个月不出致命错吗
信息安全性 数据防窃、防篡改、可审计 越权访问被拦住了吗
易用性 用户能不能顺利办成事 新司机无培训能完成查询吗
维护性 改起来快不快、稳不稳 加一条补贴规则要动几处

属性之间经常打架:安全加严,易用性受损(多一道验证);性能拉满,维护性遭殃(黑科技优化没人看得懂)。质量设计的本质是排序——不可能全都要,回答"哪个属性让位"比"哪个属性重要"更见功力。

给属性排序:重要度与现状的四象限

排序不能拍脑袋,常用工具是"重要度—现状"二维图:重要度问业务(这个属性掉链子,业务疼不疼),现状问度量(现在做到什么程度)。两者一交叉,改进优先级自己浮出来:

图 5-1:云梯平台的质量属性四象限

图 5-1:云梯平台的质量属性四象限

这张图每半年重画一次。云梯的司机端易用性起初躺在机会区——直到司机离职率因为工具难用而抬头,它的重要度被调高,下一步就进了立刻投入区。属性的坐标是业务的函数,业务变了图必须重画。

把属性写成目标:三个模板

选出了优先属性,还要写成可验收的目标。三个可套用的句式:

  • 测得出来的:直接给数字与条件——"五万行导出三十秒内(性能)"、"连续三十天致命缺陷为零(可靠性)";
  • 要抽样评审的:给通过标准——"季度安全抽测高危项为零(安全)";
  • 要对比基线的:给趋势——"新增模块缺陷密度不高于存量均值(维护性)"。

⚠️ 质量目标最常见的死法是"全员指标":每个属性都要最好,等于没有目标。一张质量目标清单超过五个条目,评审时就没有人真正记得住——克制是目标清单的美德。

属性打架的现场:性能对安全

属性取舍最好用真实冲突来教。云梯遇过一场典型的拉锯:性能诉求要求司机端查询接口缓存 aggressively(激进缓存),安全侧则指出缓存会放大越权风险——缓存的响应可能绕过每次请求的权限校验。两边的诉求都正当,硬选边必输一头。最终的结构化解法是把冲突拆解成技术题:接口鉴权提前到缓存之前(校验结果可缓存、数据响应按用户分片缓存),既保住了大部分性能收益,又不让缓存成为权限的旁路。这个案例的通用启示:属性冲突先别急着牺牲哪边,先把冲突翻译成技术结构题——很多"二选一"其实是"当前方案不够好",翻译到位后往往存在第三条路;翻译完仍要牺牲时,牺牲哪边也变成了有依据的决策而非嗓门比拼。

属性目标谈判:与业务对表

质量目标最终要与业务方对表确认,谈判技巧决定对表质量。有效的问法是把技术属性翻译成业务后果:"响应从两秒放宽到四秒,估计司机会有百分之几放弃自助查询转人工?"——业务方对百分比未必有精确答案,但这个问法能逼出"四秒会影响谁、影响多大"的实质讨论,比"性能目标能不能降一降"有效十倍。对表后形成的质量目标清单要随章程一起签认,成为验收的一部分——质量目标没有签认,就只是工程师的单方面许愿,验收时必起争端。

从属性到测试策略的传导

质量目标定下后,会自然传导成测试策略的重心分布——这也是属性排序最大的实用价值。以云梯为例:计费准确性排第一位,测试策略就向"账目守恒类断言"倾斜——分摊守恒、汇总核对、历史账单回放这三类用例优先建设;对账性能排第二,压测环境与大数据量样本就提前申请;易用性暂居机会区,就不在本期投入专门的可用性测试,只在班次评审时请真实用户摸一遍。反过来做一遍验证:如果一个属性号称最重要,测试策略里却找不到它的影子——没有对应的用例类型、没有验收动作、没有监控指标——那它就不是目标,是口号。传导是否落地,看的是预算与用例的去向,不是文档里的排序表。

属性清单的维护节奏

质量属性清单不是立一次管终身的宪法。云梯的维护节奏是每半年一次"属性对表会":产品、架构、客服代表到场,带三份数据——最近半年的缺陷与投诉按属性归类、竞品在这几个属性上的公开表现、业务路线图上的新要求。对表会的典型产出包括:某个属性的象限迁移(易用性从机会区升级)、某条目标的量化修订(并发上限从峰值翻倍后的重新测算)、以及一两条被证明"从来没人检查过"的目标的删除。清单保持五六条的新鲜度,比攒成十几条的百科全书有用得多——安检标准常新,安检才有牙齿。

两个高频疑问

问:初创期什么都要求快,质量目标是不是可以不设? 可以少设,不能不设。哪怕清单上只有一条——"计费与钱的正确性永不妥协"——也是质量目标,它划出了快速试错的底。真正危险的不是目标少,而是没有底线目标导致团队在每次赶工时重新谈判一遍"这次能不能糊弄"。

问:质量属性目标是定给谁看的? 表面上给测试与验收看,实际最大的读者是设计者。每条质量目标都是一条结构约束——"五万行三十秒"逼着设计阶段就考虑分页与异步,而不是上线后再补救。目标定得早,是给设计者的设计输入;定得晚,就只剩给测试者的判卷功能了。

本节要点回顾

  • 质量模型把模糊的"质量"切成可讨论的属性切片,ISO 25010 的八特性是通用词汇表。
  • 属性之间互相牵制,质量设计的本质是排序与取舍,不是全都要。
  • 排序用重要度乘现状的四象限:立刻投入、保持监控、机会改进、克制投入。
  • 象限坐标随业务漂移,图要定期重画。
  • 质量目标三个句式:给数字条件、给抽样标准、给趋势基线;清单以五条为限。

标准立好了,下一节看安检活动怎么把不合格品拦在离站之前。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U