首页 优秀范文 软件试用期工作总结

软件试用期工作总结赏析八篇

时间:2022-08-10 02:01:58

软件试用期工作总结

软件试用期工作总结第1篇

你想更快的完成自己的工作并且在工作中使错误量到最小甚至不再犯错误吗?这个时候,一个相关的工作总结是很有必要的。今天小编给大家为您整理了软件岗位试用期工作总结,希望对大家有所帮助。

软件岗位试用期工作总结范文一一:20__年工作回顾及总结

回顾20__年这一年来的工作,我在公司领导及各位同事的支持和帮助下,严格要求自己,按照公司要求,比较好地完成了本职工作。通过近一年的学习和工作,工作模式上有了新的突破,工作方式有了较大的改变。现将这一年的工作情况总结如下:

1、总体来说,2012年我主要完成了“……银行系统”、“……渠道管理平台”、“……”、“……”、“……”“……”的日常测试以及质量控制工作;

“……”已经稳定上线运行6个多月,“……”即将上线。

2、日常我主要负责项目测试工作、测试文档编辑、参与功能需求设计、协调开发进度、总结经验分享、完成所需知识积累、工具学习及研究、兼容性软件测试。

就在银联项目工作来说,主要的工作内容有:a、测试项目案例、测试用例的设计与编写;b、对测试过程中遇到的问题进行沟通,并提供意见;c、设计业务功能流程,提供参考意见,绘制关键业务流程;d、进行主要功能的界面测试、功能测试;e、按照测试用例执行测试计划;f、进行需求验证工作

3、知识的总结与分享,完成客户端在安卓4.0/4.1,IOS6.0以上系统上出现的兼容等问题,完成了兼容性测试案例的编写以及兼容性测试的培训工作。

在日常工作中,发现兼容上重大问题,在测试部门群中分享。

4、完成所需知识积累,学习所需知识、工具以及技能。

在工作中学习了银行业务流程规范、学习公司研发规范、参加了公司组织的技术培训、学习了各种测试工具的使用。

二:对公司的建议与意见

对公司和部门建设上,我有以下几点建议:

1、对员工进行金融知识的系统培训,让测试人员了解银行业务流程,有助于测试人员更加详细了解业务流程,测试过程会少走很多弯路。

2、部门内希望多组织技术交流讨论,促进测试工作的开展和提高。

一年至少有2次这样的交流。

3、公司在项目开发前期,希望尽可能的明确需求,尽可能的详尽需求说明书内容。

在测试过程中发现很多项目缺少需求说明书,需求说明书不明确或者需求说明书内容错误,误导了开发和测试,浪费了时间,影响了项目进度。

4、建议项目需求设计可以有测试员参与讨论。

5、公司管理有点混乱,个人感觉公司对每位员工的重视程度不够!节假日公司应该给每位员工一定的福利和关心。

6、个人感觉平时的效率比较低,希望测试部门能够有所调整。

希望公司能制定质量控制标准以及开发、测试工作流程,让开发更好的了解测试的流程,增强开发团队与测试团队的配合,提高工作效率。

7、加强部门测试成果的积累与沉淀,提高团队测试水准,希望我们的团队能够做的更好,能够已团队的形式参与软件项目的开发,而不仅仅是一个项目中毫不起眼的小小测试员。

三:20__年工作计划与学习计划

20__年工作计划就是希望通过自己的努力,让我们的产品更加完美,让自己在软件测试技能上有所提高,更多的关注软件产品的开发过程,提高工作效率、做到与用户的需求一致,提高公司软件产品用户满意度。

具体来说20__年工作计划有:努力提高自身测试水准,努力学习金融知识以及业务流程,学会需求分析,掌握需求分析在测试中的作用,参与公司更多的开发项目的测试工作。

软件岗位试用期工作总结范文二伴随着充实紧凑的工作生活,两个月的时间已经过去了。这一段时间里有工作上的收获,知识的丰富,经验的增长,同时也暴露出很多问题和不足。总结经验,吸取教训,本文将主要从几个方面来对工作进行总结:工作的主要内容;其中的失败和教训以及成功和经验;展望下一阶段的工作,确定自己的目标。以此作为惩前毖后的记录。

1.工作的主要内容

在这两个月的工作中,我的总体任务是协助苏薇做好武警黄金部队矿业权管理系统的后期测试,编码,修改,文档编写的工作,分解开来之后,我主要做了三件事:1.编写矿业权系统的各类文档;2.矿业权系统的编码及bug勘误工作;3.矿业权系统的测试工作。下面依照时间来对我的工作进行介绍。

初踏入职场,进入专业的软件制造公司,对我,一个没有接触过标准软件制作过程的新人来说,起步就是一个很大的难题。若直接做开发,则业务不熟练,代码不规范,弊大于利;若仅做学习,则不能跟上项目的步伐,不能以最快的速度融入工作中去。

在我还在忐忑自己到底要做什么工作的时候,任务已经下达了,首先进行矿业权系统的测试工作。这样的好处在于能够在测试的过程中,了解项目的整体布局,了解项目中的业务逻辑,了解项目中尚未完成的工作并以此作为下个阶段的工作目标。至此,入职工作顺利起步。

在对矿业权系统进行测试之后,暴露了系统的诸多问题,测试过程中发现矿权系统没有进行输入限定,为了解决这个问题需要对整个系统的数据进行整理,我的下一个任务就是编写矿业权系统的数据需求文档。在编写该文档的过程中,对矿权系统进行了更深入的了解,为之后的bug勘误工作奠定了一定的基础。

完成了矿业权系统的数据需求文档的编写之后,新的任务是对整个矿权的输入数据进行输入限定,在任务开始之处是极为困难的,幸而得到了同事们的帮助才得以顺利完成任务。任务虽然完成,但是对输入限定实现方法的一知半解以及任务完成过程中的不仔细,为之后发生的问题也埋下了苦果。

在对矿业权系统添加输入限定完成之后,进入了解决程序小问题的阶段,对矿权系统进行细微的缝补工作。这段时间是学习多于工作的,不同的问题督促我要每天和百度亲密接触数百次,又要劳烦诸位在百忙中的同事抽出时间来给我帮忙。虽然辛苦一点,但收获却是满满。

完成了系统的修补之后,我们的程序送到了四惠进行第一轮测试,在测试的一周里,我主要是补充网络编程的基础知识。

第一轮测试结果出来之后,我们项目组开始了紧张的第一轮矿业权系统bug勘误工作。拿到bug列表之后,发现有一小半错误皆是因我而起,输入限定问题很多,我也主动承担了输入限定部分的bug勘误工作。

第一轮bug勘误工作完成后,进行了第一轮了回归测试,测试结果已然不尽人意,仍然存在大量的问题需要修改,而且很多问题还是因我而起,输入限定仍然存在大量问题,再一次进行修改之后,我们的程序送到了十五所进行所检。

在进行所检之余,我又接到了新的任务,完成矿权系统的概要设计以及详细设计文档的编写。这两份文档已于9月2号编写完毕。

现阶段我的任务是根据所检的bug列表,对矿权系统进行回归测试。

2.工作中失败的教训以及成功的经验

对于失败的教训要吸取,成功的经验要进行总结。我对成功的定义是:在保证质量的前提下完成既定的计划或目标就是成功。其他的所有结果都是失败。

成功的经验:

1) 敢于接受任务并想尽一切办法完成

入职两个月最大的收获就是敢于接受任务并想尽办法完成,每一个任务对于初入职场的我都是一个挑战,如何保质保量完成任务是最基本的要求。这两月最大的成功在于没有一次任务是拖沓的,每次都尽最大努力完成了任务。

2) 勇于承担错误,正视自身的问题

在这两个月的工作中可谓是错误不断,从文档的错别字这种小问题到矿权系统bug修改不正确导致崩溃这种大错误,暴露出来了很多的问题,我秉承着有错即改,下不为例的思想,正视自己的错误并积极改正,因此这也算是一个成功。

失败的教训:

1) 重视每一个细节,不要忽视小问题

在最初进行矿业权系统数据需求文档的编写的过程中,对某些页面的数据在数据库中没有存储的情况没有加以重视,在后期进行数据限定的时候,还要重新修改数据需求文档,造成了不必要的时间浪费。从这个事情上得到教训就是不要放过任何一个小问题,这个小问题可能导致之后的大问题。

2) 进行重复工作也不能大意

在对矿权系统进行输入限定的方法熟悉之后,都是重复性的工作,给每个页面,每个字段进行输入控制语句的添加,在进行了数个页面之后,出现了有的页面没有添加完整,或者提示语句不正确的情况,在后续的bug勘误中出现了大量此类问题,浪费了大量的时间和精力修改。从这个事情上得到的教训就是工作不能大意,重复性的工作更要完成好。一般重复性的工作第一次做不好,后续检查修改是非常浪费时间的。

3) 考虑问题要严谨

在对矿权系统bug勘误的过程中,对输入限定条件的判断出了问题,我想当然的按照我的主观思路对数据进行了限定,而在回归测试的时候出了问题,这些都是考虑不严谨的后果。这个事情的教训就是考虑不严谨直接导致问题推倒重来,影响了工作效率,而且很容易埋下隐患。

