软件工程-第2讲R2new.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件工程-第2讲R2new.ppt

极限编程 特点: XP模型是“轻量型”或“灵活”的软件过程模型,可与面向对象语言结合提出开发方案 用于解决大型软件开发中的棘手问题,被称为“专家协作”的开发方式 核心有四个要点: 交流 简单 反馈 勇气 * 结对编程 结对编程(Pair-Programming) 是XP中非常重要的实践之一。 定义:两个人坐在同一台计算机前面,使用相同的键盘和鼠标来开发同样的一个模块,一个称为驾驶者(Driver),负责代码的键入,另外一个称为领航员(Navigator),负责监看与决策,包括低级错误和方向性的错误。当出现的一个问题对其中一个人来说,难以解决,而恰好是另外一个人的强项的时候,那么角色就会发生转换。 * 结对编程 优势: 可以减少风险 可以使团队生产效率更高 是知识传播的最好途径 可以打造出最佳的合作团队。 可以生成更好的代码 三个方面的应用: 教育学结对学习 工业界结对开发与编程 分布式结对编程环境 * 自适应软件开发 英文名:Adaptive Software Development 由Jim Highsmith提出 着眼于人员协作和团队自我组织,类似于收集人们创意的容器 生命周期三个阶段包括: 思考:启动项目并完成自适应循环计划 协作:沟通与信任 学习:改进真正的理解水平,通过焦点组、正式技术评审和事后剖析方式进行学习 * 动态系统开发 英文名:Dynamic System Development Method 是一种使用增量原型开发模式完全满足对时间约束的系统构建和维护的敏捷软件开发方法。 借用Pareto(佩瑞多)原则:即如果交付整个应用系统需用100%时间,那么80%的应用系统可以用20%的时间交付 建议使用迭代软件过程 * 特征驱动开发 特征驱动开发(Feature-Driven development)把软件开发项目作为一个系统,即生产软件的系统 定义六种关键项目角色: 项目经理 主设计师 开发经理 主程序员 类的所有者 领域专家 * 软件工程实践 软件工程实践的精髓:理解问题、计划解决方案、实施计划和检查结果的精确度等方面 通用的框架活动包括: 沟通 计划 建模 部署 普适性活动 * 软件工程实践 核心原则: 存在价值 保持简洁 维护视图 生产者要让消费者理解 面向未来 计划复用 认真思考 * 软件工程实践 沟通实践:包括决定项目涉及人的信息和沟通需求 计划实践:是软件开发过程的准备阶段,包括定义问题、可行性分析、制定计划 建立模型实践:创建分析模型和设计模型 * 要点回顾 软件过程 软件生命周期 能力成熟度模型CMM 敏捷过程 软件工程实践 * 思考题 什么是软件过程? 什么是软件生命周期?分哪几个阶段? 能力成熟度模型包括哪几个级别? 软件工程实践的精髓是什么? * 谢谢! * 软件工程 第2讲 软件过程 贾西平 Email: jiaxp@126.com 本课程的学习内容 * * 内容提要 软件过程 软件生命周期 能力成熟度模型 敏捷过程 软件过程实践 * 软件过程 定义 软件过程是为了开发出软件产品,或者是为了完成软件工程项目而需要完成的有关软件工程的活动。 通常使用生命周期模型简洁地描述软件过程 层次 软件工程是一门建立在以质量焦点为基础,分过程、方法和工具三个研究层次的综合技术。 * 过程、方法与工具 工具 方法 过程 质量焦点 * 软件工程方法:为软件开发提供了“如何做某项工作的”的技术指南。 过程、方法与工具 工具 方法 过程 质量焦点 * 软件工程工具:为软件工程方法提供了自动的或半自动的软件支撑环境。 过程、方法与工具 工具 方法 过程 质量焦点 * 软件工程过程:定义了如何把各种方法和工具进行综合才能使软件开发合理,及时的进行。 软件过程框架 框架是实现整个软件开发活动的基础; 与过程有关的角色、职责的定义以及实现都离不开框架的支持 软件过程包括两个方面: 组织及管理框架 技术及工具框架 * 软件过程模型 把软件生命周期中各项开发活动的流程用一个合理的框架—开发模型来规范描述,这就是软件过程模型。 也称软件生命周期模型 * 软件生命周期 定义:软件产品从策划、定义、开发、使用与维护直到最后废弃所经过的一个漫长时期。 划分为定义、开发,运行与维护三个阶段 细分为六个阶段: 问题的定义及规划 需求分析 软件设计 程序编码 软件测试 运行维护 * * 需求变更代价 图1.4 需求变更代价随时间变化的趋势示意 * 改正问题代价 图1.5 改正一个问题需要付出的代价 能力成熟度模型集成 CMM(Capability Maturity Model):能力成熟度模型 CMM由美国卡内基-梅隆大学的软件工程研究所(SEI)开发的软件成熟度模型。 思想:管理软件过程的方

文档评论(0)

xinshengwencai + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5311233133000002

1亿VIP精品文档

相关文档