第二章软件生命周期和软件过程.ppt

上传人:ga****84 文档编号:434626 上传时间:2018-10-05 格式:PPT 页数:30 大小:1.20MB
下载 相关 举报
第二章软件生命周期和软件过程.ppt_第1页
第1页 / 共30页
第二章软件生命周期和软件过程.ppt_第2页
第2页 / 共30页
第二章软件生命周期和软件过程.ppt_第3页
第3页 / 共30页
第二章软件生命周期和软件过程.ppt_第4页
第4页 / 共30页
第二章软件生命周期和软件过程.ppt_第5页
第5页 / 共30页
点击查看更多>>
资源描述

1、第二章软件过程(2),2,软件工程 - 2011 - 第二章 软件过程,第二章内容概要,过程、软件过程和软件生命周期经典软件过程模型现代软件过程模型Rational统一过程敏捷过程与极限编程微软过程,3,软件工程 - 2011 - 第二章 软件过程,开发经验(最佳实践)迭代式开发 容纳需求变更/减少风险管理需求 使用用例和脚本使用基于构件的体系结构可视化建模验证软件质量 质量评估内建在贯穿于整个开 发过程的、由全体成员参与的所有活动中控制软件变更,RUP ( Rational Unified Process),4,软件工程 - 2011 - 第二章 软件过程,RUP软件开发生命周期,5,软件工

2、程 - 2011 - 第二章 软件过程,核心工作流业务建模需求分析与设计实现测试部署 生成目标系统的可运行版本,移交给用户配置与变更管理跟踪维护开发过程中Artifacts的完整 性和一致性项目管理提供项目管理框架,为软件开发项目制定计划、人员配备、执行和监控等方面的使用准则,并为风险管理提供框架环境提供软件开发环境,包括过程管理和工具支持,RUP软件开发生命周期,6,软件工程 - 2011 - 第二章 软件过程,RUP软件开发生命周期,7,软件工程 - 2011 - 第二章 软件过程,8,软件工程 - 2011 - 第二章 软件过程,Tips: Use Case & Scenario,9,软

3、件工程 - 2011 - 第二章 软件过程,10,软件工程 - 2011 - 第二章 软件过程,11,软件工程 - 2011 - 第二章 软件过程,RUP软件开发生命周期,12,软件工程 - 2011 - 第二章 软件过程,13,软件工程 - 2011 - 第二章 软件过程,工作阶段Inception:建立业务模型,定义最终产品视图,确定项目的范围Elaboration:设计并确定系统的体系结构,制定项目计划,确定资源需求Construction:开发所有构件和程序,集成为可户需要的产品,测试所有功能Transition:把开发出的产品提交给用户使用,RUP软件开发生命周期,14,软件工程 -

4、 2011 - 第二章 软件过程,敏捷过程,敏捷过程(2001/2敏捷软件开发宣言 The Manifesto of the Agile Alliance )敏捷过程的价值观个体和交互胜过过程和工具可以工作的软件胜过面面俱到的文档客户合作胜过合同谈判响应变化胜过遵循计划,15,软件工程 - 2011 - 第二章 软件过程,敏捷过程的原则我们最优先要做的是通过尽早的,持续的交付有价值的软件来使客户满意即使到了开发的后期,也欢迎改变需求.敏捷过程利用变化来为客户创造竞争优势经常性地交付可以工作的软件,交付的间隔可以从几周到几个月,交付的时间间隔越短越好在整个项目开发期间,业务人员和开发人员必须天天

5、都在一起工作围绕被激励起来的个人来构建项目.给他们提供所需要的环境和支持,并且信任他们能够完成工作,敏捷过程,16,软件工程 - 2011 - 第二章 软件过程,敏捷过程的原则 (续)在团队内部,最具有效果并且富有效率的传递信息的方法,就是面对面的交谈工作的软件是首要的进度度量标准敏捷过程提倡可持续的开发速度。责任人、开发者和用户应该能够保持一个长期的、恒定的开发速度不断地关注优秀的技能和好的设计会增强敏捷能力简单是根本的最好的架构、需求和设计出自于自组织的团队每隔一段时间,团队就会在如何才能更有效地工作方面进行反省,然后相应地对自己的行为进行调整,敏捷过程,17,软件工程 - 2011 -