4) 注重用户体验

在矿权系统bug勘误的过程中,修改最多的在于坐标系统的提示语句,因为坐标系统不仅要求数据必须填入,而且每一个数据都有严格的格式限定,因此每一个错误提示的弹出都要本着如何让用户知道哪里错了为原则进行设置。在最初的限定里面,语句粗糙,弹出语句不明确,造成了用户使用的不方便,还得重新进行改造。这个问题的教训是一定要从用户的角度出发考虑问题,注重用户体验从简单的提示语句做起。

3.展望下一阶段的工作

下一阶段短期内我们的工作主要针对矿权系统的使用的数据库变更来对我们的系统进行修改。我的工作任务主要是学习Oracle数据库和SQL数据库的使用上的区别,做好从SQL数据库向Oracel数据库的迁移工作。

这两个月的工作生活是充实且富有乐趣的,结识了很多同事和朋友,公司的氛围是非常轻松愉快的。感谢两个月来李鹏经理的关心,感谢部门同事的悉心指导,感谢公司各位同事的热心帮助,希望能在接下来的工作中能惩前毖后,总结经验,吸取教训,做到个人与公司共荣辱同进退,共同实现中地的辉煌。

软件岗位试用期工作总结范文三工作以来,我本着对职业负责、对学生负责、勤勤恳恳地工作着。现将一学年度的工作总结如下:

一、政治思想方面:

俗话说:“活到老,学到老”,本人一直在各方面严格要求

己,努力地提高自己,以便使自己更快地适应社会发展的形势。勇于剖析自己,正视自己,提高自身素质。认真学习新的教育理论,及时更新教育理念。积极参加中心培训,并做了大量的政治笔记与理论学习。我们必须具有先进的教育观念,才能适应教育的发展。所以我不但注重集体的政治理论学习,还注意从书本中汲取营养,认真学习仔细体会新形势下怎样做一名好教师。

二、在个人业务方面:

在这一年中,严格要求自己,遵守单位各项规章制度,与同事之间相处融洽;工作上,尽职尽责,不敢有丝毫懈怠,除了做好本职工作外,对中心的日常工作也有了一个全面的认识。网络管理员主要有三项主要工作内容:第一,计算机及其网络维护管理工作;第二,“中国校外教育网”及“陕西省校外教育网”的撰稿及编辑工作;第三,对中心工作人员进行网络培训工作。

在工作中,为把校外教育网络建设得更快更好,以跟上时展和学校各项工作的进度,对自己做出了以下具体要求:一要提高对校外教育网络工作重要性的认识;二要科学建设网络,充分利用好网络资源,发挥好网络的各项功能;三要强化管理,确保网络安全运行;四要落实责任制;五要加强网络工作人员队伍建设。

本年度我中心组织学员参加“网上祭扫先烈”活动;开展的“爱家乡,爱高陵”系列活动(泾渭分明健步行和庆“六一”家乡文化之旅活动);参加陕西省举办的青少年足球夏令营活动;制作新年祝福视频参与校外同仁联欢会。这些活动的精彩瞬间都被及时的发到“两网”上,同全国校外同仁分享精彩活动。参加2010全国“优秀网络社区”评选活动,我中心获“优秀网络社区”的光荣称号。

三、工作考勤方面:

我热爱自己的工作,积极运用有效的工作时间做好自己分内的工作。在做好各项校外教育工作的同时,严格遵守中心的各项规章制度。不论是分到哪一项工作,我都配合同事尽自己的努力把工作做好。

我和同事之间,有三个共同:

1、共同感受:感受学习的过程;感受朋友间的情谊,感受生活的美好;

2、共同分享:分享学习的快乐,分享友情的快乐,分享成功的喜悦;

3、共同成长:不停的学习新的知识,更新观念,和时代同步和学生共同成长

这一年,我成长了,我收获了,存在的缺点

也是不少的,有以下几个方面,还需今后努力改正:一是理论知识的学习还是欠缺,还存在有懒惰思想;二是工作虽然很努力,可是个人能力还有待提高;今后,我一定在中心领导及全体同志们的帮助下,加强学习,提高工作能力,使自己的思想和工作都能更上一个台阶!

软件试用期工作总结第2篇

【关键词】软件测试 测试报告 测试流程

1 引言

软件测试是软件开发过程的重要组成部分,是用来确认一个产品的品质或性能是否符合开发之前所提出的要求。对软件需求分析、设计规格说明和编码的最终复审,某种程度上测试工作的好坏直接影响了软件产品的交付和用户的满意度。因此,如何做好测试工作,使测试在软件工程中顺利进行,辅助软件开发工作是我们每个软件人员应该考虑的问题。

2 软件测试的目的

(1)确认软件的质量,确认软件做了你所期望的事情,确认软件以正确的方式来做了这个事件。

(2)提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。

(3)软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。软件测试的第三个目的是保证整个软件开发过程是高质量的。

3 软件测试的对象

软件测试并不等于程序测试。软件测试应该贯穿整个软件定义与开发整个期间。因此需求分析、概要设计、详细设计以及程序编码等各阶段所得到的文档,包括需求规格说明、概要设计规格说明、详细设计规格说明以及源程序,都应该是软件测试的对象。

4 软件测试流程

软件测试工作并不是在软件代码开发完毕后才开始的,这一点是很多软件人员的误区,需要明确一下,它其实是在项目进入软件实现阶段就开始了,项目进入软件实现阶段的时候,就应该启动软件测试工作了。

下面根据笔者的测试经验,详细阐述一下软件测试的流程、每个阶段需要做的工作及整个测试过程产生的文档。

4.1 计划与设计阶段

4.1.1 召开测试启动会议

当项目进入软件实现阶段(编码),测试经理召集项目经理、开发经理开会确定测试交接时间,开发团队与测试团队交接测试内容,对测试目标达成一致,商讨测试计划的可行性,统一项目组的目标和测试的工作重点。进行规模预估并成立测试团队,完成《测试计划》和《测试方案》。

4.1.2 设计测试用例

明确了测试需求和测试计划,在需求分析文档确立基线以后,测试组需要针对测试需求编写全部测试用例,在实际的测试中,测试用例将是唯一实施标准。

4.2 实施测试阶段

4.2.1 实施测试用例

实施测试用例将花费测试组绝大部分时间,这些工作都是建立在前期很多计划工作的基础上。当测试用例全部编写完成后,测试工程师根据测试计划中分配给自己的测试任务,实施相应的测试用例,并记录测试结果。

4.2.2 填写测试记录

测试人员在进行具体的测试工作时,需要将测试内容填写在测试记录表中,直到所有的测试执行工作结束。

4.2.3 提交BUG清单

在具体的测试过程中,测试人员发现BUG后,需要将BUG记录在清单里,并及时提交给测试经理。

4.2.4 提交测试报告

在约定的测试周期完成之后,测试工程师需要总结此测试的结果,编写测试报告。测试工程师根据此轮测试的结果,编写测试报告,主要应包含以下内容:

(1)测试报告的版本。

(2)测试的人员和时间。

(3)测试所覆盖的缺陷――测试组在这轮测试中所有处理的缺陷, 不仅要写出覆盖缺陷的总数,还要写明这些缺陷的去向。

(4)上一版本活动缺陷的数量。

(5)经过此轮测试,所有活动缺陷的数量及其状态分类。

(6)测试评估――写明在这一版本中,哪些功能被实现了,哪些还没有实现,这里只需写明和上一版本不同之处即可。

(7)急待解决的问题――写明当前项目组中面临的最优先的问题,可以重复提出。

在每轮测试结束之后应尽快将符合标准的测试报告发给测试经理。

4.3 总结阶段

测试工作结束或即将结束时,测试组就要开始着手准备进行总结的工作。

4.3.1 编写测试总结报告

在测试结束之后,测试经理编写测试报告,对测试进行总结,并且提交给项目经理,为产品的后续工作提供重要的信息支持。

测试经理根据测试的结果及测试工程师提交的测试报告编写测试总结报告,测试总结报告必须包含以下重要内容:

(1)测试资源概述―多少人、多长时间。

(2)测试结果摘要―分别描述各个测试需求的测试结果,产品实 现了哪些功能点,哪些还没有实现。

(3)缺陷分析―按照缺陷的属性分类进行分析。

(4)测试需求覆盖率―原先列举的测试需求的测试覆盖率,可能 一部分测试需求因为资源和优先级的因素没有进行测试,那么 在这里要进行说明。

(5)测试评估―从总体对项目质量进行评估。

(6)测试组建议―从测试组的角度为项目组提出工作建议。

4.3.2 测试验收

测试验收工作是在以上工作全部结束后,测试经理对测试的过程、效果进行验收,签发测试验收报告,宣布测试结束。由测试经理进行测试验收,验收内容包括:

(1)测试效果验收―测试是否达到预期目的。

(2)测试文档验收―测试过程文档是否齐全,符合标准。

(3)测试评估―从总体对测试的质量进行评估。

(4)测试建议―对本次测试工作指出不足,需要在以后工作中改 进的地方。

(5)宣布测试结束―测试组成员签字宣布本次测试结束。

