2.6 小结
软件过程是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。软件过程框架定义了若干个小的框架活动,为完整的软件开发过程建立了基础。软件过程框架的通用过程框架活动包括沟通、计划、建模、构建和部署。
软件工程的敏捷理念强调自我组织团队、团队交流与合作、敏捷对待变更。敏捷方法是一组敏捷实践技术的总称。随着敏捷开发思想和极限编程方法在21世纪初前几年的快速普及,结对编程也迅速被大家熟知和尝试。结对编程是极限编程的12个主要实践之一,它吸收合作式编程的关键思想,强调合作和交流。
软件工程实践包括概念、原则、方法和在整个软件开发过程中所使用的工具。这些实践有着通用的普遍原则和一些与项目或产品无关的适用于每个过程框架活动的任务。软件工程实践的通用框架活动包括沟通实践、计划实践、建模实践、构造实践和部署实践。
软件开发模型是指软件开发全部过程、活动和任务的结构框架,并能清晰、直观地表达软件开发全过程,明确规定了要完成的主要活动和任务,用来作为软件项目工作的基础。软件开发包括需求、设计、编码和测试等阶段。几种常见的模型包括瀑布模型、增量提交模型、螺旋模型、统一过程模型和构件集成模型。
能力成熟度模型是改进软件过程的有效策略。它的基本思想是通过改进对软件过程的管理来提高软件生产率和软件质量。CMM以增量方式逐步引入变化,明确地定义了5个成熟度等级,一个软件开发组织可以用一系列小的改良性步骤迈入更高的成熟度等级。