软件工程方法学与CMM:王立福教授2012研修班
需积分: 32 48 浏览量
更新于2024-08-20
收藏 3.86MB PPT 举报
"北大王立福教授的软件工程2012研修班课件"
在软件工程领域,王立福教授的课程深入探讨了软件开发的各个方面,旨在帮助学员理解软件开发的本质、过程和方法。以下是根据标题、描述和部分内容提炼的关键知识点:
一、软件工程基础
软件工程是应用计算机科学、工程管理原则和技术来实现符合用户需求的软件产品的学科。它关注工程目标,如功能、可用性和经济性,并通过一系列有序的工程技术活动来达成。
二、软件开发过程
1. **需求分析**:软件开发始于需求分析,明确目标陈述,包括特定需求,这是软件开发的启始点和测试的标尺。
2. **设计阶段**:在需求明确后,进行设计选择适合的工具,构建系统原型,强调关键技术和风险。
3. **原型实现**:开发人员依据设计建造原型,使之对客户可见或体现技术风险。
4. **评估与反馈**:通过客户试用或其他评估方法,对原型进行检验,收集反馈以进行改进。
三、软件开发方法学
1. **结构化方法**:早期主流的开发方法,强调自顶向下、逐步求精的设计。
2. **面向对象方法**:以对象为中心,强调封装、继承和多态,如Java和C++。
3. **面向数据结构方法**:以数据结构为基础,如数据库管理系统的设计。
4. **维也纳开发方法(VDM)**:一种形式化的软件开发方法,用于规格说明和验证。
四、软件生存周期模型
软件生存周期模型描述了软件从诞生到消亡的过程,包括需求分析、设计、实现、集成、部署和维护等阶段。不同的模型如瀑布模型、迭代模型、敏捷开发等提供了不同的开发路径。
五、CMM(Capability Maturity Model for software)
CMM是一种评估和改进软件开发过程成熟度的框架,旨在确保开发过程的质量和效率,达到预期的产品或系统。
六、软件开发的本质
软件开发的本质是将问题域的概念和处理逻辑映射到不同抽象层,包括问题空间、需求、设计、实现和部署。这种映射涉及概念模型、设计模型、实现模型和部署模型的转换,以适应不同的计算逻辑和运行平台。
软件工程是一个综合性的学科,涵盖了理论、技术、管理和工程实践。正确理解和应用这些原理,对于高效、成功地开发软件至关重要。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2012-06-12 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
涟雪沧
- 粉丝: 22
- 资源: 2万+
最新资源
- 全新PHP网址缩短防封短网址生成系统
- Almayce Video Handler-开源
- NotaFiscalNet:.NET电子发票生成
- 武汉医保读卡DLL动态库.rar
- Ziplyne Player prod-crx插件
- RestWithSpringBootMath
- ZoomTest.rar_FlashMX/Flex源码_FlashMX_
- Weinview触摸屏-OMRON_CJ1CS1PLC连接说明书
- quantcs-impl:量化类约束的实现
- Luiz_Henrique_Souza_JAMStackAlura
- paixu.rar_汇编语言_Asm_
- Learn-wp-cli:命令行,WP-CLI和自定义WP-CLI命令入门
- Ledavio Image Importer-crx插件
- The-ABM-in-Archaeology-Bibliography:有关考古中基于代理的模型(ABM)的文献的完整列表。 由Iza Romanowska和Lennart Linde维护和创建
- HubCollections.3okat1n89t.gaJP44e
- flexx:用纯Python编写桌面和Web应用程序