4.3.3 测试归档

测试归档是在测试验收结束宣布测试有效,结束测试后,对测试过程中涉及到各种标准文档进行归档,主要包括测试计划、测试用例、测试报告、验收报告等。这些文档的编写保障了测试的顺利进行,同时作为整个测试项目的痕迹,被保留下来,供查阅。

参考文献

[1]佟伟光.软件测试[M].北京:人民邮电出版,2008.

[2]Rex Black.测试流程管理[M].北京:北京大学出版社,2001.

[3]Robert V.Binder著,华庆一等译.面向对象系统的测试[M].北京:人民邮电出版社,2001.

[4]Mark Fewster, Dorothy Graham著,舒智勇等译.软件测试自动化技术与实例详解[M].北京:电子工业出版社,2000.

[5]Karl E.Wiegers著,陆丽娜,王忠民,王志敏译.软件需求[M].北京:机械工业出版社,2000.

软件试用期工作总结第3篇

关键词:嵌入式软件;GJB2725A;软件测试;过程模型

0 引言

随着信息化军事技术的不断深入,嵌入式软件已在航空武器装备软件中得到了广泛的应用,相应的,对其进行软件测试的要求也越来越重要。目前,大部分软件测试项目主要由事件驱动完成,存在流程不清晰、被动性高、效率低下等问题,影响了测试质量,其严重后果就是没有及时发现软件产品缺陷,导致产品失效。

总装备部于2001年了GJB2725A《测试实验室和校准实验室通用要求》[1],其目的就是为了指导软件测试活动,提高软件测试过程管控能力。因此提出了一种嵌入式软件测试过程模型,该模型能够依据军标,以流程驱动的方式对软件测试进行全过程管控,具有很好的工程应用价值,提高了研制效率。

1 嵌入式软件测试过程模型

在型号软件研制中,测试是一项复杂而繁琐的工作,是一门综合性学科,涉及技术、方法、资源以及管理等诸多方面[2],现有流行软件测试模型,如V模型、W模型和H模型[3],并不能完全适用于实际测试工作,而应由研制单位牵头,建立本地化的软件测试过程模型。

根据工程经验,将嵌入式软件测试过程划分为5个阶段,即测试需求分析、测试策划、测试设计与实现、测试执行和测试总结,每个阶段实现不同的测试活动,前一个阶段是后一个阶段的输入,后一个阶段是前一个阶段的验证,以流程为驱动力,逐步实现所有活动,通过不断地对流程再优化,实现模型的持续改进[4],逐步趋近实际工程应用。

1.1 测试需求分析

该阶段的输入为软件测评合同或软件研制任务书,以明确被测项目的范围、目标、约束及要求。

同时,确定需要完成的测试类型,如功能测试、性能测试、边界测试、接口测试、可靠性测试等,并明确每一个测试类型的具体要求,例如:

1)功能测试:每一个软件测试项输入的每一个正常等价类和异常等价类都至少被一个用例覆盖;

2)性能测试:对软件的精度、时间和适应性进行测试,以确认是否符合规定的性能要求;

3)接口测试:测试所有外部接口,每一个外部输入/输出接口应进行正常和异常情况测试。

确定测试类型后,可制定测试策略,包括白盒和黑盒测试,并对具有特殊要求的被测项进行具体描述。同时,确定测试充分性和终止要求,避免项目无法结束。

测试需求分析最重要的工作就是依据软件设计文档,确定测试的显性需求和隐形需求,并分解为测试项,为后续测试用例提供设计依据,本阶段的输出为《软件测试需求规格说明》。

1.2 测试策划

本阶段在测试需求分析的基础上,完成如下工作:

1)确定测试技术,如等价类划分法、边界值分析法和猜错法等;

2)明确定性评价准则,包括文档、设计和实现等方面;

3)数据采集要求,主要指被测软件、用例、缺陷和管理数据等;

4)制定软件测试环境,包括软/硬件环境,确保测试顺利开展;

5)明确测试人员的角色与职责,合理分工,确保进度;

6)根据要求进行风险分析,如技术、人员和资源风险,并制定措施。

本阶段的输出为《软件测试计划》。

1.3 测试设计与实现

本阶段的主要内容就是依据测试需求,设计测试用例,单元、部件测试采用“先功能后逻辑”的测试策略,即先满足基于功能的测试(功能测试覆盖100%),再满足基于逻辑的测试(语句、分支、调用覆盖率100%),配置项、系统测试采用基于功能的测试策略,测试用例主要包括名称、标识、初始化、前提和约束、输入、预期输出、通过准则、追踪关系、终止条件、用例类型和设计人员等信息,本阶段的输出为《软件测试说明》。

1.4 测试执行

本阶段的主要内容就是在实际测试环境下执行测试用例,记录测试结果,将期望结果与实测结果进行比对,如不一致,则进行深入分析,确认为软件缺陷,则填写软件问题报告单,本阶段的输出为《软件测试记录》和《软件问题报告单》。

1.5 测试总结

本阶段的主要内容就是依据测试结果,统计与分析测试数据,包括用例执行率、用例通过率、代码缺陷率、功能覆盖率等指标,进而对被测软件产品做出客观、公正、独立的评价,为改进软件产品质量提供支撑,本阶段的输出为《软件测试报告》。

2 模型应用

被测软件为某型嵌入式软件,要求完成软件测试,出具测试报告。

2.1 测试需求分析

根据测试要求,定义被测项目的范围、目标、约束及要求。

范围:单元、部件和配置项测试。

目标:单元测试完成语句、分支100%覆盖,部件测试完成调用100%覆盖,配置测试完成需求100%覆盖。

策略:单元、部件测试采用白盒测试,配置项测试采用黑盒测试。

测试需求:经分析,单元测试共有272个测试需求,部件测试共有36个测试需求,配置项测试共有16个测试需求,27个测试项。

2.2 测试策划

软件测试主要采用等价类划分法和边界值分析法进行测试。

2.3 测试设计与实现

依据软件设计文件设计测试用例,单元测试共设计1869个测试用例,部件测试共设计266个测试用例,配置项测试共设计168个测试用例。

2.4 测试执行

经测试,并对测试结果进行分析、确认,共计发现56个软件问题,提交设计进行优化改进。

2.5 测试总结

测试结果总结如表4所示。

测试用例均能100%覆盖测试需求,配置项测试的用例执行率为95%,其原因是有些硬件环境不能满足测试要求,如破坏性测试,单元和配置项测试的用例通过率均不到100%,说明这两种测试是发现软件缺陷的重要手段,通过对56个问题的归零处理,软件问题得到解决,提高了软件产品的质量。

3 总结

采用流程驱动式的嵌入式软件测试过程模型能够很好的解决测试工程化问题,通过实际运用,提高了测试管控能力,确保了测试充分性,发现了软件问题,提高了软件的质量和可靠性。

参考文献:

[1] 闫宇华,李谊,黄宁等.GJB 2725A-2001,测试实验室和校准实验室通用要求[S].北京:中国人民总装备部,2001.

[2] 金先仲,任宏光,李建军等.空空导弹研制系统工程管理[M].北京:国防工业出版社,2007.

软件试用期工作总结第4篇

一、项目实施方案概述

软件产品,特别是行业解决方案软件产品不同于一般的商品,用户购买软件产品之后,不能立即进行使用,需要软件公司的技术人员在软件技术、软件功能、软件操作等方面进行系统调试、软件功能实现、人员培训、软件上线使用、后期维护等一系列的工作,我们将这一系列的工作称为软件项目实施。大量的软件公司项目实施案例证明,软件项目是否成功、用户的软件使用情况是否顺利、是否提高了用户的工作效率和管理水平,不仅取决于软件产品本身的质量,软件项目实施的质量效果也对后期用户应用的情况起到非常重要的影响。项目实施规范主要包括项目启动阶段、需求调研确认阶段、软件功能实现确认阶段、数据标准化初装阶段、系统培训阶段、系统安装测试及试运行阶段、总体验收阶段、系统交接阶段等八个阶段工作内容,每个阶段下面有不同的工作事项,各个阶段之间都是承上启下关系,上一阶段的顺利完成是保证下一阶段的工作开展的基础。下面将按照每个项目实施阶段分别介绍。

二、项目实施方案介绍

(一)项目启动阶段

此阶段处于整个项目实施工作的最前期,由成立项目组、前期调研、编制总体项目计划、启动会四个阶段组成。

此阶段主任务:

公司:在合同签定后,指定项目经理,成立项目组,授权项目组织完成项目目标。

公司项目组:进行前期项目调研,与用户共同成立项目实施组织,编制《总体项目计划》,召开项目启动会。

商务经理:配合公司项目组,将积累的项目和用户信息转交给项目组。将项目组正式介绍给用户,配合项目组建立与用户的联系。

用户:成立项目实施组织,配合前期调研和召开启动会,签署《总体项目计划》和《项目实施协议》。

1、成立项目组

部门经理接到实施申请后,任命项目经理,指定项目目标,由部门经理及项目经理一起指定项目组成员及成员任务,并报总经理签署《项目任务书》。

2、前期调研

