版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第1章软件工程学概述-2,李建义,1.4软件过程模型,一、瀑布模型1瀑布模型规定了各项软件工程活动,包括:制定开发计划,进行需求分析和说明,软件设计,程序编码,测试及运行维护,并规定它们按固定顺序自上而下、相互衔接。,一、瀑布模型,一、瀑布模型,2特征:(1)阶段间具有顺序性和依赖性第一:必须等前一个阶段的工作完成之后,才能开始后一阶段的工作。第二:前一阶段的输出文档就是后一阶段的输入文档,所以,只有前一阶段的输出文档正确,后一阶段的工作才能获得正确的结果。(2)推迟实现的观点事实证明越早进行编码最终完成开发工作所需要的时间反而越长。对于瀑布模型来讲,在编码阶段之前还有分析和设计过程,将逻辑设
2、计与物理设计区分,尽可能推迟程序的物理实现。(3)质量保证的观点第一:每个阶段都必须完成规定的文档,没有合格的文档就没有完成该阶段的任务。第二:每个阶段结束前都要对所完成的文档进行评审,便尽早发现问题,改正错误。,一、瀑布模型,3缺点:(1)缺乏灵活性。无法解决对软件需求不明确或不准确的问题,开发出来的软件不能满足用户需求,最终的结果就是返工。(2)瀑布模型是由文档驱动的。文档是静态的,用它很难全面正确地描述动态的软件需求。4.适用场合:用户需求明确,二、快速原型模型,1快速原型是快速建立起来的可以在计算机上运行的程序(原型),它所能完成的功能往往是最终产品完成的功能的一个子集。,快速原型,二
3、、快速原型模型,2优点:能满足用户的需求。用户参与开发原型的过程及原型的运行和评价,在这过程中让用户及时提出自已的新要求,开发者对立即进行修改,直到用户满意为止。3根据建立原型的目的的不同,通常分为以下三种类型的原型:(1)渐增式原型。,听取用户意见需求分析,快速构造原型,用户运行测试原型,修改原型,实现最终原型,满意,二、快速原型模型,(2)用于验证软件需求的原型。往往用后就丢弃。(3)用于验证设计方案的原型。将原型作为新设计思想的实现工具,开发软件部分原型。,三、增量模型,1增量模型开发软件时,把软件产品作为一系列的增量构件来设计、编码、集成和测试。每个构件由多个相互作用的模块构成,并且能
4、够完成特定的功能。增量开发:按一定的时间间隔开发部分软件增量提交:软件分多个部分逐步提交给用户使用,三、增量模型,图1.6风险更大的增量模型一旦确定用户需求后,分构件进行需求规格说明编写、设计、编码等工作。,三、增量模型,2优点:(1)能在较短的时间内向用户提交可完成部分工作的产品。(2)逐步增加产品功能可以使用户有较充裕的时间学习和适应新产品,从而减少一个全新的软件可能给客户组织带来的冲击。3缺点:要求软件体系结构必须是开放式的。否则会造成整个软件无法集成。,四、螺旋模型,在瀑布模型和原型模型的基础上加入风险分析。,图1.7简化的螺旋模型,四、螺旋模型,四、螺旋模型,优点:有利于软件重用,提
5、高软件质量减少了过多测试或测试不足带来的风险适用场合:用于内部开发的大规模软件项目,五、喷泉模型,1是典型的面向对象软件开发模型,是一种以用户需求为动力,以对象作为驱动的模型,适合面向对象的开发方法,着重强调不同阶段之间的重叠,不需要或不应该严格区分不同的开发阶段。2喷泉模型将软件开发过程划分为系统分析、系统设计、对象设计与实现、测试和系统组装集成五个阶段。,四、喷泉模型,六、统一过程,1指使用统一建模语言UML,采取用例驱动和架构优先的策略。采用迭代增量建造方法。2RUP把软件开发过程划分为多个循环,每个循环生成产品的一个新版本。每个循环都由初始阶段、细化阶段、构造阶段和提交阶段四个阶段组成
6、。每个阶段是一个小的瀑布模型,要经过分析、设计、编码、集成和测试等阶段。结论:结构化方法可使用瀑布模型、增量模型和螺旋模型进行开发;面向对象方法学可采用快速原型、喷泉模型和统一过程进行开发。,七、敏捷过程与极限编程,1.敏捷过程价值观(1)个体和交互胜过过程和工具团对成员的合作、沟通以及交互能力要比单纯的软件编程能力更重要(2)可以工作的软件胜过面面俱到的文档(3)客户合作胜过合同谈判能指导开发团队和客户合作的的合同才是最好的合同(4)响应变化胜过遵循计划应该有足够的能力及时响应变化,七、敏捷过程与极限编程,2.极限编程极限:把好的开发实践运用到极致应用:需求模糊且经常改变的场合3.极限编程的
7、有效实践客户作为开发团队的成员使用用户素材短交付周期验收测试结对编程测试先行:先编测试用例、再编程代码集体所有,七、敏捷过程与极限编程,3.极限编程的有效实践持续集成:在一天之内多次集成可持续的开发速度:不加班开放的工作空间:便于交流讨论及时调整计划简单的设计重构:不改变功能的前提下调整和优化系统内部结构使用隐喻:系统全局视图,八、微软过程模型,微软软件生命周期阶段划分和主要里程碑,微软过程的生命周期模型,本章小结,了解:1软件工程发展史2软件工程学的内容理解:1软件危机的主要表现;2各种模型的工作过程;掌握:1软件生存周期过程的阶段划分原则和每一阶段的任务划分;2软件、软件危机和软件工程的概念;3软件工程基本原理4软件工程三要素,作业,补充作业:(1)软件工程学习网站软件工程专家网:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 心理治疗初级师考试历年真题题库及答案
- 养殖公司人事专员试题带答案
- 野生动物实验辅助工岗前安全实践考核试卷及答案
- 液化石油气充装工技能考核考试试题及答案
- 幼儿保教知识与能力测试题及答案
- 中储粮纪检监察面试题及答案
- 中级保管员考试题库及答案
- 铸造工艺面试题目及答案
- 中小学生安全知识竞赛参考答案分解
- 新闻记者培训考试试题及答案
- 2026年四川省机场集团有限公司人员招聘笔试参考题库及答案详解
- 《糖尿病治疗新进展》课件
- 《铁路机车运用管理规则》
- 服装设计的美学原理《服装设计基础》教学
- DB45T 1625-2024 地质灾害危险性评估规程
- 家装园林设计合同范例
- 第五课活动A、姓氏大探秘寻根问祖
- DL∕T 1671-2016 火力发电厂空冷岛钢结构安装及验收标准
- DL-T5334-2016电力工程勘测安全规程
- 零星维修工程服务方案设计
- 统计与概率《义务教育数学课程标准》解读
评论
0/150
提交评论