带你读《SAS数据分析开发之道 软件质量的维度》第二章质量2.2软件产品质量模型(四)

质量成本

在软件或其他产品的开发过程中,确实会存在内部的权衡取舍,我们称之为约束条件。PMBOK指南将质量和其他5 个架构作为项目的主要约束条件,但同时也指出,这些约束条件不应该看作是完全详尽的。作为一个约束条件,在软件    项目的规划和设计过程中,质量与其他架构之间存在价值和优先次序的竞争。实际上,开发人员从软件中删除性能时,关注的是他们可以得到所有奇妙的东西!

增加范围     开发人员无须将性能需求编码到软件中,他们关注的是附加的功能性。例如,相比提升 SAS软件的稳健性以避免故障,开发人员可能会选择创建附加分析报告。

安排      性能需求的添加通常会使代码更冗长、更复杂,因此相应的,设计、开发和测试阶段也会延长。若不优先考虑性能,客户和其他利益相关者就能够更快地收到软件。

预算      由于性能需求的执行需要耗费一定的时间,但时间就是金钱,项目预算通常会随着性能需求的增加而增加。通过删除软件中的性能,开发团队能节省一部分预算,或者将节省下来的资金用到其他方面,何其快哉?

资源      项目资源不仅包括人力资源,还包括水电资源。随着性能需求的牺牲,项目所需的开发人员相应也会减少,同时消耗的资源也会减少。

风险      风险不是益处,而是未优先考虑性能时所遇到的意想不到的结果。由于许多性能需求被设计用来减少或消除软件中的漏洞,因此,当忽略性能需求时,风险通常也会随之增加。

尽管约束条件意味着限制性,但我们也可以从机会成本的角度来看待约束条件。例如,开发人员可以在软件中添加性能要求,或者他们可以选择不添加,以生产出速度更快、价格更低廉或功能更强的软件。但若要评估某个机会,我们就需要知道机会的价值所在。因此,本书的一个目标是让开发人员熟悉在软件中插入性能需求的好处,从而帮助他们判定出质量的机会成本。例如,如果利益相关者已经决定执行附加的功能性(因此排除附加的性能),那么利益相关者至少已经弄清楚了所要添加的性能的价值,而且已经根据该性能的机会成本做出了明智的决定。只有当利益相关者了解了质量的价值及质量缺少的风险时,才能对照其他项目约束条件评估质量,如进度、范围和预算。

确定质量的价值是比较困难的,尤其是当软件开发项目中的各个利益相关者对架构的优先顺序存在争议时,质量价值的确定就是一件很棘手的事。投资软件开发的投资者希望用较少的资金创建软件,而等着使用软件的用户则希望软件能迅速地创建完成。一些开发人员比较关注软件的功能,而不是特别在乎性能属性,但其他的   SAS从业人员可能希望软件具有可靠性、稳健性、可维护性及模块化。因此,在软件质量包含哪些特征及如何评估质量(对照其他项目架构)等问题上,达成共识是比较困难的。然而,利益相关者——包括开发人员和非开发人员,如果能使用软件产品质量模型中规定的统一的术语,他们便能更好地讨论质量特征的添加问题。

上一篇:spring事务配置


下一篇:零基础构建语言解释器