- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章 软件过程模型 软件生存周期 软件开发模型 瀑布模型 进化式模型 演化模型 形式化开发 第一节 软件生存周期 软件生存周期的概念: 一个软件从计划起,到废弃不用止。 软件生存周期包括:计划、开发、运行。 第三节 软件开发模型 System and software design 瀑布模型的优点 阶段间的顺序性和依赖性 推迟实现的观点 质量保证的观点 瀑布模型的问题Waterfall model problems 将项目生硬地分解成确切的阶段。 Inflexible partitioning of the project into distinct stages 对用户需求变更的相应困难。 This makes it difficult to respond to changing customer requirements 需求了解的好的时候,采用瀑布模型。 This model is only appropriate when the requirements are well-understood 2 快速原型开发模型Prototype Model 基本思想: 先开发出一个原型系统给用户使用,通过用户反馈意见来不断修改系统直到最后成熟。 让描述、开发、有效性验证活动并行执行。 原型模型 建立原型系统的方法 原型系统仅包括未来系统的主要功能,以及系统重要的接口。 开发原型系统尽可能使用能缩短开发周期的语言和工具。 3 演化模型-增量模型Evolutionary Model 增量模型的基本思想 每个增量提供系统功能的一个子集,一个增量完成并交付,部分系统功能可以提前交付使用。 对增量中服务的分配取决于服务优先次序。最高优先权的服务首先被交付。 第一个增量往往是核心的产品。 开发者能通过对系统的经验帮助理解后面的增量需求和目前增量后续版本的需求变更。 Incremental development advantages增量式开发过程的优点 客户无需等到整个系统的实现。 客户可以将早期的增量作为原型,从中获得对后面系统增量的需求经验。 项目总体性失败的风险比较低。 最高优先权的服务接受最多的测试。 Example 使用增量式开发的字处理软件 在第一个增量中发布基本的文件管理、编辑和文档生成功能; 在第二个增量中发布更加完善的编辑和文档生成能力; 第三个增量中实现拼写和文法检查功能; 第四个增量完成高级的页面布局功能。 4 演化模型-螺旋模型Evolutionary Model 螺旋模型的基本思想 每一个螺旋周期(Spiral model sectors)包含四个部分: (1)确定目标,选择方案,设定约束条件,选定完成本周期所定目标的策略。 (2)分析该策略可能存在的风险。 (3)在排除风险后,实现本螺旋周期的目标。 (4)评价前一步的结果,并且计划下一轮的工作。 螺旋模型的特点 每一阶段考虑技术风险。 依赖于风险评估。 5 形式化方法模型 转换模型(Transformational Model)-是结合形式化软件开发方法和程序自动生成技术的一种软件开发模型。 转换模型 净室模型Cleanroom Model 是一种形式化的增量开发模型。 基本思想: 力求在分析阶段就消除错误,确保正确,然后在无缺陷或“洁净”的状态下实现软件的制作。 “盒”(Box)-每一增量是一个形式化方式表示。 净室模型 6 基于组件的开发过程 Advantages 优势 减少需要开发的软件数量 降低软件开发成本 降低风险 软件快速交付 小结 软件过程模型 瀑布模型 原型模型 增量模型 螺旋模型 形式化开发模型 组件开发模型 新的开发模型 RUP统一开发过程 敏捷开发 极限编程 RAD快速的应用开发 设计模式 思考题 为以下各系统提出合适的软件过程模型,阐述理由: (1) 汽车防锁死刹车控制系统 (2)一个支持软件维护的虚拟现实系统 (3)大学记账系统,准备替换一个已存在的系统 (4)一个位于火车站的交互式火车车次查询系统 * * 第二节 软件开发模型概念 软件开发模型的概念: 为整个软件生存期建立的模型。 软件开发模型分类: 瀑布模型 进化式开发模型 演化模型 形式化开发模型 1 瀑布模型 The waterfall model Requirements definition Implementation And unit test Integration System testing Operation maintenance
文档评论(0)