- 1、本文档共65页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章 软件开发模型 § 2.1 软件生存周期 § 2.2 传统软件开发模型 § 2.3 软件演化模型 § 2.4 面向对象开发模型 § 2.5 形式化方法模型 2.1软件生存周期 软件有一个孕育、诞生、成长、成熟、衰亡的生存过程。这个过程即为软件的生存期 软件生存期包含三个阶段:软件定义、软件开发及软件运行维护。 软件生存期模型是软件工程思想的具体化,是跨越软件生存期的系统开发、运行、维护所实施的全部活动和任务的过程框架。 软件生存期一般划分为计划、开发、运行三个时期,每一个时期又区分为若干个阶段。计划时期有问题定义和可行性研究两个阶段;开发时期有需求分析、系统设计、编码和测试4个阶段;运行时期主要是系统维护阶段。 软件生存周期 2.2 传统软件开发模型 “What——How——Change”概括了软件开发活动(定义、开发、维护)中的主要特征。 传统的软件开发模型主要有瀑布模型与快速原型模型。 2.2.1 瀑布模型 各项活动按自上而下,相互衔接的固定次序,如同瀑布逐级下落。每项活动均处于一个质量环(输入-处理-输出-评审)中。 制定计划 确定要开发软件系统的总目标; 给出功能、性能、可靠性以及接口等方面的要求; 完成该软件任务的可行性研究; 估计可利用的资源 (硬件,软件,人力等)、成本、效益、开发进度; 制定出完成开发任务的实施计划,连同可行性研究报告,提交管理部门审查。 需求分析和定义 对用户提出的要求进行分析并给出详细的定义; 编写软件需求说明书或系统功能说明书及初步的系统用户手册; 提交管理机构评审。 软件设计 概要设计 — 把各项需求转换成软件的体系结构。结构中每一组成部分都是意义明确的模块,每个模块都和某些需求相对应; 详细设计 — 对每个模块要完成的工作进行具体的描述,为源程序编写打下基础; 编写设计说明书,提交评审。 程序编写 把软件设计转换成计算机可以接受的程序代码,即写成以某一种特定程序设计语言表示的“源程序清单”; 写出的程序应当是结构良好、清晰易读的,且与设计相一致的。 软件测试 单元测试,查找各模块在功能和结构上存在的问题并加以纠正; 组装测试,将已测试过的模块按一定顺序组装起来; 按规定的各项需求,逐项进行有效性测试,决定已开发的软件是否合格,能否交付用户使用。 运行/维护 纠正性维护 运行中发现了软件中的错误需要 修正; 适应性维护 为了适应变化了的软件工作环境,需做适当变更; 完善性维护 为了增强软件的功能需做变更。 按照传统瀑布模型开发软件的特点 1.阶段间具有顺序性和依赖性。 2.推迟实现的观点。 3.每个阶段必须完成规定的文档;每个阶段结束 前完成文档审查,及早改正错误。 传统瀑布模型开发软件带来的问题: 过程基本不可迭代 需求在开始的不确定性 错误到最后才能发现 开发进程呈现塞阻状态 2.2.2 快速原型模型 快速原型模型(Rapid Prototype Model)的主要做法是:首先建立一个能够反映用户主要需求的原型,让用户实际看一看未来系统的概貌,以便判断哪些功能是符合需要的,哪些方面还需要改进。 快速原型系统的优越性主要体现在:软件开发人员向用户提供一个“样品”,用户向开发人员迅速作出“反馈”。 快速原型模型图示 如何产生快速原型系统? 原型系统仅包括未来系统的主要功能,以及系统的重要接口。 为了尽快向用户提供原型,开发原型系统时应尽量使用能缩短开发周期的语言和工具。 把原型系统作为基础,通过补充与修改获得最终的实际系统。 快速原型模型带来的问题: 需要足够的人力资源 ? 用户和设计都成为关键 适用于MIS形式的系统 2.3 软件演化模型 传统开发模型共同特征:线性思维而大部分复杂软件采用渐增式或迭代的开发方法,它们属于软件演化模型。 演化模型 由于在项目开发的初始阶段人们对软件的需求认识常常不够清晰,因而使得开发项目难于做到一次开发成功,出现返工再开发在所难免。做两次; 第一次只是试验开发,其目标只是在于探索可行性,弄清软件需求; 第二次则在此基础上获得较为满意的软件产品。 演化模型 先开发一个“原型”软件,完成部分主要功能,展示给用户并征求意见,然后逐步完善,最终获得满意的软件产品。 演化模型 增量模型(Incremental Model) 螺旋模型(Sprial Model) 1. 增量模型(递增模型) 先完成一个系统子集的开发,再按同样的开发步骤增加功能 (系统子集),如此递增下去直至满足全部系统需求。 系统的总体设计在初始子集设计阶段就应作出设想。 增量模型 把软件产品分解成一系列的增量构件,在增量开发迭代中逐步加入。 每个构件由
您可能关注的文档
- 高考数学一轮复习-45-函数y=Asin(ωx+φ)的图象及应用课件-新人教A.ppt
- 二次函数y=a(x-h)^2+k的图象与性质-(成都市东湖中学九上数学).ppt
- 九年级数学下册《二次函数y=ax2-bx-c的图象和性质》课件-新人教版.ppt
- 精品数学课件:2214二次函数y=ax2+bx+c的图象(人教版九年级上).ppt
- 现代半导体器件物理与工艺桂林电子科技大学图形曝光与光刻1.ppt
- 精品数学课件:2213二次函数y=a(x-h)2+k的图象第2课时(人教版九年级上)(1).ppt
- 建筑CAD应用教程——图形的输出.ppt
- 数学九年级下人教新课标2612二次函数的图象和性质(5)课件.ppt
- 高考数学一轮复习-27-函数的图象课件-新人教A必修1.ppt
- 第2章-图形输入输出设备.ppt
最近下载
- 2025年上海民办进华中学-新初一分班语文模拟试题(5套,附答案).pdf VIP
- 广州中医药大学方剂学模拟题.pdf VIP
- 围术期心肌缺血的处理.ppt
- 营养性疾病患儿护理—维生素D缺乏性佝偻病患儿护理(儿科护理课件).pptx VIP
- 浙教版八年级数学下册期中期末挑战满分冲刺卷特训03平行四边形(题型归纳)(原卷版+解析).docx VIP
- (水工建筑物课程设计.doc VIP
- 2024年第十二届海峡两岸青少年思维能力展示活动福建海选赛五年级数学A卷(无答案).docx
- 思维导图基础入门.pptx
- 北京市朝阳区2023-2024学年高二下学期期末英语检测试题(附答案).docx
- DB50_T 989-2020 地质灾害治理工程施工技术规范.pdf
文档评论(0)