性能失败的原因和防止
性能问题通常是因为开发方法不当造成的。成本和进度的严厉使项目管理人员在性能问题出现之前一直忽视它的存在,而采用后期修正的方法。当问题出现时,通常采用购买更多的硬件或调整软件的方式以满足性能要求,从而导致软件交付延迟、成本超支。有时,通过调整来满足性能要求几乎是不可能的。
性能问题常常是由于采用了不当的软件结构,而不是采用了低效率的代码造成的。这意味着性能问题在开发过程的早期就已存在,但通常直到后期才被发现(在集成测试或系统投入使用时)。而这是再修正这些问题已经很困难,且成本太高。
避免性能失败的有效途径是采取正确的性能管理方法,以在开发过程早期识别潜在的性能问题,并确认、处理这些问题。通过有效的途径,可以准时、低成本的开发出满足性能要求的软件,避免迟后发现性能问题的项目风险。
软件性能工程:
软件性能工程(SPE)是一种系统的、定量的提前管理软件性能的途径。SPE是一种避免极端性能驱动开发和延迟修正性能问题的工程方法。通过SPE,可以在开发早期发现性能问题,并使用定量的方法来支持各种解决方案的价值分析。它使用模型预测来评估软件功能、硬件规模、质量、资源需求的平衡。它还包括数据收集、面向性能设计的基本的原则和模式、认可和纠正通常的性能问题的反模式等技术。
成本和收益:
使用SPE的成本只占用项目预算的很小的比例。SPE的成本水平取决于项目中性能风险的大小。一个项目的性能风险很小,SPE的成本可能占总预算的1%,一个高风险的项目,可能占到10%。工业经验中,SPE的收益远大于上面提到的避免性能失败的方法的成本支出。
开始:
通过一个简单的项目,培训关键的开发人员,使其了解SPE过程和技术,并提供必要的工具支持。在其他项目中使用所获得的经验,并集成到其他软件开发过程中去。
介绍:
性能失败发生在软件产品因不当的性能而造成全部需求没有获得满足的时候。性能失败造成成本增加,收入降低。本白皮书讨论性能失败的原因,并展示如何低成本的防止它的出现。