项目经理及项目组成员,在商务人员配合下,建立与用户的联系,对合同、用户进行调研。填写《用户及合同信息表》。在项目商务谈判中,商务经理积累了大量的信息,项目组首先应收集商务和合同信息,并与商务经理一起识别那些个体和组织是项目的干系人,确定他们的需求和期望,如何满足和影响这些需求、期望以确保项目能够成功。

3、编制《项目总体计划》

《项目总体计划》是一个文件或文件的集合,随着项目信息不断丰富和变化,会被不断变更,主要介绍项目目标、主要项目阶段、里程碑、可交付成果。通常包括以下几方面内容:

项目描述,项目目标、主要项目阶段、里程碑、可交付成果。所计划的职责分配(包括用户的);

沟通管理计划,确定项目干系人对信息和沟通的需要:即什么人何时需要什么信息以及通过什么方式将信息提供给他们。质量管理计划,确定适合于项目的质量标准和如何满足其要求。如果有必要,可以包括上述每一个计划,详细程度根据每个具体项目的要求而定。未解决事宜和未定的决策。

4、启动会

项目组与用户共同召开的宣布项目实施正式开始的会议。

会程安排如下:

共同组建项目实施组织,实施组织的权利和职责;双方签署《项目实施协议》。

项目组介绍《项目总体计划》和《项目实施协议》,包括以下内容:

项目目标、主要项目阶段、里程碑、可交付成果。所计划的职责分配(包括用户的);

项目实施中项目管理的必要性和如何进行项目管理,项目的质量如何控制;

项目实施中用户的参与和领导的支持的重要作用;

阶段验收、技术交接和项目结束后如何对用户提供后续服务。

(二)需求调研确认阶段

此阶段的主要工作是软件公司的项目实施人员向用户调查用户对系统的需求,包括管理流程调研、功能需求调研、报表要求调研、查询需求调研等,实施人员调研完成后,会编写《需求调研分析手册》,并交付用户进行确认,待用户对《需求调研分析手册》上所提到的需求确认完毕后,项目实施人员将以此为依据进行软件功能的实现。如果用户又提出新的需求,实施人员将分析需求的难度及对整个系统的影响程度来确定是否给予实现。需求调研阶段具体包括如下内容:

1、进行需求调研准备

2、编制《需求调研计划》

3、内部评审是否通过《需求调研计划》,项目组、部门经理、商务等人员根据合同要求和项目实际情况对《需求调研计划》草稿进行评审,如评审通过,则在稍后的时间内签署,如评审不通过则重新修改。

4、用户是否签署《需求调研计划》,如用户签署《需求调研计划》,则作为以后需求调研工作的指南。否则重新修改。

5、《需求调研计划》是否有变更,如果计划存在变更,则执行变更控制流程,否则按计划进行后续工作。

6、编写及发出《需求调研通知》,项目组编写《需求调研通知》,确定进行需求调研的相关事宜,发给用户,为顺利完成需求调研工作做准备

7、需求调研,项目组以《需求调研手册》为依据,从业务流程、单据使用、打印格式、报表查询几个方面展开深入和全面的调研,并搜集用户的个性化需求。

8、需求调研分析根据调研的结果,项目组和公司其他技术部门将进一步进行分析,确定合理、可行的需求,将分析结果形成《需求分析报告》草稿。

9、内部评审是否通过《需求分析报告》。项目组、部门经理、公司其他技术部门的人员对《需求分析报告》草稿进行评审,如评审通过,则在稍后由用户签署,如评审不通过则重新修改,直至内部评审通过。

10、编写及发出《需求分析报告确认通知》。项目组编写《需求分析报告确认通知》,发给用户,确定进行需求确认的相关事宜,告之相关部门及人员安排好工作,准时参与需求确认工作,为顺利完成需求确认工作做准备。

11、用户是否确认《需求分析报告》。如果用户确认,并签署了《需求分析报告》,则需求调研阶段工作结束,进行后续的软件功能实现的工作;如没有确认,则进一步进行调研、分析,直至用户最终确认并签署《需求分析报告》。双方签署了《需求分析报告》,需求调研工作结束之后,如果用户提出新的需求或是变更已有的需求,则执行需求新增及变更流程。

(三)软件功能实现确认阶段

此阶段的主要工作是项目实施人员根据需求调研阶段确认的《需求调研分析手册》中的用户需求内容进行具体软件功能的实现工作。在软件功能实现的过程中,项目实施人员将记录软件实现的详细过程。便于公司售后服务之用。每一个实施技术人员必须严格按照要求记录、存档。按照调研要求的所有功能实现完毕后,项目实施人员将编制《软件功能确认表》,将定制好软件功能待用户确认,用户根据《软件功能确认表》上的功能逐一确定软件功能是否达到要求,对不满足要求的功能,项目实施人员将会记录下来并进行功能修改,直到满足用于要求。

(四)数据标准化初装阶段

此阶段的主要工作是项目实施人员指导用户进行系统标准化资料的准备工作,并对用户进行初装资料的软件操作培训,以便用户能够及时的将标准资料录入系统,初装完成后,项目实施人员会对资料初装的情况进行核查,为以后具体业务功能的开展做好基础。

(五)系统培训阶段

系统培训阶段工作是整个项目实施工作中比较重要的工作,用户对软件的操作功能是否熟练将直接影响到后面的软件应用效果,所以软件公司和用户双方要对此阶段的工作给予足够的重视。要充分认识培训的重要性和艰巨性。在项目实施之前对用户的相关人员进行系统和规范的产品培训是非常必要的,达到让用户了解软件产品,最终自己能够解决使用中的具体的问题。

此阶段的培训工作中将用户参加产品培训的人员划分为三个层次:决策层、技术层、操作层,对不同层次的用户参加产品培训人员的培训内容分别是:

决策层:领导在实施中的作用与重要性、决策查询。

维护层:系统维护知识、操作方法。

操作层:操作方法。

具体的培训工作流程为:

1、调研培训信息:在培训开始前3天由用户实施负责人,将参加培训的部门和人员情况填入《受训部门汇总表》、《受训人员情况一览表》。

2、编制培训计划:结合调研结果,与用户实施负责人商议具体培训内容、时间,场地,人员等。项目组编制《培训计划》。

3、签署培训计划:用户签署《培训计划》,进一步确认培训安排。

4、发培训通知:培训开始前2天,按照签署的《培训计划》,将培训内容、时间,场地,人员等信息通知用户实施负责人。

5、搭建培训环境:公司项目组在培训开始前,将培训环境搭建及检查妥当,将培训提纲及培训手册准备好。

6、组织培训:公司项目组培训负责人与用户实施负责人组织相关人员参加培训,按培训制度严格考核。由用户将考勤情况填入《培训人员签到表》。

7、培训考核:公司项目组培训负责人与用户实施负责人组织受训人员参加上机及理论考试。

8、培训总结:公司项目组培训负责人与用户实施负责人一起将出勤情况及考核情况做出总结,填入《培训及考核统计表》,及时向相关负责人

汇报。

(六)系统安装测试及试运行阶段

此阶段的主要工作是在用户真实环境下,对用户网络及硬件设备进行测试,对软件系统进行容量、性能压力等测试测试及试运行的目的在于确保系统各项功能均能正常使用,并且符合用户签署的《需求分析报告》中描述的需求,同时把尽可能多的潜在问题在正式运行之前发现并改正;同时目的还在于在正式运行前用户的有关人员能进一步提高操作水平,掌握操作规范。此阶段的主要工作内容为:

1、 编制计划:与用户实施负责人商议具体测试及试运行时间,地点,人员等安排,项目组编制《测试及试运行计划》。

2、签署计划:用户签署《测试及试运行计划》,进一步确认测试及试运行安排。

3、发测试及试运行通知:在测试及试运行开始前2天,按照签署的《测试及试运行计划》,将时间,地点,人员等信息通知用户实施负责人。

4、搭建环境及数据准备:在试运行开始前搭建好软件环境、硬件环境、网络环境、调通线路;检查软件、硬件、网络、线路等各个环节是否有问题;

5、组织测试及试运行:用户相关各级领导给予全面配合,组织相关人员进行测试及试运行。

6、测试及试运行总结:测试及试运行完成,总结试运行中设备、软件的运行情况,总结试运行中业务流程和操作环节的情况,以书面总结形式将测试及试运行结果通知相关负责人。

公司项目组负责担当指挥,检查用户人员组织情况并给予指导,跟踪检查如下情况:

跟踪单据流转状况。

跟踪新资料登录环节。

观察业务流程执行状况。

观察操作人员操作表现。

观察系统运行速度及异常表现。

观察关键数据的正确性。

及时纠正错误操作、对于新发生的问题及时与相关人员沟通,确定解决办法。

(七)总体验收阶段。

此阶段是对项目总体的完成情况进行验收。验收分阶段进行,在每一项目阶段结束时,用户对这一阶段的可交付成果进行验收,在测试及试运行结束后,对系统进行总体验收。

需要验收的可交付成果:

主要项目阶段

阶段组成

主要里程碑

可交付成果

软件试用期工作总结第5篇

【关键词】软件测试;工作过程;课程设计

