- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件开发过程生命周期模型
一、序 言
生命周期 指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。目前软件开发实践中使用的各种生命周期模型,都是下面这些基本组成部分的不同的排列与组合。
市场分析,可行性研究,与项目定义
需求分析
设计(概要设计和详细设计)
编码实现
测试
使用与维护
主要有以下几种模型:
1.瀑布模型(waterfall model)
2.演化模型(evolutionary model)
3.螺旋模型(spiral model)
二、瀑布模型
瀑布模型将软件生命周期的各项活动规定为依固定顺序联接的若干阶段工作,形如瀑布流水,最终得到软件产品。如图所示:
优点: a.强调开发的阶段性; b.强调早期计划及需求调查; c.强调产品测试。
缺点: a.依赖于早期进行的唯一一次需求调查,不能适应需求的变化; b.由于是单一流程,开发中的经验教训不能反馈应用于本产品的过程; c.风险往往迟至后期的开发阶段才显露,因而失去及早纠正的机会
下表是瀑布模型中各个阶段的主要工作,及相应的质量控制手段。
阶段 主要工作 应完成的文档 应完成的文档质量控制手段 系统需求 1.调研用户需求及用户环境2.论证项目可行性3.制定项目初步计划 1.可行性报告2.项目初步开发计划 1.规范工作程序及编写文档2.对可行性报告及项目初步开发计划进行评审 需求分析 1.确定系统运行环境2.建立系统逻辑模型3.确定系统功能及性能要求4.编写需求规格说明、用户手册概要、测试计划5.确认项目开发计划 1.需求规格说明2.项目开发计划3.用户手册概要4.测试计划 1.在进行需求分析时采用成熟的技术与工具,如结构化分析2.规范工作程序及编写文档3.对已完成的4种文档进行评审 设计 概要设计 1.建立系统总体结构,划分功能模块2.定义各功能模块接口3.数据库设计(如果需要)4.制定组装测试计划 1.概要设计说明书2.数据库设计说明书(如果有)3.组装测试计划 1.在进行系统设计时采用先进的技术与工具,如结构化设计SD、结构图SC2.编写规范化工作程序及文档3.对已完成的文档进行评审 详细设计 1.设计各模块具体实现算法2.确定模块间详细接口3.制定模块测试方案 1.详细设计说明书2.模块测试计划 1.设计时采用先进的技术与工具,如结构图SC2.规范工作程序及编写文档3.对已完成的文档进行评审 实现 1.编写程序源代码2.进行模块测试和调试3.编写用户手册 1.程序调试报告2.用户手册 1.在实现过程中采用先进的技术与工具,如结构图SC2.规范工作程序及编写文档3.对实现过程及已完成的文档进行评审 测试 集成测试 1.执行集成测试计划2.编写集成测试报告 1.系统源程序清单2.集成测试报告 1.测试时采用先进的技术和工具2.规范工作程序及文档编写3.对测试工作及已完成的文档进行评审 验收测试 1.测试整个软件系统(健壮性测试)2.试用用户手册3.编写开发总结报告 1.确认测试报告2.用户手册3.开发工作总结 维护 1.为纠正错误,完善应用而进行修改2.对修改进行配置管理3.编写故障报告和修改报告4.修订用户手册 1.故障报告2.修改报告 1.维护时采用先进的工具2.规范工作程序及编写文档3.配置管理4.对维护工作及已完成的文档进行评审
三、演化模型
该模型主要针对事先不能完整定义需求的软件开发。用户可以给出待开发系统的核心需求,并且当看到核心需求实现后,能够有效地提出反馈,以支持系统的最终设计和实现。软件开发人员根据用户的需求,首先开发核心系统。当该核心系统投入运行后,用户试用之,完成他们的工作,并提出精化系统、增强系统能力的需求。软件开发人员根据用户的反馈,实施开发的迭代过程。第一迭代过程均由需求、设计、编码、测试、集成等阶段组成,为整个系统增加一个可定义的、可管理的子集。如图所示。
在开发模式上采取分批循环开发的办法,每循环开发一部分的功能,它们成为这个产品的原型的新增功能。于是,设计就不断地演化出新的系统。 实际上,这个模型可看作是重复执行的多个“瀑布模型”。
“演化模型”要求开发人员有能力把项目的产品需求分解为不同组,以便分批循环开发。这种分组并不是绝对随意性的,而是要根据功能的重要性及对总体设计的基础结构的影响而作出判断。有经验指出,每个开发循环以六周到八周为适当的长度。
优点:
a.任何功能一经开发就能进入测试以便验证是否符合产品需求。
b.帮助导引出高质量的产
文档评论(0)