南京大学软件工程期末复习重点:软件生命周期与过程模型

需积分: 9 9 下载量 13 浏览量 更新于2024-09-30 3 收藏 363KB PDF 举报
"南京大学软件工程2011年期末复习资料,pdf格式,涵盖了软件生命周期的各个活动和软件生命周期与过程模型的特征描述。" 在软件工程中,软件生命周期是指软件从概念形成到最终退役的全过程,包括多个关键活动。首先,我们需要掌握以下几个主要活动: 1. 需求分析:这是软件开发的初始阶段,目标是理解和描述问题域特性,确保系统行为符合用户需求。通过研究问题背景,开发需求,最终形成软件需求规格书(SRS)。 2. 设计:设计阶段包括体系结构设计、构件级设计和人机交互设计。在这个阶段,开发者依据软件主题建立软件架构,创建系统的模型,并编写相应的设计文档。 3. 实现:实现阶段涉及到使用编程语言将设计转化为可执行的代码,要求代码清晰、正确、可读,并且附带详细文档。此阶段还包括编码和除错。 4. 测试:测试是验证软件质量的过程,包括测试设计、单元测试、集成测试和系统测试,目的是发现并修复软件的错误和故障。 5. 安装维护:软件交付后,需要进行安装、用户培训以及后续的维护工作,确保软件能够持续稳定地运行。 接下来,我们讨论软件生命周期中的不同过程模型及其特点: 1. Build and Fix Model:这种模型适用于小规模的单人开发项目,没有明确的规划和分析,仅依赖于实际工作的程序作为工作产品。然而,随着软件规模的增大,其可理解和可维护性会显著下降。 2. Waterfall Model(瀑布模型):这是一种线性的、顺序的开发模型,每个阶段都有明确的界限和反馈。该模型强调文档驱动,但实际操作中,很难在项目开始时就获取完整、固定的需求,而且客户参与度有限,可能导致后期修改困难。 3. Incremental Delivery (迭代模型):该模型允许根据用户需求的优先级逐步交付软件功能。早期的增量包含核心需求,每次迭代都增加新的功能。这种方法能快速提供可执行的部分功能,降低成本回收时间,但需注意的是,它实质上是在每个迭代中应用了瀑布模型。 以上内容是软件工程复习的重点,对于理解和掌握软件开发过程具有重要意义。在实际项目中,开发团队应根据项目的特性和需求选择合适的过程模型,以确保软件质量和效率。