1.课程的定位与教学设计

1.1 课程定位

《软件测试》课程作为软件专业二年级下学期的专业课,它的前导课程是《数据库设计》、《数据结构》、《软件工程实施》,后续课程是课程实训及毕业实习。通过本课程的学习,使学生加深对软件测试基本理论和基本方法的理解与应用,能熟练使用常用软件测试工具,并能运用软件测试工具完成应用软件的测试工作,提高学生对软件的测试与维护能力,并进一步培养学生的的团队协作能力。

1.2 课程设计思路

软件测试是高职计算机软件专业学生在以后的工作岗位上要用到的核心技能。因此,本课程应该作为专业必修课程和核心课程,重点培养学生在以后的工作岗位上所需的职业能力:白盒测试、黑盒测试、自动化功能测试与性能测试。

《软件测试》课程的总体设计思路是,转变传统的学科课程模式,不再以知识传授为主,构建以工作任务为中心的企业培训体系,引入企业项目,让学生在真实的企业项目中完成相应的工作任务,从而储备相关的专业知识,发展职业能力。授课内容重点突出对学生职业能力的培养。课堂上不再单纯地只讲授理论知识,而是围绕实际工作任务的需要来选取,这充分考虑了高职学生动手能力强,理论知识薄弱的特点。

2.教学设计

2.1 教学情境设计

本课程小组通过学院专业指导委员会、重庆亚德科技、重庆大佳、重庆港澳大家等软件公司的企业技术人员进行实际调查,制定了适合高职学生的软件测试课程体系与职业能力,确定了软件测试课程典型的教学情景与子情景,在教学情景中给出具体的工作任务、工作方法以及要求学生掌握的知识与技能等,在教学中贯彻理论实践一体化的教学模式,做到教、学、做三结合,充分体现工学结合的优势,培养学生的职业素质。本课程的5个工作过程及11个典型工作任务如表1所示。

2.2 教材设计

(1)教材应充分考虑软件测试的实践特性,以工作任务为导向,引入必须的软件测试理论知识,让学生在实际测试的过程中,循序渐进地掌握必要的理论知识。

(2)编写的内容要以项目驱动为原则,以企业的实际案例、场景模拟、工作过程录像为载体,增强课后的能力拓展,并根据高职学生的职业能力所需知识的深度和广度来编写,并在具体的工作任务中使学生逐渐形成团队协作意识。

(3)教材应突出软件测试技术的实用性、前瞻性和开放性,不能只是简单地介绍一些技术上的操作,而忽略了软件学生所需的职业能力,在教材中应融入软件测试技术中所用到的新规范、新技术、新标准、新工具、新知识,让学生能系统地掌握软件测试的前沿知识。

(4)教材应充分引领学生主动、积极地去学习,因此,文字表述要简明扼要,内容展现应图文并茂,内容应详略得到。

2.3 教学方法设计

由于本课程的主要教学内容涉及白盒测试、黑盒测试、自动化功能测试与性能测试等操作性很强的教学环节,必须通过课程实训才能达到对项目作规范需求分析的培养目标。具体教学方法设计如下:

(1)全班学生分为N个项目小组,3人一小组,1人任组长,组长要求协调沟通能力比较强。

(2)在教学过程中应加强学生对软件总体的测试能力,采用任务驱动教学,注重以任务引领,提高学生学习兴趣;

(3)组建软件外包中心,引进企业项目,让学生真实地体验在软件公司的测试流程。外包中心作为理论实践一体化教室,达到理论和实际不脱节。

(4)教学过程中可参考软件测试评师考试中规定的知识要求和技能等级职业标准。

(5)教师模拟企业的项目经理,必须具有开拓精神,带领团队完成工作任务,并在完成工作任务的过程中,探索基于工作过程的职业教育新模式,培养学生的软件测试能力,构建软件测试知识体系。

2.4 教学评价设计

(1)突出过程评价,结合课堂提问、实作测试、课后拓展、任务考核等手段,加强实训教学环节的考核,并注重平时考核。

(2)强调目标评价和理论与实践一体化评价,注重引导学生进行学习方式的改变。

(3)每个项目小组在完成课程后,要将所学的内容做ppt,汇报本小组项目完成的情况以及体会。

(4)实行学习过程的过程化考核。平时作业、期中与期末考试均采用上机实训的方式考核,对于不合格者,在团队的协作帮助下持续练习,直至过关。这样可以督促学生不断地练习,真正提高动手能力。

(5)课程的学期成绩=平时作业(10%)+上课考勤(10%)+小组项目测试情况(30%)+小组ppt总结情况(10%)+期末成绩(40%)

3.课程资源的开发与利用

(1)围绕软件测试课程,收集教师和学生必备的软件测试工具,制作适宜教学的多媒体教学课件。

(2)组建软件外包中心,搭建实训工作平台,为学生实训提供真实的工作环境,从而提高其职业素养。

(3)要充分开发网络课程,让学生在课余时间可以自主学习,弥补学生课本知识的不足。

(4)充分利用和开放实训中心,将教学与实训合一,将理论与实践合一,满足学生综合能力培养的要求。

(5)积极利用电子书籍、电子期刊、数字图书馆、校园网、各大网站等网络资源,使教学内容从单一化向多元化转变,通过企业技术人员的指导,课程教师的辅导,使学生知识和能力的拓展成为可能。

4.课程的实施效果

(1)基于项目化的授课内容

建立软件外包中心,引入企业项目内容,软件测试的授课内容紧紧围绕企业项目的典型工作任务开展,学生的能力与素质参照软件测试工程师的岗位要求,让学生真实感受企业环境,就业零距离上岗。

(2)基于过程化的授课方式

老师授课不再单纯地讲解理论,完全按照企业的软件测试流程开展,制定规范的软件测试计划、编写测试用例、利用测试工具测试、编制测试报告,有利于学生养成职业化的学习习惯与工作习惯。

(3)基于理论实践一体化的教学设备

学生在软件外包中心上课以及实验,真正实现了“做中学,学中做”的企业工作环境。

(4)基于能力化的学习评价

学生的评价不再单纯地以理论考试为依据,而是从学生的软件测试专业能力、利用软件测试工具的能力、团队沟通协调能力进行综合地评价。

参考文献

[1]郑泳.基于工作过程系统化的高职《软件测试》课程设计[J].漯河职业技术学院学院,2010(9).

[2]程茂,温静,吴玉洁.《软件测试》课程的教学研究[J].河北师范大学学报,2010(4).

[3]蔡建平.开源软件测试实践教学方案设计[J].计算机教育,2011(3).

软件试用期工作总结第6篇

在比赛中出现任何技术故障,不仅会给运动员带来无尽的懊恼和愤怒,还会影响赛事的精彩程度。因此,信息系统是关系到比赛质量的一个关键因素,对于奥运会这样的世界顶级赛事来说,信息系统的重要性更加不可估量,这就为奥运会筹备人员带来了无法估量的压力,白晓颖作为北京奥运会组织委员会的一员,从2002年进入奥组会到2008年8月24日奥运会闭幕,切切实实地感受了6年多的时间。直到奥运会圆满结束,她才放下了一直悬着的心,真正松了一口气。

白晓颖,清华大学副教授、计算机系软件研究所副所长,主要研究领域为软件工程,研究方向包括软件测试、分布式系统、服务计算等。童年时父亲从国外为她带回的一个小小的游戏机,为她打开了通向计算机的一扇门。长大以后,她真正走入了这扇门中的那个计算机的世界,并且不断攀登前行,走到了如今的辽阔天地。1995年毕业于西北大学计算机系之后,她考入了北京航空航天大学计算机系攻读硕士。三年后硕士毕业,远赴美国继续攻读博士学位,先后就读于美国明尼苏达大学和亚利桑那州立大学。2001年底,她学成回国,进入清华大学任教。

2001年7月,我国申办2008年奥运会成功,举国欢腾。2001年12月,北京奥运会组织委员会正式成立,虽然当时距2008年奥运会还有6年多的时间,但是大量的准备工作都要开始着手进行。从2002年1月份开始,奥组委开始着手成立各个领域的相关部门。技术部是最早筹建的部门之一,负责奥运会信息系统、通信系统及场馆技术系统的相关工作,年轻的白晓颖参与了清华大学计算机系与奥组委技术部的科技攻关合作,成为技术部的一员,白晓颖笑称自己是北京奥运会最早的“技术志愿者”之一。

信息系统已经成为现代奥运会成功的基础和保障。奥运会信息系统结构复杂、涉及面广,项目实施规模大、周期长、风险高、难度大,也是奥运科技系统中技术含量高、应用范围广的主要部分之一。奥运会信息系统体系结构分析是充分了解系统特点,有效控制系统质量、进度、预算的前提和保证。奥运会信息系统包括运动会管理系统、计时记分系统、现场成绩处理系统及成绩系统四个主要部分。各子系统及相关模块分别由位于不同国家的不同机构承担,包括国际奥委会指定的顶级合作伙伴、顶级合作伙伴的分包商、以及主办城市组委会所签署的赞助商、提供商、开发商等,是典型的大型国际化外包项目,项目组织管理复杂。时限严格、大型遗产系统的继承及再工程,以及包括技术、管理、操作各层面在内的系统体系结构复杂,是该项目所面临的主要挑战。奥运会的所有赛事都是“一次性艺术”,甚至是“一瞬间艺术”,任何人为失误或技术漏洞,都会成为白玉瑕疵,无可补救。一次性的艺术异常精彩,但有时也会带点残酷。白晓颖和她的同事开始了马拉松式的奥运会信息系统筹备工作。

