《软件工程—实践者的研究方法》读书笔记
第三部分是质量管理。什么是质量?质量是一个复杂多面的概念,设计质量和符合质量两方面都需要软件工程师考虑。质量很重要,但是用户不满意,其他的事就都不重要了。这是Robert Glass给出的一个“直观的公式”:用户满意度=合格的产品+好的质量+按预算和进度安排交付。对于质量管理,相关的技术和方法有:评审技术、软件质量保证、软件测试策略和安全性工程。
第四部分是管理软件项目。管理设计的范围包括人员、产品、过程和项目。在这里就需要考虑过程的度量和项目的度量以及软件项目的估算。软件项目管理还涉及项目进度安排、风险管理和维护与再工程。关于人员管理,人月神话中Brooks用一章来讲团队组成的重要性,使用“外科手术团队”来打比方。在本书中,作者也用了不少篇幅来讲团队的重要性。作者用了两章依次来讲过程度量与项目度量和软件项目估算。软件测量的方法有面向规模的度量、面向功能的度量、调和代码行度量和功能点度量、面向对象的度量、面向用例的度量和WebApp项目的度量。软件项目估算使用经验估算模型来预测工作量,本书中展示了典型的估算模型、COCOMO II模型和软件方程。软件方程是一个动态的多变量模型,它假定在软件开发项目的整个生命周期中有特定的工作量分布。
第五部分是软件工程高级课程。这里,作者介绍了软件过程改进(SPI)和软件工程的一些新趋势。SPI方法是迭代和连续的,它包括5个步骤:1、当前软件过程的评估;2、对业务人员和管理者的教育和培训;3、过程要素、软件工程方法以及工具的选区和合理性判定;4、SPI计划的实现;5、基于计划结果的评价和调整。SPI框架评价一个组织软件过程的“成熟度”,并提供成熟度等级定性的表示。CMMI(Capability Maturity Model Integration成熟度模型集成)以两种不同的方式表示过程元模型:一个连续式模型,一个分级式模型。连续式CMMI元模型定义了6个能力等级,分别是:不完全级、已执行级、已管理级、已定义级、定量管理级和优化级。分级式的CMMI元模型定义了5个成熟度等级,分别是:初始级、已管理级、已定义级、定量管理级和优化级。