




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 2009 BUPT TSEG,软件工程模型与方法Models & Methods of Software Engineering,第二章 软件生命周期模型 由安博测试空间技术中心, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,本章内容,2.1 软件工程过程 2.2 软件生命周期 2.3 软件过程模型 2.4 传统软件生命周期模型 2.5 新型软件生命周期模型, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.1 软件工程过程,软件工程过程是为了获得软件产品,在软件工具的支持下由软件工程师完成的一系列软件工程活动。 软件规格说明(specification)
2、:规定软件的功能及其使用限制; 软件开发(development):产生满足规格说明的软件; 软件确认(validation):通过有效性验证以保证软件能够满足客户的要求; 软件演进(evolution):为了满足客户的变更要求,软件必须在使用过程中进行不断地改进。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.2 软件生命周期,软件有一个孕育、诞生、成长、成熟、衰亡的生存过程。这个过程即为计算机软件的生命周期(Life Cycle)。 软件生命周期的六个基本步骤 制定计划 需求分析 设计 程序编码 测试 运行维护, 2009 BUPT TSEG 北京邮电大学 通信软件工
3、程中心,制定计划,确定要开发软件系统的总目标; 给出功能、性能、可靠性以及接口等方面的要求; 完成该软件任务的可行性研究; 估计可利用的资源 (硬件,软件,人力等)、成本、效益、开发进度; 制定出完成开发任务的实施计划,连同可行性研究报告,提交管理部门审查;, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,需求分析,对用户提出的要求进行分析并给出详细的定义; 编写软件需求说明书或系统功能说明书及初步的系统用户手册; 提交管理机构评审;, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,设计,概要设计 把各项需求转换成软件的体系结构。结构中每一组成部分都是意义明确的
4、模块,每个模块都和某些需求相对应; 详细设计 对每个模块要完成的工作进行具体的描述,为源程序编写打下基础; 编写设计说明书,提交评审。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,程序编码,把软件设计转换成计算机可以接受的程序代码,即写成以某一种特定程序设计语言表示的“源程序清单”; 写出的程序应当是结构良好、清晰易读的,且与设计相一致的;, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,测试,单元测试,查找各模块在功能和结构上存在的问题并加以纠正; 组装测试,将已测试过的模块按一定顺序组装起来; 按规定的各项需求,逐项进行有效性测试,决定已开发的软件是否合
5、格,能否交付用户使用;, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,运行维护,改正性维护:运行中发现了软件中的错误需要修正; 适应性维护:为了适应变化了的软件工作环境,需做适当变更; 完善性维护:为了增强软件的功能需做变更。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.3 软件过程模型,模型是实际事物、实际系统的抽象。 软件过程模型也称做软件生命周期模型,是从一个特定角度提出的对软件过程的简化描述,是对软件开发实际过程的抽象,它包括构成软件过程的各种活动、软件工件(artifact)以及参与角色等。 软件生命周期模型描述从软件需求定义直至软件经使用后
6、废弃为止,跨越整个生存期的软件开发、运行和维护所实施的全部过程、活动和任务的结构框架,同时描述生命周期不同阶段产生的软件工件,明确活动的执行角色等。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4 传统软件生命周期模型,2.4.1 瀑布模型 2.4.2 V模型和W模型 2.4.3 原型方法 2.4.4 演化模型 2.4.5 增量模型 2.4.6 螺旋模型 2.4.7 喷泉模型 2.4.8 构件组装模型 2.4.9 快速应用开发模型, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.1 瀑布模型,Winston Royce在软件生命周期概念的基础上,
7、于1970年提出了著名的“瀑布模型”(waterfall model)。,维护评价, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.1 瀑布模型,瀑布模型中的每一个开发活动具有下列特征: 本活动的工作对象来自于上一项活动的输出,这些输出一般是代表本阶段活动结束的里程碑式的文档。 根据本阶段的活动规程执行相应的任务。 产生本阶段活动相关产出软件工件,作为下一活动的输入。 对本阶段活动执行情况进行评审。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.1 瀑布模型,瀑布模型的优缺点, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.
8、4.2 V模型和W模型,1980年代后期Paul Rook提出了V模型, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,W模型,Evolutif公司在V模型的基础上提出了W模型, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,原型方法的产生 瀑布模型、V模型和W模型都将软件生命周期划分成独立串行的几个阶段,前一个阶段没有完成便无法开始下一阶段的工作。 然而完整而准确的需求规格说明是很难得到的,因为: 在开发早期用户往往对系统只有一个模糊的想法,很难完全准确地表达对系统的全面要求 随着开发工作的推进,用户可能会产生新的要求 开发者有可能在设计
9、与实现的过程中遇到一些没有预料到的实际困难,需要以改变需求来解脱困境, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,原型指模拟某种最终产品的原始模型; 原型方法指在获得一组基本需求后,通过快速分析构造出一个小型的软件系统原型,满足用户的基本要求。 用户通过使用原型系统,提出修改意见,从而减少用户与开发人员对系统需求的误解,使需求尽可能准确。 原型方法主要用于明确需求,但也可以用于软件开发的其他阶段。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,原型的三种作用类型: (1)探索型:弄清用户对目标系统的要求,确定所期
10、望的特性;探讨多种实现方案的可行性。主要针对需求模糊、用户和开发者对项目开发都缺乏经验的情况。 (2)实验型;用于大规模开发和实现之前,考核技术实现方案是否合适、分析和设计的规格说明是否可靠。 (3) 进化型:在构造系统的过程中能够适应需求的变化,通过不断地改进原型,逐步将原型进化成最终的系统。它将原型方法的思想扩展到软件开发的全过程,适用于需求经常变动的软件项目。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,由于运用原型的目的和方式不同,在使用原型时可采取以下两种不同的策略: 废弃策略 :原型主要用于反馈和评价,据此设计出完整、准确、一致、可靠的最终
11、系统。系统构造完成后,原来的原型系统就被废弃不用。探索型和实验型原型属于这种策略。 追加策略 :原型作为最终系统的核心,然后通过不断地扩充修改,逐步追加新要求,最后发展成为最终系统。它对应于进化型原型。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,原型方法的特点: (1)从认知论的角度看,原型方法遵循了人们认识事物的规律,因而更容易为人们所普遍接受,这主要表现在: 人们对任何事物的认知都不可能一蹴而就、尽善尽美; 认识和学习的过程都是循序渐进的; 对于事物的描述,往往都是受环境的启发而不断完善的; 人们批评指责一个已有的事物,要比空洞地描述自己的设想容
12、易得多,改进一些事物要比创造一些事物容易得多。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法, 原型方法将模拟的手段引入分析的初期阶段,沟通了人们的思想,缩短了用户和开发人员之间的距离。这主要表现在: 所有问题的讨论都是围绕某一个确定原型而进行的,彼此之间不存在误解和答非所问的可能性,为准确认识问题创造了条件。 有了原型才能启发人们对原来想不起来或不易准确描述的问题有一个比较确切的描述; 能够及早地暴露出系统实现后存在的一些问题,促使人们在系统实现之前就加以解决。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,原型
13、提供了用户与开发人员良好的沟通手段,易于被人们接受,使用原型方法有以下好处: 原型方法有助于增进软件人员和用户对系统服务需求的理解 ; 原型方法提供了一种有力的学习手段; 使用原型方法,可以容易地确定系统的性能,确认各项主要系统服务的可应用性,确认系统设计的可行性,确认系统作为产品的结果 ; 软件原型的最终版本,有的可以原封不动地成为产品,有的略加修改就可以成为最终系统的一个组成部分,这样有利于建成最终系统。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,原型法的适用范围和局限性: 对于一个大型系统,如果不经过系统分析得到系统的整体划分,而直接用原型来模
14、拟是很困难的。 对于大量运算的、逻辑性较强的程序模块,原型方法很难构造出该模块的原型来供人评价。 对于原有应用的业务流程、信息流程混乱的情况,原型构造与使用有一定的困难。 对于一个批处理系统,由于大部分活动是内部处理的,因此应用原型方法会有一定的困难。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,原型方法存在的问题: 文档容易被忽略。 建立原型的许多工作会被浪费掉 。 项目难以规划和管理。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,1984年Boar提出一系列影响原型方法选择的因素, 2009 BUPT TS
15、EG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,原型方法的应用过程, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,原型方法可以支持软件生命周期的不同阶段,辅助或代替分析阶段 辅助设计阶段 代替分析与设计阶段 代替分析、设计和实现阶段 代替全部开发阶段, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,支持原型构造的软件复用技术 所谓复用就是利用一些从早先软件开发过程中收集到的、对建立新系统有用的信息来构建新系统。 从复用的内容角度可以划分其类型为: 数据复用:实现不同数据环境的移植; 模块复用:COM/DC
16、OM、JavaBean/EJB、CORBA 结构复用:领域内通用业务逻辑;实现MVC(Model-View-Control,模型视图控制器)体系结构的Struts框架、实现数据库访问逻辑复用的Hibernate框架等 设计复用:MDA(Model Driven Architecture,模型驱动体系结构) 规格说明复用:规格说明可使用或者可参照使用。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.3 原型方法,软件复用的两种实现机制: 合成复用:构件是基础,构件以抽象数据类型为理论基础,将功能实现细节与数据结构封装在构件内部,对外有着精心设计的接口,供外部使用者构造应
17、用时调用。构件本身可以是对某一函数、过程、子程序、数据类型、算法等可复用软件成份的抽象,利用构件来构造软件系统,有较高的生产率和较短的开发周期。 生成复用:利用可复用的模式(Patterns),通过生成程序产生一个新的应用程序或程序段, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.4 演化模型,使用瀑布模型人们认识到,由于需求很难调研充分,所以很难一次性开发成功。 演化模型提倡两次开发: 第一次是试验开发,得到试验性的原型产品,其目标只是在于探索可行性,弄清软件需求; 第二次在此基础上获得较为满意的软件产品。, 2009 BUPT TSEG 北京邮电大学 通信软件工程
18、中心,2.4.4 演化模型,演化模型分类: 探索式演化模型 抛弃式演化模型 演化模型的特点: 优点:明确用户需求、提高系统质量、降低开发风险; 缺点:难于管理、结构较差、技术不成熟; 演化模型适用范围: 需求不清楚; 小型或中小型系统; 开发周期短, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.5 增量模型,Mills等人于1980年提出 ,指首先对系统最核心或最清晰的需求进行分析、设计、实现、测试并集成到系统中。再按优先级逐步对后续的需求进行上述工作,逐步建设成一个完整系统的开发方法。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.5 增量
19、模型,使用增量模型开发字处理软件时,可以按照以下优先级进行增量开发: 第一个增量实现基本的文件管理、编辑和文档生成功能; 第二个增量实现更加完善的编辑和文档生成功能; 第三个增量实现拼写和文法检查功能; 第四个增量完成高级的页面布局功能。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.5 增量模型,增量模型的优点: 有利于增加客户对系统的信心; 降低系统失败风险; 提高系统可靠性; 提高了系统的稳定性和可维护性; 增量模型的缺点: 增量粒度难以选择; 确定所有的基本业务服务比较困难 。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.6 螺旋模
20、型,Boehm于1988年提出,主要针对大型软件项目的开发。 大型软件项目的特点: (1)需求功能复杂,无法一开始就明确;开发周期长,中途需求经常变化; (2)往往存在诸多风险因素,在不同程度上损害软件开发过程和软件产品的质量,所以必须对风险进行管理。 螺旋模型最大特点就是引入了明确的风险管理。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.6 螺旋模型,四个象限 制定计划 风险分析 实施工程 客户评价, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.6 螺旋模型,制定计划:确定软件项目目标;明确对软件开发过程和软件产品的约束;制定详细的项目管
21、理计划;根据当前的需求和风险因素,制定实施方案,并进行可行性分析,选定一个实施方案,并对其进行规划。 风险分析:明确每一个项目风险,估计风险发生的可能性、频率、损害程度,并制定风险管理措施规避这些风险。 实施工程:针对每一个开发阶段的任务要求执行本开发阶段的活动。 客户评估:客户使用原型,反馈修改意见;根据客户的反馈,对产品及其开发过程进行评审,决定是否进入螺旋线的下一个回路。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.7 喷泉模型,喷泉模型也称迭代模型,认为软件开发过程的各个阶段是相互重叠和多次反复的,就象喷泉一样,水喷上去又可以落下来,既可以落在中间,又可以落
22、到底部。 各个开发阶段没有特定的次序要求,完全可以并行进行,可以在某个开发阶段中随时补充其他任何开发阶段中遗漏的需求。 优点: 提高开发效率 缩短开发周期 缺点:难于管理, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.8 构件组装模型,构件组装模型利用模块化思想将整个系统模块化,并在一定构件模型的支持下复用构件库中的一个或多个软件构件,通过组装高效率、高质量地构造软件系统。构件组装模型本质上是演化的,开发过程是迭代的 。,构件组装模型的开发过程就是构件组装的过程,维护的过程就是构件升级、替换和扩充的过程。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心
23、,2.4.8 构件组装模型,优点: 充分利用软件复用,提高了软件开发的效率。 允许多个项目同时开发,降低了费用,提高了可维护性,可实现分步提交软件产品。 缺点: 缺乏通用的构件组装结构标准,风险较大; 构件可重用性和系统高效性之间不易协调; 由于过分依赖于构件,构件质量影响着最终产品的质量。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.9 快速应用开发模型,快速应用开发(Rapid Application Development,RAD)是一个增量型的软件开发过程模型,强调极短的开发周期 。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.4.9
24、 快速应用开发模型,RAD模型的缺点: 并非所有应用都适合采用RAD,如果一个应用不能被模块化,那么构造应用的构件就无法快速获取 由于时间约束,开发人员和客户必须在较短的时间内完成一系列的需求分析,沟通配合不当都会导致应用RAD模型的失败 RAD适合于管理信息系统的开发,对于其他类型的应用系统,如技术风险较高、与外围系统的互操作性较高等,不太合适, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5 新型软件生命周期模型,2.5.1 RUP 2.5.2 敏捷模型, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,RUP(Rational Un
25、ified Process)统一过程模型是由Rational公司(现被IBM公司收购)开发的一种软件工程过程框架,是一个面向对象的基于web的程序开发方法论 。 RUP既是一种软件生命周期模型,又是一种支持面向对象软件开发的工具,它将软件开发过程要素和软件工件要素整合在统一的框架中 。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,RUP的基本结构, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,RUP中的软件生命周期在时间上被分解为四个顺序的阶段:初始阶段(Inception)、细化阶段(Elaboration)、构造
26、阶段(Construction)和交付阶段(Transition)。 每个阶段结束于一个主要的里程碑(Major Milestones),并在阶段结尾执行一次评估以确定这个阶段的目标是否已经满足。如果评估结果令人满意的话,可以允许项目进入下一个阶段。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,RUP的9个核心工作流 6个核心过程工作流 商业建模(Business Modeling) 需求(Requirements) 分析和设计(Analysis & Design) 实现(Implementation) 测试(Test) 部署(Deployment),
27、2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,3个核心支持工作流: 配置和变更管理(Configuration & Change Management) 项目管理(Project Management) 环境(Environment), 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,初始阶段 目标是为系统建立商业案例(business case)并确定项目的边界。 商业案例包括项目的验收规范、风险评估、所需资源估计、阶段计划等。 要确定项目边界,需识别所有与系统交互的外部实体,并在较高层次上定义外部实体与系统交互的特性,主
28、要包括识别外部角色(actor)、识别所有用例并详细描述一些重要的用例。 阶段结束里程碑:生命周期目标(Lifecycle Objective)里程碑,包括一些重要的文档,如:项目构想(vision)、原始用例模型、原始业务风险评估、一个或者多个原型、原始商业案例等。需要对这些文档进行评审,以确定正确理解用例需求、项目风险评估合理、阶段计划可行等。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,细化阶段 目标是分析问题领域,建立健全的体系结构基础,编制项目计划,完成项目中高风险需求部分的开发。 里程碑:生命周期体系结构(Lifecycle Architec
29、ture)里程碑。包括风险分析文档、软件体系结构基线、项目计划、可执行的进化原型、初始版本的用户手册等。通过评审确定软件体系结构已经稳定、高风险的业务需求和技术机制已经解决、修订的项目计划可行等。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,构造阶段 将所有剩余的技术构件和稳定业务需求功能开发出来,并集成为产品,所有功能被详细测试。从某种意义上说,构造阶段只是一个制造过程,其重点放在管理资源及控制开发过程以优化成本、进度和质量。 里程碑:初始运行能力(Initial Operational Capability)里程碑。包括可以运行的软件产品、用户手册等
30、,它决定了产品是否可以在测试环境中进行部署。此刻,要确定软件、环境、用户是否可以开始系统的运行。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,移交阶段 移交阶段的重点是确保软件对最终用户是可用的。交付阶段可以跨越几次迭代,包括为发布做准备的产品测试,基于用户反馈的少量调整。 里程碑:产品发布(Product Release)里程碑。此时,要确定最终目标是否实现,是否应该开始产品下一个版本的另一个开发周期。在一些情况下这个里程碑可能与下一个周期的初始阶段的相重合。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,RUP的
31、迭代增量开发思想 RUP是融合了喷泉模型和增量模型的一种综合生命周期模型。,每一次迭代就是为 了完成一定阶段性 小目标而从事的一 系列开发活动 。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,RUP通过迭代增量建模思想提高了风险控制能力,这体现在: 迭代计划安排是风险驱动的,高风险因素集中在前两个阶段解决,特别是体系结构级的风险在细化阶段就得到了解决,及早降低了系统风险; 每一次迭代都包括需求、设计、实施、部署和测试活动,因此,每一个中间产品都得到了集成测试,而且这个集成测试是在一个统一的软件体系结构指导下完成的;, 2009 BUPT TSEG 北京邮
32、电大学 通信软件工程中心,2.5.1 RUP, 每一个阶段结束时还有严格的质量评审,保证里程碑文档的质量; 由于中间版本的产品是逐步产生的,而且核心功能和性能需求已经包含在前面的版本中,所以,可以根据市场竞争的情况适时推出中间版本,降低市场风险。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,RUP的最佳实践: 短时间分区式的迭代:26周,不鼓励时间推迟; 适应性开发:小步骤、快速反馈和调整; 在早期迭代中解决高技术风险和高业务价值的问题; 不断地让用户参与迭代结果的评估,并及时获取反馈信息,以逐步阐明问题并引导项目进展; 在早期迭代中建立内聚的核心架构。
33、, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP, 不断地验证质量;尽早、经常和实际地测试; 使用用例驱动软件建模:用例是获取需求、制定计划、进行设计、测试、编写终端用户文档的驱动力量。 可视化软件建模:使用UML(Unified Modeling Language,统一建模语言)进行软件建模。 仔细地管理需求:不要草率地对待需求,而要有机地进行需求的提出、记录、等级划分、追踪。拙劣的需求管理是项目陷入麻烦的一个常见原因。 实行变更请求和配置管理。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.1 RUP,RUP是一个通用的过程模板
34、,包含了很多开发指南、工件、开发过程所涉及到的角色说明等,因此,具体开发机构在应用RUP开发项目时要做裁剪。RUP裁剪可以分为以下几步: 确定本项目需要的工作流。 确定每个工作流需要的工件。 确定4个阶段之间的演进计划。以风险控制为原则,决定每个阶段实施的工作流,每个工作流的执行程度,生成的工件及其完成程度等。 确定每个阶段内的迭代计划。规划RUP的4个阶段中每次迭代开发的内容。 规划工作流内部结构。用活动图(activity diagram)规划工作流中涉及的角色、角色负责的活动及产出的工件。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.2 敏捷模型,敏捷建模(A
35、gile Modeling,AM)是由Scott W. Ambler从许多的软件开发过程实践中归纳总结出来的一些敏捷建模价值观、原则和实践等组成的,它只是一种态度,不是一个说明性过程 。 AM是对已有生命周期模型的补充,它本身不是一个完整的方法论,在应用传统的生命周期模型时可以借鉴AM的过程指导思想 。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.2 敏捷模型,敏捷建模的价值观: 个人和交互胜过过程和工具; 实用的软件胜过面面俱到的文档; 客户合作胜过合同谈判; 响应变化胜过遵循计划。 沟通、简单、反馈、勇气、谦逊, 2009 BUPT TSEG 北京邮电大学 通信
36、软件工程中心,2.5.2 敏捷模型,敏捷建模原则: (1)优先考虑的是通过尽早地和不断地提交有价值的软件使客户满意; (2)即使到了开发的后期,也欢迎改变需求; (3)敏捷过程利用变化来为客户创造竞争优势; (4)经常性地交付可以工作的软件,交付的间隔可以从几个星期到几个月,交付的时间间隔越短越好; (5)围绕被激励起来的个体来构建项目; (6)给他们提供所需的环境和支持,并且信任他们能够完成工作;, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.2 敏捷模型,(7)在团队内部,最具有效果并富有效率的传递信息的方法,就是面对面的交谈;工作的软件是首要的进度度量标准;敏捷
37、过程提倡可持续的开发速度; (8)责任人、开发者和用户应该能够保持一个长期的、恒定的开发速度; (9)优秀的技能和好的设计会增强敏捷能力; (10)简单是最根本的; (11)最好的构架、需求和设计出于自组织团队; (12)每隔一定时间,团队会在如何才能更有效地工作方面进行反省,对自己的行为进行调整。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.2 敏捷模型,敏捷建模核心实践 项目干系人的积极参与 正确使用工件 集体所有制 测试性思维 并行创建模型 创建简单的内容 简单地建模,公开展示模型 切换到另外的工件 小增量建模 和他人一起建模 用代码验证 使用最简单的工具,
38、2009 BUPT TSEG 北京邮电大学 通信软件工程中心,2.5.2 敏捷模型,敏捷模型补充实践: 使用建模标准 逐渐应用模式(pattern) 丢弃临时模型 合同模型要正式 为外部交流建模 为帮助理解建模 重用现有的资源 不到万不得已不更新模型, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,极限编程,极限编程(eXtreme Programming,XP)是敏捷模型的一种实现过程,由KentBeck在1996年提出 。, 2009 BUPT TSEG 北京邮电大学 通信软件工程中心,极限编程,极限编程的12个实践 : (1)小版本。为了高度迭代,与客户展现开发的进展,小版本发布是一个可交流的好办法,客户可以针对性提出反馈。但小版本把模块缩得很小,会影响软件的整体思路连贯,所以小版本也需要总体合理的规划。 (2)规划游戏。就是客户需求,以客户故事的形式,由客户负责编写。极限编程不讲求统一的客户需求收集,也不是由开发人员整理,而是采取让客户编写,开发人员进行分析,设定优先级别,并进行技术实现。当然
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- DB6104T 27.5-2023 彬州梨标准综合体 第5部分:病虫害综合防控技术规程
- 2024理论考试护理应急预案试题及答案
- DB6103T 59-2024 企业开办服务规范
- 抗肿瘤药物规范配置培训理论考核试题与答案
- 光伏电站安全教育培训考核试题(含答案)
- 单人徒手心肺复苏培训试题及答案
- DB6105T 159-2021 黄桃建园技术规程
- 李白《月下独酌》课件
- 2025年查对制度考试试题题库及解析答案
- 热力工程专项方案(3篇)
- 学生生活全景模板
- 安全生产管理制度-普货运输
- 建设项目日照分析报告
- 第八届全国职工职业技能大赛(网络和信息安全管理员)安徽选拔赛试题及答案
- 无人机装调检修工理论知识考试题及答案
- (部编版)统编版小学语文教材目录(一至六年级上册下册齐全)
- 湖北省2025届高三(9月)起点考试 语文试卷(含答案)
- 2024重庆机场集团公开招聘57人(高频重点提升专题训练)共500题附带答案详解
- 2025届广东省佛山市南海区数学七上期末统考试题含解析
- JGJT384-2016 钻芯法检测混凝土强度技术规程
- 血透进修汇报
评论
0/150
提交评论