软件工程关键实践与CMM理解

需积分: 12 1 下载量 133 浏览量 更新于2024-08-23 收藏 3.53MB PPT 举报
"王福利软件工程课件涵盖了关键实践、软件工程基础以及CMM等相关知识点,旨在深入理解软件开发的本质和方法。" 在王福利的软件工程课程中,关键实践被强调为实现软件过程域目标的基础。每个关键过程域包含了若干关键实践,这些实践是逐步进化的,只有通过实施这些小的进化步骤,才能达到整个过程域的目标。在CMM(能力成熟度模型)中,关键实践通常只描述了应该做什么,而不是如何去做的具体细节。CMM共设定了316个关键实践,这些实践被归类在5个公共特征下,分别服务于不同的关键过程域,确保软件开发过程的能力和效率。 课程内容详细讲解了软件工程的基础,包括软件开发不仅仅是一项技术活动,更是一种理解和解决问题的过程。软件生存周期过程是软件开发的核心,它涉及到从需求获取到系统交付的各个阶段。在这一过程中,软件需求及系统/产品需求规约起着至关重要的作用,它们定义了软件开发的起点,并作为测试和确认产品的标准。 软件开发方法学是课程的另一重点,探讨了如何有效地进行开发活动。结构化方法、面向对象方法、面向数据结构方法以及维也纳开发方法等都是实现开发过程的不同途径。此外,课程还提到了支持/管理技术与方法,它们对于软件工程知识结构的建立和完善至关重要。 王福利教授强调,正确认识软件开发的本质是进行软件开发的重要思想基础。软件开发的本质是将问题域(客观事物系统)映射到不同抽象层,通过数据抽象和过程抽象来构建模型和处理逻辑。需求分析是这个过程中关键的一环,它利用各种方法(如面向对象方法、结构化方法)和原理(如数据抽象、过程抽象)来形成计算的客体和处理逻辑。 课程还涉及了CMM,这是一个用于评估和改进软件开发过程能力的框架。CMM提供了一套结构化的成熟度等级,通过实施关键实践来提高组织的软件开发能力,确保能够生产出高质量的产品。 这门课程深入浅出地探讨了软件工程的各个方面,从理论到实践,从方法到模型,旨在培养全面理解软件开发过程的专业人才。