面对奥运会信息系统质量控制的挑战,白晓颖和周立柱老师在2003~2005年承担了国家科技部科技攻关项目《奥运会信息系统集成测试总体方案及集成测试管理平台的预研》。本项目的主要目的是:为2008年北京奥运会信息系统集成测试的实施做好前期的预研、规划和准备工作,降低风险;加强对测试的管理,为2008年北京奥运会信息系统地集成测试系统、有计划、有组织、高效地进行奠定坚实的基础,并最终达到提高奥运会信息系统可靠性的目的;加强测试队伍的建设,为2008年北京奥运会信息系统集成测试的实施培养骨干力量。带动软件测试行业的发展,促进北京乃至全国的测试技术的发展,逐步探讨软件集成测试规范,为我国自己高水平的软件集成测试标准的建立探讨依据。

本项目的研究主要分为三部分:历届奥运会信息系统的开发和测试的调研,北京奥运会信息系统集成测试的总体方案的研究,以及测试管理平台的预研。根据课题任务书的计划,课题组完成了要求的研究工作:收集、整理、总结和分析了悉尼、盐湖城和雅典三届奥运会信息系统的相关技术资料,形成了两份调研报告《技术体系架构》和《集成测试分析》;立足于北京2008年奥运会的实际情况,参照往届奥运会的最佳实践,在软件测试及软件工程理论的指导下,形成了北京奥运会信息系统集成测试的总体规划报告;研究开发了基于Web的、可应用于分布式开发环境的测试管理系统。

在收集和分析相关资料的基础上,白晓颖还亲自前往2004年奥运会举办城市雅典进行实战考察,收集了大量第一手资料,对项目研究起到了重要作用。理论研究加上实地“取经”,课题组交出了最后的答卷,完成了技术体系架构分析集成测试分析两份调研报告,从应用系统的功能、运行环境、接口、数据流等角度系统全面地分析了信息系统的软件体系架构;从项目管理、测试环境、以及测试用例等几个方面,总结分析了往届奥运会中系统集成测试的实施方式、经验和教训。并在此基础上完成了19万字的总体规划报告,结合北京奥运会的技术战略,从人员组织、测试过程、进度计划、质量保证、策略选择及风险分析、实验室建设、测试工具选择、标准与规范、经费预算等九个方面,全面讨论了北京奥运会集成测试的总体规划方案,为奥运会信息系统的筹备工作,奠定了坚定的基础。

报告提交以后,得到了相关专家的认可,认为调研报告详细、准确、全面地反映了奥运会信息系统在测试目标、内容、组织和管理方式等方面的要求,并评价课题组制定的集成测试总体方案系统、全面、切合实际、可操作性强。课题组的工作成果被直接应用于奥组委技术战略,为北京奥运会信息系统的成功运行提供了有利保障,成为伦敦总结会中北京奥运会技术传承的一个重要经验,得到国际奥委会会的高度评价。

经过不断学习和历练,白晓颖在迅速成长,如今她已经成为清华大学计算机软件研究所副所长。作为项目负责人,她先后承担了10余项包括科技攻关项目、国际合作项目、863计划及973计划项目在内的科研项目,在国内外期刊和软件工程重要会议上70余篇,获得了一系列研究成果。在服务化软件研究方面,是国际上最早开展服务软件测试技术研究的学者之一。从面向过程、到面向对象、到面向服务,软件形态与其开发方法发生了重大的变革,服务化已经成为互联网软件的主要形态。服务化软件具有代码不可见、服务动态组合、在线演化的特点,使得传统的以人工为主或是以程序分析为基础的测试技术难以适用。针对这种新型的软件范型的质量问题,课题组从协同测试、自动化测试、在线测试三个方面,研究有效的测试方法和测试技术。另一个重要的研究方向是以机载软件为背景,研究嵌入式软件中模型驱动测试自动化技术。机载嵌入式软件的规模和复杂度成指数级增长,机载软件质量控制实际上已成为世界航空业的一个挑战性问题。课题组针对机载国产操作系统标准符合性测试的需要,实现了基于模型的测试自动化工具。

2001年8月,世界军人锦标赛在圣彼得堡举行,俄罗斯选手斯卢德诺夫以27秒25的成绩打破了50米蛙泳的世界记录。但遗憾的是,由于赛场内的电子计时器出现故障,没有记录到斯卢德诺夫的成绩。短暂休息后,斯卢德诺夫又以27秒25的成绩再次打破世界记录。谁料,他的这次成绩仍旧不能作数,原因是裁判忘了重新启动电子计时器……“就因为这样,我所有的努力,以及数月来的训练和准备工作全都白费了,真是让人恼怒!”这位游泳健将绝望透顶地说。

在比赛中出现任何技术故障,不仅会给运动员带来无尽的懊恼和愤怒,还会影响赛事的精彩程度。因此,信息系统是关系到比赛质量的一个关键因素,对于奥运会这样的世界顶级赛事来说,信息系统的重要性更加不可估量,这就为奥运会筹备人员带来了无法估量的压力,白晓颖作为北京奥运会组织委员会的一员,从2002年进入奥组会到2008年8月24日奥运会闭幕,切切实实地感受了6年多的时间。直到奥运会圆满结束,她才放下了一直悬着的心,真正松了一口气。

白晓颖,清华大学副教授、计算机系软件研究所副所长,主要研究领域为软件工程,研究方向包括软件测试、分布式系统、服务计算等。童年时父亲从国外为她带回的一个小小的游戏机,为她打开了通向计算机的一扇门。长大以后,她真正走入了这扇门中的那个计算机的世界,并且不断攀登前行,走到了如今的辽阔天地。1995年毕业于西北大学计算机系之后,她考入了北京航空航天大学计算机系攻读硕士。三年后硕士毕业,远赴美国继续攻读博士学位,先后就读于美国明尼苏达大学和亚利桑那州立大学。2001年底,她学成回国,进入清华大学任教。

2001年7月,我国申办2008年奥运会成功,举国欢腾。2001年12月,北京奥运会组织委员会正式成立,虽然当时距2008年奥运会还有6年多的时间,但是大量的准备工作都要开始着手进行。从2002年1月份开始,奥组委开始着手成立各个领域的相关部门。技术部是最早筹建的部门之一,负责奥运会信息系统、通信系统及场馆技术系统的相关工作,年轻的白晓颖参与了清华大学计算机系与奥组委技术部的科技攻关合作,成为技术部的一员,白晓颖笑称自己是北京奥运会最早的“技术志愿者”之一。

信息系统已经成为现代奥运会成功的基础和保障。奥运会信息系统结构复杂、涉及面广,项目实施规模大、周期长、风险高、难度大,也是奥运科技系统中技术含量高、应用范围广的主要部分之一。奥运会信息系统体系结构分析是充分了解系统特点,有效控制系统质量、进度、预算的前提和保证。奥运会信息系统包括运动会管理系统、计时记分系统、现场成绩处理系统及成绩系统四个主要部分。各子系统及相关模块分别由位于不同国家的不同机构承担,包括国际奥委会指定的顶级合作伙伴、顶级合作伙伴的分包商、以及主办城市组委会所签署的赞助商、提供商、开发商等,是典型的大型国际化外包项目,项目组织管理复杂。时限严格、大型遗产系统的继承及再工程,以及包括技术、管理、操作各层面在内的系统体系结构复杂,是该项目所面临的主要挑战。奥运会的所有赛事都是“一次性艺术”,甚至是“一瞬间艺术”,任何人为失误或技术漏洞,都会成为白玉瑕疵,无可补救。一次性的艺术异常精彩,但有时也会带点残酷。白晓颖和她的同事开始了马拉松式的奥运会信息系统筹备工作。

面对奥运会信息系统质量控制的挑战,白晓颖和周立柱老师在2003~2005年承担了国家科技部科技攻关项目《奥运会信息系统集成测试总体方案及集成测试管理平台的预研》。本项目的主要目的是:为2008年北京奥运会信息系统集成测试的实施做好前期的预研、规划和准备工作,降低风险;加强对测试的管理,为2008年北京奥运会信息系统地集成测试系统、有计划、有组织、高效地进行奠定坚实的基础,并最终达到提高奥运会信息系统可靠性的目的;加强测试队伍的建设,为2008年北京奥运会信息系统集成测试的实施培养骨干力量。带动软件测试行业的发展,促进北京乃至全国的测试技术的发展,逐步探讨软件集成测试规范,为我国自己高水平的软件集成测试标准的建立探讨依据。