6、第二章 软件过程,SCRUM : Schwaber, K., & Beddle, M. (2002). Agile Software Development with Scrum. NJ: Prentice Hall. Crystal : Cockburn, A. (2002). Agile Software Development. Boston: Addison-Wesley. Feature Driven Development (FDD) : Peter Coad, Eric Lefebvre, and Jeff De Luca (1999). Java Modeling In Col

7、or with UML: Enterprise Components and Process. Prentice Hall.Adaptive Software Development (ADP) : James A. Highsmith III (2000). Adaptive Software Development, Dorset House Publishing. eXtreme Programming (XP),敏捷过程,18,软件工程 - 2011 - 第二章 软件过程,极限编程是敏捷过程中最富盛名的一个,其中“极限”的含义是指把最好的开发实践运用到极致。目前极限编程已经成为一个典型

8、的开发方法,广泛应用于需求模糊且经常改变的场合。特点:对变化和不确定性反应更快速,更敏捷快速的同时保持可持续的开发速度,极限编程(eXtreme Programming, XP),19,软件工程 - 2011 - 第二章 软件过程,客户作为开发团队的成员使用用户素材短交付周期(每两周完成一次迭代)验收测试结对编程测试驱动的开发集体所有(程序代码属于整个开发小组,每个成员都有修改代码的权利,都对全部代码负责),极限编程的有效实践,20,软件工程 - 2011 - 第二章 软件过程,持续集成(一日内多次集成,不断回归测试)可持续的开发速度(周工作时间不超过40小时,连续加班不超过两周)开放的工作空

9、间及时调整计划重构使用隐喻(隐喻是把整个系统联系在一起的全局视图,描述系统如何运做,如何把新功能加入到系统中),极限编程(eXtreme Programming, XP),21,软件工程 - 2011 - 第二章 软件过程,极限编程的整体开发过程,22,软件工程 - 2011 - 第二章 软件过程,极限编程的迭代过程,结对编程与人员轮换;持续地优化设计;循环冗余检测,23,软件工程 - 2011 - 第二章 软件过程,Microsoft公司自己独特的软件开发过程,综合了RUP和XP的许多优点,是对众多成功项目的开发经验的正确总结不足:方法工具和产品等方面的论述不如RUP和XP全面人们对它的某些

10、准则本身也有不同意见详细论述参见微软软件开发解决方案框架(第二版),麦中凡、陶伟编著,北京航空航天大学出版社,微软过程,24,软件工程 - 2011 - 第二章 软件过程,项目计划应该兼顾未来的不确定因素用有效的风险管理来减少不确定的因素经常生成并快速地测试软件的过渡版本采用快速循环、递进的开发过程用创造性的工作来平衡产品特性和产品成本项目进度表应该具有较高的稳定性和权威性使用小型项目组并发地完成开发工作在项目早期把软件配置项基线化,微软过程准则,25,软件工程 - 2011 - 第二章 软件过程,使用原型验证概念把零缺陷作为追求的目标里程碑评审会强调改进工作,避免相互指责,微软过程准则(续)

11、,26,软件工程 - 2011 - 第二章 软件过程,微软软件生命周期,27,软件工程 - 2011 - 第二章 软件过程,规划阶段确定产品目标获取竞争对手的信息完成对客户和市场的调研分析确定新版本产品应该具备的主要特性确定相对于前一版本而言,新版本应该解决的问题和需要增加的功能,微软软件生命周期,28,软件工程 - 2011 - 第二章 软件过程,设计阶段根据产品目标编写系统的特性规格说明书,这份说明书主要描述软件特性、系统结构、各构件之间的相关性以及接口标准从系统高层开始着手进行系统设计描述整个系统的设计方案绘制系统结构图确定系统中存在的风险因素分析系统的可重用性,微软软件生命周期,29,软件工程 - 2011 - 第二章 软件过程,设计阶段(续)划分出系统中的子系统,给出各个子系统和各个构件的规格说明根据产品特性规格说明书制定产品开发计划开发阶段 编写程序代码/书写文档稳定阶段 测试和调试发布阶段 发布产品和解决方案,把项目移交到运营和支持人员手中,微软软件生命周期,30,软件工程 - 2011 - 第二章 软件过程,微软软件生命周期,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。