1 / 138
文档名称:

软件测试技术与质量保证.doc

格式:doc   大小:634KB   页数:138页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

软件测试技术与质量保证.doc

上传人:xinsheng2008 2018/9/23 文件大小:634 KB

下载得到文件列表

软件测试技术与质量保证.doc

文档介绍

文档介绍:前言
本教材中讲述的关于软件测试与质量保证方面的基本概念和基本技能,有些侧重软件技术方面,而有些则侧重软件工程方面,对于刚刚开始学****程序设计的学员来讲,建议大家首先从学****软件技术入手,逐渐过渡到软件工程方面,以此完成一个程序员从士兵到将军的演变过程。为了帮助学员更好地理解什么是软件技术以及与软件工程的区别,下面对软件技术做些介绍。
技术这个词在有些辞典里的意思是指完成技术工作细节所必须具备的能力。例如,机械加工业的一线工作人员必须具备按统一的工艺流程加工零件的技能,才能生产出合格成品。程序编码员就是软件行业的一线工作人员,他们必须掌握的技术就是按规范化的作业方法,编写标准化的程序代码,提供规范化的文档和进行规范化的测试。
很久以来一直由一种误解,以为技巧在计算机软件开发中起着重要作用。诚然,在计算机发展的早期,巧妙的设计可以克服资源(内存和CPU)不足所带来的一些限制。但是,现在的程序设计已有完善的理论作为指导,软件开发也正在以越来越大的工业化规模进行。在这种形势下,对编写程序的个体来说,重要的不再是如何巧妙地利用计算机资源,而是用规范化的作业方式,编写出高度规范化的程序代码。
现在许多资料中把软件技术和软件工程混为一谈,但它们是有区别的。第一,像所有其它工程一样,软件工程是组织和管理群体的方法,注重的是完成任务的群体活动,包括任务分解、活动组织和协调;而软件技术是软件开发一线编程人员所必须具备的、用规范化作业方式编写出高度规范化的程序代码的技能。第二,软件技术和软件工程是由不同的职能人员去实施的。对一般软件技术人员来说,他们的职责在大多数情况下只是按设计说明编写程序代码,而不是从头策划一个项目。第三,软件技术和软件工程的区别还体现在两者质量保证措施不同。软件技术所关注的是具体程序代码的质量(即数据定义和算法的正确性),而软件工程关注的是软件开发全过程的质量。因此,软件技术学****的重点就是使从事软件开发的所有个体都充分认识软件开发作业的工程性质,摆脱手工作坊式的软件开发模式,掌握从事规范化编程作业的观念和技能。
下面摘录了一篇关于印度软件业的报道,从中可以进一步体会什么是个人应掌握的软件技术,什么是软件工程应该考虑的问题,从而更有目的地学****软件技术。
看看印度软件人(原载2000年7月7日文汇报)
(这是一位中国软件公司老板对印度软件人所下的评语。从中我们或许可以知道一些近年来印度软件业迅速在世界崛起的原因)
我在工作中,接触到印度软件人和他们开发出来的软件。从整个体系架构上看,他们的作品非常清晰,按照我们的要求实现了全部功能,而且相当稳定,但是打开具体代码一看,拖沓冗长。我们自己的一些程序员据此说他们水平低。但是,印度人能把软件整体把握得很好,并弄出相当好的设计文档。我们对某些特定的开发工具可能是精通的,却无法把一个软件稳当、完整地开发出来。
举个简单的例子:软件中需要一个列表,用来表示我们处理的事务。该表在业务繁忙的时候将变得很大。中国人总是用双向链表,抱着《数据结构》书在那里写链表的类,而我们雇的那些印度人根据情况,有时就抛弃链表,直截了当开一个大数组。为什么印度人不用链表?他们说,你们的设备最少都装备了512MB内存,占用一些没什么,而数组方式访问方便、效率高。他们做事情就这么简单明了,跟哥伦布竖鸡蛋一样。
印度人并不随意马虎
我对印度软件业的几点感受是:
流程重于项目。
质量检查独立于研发部门,专门检查开发部门的开发流程是不是按照既定流程走。如果质量管理人员觉得流程不对,他会直接上报高层,项目肯定就此停止。
所有的材料(包括草稿)都有文档。
准备工作做得很充分,详细文档要求达到拿到这个文档就可以编码的程度。一般写文档时占60%,而编码时间相对较少。
有各种详细的Review(同行评审),包括项目内、项目组之间、客户的……
计划详细,几十天的大项目竞能精确到小时级。
让中国高手惊呆了
印度人做事的总体风格很书面、很理论。我们招聘印度人,给应聘者出了一份与国内差不多的试卷,有基本概念和编程题目。等到他们完成后,我们这些自认的中国高手简直惊呆了!他们做的编程题目简直像是有统一答案,程序结构、注释、变量命名就不用说了,连表达式都极其类似!反观所谓的中国高手,每个人都有自己的一套。到了新的岗位,先把前任的程序贬损一通,然后自己再开发有更多问题的代码来代替。我曾经统计了一下我的公司,一个软件中有4个以上的CSocket版本。每个人都觉得别人做的差,自己再搞一套。中国人就是这个样子,还振振有词“我们这样有创造性”。
不依赖任何一个个人
印度软件公司的编程人员流动率(包括内部项目之间的流动)高达30%,但它们可以让高中生编代码,可以想象其整体的文档水平之高。他们的产品不依赖任何一个个