本项目的研究主要分为三部分:历届奥运会信息系统的开发和测试的调研,北京奥运会信息系统集成测试的总体方案的研究,以及测试管理平台的预研。根据课题任务书的计划,课题组完成了要求的研究工作:收集、整理、总结和分析了悉尼、盐湖城和雅典三届奥运会信息系统的相关技术资料,形成了两份调研报告《技术体系架构》和《集成测试分析》;立足于北京2008年奥运会的实际情况,参照往届奥运会的最佳实践,在软件测试及软件工程理论的指导下,形成了北京奥运会信息系统集成测试的总体规划报告;研究开发了基于Web的、可应用于分布式开发环境的测试管理系统。

在收集和分析相关资料的基础上,白晓颖还亲自前往2004年奥运会举办城市雅典进行实战考察,收集了大量第一手资料,对项目研究起到了重要作用。理论研究加上实地“取经”,课题组交出了最后的答卷,完成了技术体系架构分析集成测试分析两份调研报告,从应用系统的功能、运行环境、接口、数据流等角度系统全面地分析了信息系统的软件体系架构;从项目管理、测试环境、以及测试用例等几个方面,总结分析了往届奥运会中系统集成测试的实施方式、经验和教训。并在此基础上完成了19万字的总体规划报告,结合北京奥运会的技术战略,从人员组织、测试过程、进度计划、质量保证、策略选择及风险分析、实验室建设、测试工具选择、标准与规范、经费预算等九个方面,全面讨论了北京奥运会集成测试的总体规划方案,为奥运会信息系统的筹备工作,奠定了坚定的基础。

报告提交以后,得到了相关专家的认可,认为调研报告详细、准确、全面地反映了奥运会信息系统在测试目标、内容、组织和管理方式等方面的要求,并评价课题组制定的集成测试总体方案系统、全面、切合实际、可操作性强。课题组的工作成果被直接应用于奥组委技术战略,为北京奥运会信息系统的成功运行提供了有利保障,成为伦敦总结会中北京奥运会技术传承的一个重要经验,得到国际奥委会会的高度评价。

软件试用期工作总结第7篇

关键词:CMM;软件开发;软件测试

中图分类号:TP311文献标识码:A文章编号:1009-3044(2007)17-31397-02

Based on CMM Software Development and Testing

YANG Guang

(Northeastern University College of Software,Shenyang 110004,China)

Abstract:Demand for software development, including design, programming and testing, and software quality assurance testing software is the key steps have been more and more people's attention. Currently, the CMM (Capability Maturity Model, Capability Maturity Model) has become the world's most popular, most practical kind of software production process standards, received international recognition software industry has become in today's enterprise-scale software as an indispensable. In software development and testing process, the characteristics of the enterprise itself, using the CMM software development management processes, to improve software development quality and efficiency.

Key words:CMM;software development;software testing

1 引言

软件开发包括需求、设计、编程和测试,而软件测试是软件质量保证的关键步骤,已经得到人们越来越多的重视。目前,CMM (Capability Maturity Model,能力成熟度模型)已经成为国际上最流行、最实用的一种软件生产过程标准,得到了国际软件产业界的认可,成为当今企业从事规模软件生产不可缺少的一项内容。2000年,国务院的《鼓励软件产业和集成电路产业发展的若干政策》中第17条中表示,将对软件出口型企业CMM认证费用予以适当支持。如今,国内企业也越来越重视基于CMM的软件开发和测试。

2 CMM简介

20 世纪 80 年代中期,国际软件产业界对软件过程的研究十分重视,因为在采用软件工程方法克服软件危机的过程中,人们已认识到,软件过程是否完善是软件风险大小的决定因素。1986 年 11 月,美国卡内基梅隆大学的软件工程研究所( Software Engineering Institute , SEI )应美国联邦政府的要求,针对美国国防部对软件承包商的能力评价问题,研究 “ 过程成熟度框架 ”。1987 年 9 月, SEI 开发了一套软件能力成熟度框架和软件成熟度问卷,用来评估软件供应商的能力。1991 年, SEI 自己总结了成熟度框架和初版成熟度问卷的实践经验,并以此为基础推出了 “软件能力成熟度模型( Capability Maturity Model For Software , CMM ) 1.0 版 ”。1993 年, SEI 在广泛听取美国政府和各界软件专家的意见后,推出了目前世界上比较流行的通用的 CMM1.1 版。

CMM是一个用来描述软件组织的模型,用于评价软件承包能力并帮助其改善软件质量的方法。CMM是评估软件能力与成熟度的一套标准,它侧重于软件开发过程的管理和工程能力的提高与评估。CMM表现了软件组织能力成熟度的特称,确切的说,CMM是在软件流程上的能力成熟度。 CMM将软件组织抽象为能力成熟度模型。能力成熟度是软件组织解决“按时,按计划,高质量”这一问题的关键因素,而CMM的目的,就是要帮助软件组织在进度和预算范围之内生产出高质量的软件产品。

CMM标准共分五个等级(5级为最高级别),是一个动态的过程,企业可根据不同级别的要求,循序渐进,不断改进。从第一级到第五级分别为:初始级、可重复级、定义级、管理级和优化级,从低到高,软件开发生产的计划精度越来越高,每单位工程的生产周期越来越短,每单位工程的成本也越来越低。

3 基于CMM的软件开发与测试

CMM是一种管理方法,是一个软件过程改进框架,这个框架与软件生命周期无关,也与采用的技术无关。CMM目前代表着软件发展的一种思路,一种提高软件过程能力的途径。尽管它存在着某些不足。例如,成熟级别、关键过程域、公共属性和关键实践还需要在软件行业进一步深入地讨论和修订,但它确实为软件行业的发展提供了一个良好的框架,而且是浓度软件过程能力提高的有用工具。增强我国软件企业的竞争力,提高国产软件的水平是国人的共同愿望,但目前我国软件水平,尤其是软件开发能力和软件生产能力还很差。那么,如何提高我国软件的开发和生产能力,从而提高软件整体水平?软件企业实施基于CMM的软件开发与测试也许不失为一条有效的途径。

按照CMM要求将开发分为九个阶段:项目规划、小组启动、需求分析、概要设计、详细设计、编码调试、系统集成与测试、验收、项目关闭。其中软件的测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审。

下面从各个阶段主要项目活动、阶段交付文档和评审点出发,详细描述项目开发的各个阶段。

(1)项目规划

项目规划要对所要解决的问题进行总体定义,包括了解用户的要求及现实环境。计划阶段要从技术、经济和社会等3个方面研究并论证本软件项目的可行性,编写可行性研究报告,探讨解决问题的方案,并对可供使用的资源(如计算机硬件、系统软件、人力等)成本,可取得的效益和开发进度做出估计,以制订完成开发任务的实施计划。另外,项目的相关人员提出创新性的想法,并对自己的想法进行可行性分析,研究新想法的问题范围,探索这个问题是否值得去解决,是否有大概的解决办法,并对需要的资源进行估计。

本阶段的交付文档是立项说明书,立项说明书必须提交工程委员会进行评审。如果评审不通过,项目就此结束。

(2)小组启动

在项目立项评审后,根据先前的资源估计成立项目开发小组,确立开发小组中各个角色的成员,然后对项目开发需要的软件和硬件资源进行分配,并搭建好项目开发环境。结合项目最后的期限要求以及分析CMM 历史度量库,确立项目开发的一级计划,确定以下各个开发阶段的评审点。本阶段的交付文档主要有项目计划书和小组启动说明书。项目计划书必须经过工程委员会的评审,如果评审通不过,必须参考CMM的历史度量库来修改项目计划直至通过评审。

(3)需求分析

需求分析是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把需求用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。分析阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并最终得到用户的认可。需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。

基于CMM的需求分析阶段更注重项目的管理流程。首先项目组要确立在该阶段的二级计划,然后开始需求分析,明确需要开发系统必须具备的功能。并要主动与用户交流,获取需求并分析需求。制定相应的系统测试计划,在这以后的每个阶段项目组长都必须提交阶段工作报告。

CMM的需求分析阶段主要交付的文档有更新后的项目计划书、需求跟踪矩阵、需求分析说明书、系统测试计划书、项目词汇表和阶段工作报告。需求分析说明书必须提交给工程委员会评审,只有在评审通过后,才能进入下一个开发阶段。

(4)概要设计

一般软件设计可以分为概要设计和详细设计两个阶段。实际上软件设计的主要任务就是将软件分解成模块。概要设计就是结构设计,其主要目标就是给出软件的模块结构,用软件结构图表示。

基于CMM的概要设计阶段不但要为系统描述系统流程图、构建系统的可能方案、确立的系统总体方案和进行模块划分及设计。而且还有进行一些系统的集成测试计划和设计评审等工作。该阶段主要的交付文档为更新的项目计划书、更新的需求跟踪矩阵、编程规范、概要设计说明书(包含总体方案)、集成测试计划书、意见反馈单、阶段工作报告。各个模块的概要设计说明书和总体方案必须经过评审。

(5)详细设计

详细设计阶段是对概要设计的结果的细化,概要设计已经达到函数级的分解,详细设计是对分解的函数进行实现的描述。一般详细设计的首先要设计模块的程序流程、算法和数据结构,其次,要设计数据库,常用方法还是结构化程序设计方法。

