软件工程02软件开发过程.pptx
《软件工程02软件开发过程.pptx》由会员分享,可在线阅读,更多相关《软件工程02软件开发过程.pptx(37页珍藏版)》请在优知文库上搜索。
1、软件工程软件工程2023-5-82第第2章章 软件开发过程软件开发过程 软件开发过程(软件开发过程(software development process)又叫)又叫做软件开发生命周期(做软件开发生命周期(software development life cycle, SDLC),是软件产品开发的任务框架和规范,又可),是软件产品开发的任务框架和规范,又可以简单的称为软件生命周期及软件过程以简单的称为软件生命周期及软件过程。 软件过程和生命周期软件过程和生命周期 软件过程模型:传统过程和敏捷(软件过程模型:传统过程和敏捷(Agile)过程)过程软件生命周期与开发过程软件生命周期与开发过程
2、国际标准国际标准ISO/IEC 12207是软件生命周期过程的国际是软件生命周期过程的国际标准,旨在提供一套软件开发与维护过程中涉及的各标准,旨在提供一套软件开发与维护过程中涉及的各种任务定义的标准,如软件生命周期的选择、实现与种任务定义的标准,如软件生命周期的选择、实现与监控等。监控等。 可重复的、可预测的过程可重复的、可预测的过程能够提升软件生产的效率和能够提升软件生产的效率和质量。质量。 软件工程过程小组软件工程过程小组(Software Engineering Process Group, SEPG)提供给软件开发人员统一的标准的开提供给软件开发人员统一的标准的开发原则,充分协调各开发
3、人员、开发小组,通过过程发原则,充分协调各开发人员、开发小组,通过过程控制的方法,保证软件产品的质量。控制的方法,保证软件产品的质量。2023-5-83软件过程与生命周期软件过程与生命周期 通常生命周期通常生命周期模型要更模型要更一般化,一般化,而软件开发而软件开发过程则过程则更为更为具体化。具体化。 可重复的、可预测的过程能够提可重复的、可预测的过程能够提升软件生产的效率和升软件生产的效率和质量。质量。(过(过程改进)程改进) 生命周期生命周期是软件开发的宏观上的是软件开发的宏观上的框架框架,软件过程则涉及到软件开,软件过程则涉及到软件开发的流程等管理细节,在框架稳发的流程等管理细节,在框架
4、稳定的前提下允许对软件过程进行定的前提下允许对软件过程进行裁剪。裁剪。 4种不同类型的生命周期:顺序种不同类型的生命周期:顺序式、迭代式、增量式以及敏捷式式、迭代式、增量式以及敏捷式2023-5-841软件定义软件定义2软件开发软件开发3运行维护运行维护2023-5-85软件生命周期软件生命周期 过程过程管理主要采用的是一种管理主要采用的是一种“分而治之分而治之”的思想,的思想,即将整个软件的生命周期划分成即将整个软件的生命周期划分成软件定义、软件软件定义、软件开发和运行维护开发和运行维护三个主要的时期,每个时期再细三个主要的时期,每个时期再细分为具体的阶段,分别对应明确的任务。分为具体的阶段
5、,分别对应明确的任务。可行性分析可行性分析与开发计划与开发计划1. 目的:用目的:用最小的代价在尽可能短的时间内确定该软件项最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得开发,最后给决策者提供做目是否能够开发,是否值得开发,最后给决策者提供做与不做的依据与不做的依据。(。(较高层次的需求分析和设计较高层次的需求分析和设计)2. 任务:确定项目的规模和目标,确定项目的约束和限制任务:确定项目的规模和目标,确定项目的约束和限制;进行进行简要的需求分析,抽象简要的需求分析,抽象出逻辑出逻辑结构,建立逻辑模型结构,建立逻辑模型;从从逻辑模型出发,经过压缩的设计,探索出若干种可供逻辑模
6、型出发,经过压缩的设计,探索出若干种可供选择的主要解决选择的主要解决办法。办法。3. 每每种解决方法都要从三方面研究它的可行性:种解决方法都要从三方面研究它的可行性:技术可行技术可行性、性、经济可行性经济可行性和社会可行性和社会可行性。4. 描述所提出的描述所提出的解决方案和方案的可行性解决方案和方案的可行性,并拟定,并拟定开发计开发计划划,包括对费用包括对费用、时间、进度、人员组织、时间、进度、人员组织、硬件配置硬件配置、软件开发环境和运行软件开发环境和运行环境配置环境配置等进行说明和规划。等进行说明和规划。2023-5-86需求分析需求分析1.在在确定软件开发可行的情况下,对目标软件未来需
7、要确定软件开发可行的情况下,对目标软件未来需要完成的功能进行的详细分析完成的功能进行的详细分析。2.需求分析需求分析是软件开发后续阶段的基础,直接关系到整是软件开发后续阶段的基础,直接关系到整个系统开发的成功与否。由于用户的需求随着项目的个系统开发的成功与否。由于用户的需求随着项目的进展和理解处在不断的变化之中,进展和理解处在不断的变化之中,应对需求进行应对需求进行变更变更管理管理。3.应应充分理解和掌握用户对目标软件的期望,除充分理解和掌握用户对目标软件的期望,除功能需功能需求求外还要对系统设计有影响的外还要对系统设计有影响的非功能性需求非功能性需求加以识别加以识别和分析和分析。4.需求分析
8、需求分析阶段的输出是一份阶段的输出是一份“需求规格(需求规格(Specification)说明书说明书”的文档。的文档。2023-5-87软件设计软件设计1.软件设计是在需求分析的基础上寻求系统求解的框架,软件设计是在需求分析的基础上寻求系统求解的框架,如系统的架构设计、数据设计等如系统的架构设计、数据设计等。2.软件软件设计可分为设计可分为概要设计概要设计和和详细设计详细设计,此阶段的输出分,此阶段的输出分别为别为“概要设计说明书概要设计说明书”和和“详细设计说明书详细设计说明书”。3.设计方案设计方案是软件实现的蓝图,应综合考虑软件的性能、是软件实现的蓝图,应综合考虑软件的性能、扩展、安全
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 02 软件 开发 过程