软件与软件工程第一讲探索.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文档。上传文档
查看更多
2005-10-27 2005-10-27 第一节 软件 软件是多种术语和对象的集合,并将这些术语和对象有效地配置在一起。一般包括程序、文档和数据。 软件的两种角色 软件的特点 软件与软件系统 软件的分类 软件危机 软件危机的表现 软件问题 为什么需要这么长的时间去获取一个可用的软件; 为什么软件开发的费用这么高; 为什么不能在将软件提交给我们的用户之前,发现所有的软件错误并解决它们; 为什么需要花费那么多的时间和努力来维护已经在运行的系统; 为什么无论在软件被开发还是在维护阶段我们都那么困难来度量它; 软件管理者 软件用户 开发者角度 遗留软件与软件进化 所谓遗留软件是指多年之前开发的,能够继续被修改以满足商业需要和计算平台的系统,对于这些系统的增殖处理常常是让一些大的组织头痛的事情,系统的维护费用和风险都将增大。 思考题 第二节 软件工程 软件工程定义 PressMan的软件工程定义 软件工程的本质 软件工程的基本原理 传统方法学 面向对象方法学 面向方面的软件工程方法 面向组件的软件工程方法 面向Agent的软件开发方法 敏捷软件工程开发方法 基于组件的开发模型 面向方面的软件开发方法 通过以上学习,说说你理解的软件工程概念? 说说软件工程三个要素之间的关系? 例举出您所知道的一些软件工程方法? 第三节 软件过程 软件过程框架 软件生命周期 三个阶段七个环节: 一个典型的一般性框架 软件过程中的雨伞行为 典型的软件过程模型 瀑布模型 增量模型 增量模型中的快速应用开发 进化模型-原型法 进化模型-螺旋 形式化方法模型 思考题 第四节 敏捷软件工程 敏捷软件工程定义 敏捷开发的体现 敏捷团队的特点 什么是敏捷软件过程 敏捷软件过程 敏捷软件过程模型-极限编程 极限编程的框架 极限编程的计划 极限编程的设计 极限编程的重构 结对编程 结对编程的优点 极限编程的测试 传统方法与极限编程的比较 思考题 复习 思考题 当建造一个产品或系统时,采用一系列可推断的步骤是非常重要的,这样一个路径表能够帮助你建立一个及时的、高品质的结果。这个所谓的路径表就是我们所说的软件过程。 软件过程框架通过封装一些阶段性行为,并将这些行为普遍应用到各类软件项目中,而不需要考虑该项目的大小和复杂性等。 软件定义阶段:可行性研究和需求分析 软件开发阶段:概要设计、详细设计、编码和测试和综合测试 软件维护: 1.通讯(问题定义、可行性研究、需求分析) 2.计划(总体设计) 3.建模(详细设计) 4.构造(编码和测试、综合测试) 5.部署(综合测试和软件维护) 注:这些过程在具体实施时可能会有些不同,但过程的框架行为始终不变。 1.软件项目的跟踪和控制; 2.风险管理; 3.软件品质保障; 4.形式化技术分析; 5.软件度量; 6.软件配置管理; 7.重用管理; 软件工程中存在一些始终贯穿整个软件过程的雨伞行为,主要表现有: 通过使用模型简洁地描述软件过程中的各项活动、任务、中间产品和里程碑的完成过程,如软件生命周期。 包括两类软件过程模型,说明性过程模型和敏捷过程模型 说明性过程模型 该方法强调采用严格的数学方法来描述软件的需求和设计任务。 1.软件过程及其框架的含义? 2.什么是软件过程中的雨伞行为? 3.例举一个软件过程模型,并解释其中每个阶段的意义; 背景:在现代经济条件下,预测一个基于计算的系统怎样随着时间而不断地变化和发展是非常困难的。市场变化非常快,用户的需求变化也是非常快的,并且一些新的竞争的出现是没有警告的。在这种情况下,在软件项目开始之初就能够充分定义好需求是非常困难的。软件工程必须能够足够的敏捷来适应这种不断变化的商业环境 敏捷软件工程包含了一种哲学思想和一套开发指导原则。指导原则主要追求: 1.客户的满意和软件开发过程中的早期增量; 2.小的高激励的项目团队; 3.非形式化的方法; 4.最小限度的软件工程产品; 5.简化的整个开发过程; 6.强调开发过程中开发者和客户的不断交流; 1.快速的响应变化; 2.在各方之间建立有效的沟通; 3.吸引客户参与到团队中; 4.组织团队控制整个工作的执行; 5.快速的增量式的生产软件; 敏捷开发的基础是一个敏捷团队的建立,该团队核心的特点是自组织,自组织包括三层含义: 1.敏捷的团队组织自己去完成工作; 2.该团队组织过程最好地适应本地的环境; 3.团队组织工作任务的调度来最好地适应软件增量; 敏捷软件工程过程的三个假设: 1.对于用户需求的变化难以预测; 2.软件设计和软件构造之间是相互间隔的,即在构造是被使用证明设计的正确性之前,很难确定那种设计模型是被需要的; 3.分析、设计、构造和测试都是无法预期的; 注:敏捷软件过程的适应力,

文档评论(0)

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

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

1亿VIP精品文档

相关文档