基于CMM的详细设计阶段必须依次补充完善需求跟踪矩阵,并确立单元测试计划和进行评审。该阶段的交付文档为更新的项目计划书、更新的需求跟踪矩阵、详细设计说明书、单元测试计划书、意见反馈单和阶段工作报告。各个模块的详细设计必须经过评审。

(6)编码调试

软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表示的"源程序清单"。充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的选择以及保证软件产品的开发质量。当前软件开发中除在专用场合,已经很少使用二十世纪80年代的高级语言了,取而代之的是面向对象的开发语言。而且面向对象的开发语言和开发环境大都合为一体,因此大大提高了开发的速度。

基于CMM的编码调试阶段的任务包括:①项目组制定出在本阶段的二级计划;②学习确认编程规范,再开始编码,同时必须进行同行检查和走读检视;③进行单元测试。一般认为单元测试应紧接在编码之后,当源程序编制完成并通过复审和编译检查,便可开始单元测试。测试用例的设计应与复审工作相结合,根据设计信息选取测试数据,将增大发现上述各类错误的可能性。在确定测试用例的同时,应给出期望结果。该阶段的交付文档为更新的项目计划书、更新的需求跟踪矩阵、代码、单元测试报告、意见反馈单和问题跟踪单。所有代码必须经过工程委员会的评审,以确认是否符合编程规范要求。

(7)系统集成和测试

软件测试的目的是以较小的代价发现尽可能多的错误。要实现这个目标的关键在于设计一套出色的测试用例(测试数据和预期的输出结果组成了测试用例)。如何才能设计出一套出色的测试用例,关键在于理解测试方法。不同的测试方法有不同的测试用例设计方法。两种常用的测试方法是白盒法和黑盒法。

一般测试分为:单元测试、集成测试和系统测试。单元测试阶段通常是属于开发项目组编码调试的范畴。单元测试阶段后要将系统集成成一个可运行版本。此后,就进入系统集成和测试阶段,系统测试应该由若干个不同测试组成,目的是充分运行系统,验证系统各部件是否都能政党工作并完成所赋予的任务。该阶段主要的交付文档为集成测试报告和系统测试报告、问题跟踪单和阶段工作报告。在测试阶段完成后,必须经过内部验收的评审才可以提交进入正式的验收阶段。

(8)验收

在验收阶段,项目组主要是配合客户进行验收。首先准备好用户手册以及相关文档,并提交系统验收检查单,协助客户进行验收测试。本阶段的交付文档为验收报告,客户签署的验收报告也就是对本阶段的评审。

(9)项目关闭

本开发过程最后强调的是项目关闭阶段,这个阶段是对项目开发的总结。针对CMM 中关键过程域的实施执行情况,各个角色必须提交相应的角色总结报告。在项目组长汇总后,总结项目开发中的不足和经验,提交过程改进意见和CMM度量库。这个过程有助于项目开发组织改进自己的软件开发过程。

4 总结

CMM 是国际公认的 “ 事实 ” 标准,是中国软件业走向国际市场的通行证。CMM的目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。因此在软件的开发和测试的过程中,针对企业自身的特点,采用CMM软件开发管理流程,能够提高软件开发的质量和效率。

参考文献:

[1]何新责.软件能力成熟度模型[M].北京:清华大学出版社,2000.

[2]刘莉,傅英亮,陶强.基于CMM的软件开发和维护过程的研究[J].信息技术与信息化,2006,(05).

软件试用期工作总结第8篇

在软件开发的每一个阶段中,人员的参与都是离不开的部分,而人的工作以及人们之间的通信质量有很难做到完美无缺,这就导致了错误是不可避免的。另外,伴随着计算机控制对象越来越复杂,且软件的功能及规模也在不断的提升,这也使得错误相对而言更容易发生,比如对于WindowsNT操作系统来说,其代码约为3200万行。总体来看,在软件设计阶段,人们所犯的错位是引起软件失效的主要原因,而软件缺陷的根源则在于软件的复杂性。在确保软件可靠性以及质量的过程中,软件测试属于最为主要的手段,以当前的软件工程来看,多以结构化分析及设计作为核心,因此在开发阶段,需求分析以及设计都是以工程管理以及技术评审作为质量的保障手段,而工程管理以及技术评审又存在着主观上的缺陷,很容易遗漏错误使其延续至开发阶段。客观来说,软件测试在发掘软件中隐藏缺陷的过程中的确有着很好的效果,以英国的SHOLIS项目来看,这一项目使用形式化方法对软件规约进行描述及证明,而且利用程序正确性证明方法对前期的很多缺陷进行排除,但是通过软件测试却依旧发现了整个过程15.175%的缺陷。此外,随着人们对软件测试重要性的认识越来越深,其所在软件开发周期中所占的比例也越来越高,当前很多软件开发机构已经将其40%的研制力量投放到了软件测试中,而对一些比较重要的软件来说,其测试的费用往往会高达其他阶段费用的3至5倍,由此可见,不管从哪个角度出发,软件测试都是非常重要的。

2软件测试分类

当前的软件测试技术主要可以分为动态测试以及静态测试,其中,静态测试主要是指在不执行程序代码的情况下找到程序中有可能存在的缺陷或者对程序代码进行评估的过程中,广义上看,静态测试还包括软件需求分析以及技术评审。至于动态测试,则是通过抽样测试数据对程序进行运行以起到检查程序中存在的缺陷。在动态测试的过程中,其核心内容主要包括测试用例、运行正与以及对于程序运行结果进行验证这3部分内容,此外还包括一些数据管理、文档编制、操作规程等辅助方面的工作。

3软件测试的对象

在软件测试的过程中,不单单进行一些比较简单的程序测试,也就是说仅对程序能否运行进行测试是远远不够的。具体来看,软件测试要贯穿在软件定义以及开发的整个过程中,因此软件测试的对象包括需求分析、系统设计、程序编码以及各阶段说明文档。此外,因软件开发过程中各个阶段之间有着非常金敏的衔接,因此如果前一阶段出现问题必然会对下一阶段段的工作造成影响,所以为了确保每一个阶段的正确性,我们要做好确认及验证工作。具体来看,确认主要是对需求规格以及程序进行确认,这既含有静态确认,又有动态确认,其中静态确认大多数是由人工进行分析,而动态确认则是利用动态分析以及程序测试对程序执行的情况进行检查。至于验证,则主要是采取一定手段对程序执行情况进行检查,进而证明软件各阶段中的完备性、正确性以及逻辑协调性。举例来说,我们验证的对象包括测试用户需求和系统分析员报告是否想和、设计说明书和测试需求说明书是否匹配等。

4软件测试目的及原则

4.1软件测试目的

测试目前因立场的不同又可以分为两种,从客户角度来看,总是会希望通过测试来发现软件中的缺陷及隐蔽错误。而从软件开发者角度来看的话,则是希望产品少出现错误,对软件已经符合客户需求进行验证,在这种思路下,测试人员会使用一些导致程序失效概率小的测试模块进行测试,并对容易导致错误暴露的测试用例进行回避,而且对于有可能出现副作用的语句也并不会去刻意的检查。基于此,在程序中,还存在很多预料不到的问题,而这类问题往往要在一些比较特殊的环境之下才能够表现出来。从以上分析我们可以看出,在对软件进行测试的过程中还是要更多的站在用户角度对问题进行考虑。

4.2软件测试原则

(1)“尽早和不断的进行软件测试”,只有时刻牢记这一原则才能够降低软件开发中由于工作多样化、人员配置复杂化所带来的不利影响。具体实践的时候,我们首先要端正态度,对各阶段技术审核要认真进行,另外,我们还要将软件测试贯彻到每一个环节中,进而早对错误进行发现和预防。

(2)测试用例选择的过程中要有输入数据和以及和输入数据相对应的预期输出结果,具体来看,在我们进行软件测试的过程中要选择比较适合程序段的测试用例,这些用例可以对程序员所编制的程序是否存在错误进行分析,而给出预期的输出结果则可以对程序段是否存在错误进行更为快捷的判断。

(3)要避免程序员对自己的程序进行测试,在软件测试的过程中,冷静的情绪以及客观的态度是不可避免的,而人又很难对自己的劳动成果进行否定,因此在程序员对自己程序进行检查的过程中会从主观上出现偏差,导致测试结果不准确、不客观。

(4)设计测试用例的过程中要注意使用不合理输入套件,所谓不合理输入条件主要包括输入异常或者会导致异变的条件。在软件正常使用的过程中,不合理输入是不可避免的,轻则会导致运算错误,严重的时候甚至会使软件失效。

(5)对测试工作中的群集现象进行注意,针对测试过程中错误较多的程序段,要对其进行详细认真的检查,这是因为从经验上看,程序段中残存的错误于已发现的错误往往会成正比。

(6)对测试要认真执行,这是指我们要做好一个详细的规划,具体来说,规划主要包括:软件功能、输入、输出以及每一功能测试的进度安排等。

(7)对测试计划、用例、出错统计以及分析报告等进行妥善的保管,进而为日后的软件维护提供更为便捷的服务。总体来看,在我们的工作中如果能够把握住以上原则必然能够对提升测试工作的效果起到很强促进作用。

5结语