软件质量经济学
上QQ阅读APP看书,第一时间看更新

2.6.2 度量性能效率

评估性能效率至少需要检查下列软件工程实践和技术属性:

●应用程序架构实践

 ■数据存取性能

●编程实践

 ■与面向对象和结构化最佳编程实践的一致性

经验表明,主要的性能或可伸缩性(scalability)问题通常缘于没有遵循所推荐的架构或行业最佳实践,尤其是在数据存取和数据处理方面(参见High-Performance Client/Server一书:http://www.amazon.com/High-Performance-Client-Server-Chris-Loosley/dp/0471162698)。例如,设置一个错误的索引策略或者在数据层和业务层之间生成庞大的数据流,会导致严重的可扩展性问题。所有这些实践都被称为设计性能。

很多质量保证管理人员抱怨说,在做压力测试和负载测试时他们缺少资源来完整地模拟运行环境。然而,性能恶化的很多起因都是已为人所熟知的源代码中的弱点,而这些弱点能在将代码部署到运行环境之前的结构化分析中发现。针对很多这样的问题是很难写测试用例的,但其特征模式能从解析后的应用程序元素中发现。这些代码中的缺点平时不会造成问题,但当处理的数据量或事务频率急剧增长时(这种增长在运行期间是不可避免的),它们会严重降低性能。