- 1、本文档共163页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 软件工具是用来辅助计算机软件的开发、运行、维护、管理、支持过程中的活动或任务的软件 按支持的软件过程活动分类: 开发过程:需求分析工具,设计工具,编码工具,测试工具 它们还可按支持的开发方法分为:结构化XX工具,面向对象XX工具 CASE工具 维护过程:版本控制工具,文档分析工具,逆向工程(reverse engineering)工具,再工程(reengineering)工具 管理过程:项目管理工具,配置管理工具,软件评价工具 应用类工具 集成型开发环境是一种把支持多种软件开发方法和过程模型的软件工具集成到一起的软件开发环境 集成型开发环境由环境集成机制和工具集组成 集成型软件开发环境 环境集成机制包括: 数据集成机制:为各种相互协作的工具提供统一的数据接口规范 控制集成机制:支持各个工具或开发活动之间的通信、切换、调度和协同工作,并支持软件开发过程的描述、执行与转接 界面集成机制:支持工具界面的集成和应用系统的界面开发,统一界面风格 * * * * * * * * * * * * * * * * * * * * * * * * * * 净室过程模型 系 统 工 程 需求 收集 代码 审查 盒结构规约 形式化设计 正确性验证 代码 生成 统计 使用 测试 认证 测 试 计 划 增量1 需求 收集 代码 审查 盒结构规约 形式化设计 正确性验证 代码 生成 统计使用测试 认证 测 试 计 划 需求 收集 代码 审查 盒结构规约 形式化设计 正确性验证 代码 生成 统计使用测试 认证 测 试 计 划 增量2 增量3 内容摘要 计算机软件 软件工程 软件过程 软件过程模型 敏捷软件开发 CASE工具与环境 敏捷软件开发 软件开发的新挑战 快速的市场进入时间,要求高生产率 快速变化的需求 快速发展的技术 传统的软件开发方法 强调过程 强调文档 开发人员负担过重 称为重载(Heavyweight)方法 针对上述问题,产生了一系列轻载(Lightweight)方法,如XP、SCRUM等。 2001年2月,新方法的一些创始人在美国犹他州成立了敏捷软件开发联盟 ,简称Agile 联盟。 Agile 联盟起草了一个敏捷软件开发宣言,该宣言由四个价值观声明组成,并提炼出敏捷软件开发方法必须遵循的12条原则。 Agile方法是在保证软件开发有成功产出的前提下,尽量减少开发过程中的活动和制品的方法。笼统的讲就是,“刚刚好”(Just enough),即开发中的活动及制品既不要太多也不要太少。 Agile方法的价值观 个人和交互高于过程和工具 不是否定过程和工具的重要性,而是更强调软件开发中人的作用和交流的作用。 软件是由人组成的团队来开发的,与软件项目相关的各类人员通过充分的交流和有效的合作,才能成功地开发出得到用户满意的软件。 如果光有定义良好的过程和先进的工具,而人员的技能很差,又不能很好地交流和协作,软件是很难成功地开发的。 可运行软件高于详尽的文档 通过执行一个可运行的软件来了解软件做了什么,远比阅读厚厚的文档要容易得多。 敏捷软件开发强调不断地快速地向用户提交可运行的软件(不一定是完整的软件),以得到用户的认可。 好的必要的文档仍是需要的,它能帮助我们理解软件做什么,怎么做以及如何使用,但软件开发的主要目标是创建可运行的软件。 与客户协作高于合同(契约)谈判 只有客户才能明确说明需要什么样的软件,然而,大量的实践表明,在开发的早期客户常常不能完整地表达他们的全部需求,有些早期确定的需求,以后也可能会改变。 要想通过合同谈判的方式,将需求固定下来常常是困难的。 敏捷软件开发强调与客户的协作,通过与客户的交流和紧密合作来发现用户的需求。 对变更及时做出反应高于遵循计划 任何软件项目的开发都应该制订一个项目计划,以确定各开发任务的优先顺序和起止日期。然而,随着项目的进展,需求、业务环境、技术等都可能变化,任务的优先顺序和起止日期也可能因种种原因会改变。 因此,项目计划应具有可塑性,有变动的余地。当出现变化时及时做出反应,修订计划以适应变化。 Agile方法的指导原则 (1)最优先的是通过尽早地和不断地提交有价值的软件使客
文档评论(0)