- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
XP-eXtreme Programming极限编程 最简单的可能就是最有效的 极限编程适合 小团队 (2-10 programmers) “高风险” 快速变化或不稳定的需求 强调可测试性 格言 “沟通、简化、反馈、激励” Kent Beck XP – 内容 XP Lifecycle -生命周期 / TDD - Test-Driven Development测试驱动开发 Write a test for new capability Start Compile Fix compile errors Run the test And see it fail Write the code Run the test And see it pass Refactor as needed TDD – sub-cycle 阶段开发模型 增量和迭代模型 增量开发 迭代开发 1.2.3 UML代表着软件建模的发展趋势 敏捷开发(Agile Development) “极限编程”(eXtreme Programming 泛型编程(Generic Programming) 面向方面的编程(Aspect Oriented Programming,简称AOP) UML( Unified Modeling Language, 统一建模语言 )可以说代表软件建模的今后5到10年的发展方向,成为面向对象技术领域内占主导地位的标准建模语言,支持从需求分析开始的软件开发的全过程。总的来说,UML是一种定义良好、易于表示、功能强大且普遍实用的建模语言 UML发展历史 UML分类和模型图 标准建模语言UML共定义了三大类、共12种模型图: 结构类 Structural Diagrams:用4种模型图描述系统应用的静态结构,包括类图、对象图、组件图和配置图; 行为类 Behavior Diagrams:用5种模型图描述系统动态行为的各个方面,包括用例图、序列图、行为图、协作图和状态图 模型管理类 Model Management Diagrams :用3种模型图来组织和管理各种应用模型,包括软件包、子系统、模型等 1.3软件测试的重要性 1.3.1 软件所带来的悲剧 1.3.2 其他一些例子 1.3.3 测试是软件开发重要环节之一 千年虫 (Y2K) 在上个世纪70年代,程序员为了节约非常宝贵的内存资源和硬盘空间,在存储日期时,只保留年份的后两位,如“1980”被存为“80”。当2000年到来的时候,问题就会出现,比如银行存款程序在计算利息时,应该用现在的日期“2000年1月1日”减去当时存款的日期,比如“1989年1月1日” ,结果应该是21年,如果利息是3%,银行要付给顾客每100元,大约86元利息。如果程序没有纠正年份只存储两位的问题,其存款年数就变为-89年,变成顾客反要付银行1288元的巨额利息。 就是为了这样一个简单的设计缺陷,全世界付出几十亿美元。 奔腾芯片缺陷 (4195835 / 3145727) * 3145727 – 4195835 ? 0 $450 million – 4.5亿美元损失. 2000年 另外一个缺陷发生在1.13 MHz Pentium III 其他一些例子 “冲击波”计算机病毒[11] 火星登陆事故 爱国者导弹防御系统 迪斯尼的圣诞节礼物 Windows2000安全漏洞 Bug 问题在哪里? 没有足够测试 缺乏测试平台 不正确的测试环境 缺少集成测试 缺少性能测试 缺少强度测试 缺少可靠性测试 …… 测试的重要性 “程序测试是为了发现错误而执行程序的过程”。测试的目的是发现程序中的错误,是为了证明程序有错,而不是证明程序无错。在软件开发过程中,分析、设计与编码等工作都是建设性的,惟独测试是带有“破坏性”,测试可视为分析、设计和编码3个阶段的“最终复审”,在软件质量保证中具有重要地位。 微软的经验:Windows 95/98 ? Windows 2000 系统的稳定性有了明显改善,DEV:QA = 1:2 Q A 软件测试方法和技术 - Ch.1 软件及其开发过程 内容概览 全书共三篇,分十七章 软件测试的原理,四章,阐述软件测试的重要性、基本概念和方法等 软件测试的技术,七章,介绍软件测试在各个阶段(单元测试、集成测试、系统测试、验收测试和安装测试)的技术和方法,以及典型测试领域的特点和技术 软件测试的实践,六章,介绍软件测试的团队和环境的建立,以及如何设计测试用例、报告软件缺陷、写测试报告、测试项目的管理 机遇和挑战并存 Test Engineer QA/Supervisor Project/Quality Man
文档评论(0)