软件工程方法学:两大派系与CMM模型解析

需积分: 23 15 下载量 29 浏览量 更新于2024-08-15 收藏 3.53MB PPT 举报
在2011年的软件工程自考研究中,王立福教授提出了两种主要的大学派——以“方法”驱动的方法学。第一种方法强调明确的步骤和实施策略,如P.Coad的面向对象分析(OOA, 1990)和设计(OOD, 1991),这种方法易于学习和掌握,但其不足在于缺乏灵活性,无法应对新出现的问题。这种理论注重在符号体系下定义软件开发的标准化流程,每一步都有预先设定的执行路径。 另一种软件开发方法学包括结构化方法,它将软件开发分解为一系列有序的活动,如需求分析、设计、编码等,通过过程抽象来形成可构造的计算逻辑。面向数据结构方法则关注数据的组织和操作,而维也纳开发方法(VDM)是一种形式化的建模方法,适用于复杂系统的开发。 在整个软件生命周期过程中,理解软件开发的本质和基本手段至关重要。软件开发本质上是问题域到不同抽象层间概念和计算逻辑的映射,如从问题空间的概念转化为解空间模型,或者将问题处理逻辑转化为可编程的形式。以面向对象方法为例,需求分析阶段会使用数据抽象,形成对象模型,而结构化方法则体现在处理逻辑的规约和设计过程中。 CMM(能力成熟度模型)则是对软件开发过程能力的一种衡量框架,帮助确保开发出高质量的产品或系统。软件工程的支持与管理技术,如软件生存周期模型和过程支持过程方向的建立,都是为了更好地指导和优化软件开发活动。 王立福教授的这一系列观点强调了软件工程基础的重要性,即深入理解软件开发的原理、过程和方法选择,以及如何通过各种工具和技术来支持软件产品的开发、测试和维护,以适应不断变化的需求和挑战。这些方法论不仅适用于自考教学,也对实际软件行业的实践具有重要的指导意义。