- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[软件工程第2章软件生存周期及其模型
第二章 2.1 软件工程过程与软件生存期 软件工程过程(Software engineering process) 软件工程过程(Software engineering process) 软件工程三要素 软件生存周期 软件的生存周期是指一个软件从提出开发要求直到该软件报废为止的整个时期。 软件的生存周期一次划分为若干阶段,生存阶段划分时应遵循的基本原则是各阶段的任务尽可能相对独立,同一阶段各项任务的性质尽可能相同,每一阶段都有明确的任务。 技术审查和管理复审 技术审查是从技术角度进行审查,是保证软件质量和降低软件成本的重要措施。 技术审查通常由专家组成的审查小组来承担审查工作。 管理复审的主要任务实在软件生存周期的每个重要里程碑,对工程项目的成本、实际花费的经费、投资回收的前景、项目的进度等经济因素从管理角度进行审查。 2.2 软件生存周期模型 软件生存周期模型是描述软件开发过程中各种活动如何执行的模型。 软件生存周期模型的选择受软件规模、种类、开发方式、开发环境以及开发使用的方法等因素影响。 软件生存周期模型一旦确定,软件开发过程就应该按照模型严格执行,不可随意更改。 软件生命周期(SDLD)—瀑布模型 常用的软件开发模型 软件过程模型 软件过程模型是软件开发全过程、软件开发活动以及它们之间关系的结构框架 软件项目的管理提供里程碑和进度表 为软件开发提供原则和方法 以软件需求完全确定为前提的瀑布模型 在软件开发初期只能提供基本需求所采用的渐进式开发模型如原型模型、螺旋模型、增量模型、并发开发模型 以形式化开发方法为基础的变换模型 基于构件的开发过程 敏捷开发过程---统一软件开发过程RUP 瀑布模型 瀑布模型主要思想 软件开发过程与软件生命周期是一致的 相邻二阶段之间存在因果关系 需对阶段性产品进行评审 瀑布模型的优点 软件生命周期模型,使软件开发过程可以在分析、设计、编码、测试和维护的框架下进行; 软件开发过程具有系统性、可控性,克服了软件开发的随意性 。 瀑布模型的缺点 项目开始阶段用户很难精确的提出产品需求,由于技术进步,用户对系统深入的理解,修改需求十分普遍。 项目开发晚期才能得到程序的运行版本,这时修改软件需求和开发中的错误代价很大。 采用线性模型组织项目开发经常发生开发小组人员“堵塞状态”,特别是项目的开始和结束。 增量模型特点 增量 小而可用的软件 特点 在前面增量的基础上开发后面的增量 每个增量的开发可用瀑布或快速原型模型 迭代的思路 循环模型 软件开发方法 结构化方法及瀑布模型 原型化方法及其工作模型 图2 细化的快速原型模型 原型模型的优点 原型模型支持软件需求开发,帮助用户和开发人员理解需求,是软件需求工程的关键。 它产生的正式需求文挡,是软件开发的基础。 如果开发的原型是可运行的,它的若干高质量的程序片段和开发工具可用于工作程序的开发。 原型的开发和评审是系统分析员和用户/客户共同参予的迭代过程,每个迭代循环都是线性过程。 螺旋模型 螺旋模型的使用 软件工程项目从螺旋中心开始启动,沿顺时针方向前进。 第一圈 产生产品规格说明; 第二圈 产生一个用于开发的原型; 第三圈 产生软件产品的初始版本; 第四圈 产生软件产品比较完善的新版本 ……。 螺旋模型的优点 符合人们认识现实世界和软件开发的客覌规律; 支持软件整个生命周期; 保持瀑布模型的系统性、阶段性; 利用原型评估降低开发风险; 开发者和用户共同参与软件开发,尽早发现软件中的错误; 不断推出和完善软件版本,有助于需求变化,获取用户需求,加强对需求的理解。 面向对象方法及其工作模型 面向对象开发方法的组成 2.3 生存周期模型的选择和剪裁 选择软件生存周期模型时,应综合考虑: 模型应符合软件本身的性质,如规模、复杂性等 模型应满足软件应用系统整体开发进度要求 模型应有可能控制并消除软件开发风险 模型应有可用的计算机辅助工具的支持 模型应与用户和软件开发人员的知识和技能相匹配 模型应有利于软件开发的管理与控制 生存周期模型的选择 面向过程方法: 瀑布模型、增量模型和螺旋模型 面向数据方法: 瀑布模型、增量模型 面向对象方法: 喷泉模型、迭代模型、原型模型 生存周期模型的剪裁 结合自身的开发经验和行业特点,制定适合的“生存周期模型剪裁指南”。 有针对性的对原模型中定义的内容进行增、改、删,去掉不适用的内容。 什么是原型化方法(Prototyping Method) 原型——是软件的一个早期可运行的版本,它反映了最终系统的部分重要特性。 原型化方法的基本思想是花费少量代价建立一个可运行的系统,使用户及早获得学习的机会。
文档评论(0)