软件测试工程师

2024-10-13

软件测试工程师(共12篇)

软件测试工程师 篇1

摘要:当前软件测试工程师绩效考核存在的问题主要表现在:考核定位模糊并存在偏差, 重考核、轻管理, 重结果、轻过程, 考核主体单一, 企业管理者没有承担起绩效管理的责任, 绩效考核指标不全、标准不明。测试工程师绩效考核要明确考核的目标, 突出测试人员在考核中的主体地位, 构建一体化绩效管理体系。

关键词:测试工程师,绩效管理,体系

软件测试工程师绩效考核是IT企业根据发展战略和使命要求, 对测试工程师的工作业绩进行考察和评估, 包括工作行为和工作效果。随着中国软件业的迅猛发展, 软件产品的质量控制与质量管理正逐渐成为企业生存与发展的核心。为了保证软件在出厂时的“健康状态”, 几乎所有的IT企业在软件产品发布前都需要大量的质量检测工作。测试工程师作为软件质量控制中的重要一环, 其绩效考核成为企业了解测试人员队伍状况, 监控测试人员工作过程的重要手段。

软件测试工程师绩效考核是IT企业人力资源管理的中心环节, 是测试人员薪酬、晋升、人事调整、职称评定等决策的基础, 并且为企业制定测试人员的培训、开发计划及长期职业生涯发展规划提供依据。测试工程师绩效考核的有效性直接影响到人力资源制度的激励效果和企业管理的公平性, 并对测试人员的工作满意度有重要影响。然而, 现实的绩效考核工作往往不尽如人愿。许多测试工程师遇到考核时深感不安, 产生焦虑, 害怕甚至反对考核;很多测试人员认为考核是走过场, 抱着无所谓态度。理论上的必要性和重要性与现实中的困惑形成强烈反差。为此, 我们有必要对测试工程师绩效考核存在的问题进行反思, 从而构建能满足企业和测试工程师共同发展的绩效管理体系。

一、软件测试工程师绩效考核存在的误区及其分析

(一) 考核定位模糊并存在偏差

考核定位, 就是通过绩效考核解决什么问题。考核定位模糊主要表现在考核缺乏明确的目的, 仅仅是为了考核而进行考核, 这样做的结果往往导致考核流于形式。考核定位偏差主要体现在片面看待考核的目标上, 对考核目的定位过于狭窄。目前许多IT企业绩效考核的目的仅仅是为了期末发奖金或津贴, 将考核定位于确定利益分配的依据和工具。

(二) 重绩效考核轻绩效管理

绩效考核和绩效管理既有本质上的区别, 又有一定联系。传统绩效考核以管理者为中心, 强调服从和外部控制, 着眼于过去, 注重成果, 是一种被动反应、事后解决问题的管理方法。现代绩效管理则以测试工程师为中心, 强调承诺和自我控制, 着眼于过去、现在和将来的有机统一, 是一种主动开发型、在过程中解决问题的管理系统。绩效管理是一个完整的系统, 绩效考核只是绩效管理中一个不可或缺的组成部分和环节, 绝不能将其等同于绩效管理。

(三) 重考核结果轻考核过程

绩效是工作成果与工作行为的统一。许多IT企业重视对绩效中的工作结果考核, 而忽视了绩效中的行为指标, 这表现在许多项目组重视项目完成进度而轻视测试过程, 重视项目的数量而轻视其质量, 尤其是轻视与测试工程师行为有关的工作动机、热情度、忠诚感等“周边绩效”考核点。这可能与企业受功利主义思想影响、追求短期利益有关, 或者可能与工作结果容易量化, 而行为不易评估有关。

许多项目组在项目初期给工程师布置测试任务和预期应完成的指标, 期末予以检查, 而对工程师完成任务和指标的过程不管不问, 既不对完成任务过程中出现的问题予以及时纠正, 也不对测试人员在工作中遇到困难和阻力时提供帮助和支持。这种秋后算账的做法容易造成管理者与被考核者的对立, 不利于测试人员的成长与进步。

(四) 考核主体单一

目前, 项目经理考核测试工程师已成为一种普遍运用的评价方式甚至是唯一的评价方式。项目经理考核有一定可信性, 但也存在一些弊端, 如测试人员一味地迎合项目经理的指令, 淡化了整个团队的沟通协作, 忽视一些测试人员不可控制因素的影响而造成考核不公正等。测试工程师在考核时处于一种被动地位, 或者消极被迫接受, 或者导致内部冲突升级。项目组也不重视同行专家的评估意见或根本不吸收同事参与考核。

(五) 绩效考核指标不全, 标准不明

考评项目和指标的选择是否恰当, 是否全面、相关, 定义是抽象含混还是具体明确, 对考核结果影响很大。如果绩效考核标准不明, 则不同的考核者可能对优、良、一般、差等绩效标准做出不同的解释, 从而造成考评者偏松或偏紧或趋中倾向, 造成考核结果的误差。以测试人员业绩考核为例, 业绩考核包括整体工作效率、工作结果、过程控制三项一级指标。其中, 工作结果可以分为测试用例的数量和质量、bug的数量和质量、测试自动化程度及收效等多项二级指标, 若不对这些定性指标给出明确定义, 则考评时易出现主观随意现象。因此, 界定应具体明确。如bug的数量和质量可定义为:提交bug的数量 (根据项目的不同而确定经验值) 、提交bug的时间段 (具体统计在测试的每个阶段) 、发现bug的比例等。

二、软件测试工程师绩效管理体系的构建

(一) 明确测试工程师绩效考核目标

Bevan和Thompson (1991) 认为绩效管理的主要目的是“促进人力资源管理不同组成部分的整合, 并使它们与公司的经营目标紧密联系在一起。”测试工程师绩效考核的目标, 一是为企业的发展服务, 支撑企业使命和战略的实现;二是服务于工程师个人需要及其职业进步。

(二) 构建一体化绩效管理体系

绩效管理就是根据组织的要求, 对雇员进行指导和支持, 使雇员尽可能地以更高的效率完成自己的工作。从狭义角度理解, 绩效管理系统由制定绩效计划, 持续的绩效沟通与绩效信息收集, 绩效考核, 绩效反馈、诊断与辅导等部分组成。从广义上讲, 绩效管理系统由绩效管理的影响力量、狭义的绩效管理系统、绩效管理的运用和目标等部分构成。

广义的绩效管理系统包括以下3部分:对影响测试工程师绩效的原因进行分析, 尤其是从企业内部的组织结构、领导方式、企业文化、招聘和聘任制度、岗位分析等方面探讨与测试工程师绩效有关的因素;狭义的绩效管理系统;绩效管理的目标, 包括绩效管理要达到的组织目标和测试工程师个人发展目标 (见图1) 。

制定绩效计划和考核目标的目的是为了清楚地说明企业期望测试工程师达到的结果以及为达到该结果所期望测试人员表现出来的行为和技能。管理者通过与被考核者协商, 共同制定与企业使命相关的具有挑战性、可实现性、具体明确且有时间限制的绩效计划。持续的、动态的绩效沟通就是管理者和被考核者共同工作, 以分享有关信息的过程。这些信息包括工作进展情况, 潜在的障碍和问题, 可能的解决措施以及管理者如何才能帮助被考核者。这些信息必须是有据可查、准确真实的且与绩效相关的信息。管理者可通过面谈, 向其他同事了解意见, 查看被考核者的工作记录等方式获取信息。绩效考核包括测评内容、何时测评、哪些人参加测评、测评方式及责任等。绩效诊断与辅导, 是管理者和被考核者双方合作, 共同寻找导致绩效低的原因, 以及帮助被考核者提高未来绩效的方法, 涉及处理矛盾、准备反馈面谈、解决问题和重新设定目标等内容。

(三) 实现测试工程师绩效考核主体的多元化

在传统的测试工程师绩效考核中, 将工程师排斥在外, 测试人员作为被考核者处于被动应考的地位, 被考核者与考评者的这种对立状态造成测试人员不认同、不支持考核, 使其考核失去应有价值。虽然测试工程师可能由于认知或自利性偏差 (根据归因理论, 测试人员可能将自己的成功归之于自身的能力与努力等内因, 而将其失败或绩效不理想归之于工作难度和机遇等外因;而对别人的成功与失败归因与自身归因相反) 和自我防御心理的原因, 测试工程师有高估自身的业绩, 而看不到或有意掩盖自身存在的问题的可能性, 但可以通过构建系统化的绩效管理系统, 明确绩效考核的目标, 管理者与被考核者的平等沟通, 以及通过考核主体的多元化 (除测试工程师本人外, 还有领导、同事、客户等) 等方法来避免这些弊端。

(四) 构建测试工程师绩效考核合理分工、各司其职的组织管理机构

对测试工程师的绩效管理是企业人力资源部和项目组的共同责任。人力资源部主要从事组织、指导和协调工作, 具体职责包括培训考核者、规范考核制度、制定各种考核表格、发放及统计等工作。考核由项目组具体组织实施, 包括测试工程师工作任务的安排、考核指标与内容的确定、考核方法与时间的确定、考核主体的组织、考核结果的反馈、绩效改进与提升等工作。项目经理首先应当是一名合格的人力资源管理者, 应把人力资源管理工作如激励、员工发展、绩效管理纳入企业的议事日程, 并构成企业管理者对项目经理考核的重要内容。当然, 这需要改变目前IT企业高度集中的人事管理体制, 将部分人事管理权由企业下放至项目组。

(五) 根据测试工程师的工作特征, 建立考核内容全面、结果与行为 (过程) 并重的绩效考核机制

测试工程师作为专业人员和知识工作者, 在其需求和工作方面存在以下特征:追求工作自主, 不愿意受过多的外部控制;个人品性对测试工作及其事业影响很大;需求具有多样性和复杂性, 既追求较低层次的需要, 如生理、安全需要, 又追求较高层次的需要, 如受人尊重、自我实现的需要;工作具有分散性、个体性等。这些特征要求在测试工程师绩效考核时注意以下方面:一是绩效考核内容要全面, 德、知、能、勤、绩一样都不能少。测试工程师品德潜移默化影响其对测试工作的态度;知识包括测试工程师应掌握的专业技能及业务知识、个人素养;能力包括软件测试能力、沟通与团队协作等方面。二是测试工程师绩效考核坚持结果与行为 (过程) 考核并重。Brumbrach (1988) 认为“绩效指行为和结果。行为由从事工作的人表现出来, 将工作任务付诸实施。 (行为) 不仅仅是结果的工具, 行为本身也是结果, 是为完成工作任务所付出的脑力和体力的结果, 并且能与结果分开进行判断。”Borman和Motowidlo (1993) 认为行为绩效包括任务绩效和关系绩效 (周边绩效) 两个方面。任务绩效指正式工作职责和所规定的行为, 关系绩效指自发性行为或超职责行为。由于测试工程师工作的效果难以量化, 且具有滞后性和共同属性。因此, 在坚持完善目前通过测试工作量和测试用例等结果指标衡量测试工程师绩效的同时, 企业还要重视对测试人员行为, 包括团队合作行为的考核, 尤其要关注关系绩效的考核, 这对克服测试人员工作分散化, 形成合作的团队以及按质按量地完成项目组的目标有重大意义。

参考文献

[1]、张剑虹.绩效管理工作中的七个误区[J].企业改革与管理, 2003 (5) .

[2]、理查德.威廉姆斯.组织绩效管理[M].清华大学出版社, 2002.

[3]、陈雄政, 余凯成, 程文文.人力资源管理与开发高级教程[M].高等教育出版社, 2004.

软件测试工程师 篇2

总结是在某一特定时间段对学习和工作生活或其完成情况,包括取得的成绩、存在的问题及得到的经验和教训加以回顾和分析的书面材料,它是增长才干的一种好办法,快快来写一份总结吧。那么总结要注意有什么内容呢?下面是小编精心整理的软件测试工程师总结,仅供参考,大家一起来看看吧。

软件测试工程师总结1

x年是我进入公司的第一年,也是我的工作能力得到提高和快速发展的一年,在公司领导的指导和同事以及其它部门的支持配合下,最后在经过自己的努力,完成了自己所要完成的各项工作任务,在新的一年来临之迹,我要对过去一年的工作进行一个全面的总结,以便在今年的工作中能够有更明确的目标,尽量克服自己现在所存在的不足,希望能更一步为自己所在的部门增光,做出自己的贡献。下面是我对去年工作汇总。

一、总结:

1.自身定位:在过去一年,是我进公司的第一年,也是我工作的第一年,刚开始在我对工作竞争和自身都不甚了解的情况下,在领导和同事的指导下,我感觉自己已经慢慢对人与人的竞争和自身定位有了深刻的了解,因为有了自我目标,才能感受到自己的压力有多大!我的目标也不只是完成目前所要做的工作而已,要向其它方面拓展学习。

2.定下心来,踏踏实实:我学的是计算机专业,我的工作也是计算机方面的,以前有什么优势,但是踏入工作岗位后才发现,自己学的只是一个基础,只是有些方面或许比别人走的快一步,所以一切都要靠自己.自己要定得心下来学习.成功需要耐得住寂寞,不求最快,但求.3.团队合作:以前在学校或许你可以靠一个取得好成绩,在工作上你必须要有一个团队,在一个部门之中,团队合作精神显得尤为重要.以前我做有些事都是一意孤行,但现在已经对自己改变了,多听听他人意见,会犯更少错误,会更长见识,所以要学会与同事之间的合作,做事才更有效。

4.工作情况:在公司一年,对mes大型系统有了个大概了解,对我们所要学习的mes已经可以说差不多都掌握,条码打印机的维修和设置掌握,a4打印机大多数情况可以维护,pda、条码枪已掌握,电脑的系统重装和维护已掌握,其它基本设置可以维护,对新出来的程序掌握和了解也比较快。

5.课外学习:sql该学的已经掌握,c#学习,简单的程序可以编写,但有时还要依靠于网络和朋友,需要进一步加强。但主要还是以网络为主。

二、自身缺点

1.沟通问题:自己的沟通能力只能算一般,因为对于某些事的阐释还是不怎么好,语言表达能力有点差,希望通过平时的交流和沟通来加强。

2.心态问题:自己对于做某些事过于着急,一心想急切完成,确反而误时,这个问题一开始就一直出现,现在虽然已经基本克服,但也要列入缺点方面,希望以后时刻注意!

3.学习问题:对于课外学习c#这方面,我在编程时感觉困难的时候有时候就不愿去做,现在虽然已经慢慢改进上网搜资料和问问朋友,但有时候还是克服不了自己。

软件测试工程师总结2

20xx年2月2日,我有幸成为北京超图一员,应聘为公司的java软件工程师。入任职以来,在部门领导的带领下,自己感觉无论学习、技术、生活等方面都有很大的提升。

20xx年里我主要完成的工作有三方面:

1、荆门石油石化巡检系统的调研和开发。

该项目是我工作以来第一次涉及到调研,对我来说算是一个不小的挑战。在调研过程中,让我学会了如何通过和客户的沟通来了解客户的需求。由于自己的工作经验不足,在调研工作中体现出一些问题。不能很直接的在和客户沟通中非常准确的了解客户的更多需求,有很多需要和客户交流沟通多次才能明白客户的最终需求,也没有把自己作为最终用户并站在用户的角度上来考虑问题,这些都是我在以后的工作中需要提高和改进的地方。在巡检系统的开发工作中,让我进一步巩固和加强了自己的开发能力。

2、电信12530增值业务的开发与维护。

从5月以来我就开始接手公司的主要业务之一,12530电信增值业务。由于前面负责这个项目的同事突然离职,导致这个项目的交接工再做得不够好,对我顺利接手这个项目造成很大的困难。而刚一接手这个项目,马上就需要新上一个投票活动,并要对一些主要代码进行修改,让我倍感压力,几乎都快放弃。最后在金总的指导和鼓励下,顺利的完成这次活动。在完成这次投票活动后,为了避免下一个接手这个项目同事与我遇到同样困难,我第一时间将这个项目的相关技术文档补充完全,保证别人能够顺利的进行该项目工作。通过这个项目,让我加强了自己在高强高压下工作的能力,也让我找到更多自信。

3、襄樊、鄂州家政网络服务中心的开发与实施。

在这两个项目中,除了承担开发工作以外,也逐渐涉及到项目管理的职责,让我在个人能力上有所提高。为了这两个项目能够顺利完成,除了完成自己的工作外,还主动关心其他同事的工作完成情况。让我在项目管理和项目进度的把控能力有很大的提高。将襄樊、鄂州家政网络服务中心顺利实施,为我公司拿下湖北省其他市的家政网络服务中心奠定基础。在工作之外,我也注重个人能力的提高。工作之余,主动学习一些新技术,与同事沟通配合,搭建一个ssh的开发框架。也学习springsecurity知识,这些新知识的积累,对我以后的工作有很大帮助。

20xx年工作展望:

1、将学习的springsecurity整合到我们自己搭建的ssh框架,进一步完善框架。

2、利用搭建的ssh框架,开发一套oa系统平台。

3、做好襄樊、鄂州家政网络服务中心的维护工作。

4、希望公司能够大量拿下湖北省其他市的家政网络服务中心,继续开发和实施湖北省其他市的家政网络服务中心。

5、继续学习新技术,努力提高自己的个人能力。为以后能够更好,更顺利的工作奠定基础。

6、希望通过自己的进步和努力,能为公司的发展做出自己的贡献,体现出自己的价值。

软件测试工程师总结3

我在公司的职位是软件测试人员,我的.工作就是要负责公司软件开发后的测试工作,把好最后一道关,使公司的产品实现价值化,延长软件生命周期。

转眼间,在公司这个大家庭里工作已经半年了,回首这半年来自己所经历的一切,面对自己的成绩与教训、长处与不足、困难与机遇内心感慨万千,这段时间让我学到很多也懂得了很多,我很感谢公司所给予的一切。

首先,我真心的感谢公司领导及其公司同事给我们的这个难得的机会,我非常珍惜这个机会,对我来说,这能够真正使我从不适应工作到适应以后的工作和生活。非常感谢研发部的同事,还有感谢所有公司的同事,因为你们的帮助,我顺利的走过在公司的适应期。还记得工作第一天的时候,那时我对所有的工作流程都还不懂,开始的时候很紧张,但是从有了第一次工作后,对自己的工作就逐渐成为习惯,适应了这里的工作环境,自我价值也在工作的过程中得到了实现并且得到了提高。

其次,在工作的半年以来自己在工作上有不少收获,能够熟练的操作公司所生产的软件产品,做到尽到自己的工作职责将软件产品不成熟的地方和有bug的地方即时记录,享即时将建议与问题发给研发进行沟通,让研发可以更快的解决问题所在。对于网站以及服务器上会出现的问题都已经整理文档,方便大家共享,更好的查找和解决问题。

在测试工作之外,我会力所能及的帮用户监测网站查找问题,编写测试报告。帮公司的销售人员查找网站链接,整理表格资料,进行监测,查找出问题,方便销售人员对用户提供测试报告,增加销售筹码。

在领导的帮助下,完成了公司所需要申请专利的两份资料,对专利申请的流程以及申请文档的编写的有了进一步的了解。为以后在相同方面的工作累积了经验。

软件测试工程师总结4

这学期的期末大作业是对ELearningJavaWeb应用系统进行测试,通过这次系统测试,我学到了很多知识。对于具体的测试部分,我主要做的是单元测试和性能测试,其中单元测试使用的是Junit工具,性能测试使用的是JMeter。就这次大作业而言,我认为它与我们平时做的实验很不相同,我们平时的实验只是涉及到测试的某个小部分,而这次测试却是对一个相对完整的项目按照规范的标准进行测试。

对于好的测试来说,应该注意一下几点:

1.测试的独立性:一次只测试一个对象,方便定位出错的位置。这有2层意思:一个TestCase,只测试一个对象;一个TestMethod,只测试这个对象中的一个方法。

2.给测试方法一个合适的名字。

3.在assert函数中给出失败的原因,如:assertTrue(“…shouldbetrue”,…),方便查错。在这个例子中,如果无法通过assertTrue,那么给出的消息将被显示。在junit中每个assert函数都有第一个参数是出错时显示消息的函数原型。

4.测试所有可能引起失败的地方,如:一个类中频繁改动的函数。对于那些仅仅只含有getter/setter的类,如果是由IDE(如Eclipse)产生的,则可不测;如果是人工写,那么测试一下。

5.在setUp和tearDown中的代码不应该是与测试方法相关的,而应该是全局相关的。如针对与测试方法A和B,在setUp和tearDown中的代码应该是A和B都需要的代码。

6.测试代码的组织:相同的包,不同的目录。这样,测试代码可以访问被测试类的protected变量/方法,方便测试代码的编写。放在不同的目录,则方便了测试代码的管理以及代码的打包和发布。

对于测试用例的命名,我们要使其与测试类的名称相一致,比如说,类的名称为Testing,此类的测试用例的名称为TestingTest。当我们把测试代码和被测的代码放在同一目录下时,我们就可以在编译被测代码的同时编译测试代码,从而确保两者是同步更新的。事实上当前的普遍做法,就是把单元测试视为build的一个环节。保持测试之间的独立性是一个很好的习惯,使得它们在任何次序下执行的结果都是相同的。如果真得需要某些测试按照特定的次序执行,我们可以借助addtest来实现。当我们需要增加一个测试时,我们要书写一个自己的测试用例,但是如果喜欢在测试用例的构造函数中做有关的初始化工作,这就不是个好习惯。数据文件应该尽可能和源代码一起都放在配置管理系统上,但这样一来如果我们采用上面的resource机制,我们就需要做一件工作,就是把数据文件从原来的位置-就是源代码的某个相对路径,拷贝到编译后的位置,也就是class文件的相应的相对路径。

通过这次软件测试的系统测试,我对软件测试有了更加深刻的认识,其实软件测试并不像想象的那么简单,它需要测试人员具备多方面的能力和素质。软件测试人员应该拥有广阔的视野、一定的编程能力、细心和耐心等等。这些对于能否测出优秀的系统来说都是必不可少的。

经过这次对javaWeb应用系统的测试,我的测试能力得到了锻炼,对软件测试有了比较全面的认识,收获了很多珍贵的东西,而且我也从软件测试的角度,对编写健壮的程序也有了新的认识。

软件测试工程师总结5

通过最近xx客户端的产品测试,我做了以下简单的工作总结,重新认识产品测试的基本理念以及对自己工作不足之处的检讨。

产品测试的目的是找出产品存在的漏洞,了解客户的感知,从而改良产品。但不同的测试初衷会直接影响到测试方法的选择,从而影响到最后的结果与测试目的的吻合程度,所以明确产品测试的目的是十分必要而且十分重要的。测试的目的主要是记录客观现象,揭露产品现状,站在客户的角度使用产品,深入了解用户的感受。

产品测试的方法,我个人认为应该将产品测试的目的和测试方法紧密结合起来,其重点在于细致入微的发现和记录,反映用户不愿或者不能表达的客观现象,从而揭露产品的缺陷,并通过进一步询问的方式,了解用户的真实感受,所以应该采取客观记录和深度访谈相结合的方法,充分揭露产品存在的缺陷,不断改良和完善产品。

因此作为一名产品测试员,应该承担起重要的责任。首先,产品测试员要有一颗细致,善于观察的心,具备高素质的专业技能,并且充分明确产品测试的目的和产品测试的方法,知道为什么要测以及用什么来测才能真正地做好产品测试,发挥产品测试的作用;其次,产品测试员要对产品业务流程非常熟悉,掌握产品的功能,才能对产品进行充分的、详细的、全面的测试;再者,产品测试员要做到既是专家又是用户,要站在用户的角度去使用产品,且要比用户更加细致,用心的使用产品,才能更加充分地去发现产品在使用过程中存在的不足,从而才能不断地完善产品,满足客户的真正需求。

通过以上对产品测试的认知,我发现,我,作为一名产品测试员,在此次测试工作中存在以下几个不足之处:

1、产品测试专业知识掌握不足,缺少高素质的专业技能;

2、没有充分做到站在客户的角度去使用产品,用心去感知客户的需求;

3、对产品的详细业务流程掌握不够;

4、对产品测试细节观察不够细微,细致;

5、与整体产品组成员沟通交流存在不足,未能及时准确地提出产品存在的不足之处;

今后,要加强各方面的测试知识学习;提升测试专业技能;培养高素质的专业技巧;同时,加强对产品业务流程的认知,以及对事物的观察能力;提高自己的动手和动脑能力,多动手多动脑,才能从多方面发现问题和解决问题,从而不断地完善和提升测试能力。

你好,我是软件工程师 篇3

一个软件工程师其实是一个“建筑设计师”。(当然我们不会真的盖出房子来)。我们使用计算机编程语言来“盖房子”。当前我们使用的所有软件,大到卫星发射的控制系统,小到手机上运行的游戏。其实都是非常复杂的系统。为了实现这些系统,盖出软件的“高楼大厦”,首先是规划整个“大厦”的结构。这个工作在我们的术语里叫做“架构设计”。这个过程十分重要。一个系统可能会有多种架构的实现方式,不同的架构有着不同的优缺点。这些优缺点影响着性能、稳定性、安全性等多个方面。所以,做一个架构师需要有高瞻远瞩的眼光。

在“大厦”的“钢筋结构”搭建完成后,“添砖加瓦”的工作-设计编码,就正式开始了。不要小看这个部分的工作,谁也不会住在只是个框子的屋子里不是吗?这才是真正软件功能的实现部分。这个工作有点像室内装修设计师。好的室内设计师设计出的房子会让你住着舒适而且美观。好的程序员需要用到许多专业的技术,来更好地实现软件功能。从事这个角色需要细心与耐心,因为我们既要实现真实的功能,又要避免把错误引入到系统中。在大的软件公司里,我们不总是设计新的软件系统,而是经常为已有的软件系统增加新的功能。

好了,在设计编码完成后,整个“大厦”就盖好了。但现在还不能“入住”。我们还需要进行测试,也就是“大厦”的验收阶段。这个过程才是“工程”这个词的含义所在。在这个环节,我们需要测试很多的东西。首先需要测试的是系统的功能。这个测试的目的是查看“添砖加瓦”阶段是否引入了错误。如果发现了错误,我们就需要改正它。在功能测试之后,我们还需要测试系统的性能,包括能力(多快)、稳定性(长时间运行无错误)、安全性(不会被黑)。在这些工作都完成之后,好吧,“大厦”终于完工了。

看完这些,今后你在玩游戏之前,一定会双手合十放在胸前,心中默默念着:“感谢伟大软件工程师们付出的青春与生命,我们才有这么好的游戏可以玩,阿门……”(开个玩笑了。)不过说真的,每个成功的软件背后确实包含着许多工程师有形的或无形辛勤工作。如果你觉得这个工作很醋。欢迎你在未来加入到我们的行列中来。其实这个工作真的很酷,特别是在工程师们讨论技术问题的时候,在外行看来他们说的就是“天书”。如果天真懵懂的女生,看到这样“神秘”的男生,一定会为之倾倒!

软件工程师的日常

作为一位在外企工作的软件工程师,他的一天通常是这么开始的。早上10点,到达公司,查看邮件。外企一般实行弹性工作制,保证8小时工作就好,对上班时间没有太严格的要求。邮件一般有两块,一块是成型需求,一块是跟踪bug。如果你的stakeholder有外国的同事,那么你不用急着回邮件,由于时差的原因,下班前发出回复就好。软件工程师的另一个工作就是开会,尤其是实行敏捷开发的项目会有每天的例会,另外我们还要开需求讨论会,这通常是很费精力的事情,但是要协调开发,测试各个环节,这种会还是很有必要的。此外还有一些经验介绍和培训的会。想成为一名好的软件工程师,多学习,多交流是非常重要的!之后的工作就是打开你的开发工具,去写新的代码,修改bug,或者是测试新的case。在编程工具大丰富的今天,好的开发工具,会帮我们很大的忙。忙碌了一天,要下班了,如果你在更加繁忙的公司,那么恭喜你了,开始加班了。如果你像我一样在外企,通常情况不会那么糟糕,但是因为时差的原因,可能有些会议是安排在晚上的,尽管这种会是可以在家里用电话call in的,但是这个可不算是加班哦。

在北京:软件从业者的奋斗地图

好了,说了那么多严肃的话题,来聊一些北京的软件产业分布图吧。北京的软件产业大体集中在几个地方,第一个地方是中关村以及邻近的五道口。中关村方圆几公里是大学、中科院等研究所的密集分布地。因此这里从最初的科研院校发展出完善的软件产业链:除了电子数码卖场之外。无数的软件公司在附近的写字楼和教育园内蓬勃发展。微软、谷歌、新浪、网易、雅虎、Adobe等大公司都在中关村附近。这附近的商业配套、生活配套非常发达,还有著名的堵车胜景,是北京的一个主要观光地(开玩笑)。

第二个地方是上地西二旗一线,上地是中关村五道口的延长线,在其北10公里的地方,中间隔着世界闻名的圆明园。上地和西二旗一起,是软件产业的后起之秀,是按照发展软件产业整体设计修建的软件园区。如果说中关村五道口这边还具有一些城市的喧嚣的话,上地和西二旗这边更像是中国的硅谷。这里修建的办公楼都不会过高,3或者4层,街道也是整齐划一。西二旗还有一个中关村软件园,更是花园式的办公环境:园中央有湖以及绿地。这边也有很多知名的软件公司,比如IBM,我所在的甲骨文公司,百度、神州数码、小米、金山等等。这边相对来说更加偏僻一些。城市配套不是特别完善。但是确是软件业未来发展的主力。

另外一个软件业集中的地方是国贸CBD附近,这里是北京的City Jungle。阿里巴巴和淘宝、卓越亚马逊、英特尔等著名公司都在国贸那边。高层林立,早上高级写字楼的大堂里会站满了各个公司的等电梯的人。虽然我没有在那边上班的经验,却听说过那边的几个传闻,其中一个传闻就是国贸的车位很抢手,路边一个车位停一天都需要50元。另一个传闻是一顿午饭是30元到40元。总之国贸附近的生活很城市很fashion,很职业!所以这里的同行们最像电视里描述的职场精英!

不是码农,是软件工程师

码农是最近这两三年的时间流行起来的词。这词是一部分软件工程师们对自己职业的自嘲:人数多以及集中分布,勤奋和热爱编程技术,爱上网以及宅。

由于我们软件工程师在北京有很多兄弟姐妹,待遇相对丰厚,这个行业就越来越庞大。又由于我们喜欢住在公司附近,所以在上地、西二旗、中关村那边,你可能在地铁站、商场、超市的会遇到很多同行。对住的需求量这么高,带高了周边的房价。所以有些人说我们真是人傻(厚道)钱多的那一类。而由于好多男同行们比较宅,更加喜欢技术和工作,喜欢逛水木社区等网站,却忽略了多样的生活,所以“码农”这个词才会被拿来自嘲。

虽然很搞笑,但我还是不推崇这种文化的!在下了班之后,我会拿起吉他,弹奏民谣乐曲。或者去COSTA喝杯咖啡,或者去看场话剧或者电影。所以如果你喜欢软件行业,并且成为一名软件工程师的话,也希望你让软件工程师的人生更加多彩!我们不是码农,我们是IT精英!

软件测试工程师 篇4

一、培养思路和措施

按照“卓越工程师”的有关要求,我们认为,软件测试工程师的“卓越”培养标准须包两个方面:一方面是专业标准,即具备从事计算机工程工作所需的人文与社会科学知识,特别是工程基础知识;掌握计算机科学基础理论知识和计算机系统分析、设计、实现、测试、维护、和管理的基本方法;掌握综合运用测试理论与技术,对计算机系统进行系统化的测试工程;熟悉信息系统项目的组织和管理过程,具备综合运用知识和技术进行工程项目组织、实施和管理的能力,能够解决实际工程问题;具有良好的工程职业道德和社会责任感。另一方面是行业标准,即具有国家“计算机技术与软件专业技术资格”中“软件评测师”要求的知识和技能;掌握ISTQ B国际软件测试工程师认证的知识体系结构;具有一项以上“职业资格证书”;拥有1年以上工程项目、企业实习等的工程实践经历。围绕上述培养标准,我们需要将工程教育理念贯穿于整个培养环节,以反映测试行业及相关软件工程技术的课程体系改革与能力训练为核心,优化和整合教学内容和课程体系,重点强化实践教学内容和革新教学评价体系,制定校内和企业两阶段相融合的过程化培养方案,培养学生的工程素质、职业素养和实践能力。为此,需要分别制定相应的校内培养方案和企业培养方案。

(一)校内培养工作思路

首先,在人才培养模式上进行改革。在大学一年级结束时,通过双向选择的方式,为每个学生确定“工程教育导师组”。导师组由高校教师、企业高级工程师和一线工程师组成。在毕业总学分限定条件下,导师组为学生量身定制个性化的3~8学期的教学计划,在专业和课程选择上给予学生更大的自主权和选择权。将工程过程管理的思想应用于人才培养过程,采取动态的、滚动的、竞争的人才培养运行机制。在测试工程师的专业课程中,要求有1/3课程采用双语教学,1/3课程由企业人员授课;要求80%以上的专业课程中理论讲授与实验实践教学比例逐步达到1:1~1:2(专业基础课理论与实验实践教学的课时比为1∶1,工程教育和专业选修课为1∶2)。

其次,优化课程体系结构,理论教学与实践教学有机衔接,课程设置以工程实践能力和创新能力培养为主线,适当减少课程理论教学学时数,增加实践教学学时数和实践部分的学分比例,注重工程系统的思维训练。在教学中注重先进性、实用性、实践性和研究性课程的建设,促进教学内容向应用研究型转变、教学方法向培养能力型转变、教学手段向综合立体型转变。在专业课程中大力推进问题型、项目型、案例型、研究型、CD IO(构思、设计、实现、运作)式等教学方式,按照《软件工程知识体系指南》(SW EBO K)和ISTQ B测试认证知识体系[3]为参考进行课程内容改革和建设。

第三,进一步整合和改造包含基础性实践、设计型实践和综合/创新型实践课程在内的多层次实践教学体系,重点建立技能综合训练实验课程,加大综合性实验和创新性实验的开设力度,要求学生完成综合性的、较有规模的软件的测试分析、设计、实现和管理。

最后,改革以理论考试为主评价学生能力的评价体系,建设多元化工程教育评价体系,将学生的工程能力分解为工程技能、工程素质、工程活动和工程成果多维要素,建立对各个要素的细分量化评价指标集。教学评价要将过程考核与结果考核相结合,逐渐加大过程性评价的比重,引导教师从考核学习成绩向评价学习成效转变,引导学生从注重考试结果向注重学习过程转变。校外培养环节考核由学校和企业共同进行,标准与正式员工相近或相同。丰富考核方式,包括笔试、面试、工程实践成果的数量统计、书面总结材料及质量评定、专业汇报和答辩、能力和素质的评价等。

(二)企业培养思路

企业学习环节是“卓越工程师”培养计划的重要教学环节,企业学习阶段的学习效果是关系到整个培养工作成败的一个关键因素。在企业学习期间,学生的主要任务是基于已有的理论知识和专业技术培养解决实际工程问题的技能。企业培养方案应由校企双方共同研究制定,其中对学生在企业学习阶段的培养目标、培养标准、实践条件、教学安排、师资力量等方面做出明确的规定,要明确学生在企业培养阶段要达到的目标。企业学习阶段方案应当包含在企业完成的认识实习、生产实习、毕业实习、毕业设计等实践环节,学生接受近似企业员工的管理,要求学生累计1年时间在企业完成测试相关的课程设计、工程项目实训和毕业设计。企业学习主要采用面向主题的方法来组织学习活动,从各个面向主题的学习活动中获得对理论和技能的提升,从而反过来完善自身的理论体系和实践技能。培养方案需要精心设置企业学习阶段训练项目和训练内容,制订企业学习阶段各周的训练项目及明确的训练内容、训练时间、训练要求和考核办法,使学生在企业学习阶段的学习任务安排落到实处,保证企业学习阶段的教学质量。表2展示了我们设计的一个以主题导向的企业培养参考方案。

企业阶段的学习考核由学校和企业共同进行,考核内容除了知识和技能之外,还重点考察工作态度、创新能力、团队协作精神、实际操作能力、专业实践成果等工程能力和素质的评价等。进一步地,我们还考虑结合行业优势和地域优势,与合适的软件企业合作建设“工程教育实践中心”,以项目工程为载体,以项目研究为核心,更加密切地与企业进行产学研培养工程师,使学校教师、企业人员和学生在更好的平台上发挥主观能动性并形成合力。

二、结束语

“卓越工程师”的培养具有面向新形势的鲜明特点,主要体现在深化行业企业参与培养的程度、按照行业标准培养工程人才、强调学生的工程能力和创新能力等方面[4],这对高校在人才培养模式、课程教学体系、实践教学、产学研结合等各项工作都提出了新的要求和挑战。本文对软件测试卓越工程师的人才培养思路和方案进行了探讨,指出需要转变人才培养模式,在教学内容和课程体系改革上突出内容整合性和知识应用性,构建适应测试工程技术的教学内容,进一步完善“知识、能力、素质”一体化的工程人才培养模式,增强学生的实践能力、工程素质和创新能力。我们以期由此拓展到更广的计算机工程师的培养工作中,更重要的是在以后的培养实践中进一步落实和完善培养方案,为学生具有卓越的工程能力和素质提供良好的培育平台。

摘要:本文以软件测试工程师为切入点, 探讨在计算机专业本科生推进卓越计划的实施措施, 重点是要转变教学观念, 改革课程教学体系、强化工程能力培训、注重校企联合培养复合化工程人才。面向“卓越工程师”培养计划的要求, 以软件测试工程师为例, 在明确卓越测试工程师培养标准的基础上, 提出校内和企业两阶段相融合的培养方案, 包括人才培养模式、课程体系、实践教学、教学评价和企业培养等方面的改革工作思路和具体措施。

关键词:卓越工程师,软件测试,人才培养

参考文献

[1]龚克.转变观念, 大胆试验, 建立卓越工程师教育培养的中国模式[J].中国高等教育, 2010, (18) :10-12.

[2]黄爱明.国内软件测试现状及对策研究[J].中国管理信息化, 2007, 10 (2) :42-43.

[3]http://www.istqb.org.

软件测试工程师简历 篇5

姓 名: xxx

毕业院校: 内蒙古科技大学

性 别: 男

政治面貌: 党员

电 话: 13071******

工作年限: 2年

学 历 : 本 科

电子邮件: william****@***.***

工作经历 2008年12月 至 2009年1月 北京曦力网际软件信息技术有限公司

工作描述: 作为产品测试工程师,对公司对外发布的产品进行黑盒测试,发现和报告产品的缺陷和问题。

2007年11月 至 2008年11月 北京测试空间科技发展有限公司

工作描述: 参与编写测试计划;编写编写、执行、更新测试用例;运用 bugzilla提交bug缺陷报告。

2006年8月 至 2007年6月 内蒙古景开私立中学

工作描述: 作为生物教师,负责讲授初一年级的生物课程,辅导学生解决在学习中遇到的疑难问题。

项目经验 项目名称: xilisoft mobile phone manager测试

软件环境: windows xp标准版、windows vista

项目描述: xilisoft mobile phone manager是电脑端管理手机数据的软件,可以兼容

windows mobile、symbian、black berry系统的智能手机以及非智能手机,能实现日常的手机信息提取和常规管理,用户可以对数据进行备份、恢复;同时

xilisoft mobile phone manager支持多部手机同时连接,可以对用户所有的手机数据进行集中管理,并实现本地数据、手机设备数据、pc端程序之间的数据复制和同步。

责任描述: 作为产品测试工程师,对公司内部发布和对外发布的产品和组件进行黑盒测试,发现和报告产品的缺陷和问题,以保证产品符合设计目标,实现规定功能。

项目名称:中石油新型地震数据采集记录系统主机软件系统测试

软件环境: windows server 2003 标准版、windows xp、linux

项目描述 : 由中石油大型仪器项目组主导,综合了国内顶级院校和科研院所研制的一套国产软硬件系统,整套系统实现了对地震数据的采集和分析,进行石油勘探。主机软件系统运行的硬件平台为两台采用多 cpu/多核架构的服务器,还配备千兆交换机、磁带机、绘图仪、nas盘、打印机等外围设备。软件平台为典型的c/s软件结构,服务器采用linux+c语言+sqlite的开发结构,客户端采用windows+c#语言的开发结构。

责任描述: 根据需求分析报告和用户手册,了解业务流程和软件操作流程,编写软件功能点;编写测、更新、执行测试用例 ; 运用 bugzilla提交bug缺陷报告;参与编写测试总结,与同事合作完成主机软件系统测试的各个环节。

项目名称: 测试软件测试工程师管理系统

软件环境: windows server 2003标准版、windows xp标准版

项目描述: 软件测试工程师管理系统 用来管理员工基本信息及月薪水的计算,包括“添加、查找、删除、修改员工信息、计算员工薪水、生成报表”等功能模块。

责任描述: 搭建 windows测试环境; 编写测试用例,执行测试用例; 根据提供的需求分析,对 windows版本进行测试,运用 bugzilla提交bug缺陷报告。

项目名称: 北京市地铁 5号线自动售检票系统测试

项目描述: 地铁 5号线的自动售票检票系统,在惠新西街南口站进行对由欧姆龙方提供的ag设备与方正提供的ag软件系统进行联调与压力测试。

责任描述: 根据用户方的要求,设计检票数量的功能和红外感应的功能以及压力测试用例,ag机组进行系统及收费系统和硬件的压力测试。

教育背景 2002年9月至2007年7月 内蒙古科技大学生物科学与技术专业

获得学士学位证、普通话等级证、国家高级教师资格证

2007年8月至2008年3月 北大青鸟软件测试培训中心 软件测试工程师

获得“计算机软件产品检验师”证书

专业技能 l 了解 iso9000/cmmi规范,熟悉软件测试的周期、软件测试模型和软件测试流程等相关理论、思想和方法。

l 能够独立完成设计测试计划,编写测试用例,实施测试,编写测试缺陷报告、跟踪缺陷,撰写测试总结等相关测试文档。

l 了解使用 sql server 2000、mysql数据库,能够使用sql语言进行添加、删除、修改、查询等操作管理数据库。

l 熟悉测试管理工具: bugzilla、bugfree、testdirector。

l 了解自动化测试工具: quicktest professiona、winrunner、loadrunnerl等测试工具。l 熟悉 linux操作系统。

英语水平具有较强的阅读能力,一定的翻译计算机专业英文文献、测试文档、测试资料的能力,一定的口语会话交流能力,能通过英语为工具获取专业所需要的信息。

浅谈软件工程之软件需求分析 篇6

【关键词】软件工程 软件需求 需求工程 需求开发 需求管理

【中图分类号】TP311.5【文献标识码】A 【文章编号】2095-3089(2015)06-0181-02

软件工程师所需解决的问题往往十分复杂,了解问题的性质可能是非常困难的,尤其当系统是全新的时候。

1.综述

软件工程中包含需求、设计、编码和测试四个阶段,其中需求工程是软件工程第一个也是很重要的一个阶段,这个阶段的任务仍然不是具体地解决问题,而是准确地确定“为了解决这个问题,目标系统必须做什么”,主要是确定目标系统必须具备哪些功能。本文以企业人事信息管理系统为例详细介绍了需求工程的构成和进行方法。

2.需求的标准

定義需求标准有所不同,但在思想上是相同的,都是为了保证项目的顺利进行。一般的标准为:明确(Clear)、完整(Complete)、一致(Consistent)、可测试(Testable),还有可跟踪、可修改等等。

明确:目前大多数的需求分析采用的仍然是自然语言,自然语言对需求分析最大的弊病就是它的二义性。所以对需求分析中采用的语言应该做某些限制尽量采用主语+动作的简单表达方式。还有,不要使用计算机术语。需求分析最重要的是和用户沟通,可是用户多半不是计算机的专业人士,如果在需求分析中使用了行话,就会造成用户理解上的困难。

完整:需求的完整性是非常非常重要的,要做到需求的完整性是很艰难的一件事情,它涉及到需求分析过程的各方各面,贯穿了整个过程,从最初的计划制定到最后的需求评审。

一致:用户需求必须和业务需求一致,功能需求必须和用户需求一致。严格的遵守不同层次间的一致性关系,就可以保证最后开发出来的软件系统不会偏离最初的实现目标。

可测试:需求的几项标准都是为了保证需求的可测试性,只有系统的所有需求是可以被测试的,才能够保证软件始终围绕着用户的需要,保证软件系统是成功的。

需求工程分为了需求开发和需求管理两个阶段:下面就以这两个阶段说明:

3.需求开发

需求开发又分为需求获取、需求分析、编写规格说明书和需求验证。以下列出和讲解分析常规的步骤,当然应按照项目的大小和特点等实际情况我们应该自己确定合适的步骤。

3.1需求获取:

这是该阶段的一个最重要的任务。以下为获取用户需求需要执行的活动。

了解客户方的所有用户类型以及潜在的类型。然后,根据他们的要求来确定系统的整体目标和系统的工作范围。

对用户进行访谈和调研。交流的方式可以是会议、电话、电子邮件、小组讨论、模拟演示等不同形式。需要注意的是,每一次交流一定要有记录,对于交流的结果还可以进行分类,便于后续的分析活动。例如,可以将需求细分为功能需求、非功能需求(如响应时间、平均无故障工作时间、自动恢复时间等)、环境限制、设计约束等类型。

需求分析人员对收集到的用户需求做进一步的分析和整理。

需求分析人员将调研的用户需求以适当的方式呈交给用户方和开发方的相关人员。大家共同确认需求分析人员所提交的结果是否真实地反映了用户的意图。

3.2需求分析

需求分析是软件定义时期中很重要的一个阶段,它的基本任务是准确地回答“系统必须做什么?”这个问题。在很多情形下,分析用户需求是与获取用户需求并行的,主要通过建立模型的方式来描述用户的需求,为客户、用户、开发方等不同参与方提供一个交流的渠道。这些模型是对需求的抽象,以可视化的方式提供一个易于沟通的桥梁。用户需求的分析与获取用户需求有着相似的步骤,区别在于分析用户需求时使用模型来描述,以获取用户更明确的需求。

用于需求建模的方法有很多种,最常用的包括数据流图(DFD)、实体关系图(ERD)和用例图(Use Case)三种方式。DFD作为结构化系统分析与设计的主要方法,已经得到了广泛的应用,DFD尤其适用于MIS系统的表述。DFD使用四种基本元素来描述系统的行为,过程、实体、数据流和数据存储。DFD方法直观易懂,使用者可以方便地得到系统的逻辑模型和物理模型,但是从DFD图中无法判断活动的时序关系。

ERD方法用于描述系统实体间的对应关系,需求分析阶段使用ERD描述系统中实体的逻辑关系,在设计阶段则使用ERD描述物理表之间的关系。需求分析阶段使用ERD来描述现实世界中的对象。ERD只关注系统中数据间的关系,而缺乏对系统功能的描述。如果将ERD与DFD两种方法相结合,则可以更准确地描述系统的需求。

3.3编写规格说明书

项目视图和范围文档包含了业务需求,而使用实例文档则包含了用户需求。你必须编写从使用实例派生出的功能需求文档,还要编写产品的非功能需求文档,包括质量属性和外部接口需求。软件需求规格说明阐述一个软件系统必须提供的功能和性能以及它所要考虑的限制条件,它不仅是系统测试和用户文档的基础,也是所有子系列项目规划、设计和编码的基础。它应该尽可能完整地描述系统预期的外部行为和用户可视化行为。

采用软件需求规格说明模版:采用需求规格说明书模板在你的组织中要为编写软件需求文档定义一种标准模板。该模板为记录功能需求和各种其它与需求相关的重要信息提供了统一的结构。注意,其目的并非是创建一种全新的模板,而是采用一种已有的且可满足项目需要并适合项目特点的模板。

3.4需求验证

需求分析阶段的工作结果是开发软件系统的重要基础,大量统计数字表明,软件系统中15%的错误起源于错误的需求。为了提高软件质量,确保软件开发成功,降低软件开发成本,一旦对目标系统提出一组要求之后,必须严格验证这些需求的正确性。一般说来,要按以下步骤进行需求验证:

1)审查需求文档;2)依据需求编写测试用例;3)编写用户手册;4)确定合格的标准。

4.需求管理

需求开发的结果应该有项目视图和范围文档、使用实例文档、软件需求规格说明及相关分析模型。经评审批准,这些文档就定义了开发工作的需求基线。这个基线在客户和开发人员之间就构筑了计划产品功能需求和非功能需求的一个约定。需求约定是需求开发和需求管理之间的桥梁,需求管理包括在工程进展过程中维持需求约定集成性和精确性的所有活动。

5.企业人事管理系统

5.1企业人事管理系统概述

企业人事管理系统是针对企业人事方面的大量业务处理工作而开发的管理软件。根据用户的要求,实现人员基本情况管理、工资管理、和考勤管理等几个方面的功能。用户通过输入工资、考勤、职工履历等基本信息,由系统自行生成相应的统计数据及各类统计报表以供用户查询、打印。

5.2系统功能分析

系统开发的总体任务是实现企业人事信息关系的系统化、规范化和自动化。

系统功能分析是在系统开发的总体任务的基础上完成的。经过按照以上分析过程进行分析,分析出企业人事信息管理需要完成功能。

6.总结

以上详细介绍了软件需求分析过程。软件工程中包含需求、设计、编码和测试四个阶段,其中需求工程是软件工程第一个也是很重要的一个阶段,要想做好一个项目,必须先做好需求分析,需求工程分为了需求开发和需求管理两个阶段:需求开发又分为需求获取、需求分析、编写规格说明书和需求验证。需求管理就是对需求变更控制的过程。通过介绍企业人事信息管理系统的需求分析阶段,更好地说明了需求分析过程。

参考文献:

软件测试工程师 篇7

软件产品质量的好坏直接决定着一个软件企业的命运。作为软件质量保障的重要手段, 软件测试成为了软件生命周期中一个重要环节。

“工欲善其事, 必先利其器”。要做好测试工作, 首先需要建立并维护一个高效的测试团队。

一、成功测试者的特质

人是测试工作中最有价值也是最重要的资源, 没有一个合格的、积极的测试团队, 测试就不可能实现。为高质高效地完成测试任务, 好的测试者应具有如下能力: (这份特质清单是基于经验和观察, 而不是基于严格的科学依据) 。

1. 自信心

2. 怀疑精神

3. 沟通能力

4. 技术能力测试团队需要许多领域的

专家, 诸如数据库、通信、网络、GUI测试、测试工具、自动化测试脚本和相关业务领域的专家。因此, 测试者须拥有一项或多项的技术专长。

5. 外交能力

6. 很强的记忆力一个理想的测试者应

该有能力将以前曾经遇到过的类似的错误从记忆深处挖掘出来, 这一能力在测试过程中的价值是无法衡量的。因为许多新出现的问题和我们已经发现的问题相差无几。

7. 自我督促能力

8. 洞察力和耐心

9. 组织技能每当执行一个软件项目的

测试计划, 几乎不可能不遇到至少会阻碍一些测试而必须解决的缺陷。一个测试者应当能灵活地停止测试产品的一部分而开始测试其他部分。灵活, 能够快速地转到测试一个新产品上, 甚至为了另一个优先级较高的产品而放下手头正在测试的产品。

1 0. 学习能力拥抱新技术的热望和知识面广而且能不断更新知识, 能够快速地学习新技术。

1 1. 计划能力能够设计和执行一步一步的过程。

1 2. 能够承受无休止的压力测试工作位

于开发过程的后半段, 将处在一种充满压力环境中。由于项目周期的安排, 产品交付的日期的临近, 测试者面临巨大的压力。如何在计划的时间内完成测试任务、交出合格的产品, 测试者需要能承受无休止的压力。

1 3. 既有大局观, 又能根据需要关注细节, 总体理解产品。

二、测试团队的组建可能在测试行业

中有一些耀眼的明星测试者, 他们是测试者的楷模。但更常见的情况是, 组成优秀测试团队的人员拥有各自不同的技能背景。有必要认识到的是没有一个人能全部拥有这些特质, 因此测试团队作为整体应该尽可能多地拥有这些特质。

明确测试团队内部各类测试人员的职责分工可以使测试团队内部各类测试人员能集中精力在较短的时间内完成特定岗位必需的知识储备和经验积累, 同时也使得测试团队的管理更科学, 真正做到“用其所长, 避其所短”。

三、测试团队制度建设

良好的制度可以规范测试团队的工作开展, 同时也便于对团队成员进行业绩考评。相反, 则很有可能导致人心涣散, 滋长负面风气。建设良好的测试团队制度, 可以考虑以下几个方面:

1. 汇报制度团队成员汇报本周工作情

况及下周工作计划、遇到的问题以及需要提供的帮助, 培养团队成员的汇报及计划习惯。

2. 工作总结制度成员每个阶段汇报上

阶段工作经验和教训, 并在部门例会上交流、分享经验及教训, 避免同样的问题重复出现。

3. 奖惩制度对于贡献突出的成员予以奖励, 对于业绩差的提出批评, 有效地保持测试团队的工作热情。

4. 测试件审核制度

对测试件进行审核, 去粗存精, 鼓励测试人员使用和提出改进, 保证提交到测试团队知识库的测试件的质量。

5. 会议制度

定期召开部门例会, 讨论、解决工作中的问题, 并提供部门内的学习平台。

四、团队成员能力的逐步提高

有了明确、合理的职责分工后, 需要针对这些分工对团队成员进行有意识的引导, 稳步提升团队成员的技能。测试团队负责人需要负起监督和促进员工能力提升的任务。监督和促进测试团队成员能力提高, 主要做好如下三个方面的工作:一是, 提倡资深测试人员在测试团队内部进行经常性的培训和测试经验交流, 通过该渠道帮助资历浅的测试人员大幅提升业务技能, 做到新老员工之间的知识传播和继承。二是, 测试团队应充分利用好测试件知识库, 对于纳入到测试团队知识库的测试件应充分消化和学习, 在此基础上进一步鼓励测试团队成员对这些测试件提出改进性意见。三是, 测试人员除了需要注重自身的测试技能提升, 在条件许可的情况还应适度开发部门的基本知识, 这样能减少与开发团队协同工作时的领域障碍。

五、测试技能培训

对于管理人员, 主要进行《软件测试管理与团队建设》、《职业经理人培训》。

对于测试工程师, 内部主要进行行业业务知识培训和软件工程方面的培训。外部主要进行测试基础理论知识、软件开发测试基本流程、软件同行评审、软件需求跟踪、软件缺陷管理、软件配置管理、软件系统测试计划、软件测试方案、软件测试日报和报告写作、软件需求评审、软件测试需求分析方法、软件系统测试用例设计、性能测试的基本概念、性能测试的重要性、性能测试的目的、常用性能测试工具介绍、性能测试的步骤、性能测试的种类、性能测试策略、用例设计、性能测试脚本开发、场景运行、性能测试结果分析等。

六、测试管理项目经理制

测试管理实行项目经理制, 每一个项目的测试工作做为一个项目来对待, 测试负责人即为此项目的项目经理, 对测试需求调研、测试设计、测试执行、测试验收、测试报告、测试满意度调查整个过程进行控制和管理。

七、完善公司测试知识库

完善公司测试知识库, 建立典型的软件故障模型库、公共测试用例库, 重点是W E B应用系统的故障模型库。建立成充实和完善故障模型库的机制, 使其在实际工作中不断被扩展和充实。

八、测试Q A制, 加强测试管理、缺陷跟踪与管理工作

利用TD软件的优势, 加强测试需求管理、测试用例管理、软件缺陷管理的一整化和统一集成, 创建统一的测试管理平台;监控测试工作质量;使测试管理工作科学化、信息化和高效化, 提升测试管理水平。

九、进行测试团队建设与组织机构调整、职业生涯规划

为了更好地发挥测试的软件质量保障作用, 公司需要在现有基础上, 进一步扩大测试队伍, 提高现有测试人员的测试水平;制定一套科学合理的测试人员职业生涯发展规划, 完成公司软件测试手册。

十、质量意识、测试知识宣传

通过电子期刊、报刊、壁板报、网站等方式进行质量意识、测试知识的宣传, 以提高整个胜软公司的质量管理意识, 增加相关人员的软件测试知识和水平。

十一、测试管理项目内部启动测试团队内部成立内部项目组, 利用业余时间对于测试工作进行需求调研分析, 并进行可行性分析, 准备用2年左右时间, 采用测试团队全员参与的方式, 将公司测试工作全部信息化。

十二、完成测试配置管理制定科学合理、可操作性强的测试团队配置管理规范, 做到使测试团队的工程师工作有依据, 过程有记录, 学习有资料, 经验有共享;完成测试配置管理员手册。

软件测试工程师 篇8

软件工程 (Software Engineering, 简称为SE) 是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言, 数据库, 软件开发工具, 系统平台, 标准, 设计模式等方面。

在现代社会中, 软件应用于多个方面。典型的软件比如有电子邮件, 嵌入式系统, 人机界面, 办公套件, 操作系统, 编译器, 数据库, 游戏等。同时, 各个行业几乎都有计算机软件的应用, 比如工业, 农业, 银行, 航空, 政府部门等。这些应用促进了经济和社会的发展, 使得人们的工作更加高效, 同时提高了生活质量。软件工程师是对应用软件创造软件的人们的统称, 软件工程师按照所处的领域不同可以分为系统分析员, 软件设计师, 系统架构师, 程序员, 测试员等等。人们也常常用程序员来泛指各种软件工程师。软件工程没有一个权威的定义, 比较认可的定义为:软件工程是一门交叉学科, 它是解决软件问题的工程, 是对软件开发、运作、维护的系统化的、有规律的、可定量的研究方法。软件工程有明确的目标。那就是研制开发与生产出具有良好的软件质量和费用合算的产品。软件质量可用六个特性来评价:功能性、可靠性、易使用性、高效率性、可维护性、易移植性。软件工程不同于一般工程, 具体表现在以下几点。

(1) 软件是逻辑产品而不是实物产品, 所以费用集中在研制开发上而不在生产上。软件不会用坏、磨损、老化, 但有一个过时的问题。

(2) 由于软件是逻辑产品, 使得它的功能只能依赖于硬件和软件的运行环境以及人们对它的操作, 才能得以体现。

(3) 软件产品的功能比一般产品的功能复杂得多。

(4) 软件设计比一般产品复杂得多。具体表现在:功能的多样性, 实现的多样性。推动软件工程发展的原动力是提高软件质量和软件开发的生产效率。

2. 传统软件工程

传统软件工程采用面向过程, 即结构化程序设计方法, 即有很多成功的例子, 例如DOS操作系统, 也有很多失败的例子, 例如美国阿波罗登月飞行计划的软件错误。因为传统软件工程不能驾驭复杂系统的开发, 曾经一度产生了软件危机。面对越来越复杂的软件系统, 传统软件工程已经不能胜任, 在实践中, 人们呼唤能适应复杂系统开发的软件工程方法学和软件

开发技术的诞生, 面向对象软件工程应运而生。进入20世纪90年代以来, Internet飞速发展, 人们碰到了另一个难题, 快节奏地开发基于Web的大型应用程序, 面向对象软件工程及其技术已经不能胜任, 人们尝试利用基于构件的技术来解决, 于是诞生了CORBA、COM及COM+、J2EE及EJB等基于构件的技术和软件开发方法。然而, 今天的构件技术离人们追求的目标——软件工厂还相差甚远。面向过程的优点:面向过程的思维方法是符合人类认识规律的, 因为人们解决问题, 总是一步一步进行的, 其中, 有顺序, 条件和循环, 利用这三大结构, 可以解决世界上的任何问题。这些方法是优秀的, 被面向对象和面向构件所吸收, 成为类或构件内部实现的有力工具。面向过程的缺点:着眼于细节不能很好地从宏观上把握系统。

3. 面向对象软件工程

面向对象软件工程是运用面向对象方法, 符合人类认识规律的一种软件工程。20世纪60年代后期出现了面向对象的编程语言, 2 0世纪7 0年代初Xerox公司推出了Smailtalk语言。奠定了面向对象程序设计的基础, 1980年出现的Smatltalk-80标志着面向对象程序设计进入了实用阶段。自20世纪80年代中期起, 人们注重于面向对象分析和设计的研究, 逐步形成了面向对象软件工程方法学。典型的方法有ECoad和E.Your Don的面向对象分析和设计, GBooch的面向对象开发方法, J.Rumbaugh等人提出的对象建模技术 (OMT) , Jacobson的面向对象软件工程等。20世纪90年代中期, 由GBooth, J.Rumbaugh、Jacobson等人发起, 在Booch方法、OMT方法、OOSE方法的基础上推出了统一的建模语言 (UML) , 1997年被国际对象组织 (OMG) 确定为标准的建模语言。面向对象方法的出现受到了计算机软件界的亲睐, 并成为20世纪90年代的主流开发方法。面向对象方法的优点如下。

(1) 从认知学的角度来看, 面向对象方法符合人们对客观世界的认识规律很长一段时间里, 我们分析、设计、实现一个软件系统的过程与我们认识一个系统的过程存在着差异。例如结构化方法分析的结果是数据流图, 设计的结果是模块结构, 实现的结果是由程序模块组成的源程序。

(2) 开发的软件系统易于维护, 其体系结构易于理解、扩充和修改面向对象方法开发的软件系统由对象类组成, 对象的封装性很好地体现了抽象和信息隐蔽的特征。

(3) 面向对象方法中的继承机制有力支持软件的复用.

4. 构件软件工程的概念模型

构件和基于构件的方法是电子商务革命的驱动力, 它们是Interne时代开发企业级解决方案的方法。在任何行业中, 复杂情况通常是通过很多关键概念来解决的。这些概念是通过抽象、分解、选代、细化等方法来表达的。其中的关键是分解技术——把一个较大的问题分解成较小的、可管理的单元, 这样每一个单元都是可以单独处理的, 这个技术是软件工程的许多方法的核心。这些方法可以称为结构化设计, 模块化编程, 面向对象程序设计, 基于构件的程序设计, 它们产生的单元称为模块、包、对象或构件。基于构件软件开发是历史发展的必然, 基于构件的软件开发 (Component Based Software Development) , 简称CBD。基于构件的软件工程 (Component Based Software Engineering) , 简称CBSE。CBD追求的目标是软件的“即插即用”。回顾经典的工业化革命, 不难得出一些有益的启示:功能再复杂的产品都是由大量标准的零件 (领域构件) 组成, 零件在生产线上装配成一个产品, 所有零件在产品中共同发挥作用。分工越细致, 专业生产的程度越高, 总体生产效率就越高。把这些启示运用于软件开发, 那就是:标准的零件就是软件生产的构件, 构件在软件生产线上通过集成得到新开发的软件。

参考文献

[1]贾岩.基于构件的软件工程技术研究[J].科技资讯, 2011, (06)

[2]陈大宾.结构加固与改造方法评述[J].科技风, 2009, (08)

[3]吴亮, 谢忠.分布式构件化WebGIS的研究与实现[J].科技进步与对策, 2003, (S1)

软件测试工程师 篇9

近年来, 国内外软件市场越来越大, 软件企业也逐步朝着规范化、专业化的方向发展, 这就对软件工程人才提出了更高的要求。从当前软件企业的发展情况看, 软件测试人才是软件企业发展急需的人才之一, 因此, 加强软件测试人才的培养是当前高职院校计算机软件工程专业的重要任务。由于当前高职软件工程专业软件测试课程教学还存在一定的不足, 对此, 必须立足于实际, 全面推进高职软件工程专业软件测试课程教学改革。

1. 软件测试课程概述

随着计算机信息技术的快速发展, 计算机软件在社会各行业的应用越来越广泛, 同时人们对软件产品的质量要求也越来越高。但是从当前的软件产品质量看, 还存在很多问题, 即便是非常成熟, 已经得到广泛使用的软件产品, 还会出现一些问题, 这时就需要通过软件测试来对这些问题进行寻找。所谓的软件测试就是在软件开发过程中, 将软件中隐藏的缺陷、错误寻找出来, 确保软件的质量符合相关规定。近年来, 随着软件产品的复杂化程度加强, 软件测试也越来越受欢迎, 同时各个高校相继开设了软件测试课程, 以期为社会培养更多的软件测试人才。对于高职院校的软件测试课程教材, 其内容大多是简单的介绍关于软件测试的理论方法, 并没有详细的介绍软件测试的方法、实现过程, 也没有通过具体的案例详细的讲解软件测试过程, 从而导致学生无法灵活的应用学到的软件测试知识, 因此, 注重高职软件工程专业软件测试课程教学改革十分重要。

2. 高职软件工程专业软件测试课程教学现状

对于当前的高职软件工程专业软件测试课程教学, 还存在一定的问题, 首先是在教学过程中, 理论教学和实践教学的结合比较少, 从而导致学生的动手能力比较差。在软件测试课程中, 有很多知识是关于测试理论, 这部分知识如果让学生单纯的进行理解, 学生会感觉很苦难, 但是通过实践练习, 则可以让学生很轻松的理解这些知识, 但是当前的高职软件测试课程教学中, 缺乏充足的实践训练项目, 使得学生实践练习不足, 从而造成理论与实践相互脱节。其次, 在高职软件测试课程教学中, 还存在学生错误理解软件测试的现象, 在学生看来, 软件测试是比软件开发低一个层次的, 学生错误的认为自己是没有能力做软件开发, 所以才会做软件测试, 所以, 学生对软件测试课程的兴趣很低, 认为学习软件测试没有什么前途, 最终对软件测试课程教学带来极大的负面影响。

3. 高职软件工程专业软件测试课程教学改革方法

( 1) 合理组织教学内容。在新环境下, 高职院校必须积极的推进软件测试课程教学改革, 这样才能为软件测试课程教学质量的提高打下良好基础。通过对高职软件工程专业软件测试课程教学现状进行分析, 可以看出, 教学内容设置不合理是影响高职软件测试课程教学质量的重要因素, 因此, 在新时期, 高职院校需要结合实际情况, 合理的改革软件测试课程教学内容。对于软件测试课程, 其涉及到的知识点比较多, 并且这些知识点需要经过多次实践练习, 才能让学生全面掌握, 对此, 高职院校可以将软件测试课程的内容分层设置, 如分成基础知识、专业知识、自动化测试技术知识、系统测试、设计测试、可靠性测试等多个层次, 对学生进行分层教学, 确保学生能全面掌握软件测试课程中的知识。

另外, 在软件测试课程教学中, 高职院校可以根据实际情况, 设置一些软件测试的其他课程, 如 《软件测试理论、方法》、《软件测试系统训练》等, 让学生更加全面的了解软件测试在软件开发中的重要性, 全方位培养学生的软件测试职业技能和职业素养。

( 2) 加强实践训练。对于软件测试课程, 其实践性非常强, 有很多知识学生只能在实践中掌握, 因此, 在进行高职软件工程专业软件测试课程教学改革中, 要特别注重软件测试实践训练的加强。在高职院校教育教学中, 实习是一个十分重要的实践环节, 实习环节的合理组织对于激发学生对软件测试的兴趣, 提高学生的软件测试技能有极大的帮助, 此外, 通过生产实习, 还能让学生学会如何将学到的知识应用在实际中, 因此, 在高职软件测试教学中, 要特别注重实习环节的合理安排, 实现理论教学和实践教学的有效结合, 保证学生能在实践中理解知识、掌握知识, 并在实践中发现自身的不足, 加以弥补, 从而为学生的全面发展打下良好基础。

( 3) 加大师资力量的建设。对于高职软件测试课程的教师, 不仅需要具备丰富的理论知识, 还需要具有良好的实践经验, 因此, 在推进高职软件工程专业软件测试课程教学改革时, 高职院校还要注重教师队伍的建设, 这样才能为软件测试课程教学活动的开展提供丰富的师资资源。高职院校可以根据在校教师的实际情况, 制定合理的培训内容, 对于理论知识丰富, 实践经验不足的教师, 引导其多进行实践学习; 对于理论知识不足, 实践经验丰富的教师, 引导其进行理论知识学习, 确保软件测试课程的教师能满足课程教学活动的开展需求。

4. 总结

在新时期, 软件测试课程已经成为高职软件工程专业一门十分重要的课程, 为全面促进软件测试人才的培养, 高职院校要结合实际情况, 推进软件测试课程教学改革, 不断优化教学资源配置, 全面提高软件测试课程教学质量。

摘要:作为高职院校计算机软件专业的一门新课程, 软件测试在教学过程中还存在很多问题, 这就对高职软件工程专业软件测试课程的健康发展造成一定影响, 对此, 本文从软件测试课程的概述出发, 分析了当前高职软件工程专业软件测试教学现状, 并提出了高职软件工程专业软件测试课程的改革方法。

关键词:软件工程专业,软件测试课程,教学改革

参考文献

[1]宋亮.高职软件工程专业软件测试课程教学改革探讨[J].中小企业管理与科技旬刊, 2013 (31) :231.

[2]廖远来.高职《软件工程》课程教学改革探索[J].现代计算机:专业版, 2012 (25) :39-42.

[3]张趁香.高职高专软件工程课程教学改革的探索[J].福建电脑, 2011, 27 (10) :207-208.

软件工程专业卓越工程师培养探索 篇10

当前我国产业的改革与发展正处于经济转型期的重要阶段, 中国经济的发展方式正面临由低效而粗放的形式向集约而高效的方式转变过程, 产业结构面临由高污染、高能耗向绿色环保、低能耗产业的调整与转变过程。而一个国家软件产业, 作为21世纪拥有最大产业规模、最具绿色低能耗、拥有最高技术人才集中数量和最具广阔前景的新兴产业之一, 其发展将成为经济转型成功的重要标志。大力发展软件行业, 对于我国产业结构调整与发展的重要性, 已经提升到国家经济发展的战略角度, 甚至关系到一个国家的政治和未来。我国经济建设的发展已经为软件业需求和发展奠定了良好的基础, 由于IT技术在各个行业的全方位应用, 为软件和信息服务业带来良好的发展机遇, 从而更进一步催生软件行业的发展和巨大的社会需求。

软件业作为高技术开发人员密集集中的行业, 人才需求已经成为制约软件行业发展的核心要素。当前全球软件人才存在大量缺口, 欧美、日本、印度等国家和地区均面临着软件人才的短缺问题。中国虽然拥有丰富的劳动力资源, 但高技术人才比率相对偏低。目前, 如何尽快填平软件领域教育与就业之间的这条鸿沟, 大力发展高校IT相关专业, 改革软件专业教育模式与教学手段, 解决软件人才培养理论知识和实践应用能力相互脱节的问题, 已成为高校软件工程专业建设与培养重要探索路径。

2. 高校软件工程专业的培养特色

在国家以信息化促进工业化、大力发展软件和集成电路设计产业的背景下, 软件人才的短缺已成为制约我国信息产业发展的最大“瓶颈”之一。根据《国家信息化发展战略 (2006-2020年) 》, 在未来十余年我国家对计算机及软件专业人才的需求总数估计为200-300万以上。具有关部门统计, 按照目前信息化发展的状况, 社会对计算机及软件专业的人才需求量达近百万人。

针对国家对于软件人才的需求现状, 目前我国绝大多数高校都开办了软件工程及其相关专业。我国现有高校2400多所, 而其中“211”及“985”高校仅有151所。因此, 对于除“211”及“985”之外2200多所普通高校, 将主要承担着对地方人才包括软件人才的培养任务。作为地缘优势, 各地方高校设立软件工程专业, 主要满足了地方对信息化以及软件业发展日益增长的需求。

作为地方普通高等学校, 顺应地方经济发展的要求, 在制订软件工程专业建设规划以及发展目标时, 应该充分考虑地方经济建设的特点以及对软件人才的普遍需求, 其总体目标应为:紧紧围绕地方经济以及学校发展要求, 明确以教学工作为中心, 以专业建设为重点, 以培养应用型人才为特色, 面向人才市场, 面向社会需求。因而, 如何着力培养高层次实用型、复合型软件工程技术和管理人才是其培养特色。高校人才培养应该在如何培养优秀的软件工程师, 培养符合用人单位要求的实用型人才方面狠下功夫。

3. 软件工程专业卓越工程师培养思路

卓越工程师培养计划是贯彻落实《国家中长期教育改革和发展规划纲要 (2010-2020年) 》和《国家中长期人才发展规划纲要 (2010-2020年) 》的重大改革项目, 软件工程专业卓越工程师教育培养思路, 旨在培养造就一大批创新能力强、适应经济社会发展需要的高质量毕业生, 改变我国软件业在国际相关行业的地位和现状, 因此, 探索软件工程专业卓越工程师培养思路, 对于全面提高工程教育人才培养质量具有十分重要的示范和引导作用。

软件工程专业卓越工程师培养总体思路为:以卓越工程师“3+1”模式为培养特色, 积极探索、创建学校与校外软件企业联合培养人才的新机制, 构建工程教育的新体系, 探索工程创新人才培养的新模式, 全面开放学生最后一年的实习、实践教学环节, 让学生走出校园、走向社会, 通过直接接触实际工程项目, 培养学生的软件开发能力, 造就一大批创新能力强、适应地方经济社会发展需要的高水平、应用型的计算机软件领域工程技术人才。

4. 当今软件工程专业就业现状分析

根据《2013年度中国理科基础教育白皮书》 (注1) 中给出的2012-2013年文理科毕业生就业形势调查统计报告, 通过麦可思机构对我国高等教育的调查研究结果, 2012届高校本科专业毕业生就业率排在前50位的专业中, 软件工程专业排在第16位。但对比分析同类计算机相关专业就业情况, 软件工程就业率排名第一。见表1:

根据麦可思对2012届本科生就业之后月薪情况的数据调查, 进一步对比分析, 发现软件工程专业薪资收入要明显高于IT类其它相关专业, 说明社会对于软件工程专业的认可, 同时, 由于信息工程、网络工程从就业前50名之外, 进入薪资前50名之中, 说明计算机类相关专业在社会中的地位。而电子商务专业排名下滑, 表明社会更认可工程型、实用型人才。在2012届本科平均月收入最高的前50个专业中, 软件工程专业排名第二。见表2:

根据麦可思对2009届本科生就业之后的进一步跟踪调查分析, 学生毕业三年之后, 收入排名前10名的专业中, IT类相关专业大幅增长到占6个席位 (60%) , 而软件工程专业更稳居收入排行榜首。月薪比排名第二的金融学专业足足高近600元, 是所有文理科专业中, 唯一收入超过7000元的专业, 比全国本科生平均月收入高近1700元。由此说明, 社会对于软件工程专业的要求:相对于其它专业更加注重实践能力, 以及软件行业对于有实践经验人才的渴望, 也更加坚定了我们培养软件工程专业人才的方向和信心。见表3:

综上分析, 可以看出, 软件专业不是人才培养过剩, 而是我们的培养方案不能很好地顺应行业的发展需求, 当前软件专业的培养模式, 没有培养出社会真正需要的有用人才。

5. 软件工程专业卓越工程师培养特色探讨

扬州大学自2007年招收首届软件工程专业方向学生伊始, 就积极探索卓越工程师培养模式, 强调突出锻炼学生的动手能力, 通过减少理论课程的学时数以及课程门数, 大幅增加实践类课程的课程门数, 以加强对学生实践知识及软件实际开发能力的培养。充分体现”3+1”的培养特色。

由于减少理论课程的学时数以及课程门数, 使得在教学安排上有更多的内容可以放在实用性、应用型课程的调整方面。采用“3+1”培养模式, 本科四年所有的课程全部压缩在三年中完成, 最后一年全部为学生实习学年。因为采用了面向社会需求的培养模式, 该专业毕业生深受社会和用人单位的普遍欢迎, 大多数学生在大三年级已经被用人单位预订, 并带薪实习。专业就业形势很好, 毕业生就业率一直稳定在100%。在减少理论课学时数的同时, 由于我们狠抓教学质量, 教育方式得当, 使得学生在考研、就业等方面没有受到任何影响。甚至优于采用普通模式培养的学生。关于扬州大学2013届软件工程专业毕业生, 采用卓越工程师培养方案与普通培养方案考研与就业情况的对比分析, 见表4:

总结我们的软件工程专业卓越工程师培养方案, 主要体现在如下六个特色:

(1) 采用”3+1”卓越工程师培养模式, 三年在学校学习基础课程和专业知识, 最后一年去企业实习;

(2) 根据社会需要和我校自身条件, 将软件工程专业定位在面向工程应用上, 围绕培养为地方经济服务的高层次应用型、复合型软件工程技术和管理人才模式, 专业特色明显;

(3) 充分吸收、借鉴国际先进教学模式, 不断更新教学内容, 紧跟国际软件领域的新变化, 使得培养出来的学生动手能力强, 适应社会的变化需求;

(4) 教学计划、教材内容不断改革、更新, 适应国际发展和软件领域新进展, 尽量采用双语教学模式、英文原版教材教学, 人才培养适应市场化、国际化需求;

(5) 实践性教学环节设置合理。课程实验、课程设计、课程实习和毕业设计的内容遵循“一体化”的原则, 做到实践能力培养不断线, 教学内容前后充分衔接;

(6) 培养的学生实践能力和创新能力较强, 积极鼓励学生参加各类学科竞赛, 让学生尽早接触软件项目, 在竞赛和软件项目设计、软件开发实践过程中锻炼自己, 不断成长。

6. 结论

对于普通地方高等学校, 采用“3+1”卓越工程师人才教育培养模式, 尤其对于工程类专业学生, 可以大大提高学生的就业机会和社会竞争力。在当今软件产业飞速发展以及庞大的社会需求前提下, 针对软件工程专业的学生, 如果毕业后选择在软件行业就业, 卓越工程师的培养模式将更加受到用人单位的普遍欢迎和关注。

由于目前高校软件工程专业培养模式已不能适应社会以及用人单位的需求, 必须冲破原有教学体制框架的束缚, 面向社会真正培养用人单位所需的应用型人才。因此, 软件工程专业卓越工程师培养模式还需要我们不断进行改革、探索。

摘要:软件工程专业作为当今迅速发展的一个新型热门专业之一, 正在面临高校毕业生过剩所引发的就业难困境, 以及用人单位存在大量缺口急需招收员工以解燃眉之急间的矛盾。必须改变现今软件工程专业培养模式, 大力推行面向用人单位的实用型、复合型软件工程技术培养方式。本文给出了采用卓越工程师培养模式, 培养软件专业人才的思路和方法。

关键词:软件工程专业培养,卓越工程师培养,软件人才培养

参考文献

[1]唐龙.我国软件业的发展现状与展望[J].决策与信息 (下旬刊) 2013, 6.

[2]张廷海, 周经.印度软件业发展对我国软件人才队伍建设的启示[J].学术论坛, 2011, 6.

[3]黄霞, 郑军.对软件行业未来发展的思索[J].中国科技纵横, 2009, 11.

[4]金彩琴, 汪万紫, 裘国永, 蒙根胡依格.国内若干高校软件工程专业培养方案比较[J].中国科教创新导刊, 2011, 11.

[5]佟玉军, 周军, 陈文实, 等.软件工程专业教学改革研究[J].计算机工程与科学, 2011, Z1.

[6]李玮瑶, 吕海莲, 杨照峰.卓越软件工程师人才培养实践教学体系的构建[J].科技信息, 2013, 24.

[7]周立, 张发爱, 浅谈卓越工程师培养计划实施的问题及对策[J].科技信息, 2013, 3.

[8]林健.“卓越工程师教育培养计划”专业培养方案研究[J].清华大学教育研究, 2011, 2.

[9]任一支, 俞兰平.卓越软件工程师课程与教材建设探讨[J].计算机时代, 2012, 12.

浅析机械工程测试技术 篇11

【关键词】机械工程测试技术;教学改革;课程

1.机械工程测试技术在教学过程中存在的不足

1.1教学方式没有实现多样化

教学手段落后,以课堂教学为主,学生被动接受,缺乏必要的互动。虽说现在多媒体教学已经普及,但基本上还停留在投影代替粉笔的初级阶段,对现代化教学手段的充分利用还远远不够,对教学手段的改进也期待进一步探索所以可以看出,传统教学模式的弊病会造成学生被动吸收知识,难以充分调动学生学习的积极性和主观能动性,不利于培养学生的创新思维和创新能力。

1.2课程的不合理安排导致基础薄弱

机械工程测试技术需要前期学习的课程主要有高等数学和概率论与数理统计。高等数学和概率论与数理统计这两门课程一般安排在大学一、二年级开课,机械程测试技术一般安排在大学三年级开课,中间间隔的时间比较长,学生对基础知识的遗忘比较严重。而比较普遍的现象是学生在学习这门课程时进人状态较慢。该课程一方面要求学生全面回忆起高等数学、数学分析的内容,另一方面要求学生不断吸收全新测试技术知识。假如不能充分利用已学过的基础知识并做到与新知识融会贯通,则相当长一段时间都会处于茫茫然的学习阶段,学习兴趣锐减,积极性受挫。

1.3学生得不到足够的实践机会

机械工程测试技术课程的实验教学中主要存在两个问题:一是由于实验条件有限,难以完成一些较复杂的实验,而且某些简单实验完成的效果也不太好,造成了学生在学习这门课时,感性认识与理性认识相脱节的现象,学生理解这门课程存在一定的困难。二是实验教学中一般要求学生按照实验指导书的步骤操作,有些学生不思考就按部就班完成实验,最终仍然不明白为什么该实验要有这几个中间步骤,知其然而不知其所以然。众所周知,机械工程测试技术是一门实践性很强的学科,所以实验教学对于学习本门课程非常重要。但是由于存在一些这样那样的问题,导致了实验教学不能正常开展,学生动手操作机会少,演示教学多,案例教学较少,实际应用测试结果分析问题的能力不足。

1.4学生接受知识相对比较被动

传统的教学模式主要以教师为中心,上课大多采用灌输式的教学方法,这种模式的优点是有利于教师发挥主导作用,利于教师组织、监控整个教学活动进程,便于教师向学生传授系统的科学知识。但是通过长期的观察,由于,教学手段落后,以课堂教学为主,学生被动接受,缺必要的互动。在以前的教学模式中机械工程测试技术实验教学基本是沿袭传统的教学模式。做实验之前教师将每一个实验从实验目的、实验原理、实验仪器、实验内容到实验步骤、数据处理等都做了详尽的交待,学生只要按固定步骤操作即可这种传统教学模式,虽然能使学生较快地掌握教材内容,但却影响了学生创新思维的培养,激发不了学生求知的欲望。

2.对于机械工程测试技术改革的几点看法与研究

2.1改变传统的单一枯燥的灌输式教学模式

通过引入多媒体教学,提高课堂教学效果 在测试技术课程学时压缩,测试技术内容不断增加的情况下,把多媒体教学引入测试技术教学,可以改变传统的教学模式采用单纯的黑板、粉笔式课堂教学,缺乏形象、直观生动的特点,使图、文、影、音等多种信息结合在一起。合理的运用多媒体教学可以弥补传统教学的不足,使课程内容化难为易,化繁为简,便于学生对知识的记忆与掌握。而且教师应该改掉灌输式的教学模式改为启发式。启发式教学不仅是教学方法,更是一种教学思想,是教学原则和教观。所谓启发式教学是教师在教学过程中,根据教学目的、内容、学生的知识水平和知识规律,运用各种教学手段调动学生的主观能动性,引导学生开动脑筋、积极思维、主动实践,以达到掌握知识和技能,增强能力的目的。

2.2采用案例和基础知识相结合的教学模式

在教学中我们采用案例教学法,结合工程实例,把各个模块的知识有机的结合起来,使学生对模块化知识在实际测试中的具体应用有一个宏观上的认识,加强测试系统系统设计的观念。比如讲解大型钢结构桥梁时,首先让学生分析危险截面所在之处,继而促使学生思考如何贴应变片以测量危险截面处的弯矩,并引导学生思考整个测试系统频率响应函数的建立方法。另外,在分析功率谱时,多数学生误将其峰值视为具有最大振荡幅值所对应的信号,实则不然,功率谱中峰值处对应的信号只能说明其平均能量最大,但其振荡峰值却未必最高,这可以通过讲解测量射流中心速度的方法而使问题明晰。显然,通过工程案例的讲解,不仅加深了学生对电阻应变式传感器、桥电路、A/D转换器和微处理器等的理解,而且有助于其掌握测试系统设计的基本过程,培养综合运用知识的能力。

2.3中心向学生动手实践倾斜

机械工程测试技术课程内容比较抽象,实验在课程教学中占重要的地位。为了加强学生对于课本理论知识的理解,需要安排大量的实验教学。实验应从培养学生的动手能力出发,发挥其能动性,让他们自我解决实际问题众所周知,工程实际中,机械工程师明确了测试任务后,一般的工作顺序是:在互联网上或企业内查询,选用适当的传感器和相关仪器;设计适当的试验方案,组建测试系统;完成测试要求。因此应开设具有实际应用背景的常用物理量(位移、力、压力、振动、噪声和温度等)测量的综合性实验,每个实验相当于完成一项工程测试任务。

2.4优化教学知识结构

教学内容是学习知识和技能的载体。由于机械工程测试技术涉及的知识面比较宽,知识点多而繁琐,针对这一特点,我们在教学过程中把相对离散的知识模块化,把知识点分为信号认知模块、信号分析模块、信号调理模块、传感器基本知识模块以及测试装置性能测试模块等,使每个模块的知识系统化,让学生能够分模块的掌握有关的知识。在把知识模块化的同时,我们根据突出重点,注重实用的原则,在满足教学要求的条件下精选授课内容。当然,要达到上述要求应做好两方面工作:一是确定教学内容是什么,二是怎样将这些教学内容组织成一个合理且实用的有机整体。

3.结语

机械工程测试技术相对于其他的课程最大的特点之一便是其实践性。而且多年的教学经验也显露出老师难教,学生难学的特点。我们应该应用形象、直观、生动的形式充分调动学生的积极性和学习热情。再但前的发展形势下,提高学生综合素质,特别是培养学生创新意识和能力,任重而道远。希望通过以上学改革,相信能够在一定程度上提高机械工程测试技术课程的教学质量。 [科]

【参考文献】

[1]陈光军,常江,张连军.测试技术实验教学改革与学生创新能力的培养.实验技术与管理,2007,2(129~130).

[2]赵纯.关于大学物理教学改革的若干想法[J].中山大学学报论丛,2005,25(3):35-37.

软件测试工程师 篇12

关键词:卓越软件工程师,软件人才培养,教学模式,校企合作

1 前言

卓越软件工程师教育是新时期高等教育的新模式, 最先在欧美国家开展, 并产生了良好的效果。为了贯彻落实《国家中长期教育改革和发展规划纲要 (2010-2020年) 》和《国家中长期人才发展规划纲要 (2010-2020年) 》的重大改革项目, 我国“卓越工程师教育培养计划”于2010年正式启动, 这是促进我国由工程教育大国迈向工程教育强国的重大举措, 同时也是我校“十二·五”教学改革的重点和提高教学质量的重要措施。卓越软件工程师的培养可以我国造就大批具有工程实践能力的专门技术人才, 为中国的崛起储备更多坚实的后备力量。

2 培养卓越软件工程师的意义

走中国特色新型工业化道路需要提高自主创新能力, 建设创新型国家, 建设人力资源强国, 提升国家的核心竞争力。而卓越软件工程师培养的主要目标是面向工业界、面向社会, 造就一大批创新能力强、适应经济社会发展需要的各类型软件工程技术人才, 为建设实现工业化奠定坚实的人力资源储备。

我国软件产业人才主要来自高校、企业和培训机构或企业与高校合作培养等。高等院校是我国软件产业人才培养的主体, 拥有社会培训机构所不可比拟的教学设施和师资力量, 然而大量的计算机及相关专业毕业生虽掌握了软件行业需要的软件基础知识和开发能力, 由于我国高等教育长期与产业脱节, 片面追求学科的系统性和完备性, 忽略了对学生的实践能力和创新能力的培养, 导致毕业生实践能力和创新能力缺乏, 造成了表面上软件人力资源储备丰富但实际上适用人才不足的尴尬局面。针对目前软件人才培养的现状, 需要建立卓越软件工程师的培养体系, 为我国软件产业的健康良性发展提供坚实的人才保障。

以实施卓越软件工程师培养计划为突破口, 促进工程教育改革和创新, 全面提高我国工程教育人才培养质量, 是积极努力建设具有中国特色社会主义的现代高等工程教育体系, 促进我国从工程教育大国走向工程教育强国的有效途径。

3 我院卓越软件工程师教育培养模式措施

中原工学院软件学院是河南省首批软件学院之一, 办学效果出色, 在本省软件学院中处于引领地位, 是我校首批创新人才培养实验点。“软件工程”专业是我校的特色专业建设点、校卓越计划首批试点专业, 2011级卓越软件工程师试点班已于2012年2月正式开班。学院积极研究、探索培养卓越软件工程师的整体方案, 积累了一系列实践经验和有效措施。

3.1 改革教学模式

培养模式是创新型人才培养的关键。高水平行业特色大学的工程教育和人才培养的过程和途径, 必须突破单一以课程“灌输”为主的模式, 实行校企联合, 产学研结合, 共同打造以问题探究式、科研训练式、工程实践式等为中心的多元化培养模式, 这是发挥学生个性特长, 增强学生自主学习、探索研究、工程实践和创新能力, 逐步形成国际化视野的基本保证。

教学模式注重实践和教学改革。多方位的课外实践和课内教学是培养学生动手能力的重要手段, 而校外实践创新活动则为培养学生的创新能力和思维创造了空间, 为学生提供了发挥特长的平台。

3.1.1 建立全新的课程体系

通过对毕业生工作后反馈信息的统计, 以及座谈的形式, 了解他们在实际工作中, 对课程设置合理性和教学大纲安排的建议, 适时调整课程安排。在与企业的见面会上, 搜集用人单位对软件人才的要求, 介绍学校的教学计划, 听取用人单位对培养方案和教学计划的意见。综合各方面信息, 编制软件技术专业全新的教学大纲, 突破传统的课程体系定制方法。

传统的课程体系注重理论课程的教学, 实践课程相对薄弱。改革后的卓越软件工程师培养课程体系如图1所示。新课程设置分为七个模块, 包括公共基础课模块、思想政治课模块、学科基础课模块、专业课程模块、校内专业实践课程模块、企业实践课程模块和素质拓展模块。专业必修课程强调本领域的理论基础与核心技术;软件技术强调软件开发技术、方法和工具的掌握;集中实践注重应用系统开发能力和工程能力培养, 并结合市场软件应用需求, 培养技术创新能力;专业选修课程注重拓展学生专业视野和和整体专业素质的培养。

新课程设置打破了传统的“自然科学基础→基础理论→专业技术→工程方法与实践”教学模式, 建立“理论精炼够用、技术课程优先、实践贯穿始终”的全新教育培养模式。从改革前后的课程体系可以看出, 培养计划在课程分布上, 对专业基础课和专业技能课做了比较大的整合, 摒弃过时内容, 除去重复部分, 尽可能使教学内容紧凑高效。

3.1.2 改革实践教学体系

传统实践环节是以“课程设计+毕业设计”为核心。其中课程设计主要作用仍然是课程实验的延伸和对课程理论的验证。软件职业技术能力的核心是程序设计能力, 一切课程的目的都服从于设计能力的培养, 因此, 实践环节的安排应该以软件设计为主线。随着课程进展、要求和水平不断提高, 改变传统实践教学体系, 是软件工程实践教育的重要内容, 是提高软件人才开发能的重要途径。

传统课程设计改革为“多级综合实践课题”。具体方案是用“三级实践课题+二级软件工程实践+IT行业社会实践+创新创业活动+企业课程”的实践体系, 取代原来的“课程设计+毕业设计”实践体系, 如图2所示。采取不同时期不同级别的课题设计, 逐步扩大和加深学生对问题的分析和设计能力的提高。

“三级实践课题+二级软件工程实践”把各学期内时间较短、内容独立的课程设计进行合并, 构成软件设计分级综合实践课题, 每个学期至少三周时间。学生在校理论教学的三个学期分别设计了不同目的的实践课题, 主要培养学生分析及解决问题的能力。集中实践的模式, 时间充足, 效果较好;以综合性实际项目为驱动, 学生实践能力提高快;课题由易到难, 连续性强, 学生能力稳步提高;课题多样化, 适合不同学生和不同应用;小组协作, 培养学生软件工程能力。以实践活动促进学生核心能力, 即软件设计能力的提高。

企业也可以直接参与“三级实践课题+二级软件工程实践”课题, 课题的项目由教师和企业共同提供, 让学生尽早的接触到软件生产过程, 在参与企业真实项目的过程中, 了解软件的规范化和工程化, 熟悉软件公司环境, 练习软件开发和设计能力。同时, 利用假期带领学生到软件企业的实训基地, 做IT行业社会实践, 使学生尽快熟悉企业流程和参与到企业真实项目中, 锻炼他们的软件工程能力。

3.2 校企合作

实用型软件人才的培养是企业需求与高校培养目标的结合点。高校在人才培养中, 要以教学为中心, 以培养人才为根本, 不断深化教育教学改革, 努力提高人才培养质量。鼓励教师面向社会、面向企业, 开展技术服务和软件开发, 提高教师的动手能力, 进而能采取措施提高学生的工程实践能力, 使学生能力与企业需求无缝对接。

学校要主动“走出去, 请进来”, 积极向软件企业提出合作意向。走出去进行市场调研, 根据社会和企业需要, 适时调整专业设置。只有同社会和企业相结合, 了解企业的用人要求和标准, 才能为校企双方提供合作的条件。与企业建立合作关系, 拓宽学生的就业渠道, 鼓励学生到软件行业发达的地方就业;请进来让企业了解学校的培养模式, 了解培养计划和课程体系, 才能了解学生, 为校企合作提供可能。让学生和企业接触, 聘请有实际工程背景的工程师、专家或相关技术人才来校授课, 既能让学生提前接受企业文化熏陶, 缩短学生的实习周期, 又能减少企业的培训成本。

学校与软件企业联合设立科技攻关项目, 对制约企业发展的关键性技术实施集中攻关, 利用软件企业较强的实践性和丰富的实际经验积累, 联合软件类高校系统的理论知识体系, 实现短期攻关, 体现软件企业和高校相辅相成的关系。

与企业共同建设实训基地, 实训期间由企业提供课题, 公司派出工程师和高校教师联合指导。毕业后, 符合企业要求的可直接就业。开拓校外实训基地的同时, 也要增强校内实训基地的建设, 聘请有企业经历或者技术能力强的教师, 作为实训教师, 采集实训课题, 进行实训;由企业派老师直接进行实训, 实训后由企业推荐就业, 或自主择业。

3.3 建立高素质的师资队伍

建立专职教师与兼职教师相结合的高水平工程教育师资队伍是提高软件人才教育质量的根本保证。软件技术人才培养需要一支实践能力强并熟悉掌握国际规范和软件开发规范的“双师型”教师队伍。在师资队伍建设中, 采用了“三个1/3”的教师构成体系, 即l/3的专职教师, 主要负责学院专业建设和主干技术课程的教学;1/3的校内其它院系 (主要是计算机学院) 特聘教师, 主要负责学院专业理论课程等的教学;1/3的校外兼职教师, 主要负责实践环节的教学。

学校借助同企业的合作, 通过引进工程师型教师、聘请企业优秀人才兼职教师等方法来提高教师工程实践能力。 (1) 推进教师企业轮训:通过支持教师以脱产或半脱产形式到企业顶岗锻炼或到合作企业中兼职, 参与企业的实际项目, 提高教师实践能力和软件工程能力。定期选派青年骨干教师参加企业培训, 获取企业资格证书, 鼓励教师考取行业资格证书, 提高现有教师队伍的“双师”比例。鼓励教师参加软件技术学术会议和软件人才教育教学研讨会等, 提高教师的教学水平, 适应软件技术的快速发展和社会对软件技术人才需求的变化。根据教学需要, 派教师到知名软件企业进行培训, 参与实际软件项目开发和管理, 从而提高软件工程能力和职业素质。实践证明, 这是一种快速提高教师实践能力和综合业务素质非常有效的办法。 (2) 引进工程师型教师:软件技术人才实践性非常强, 需要有实践经验的教师队伍, 可以通过引进工程师型教师的途径, 借助他们的实践经验, 提高师资队伍的实践教学能力。自2005年起, 软件学院有计划地从IT企业引进有软件开发和项目管理经验的软件专业技术人员, 目前, 学院80%的专职教师都具有IT企业工作经历。

4 结论

卓越软件工程师教育作为新时期高等教育的新模式, 仍需要在实践教学中不断探索方法和总结经验。本文针对当前软件人才传统培养模式的不足, 从我校软件学院的教学改革实践出发, 通过教学模式改革建立全新的实践体系和课程体系, 利用校企合作模式, 提高软件人才的工程实践能力, 通过师资队伍建设提高教师的教学水平, 结合卓越软件工程师的培养模式在实行中所遇到的困难和问题提出相应的对策, 对高质量、实用性的软件人才培养模式进行了有益的探讨。

参考文献

[1]朱彦松, 车战斌, 郭基凤, 韩玉民, 窦桂琴.卓越软件工程师人才培养方案实施研究[J].计算机教育, 2012 (10)

[2]李英梅, 王建华, 于延.卓越软件工程师教育培养研究—以哈尔滨师范大学软件学院为例[J].计算机教育, 2012 (12)

上一篇:复合技能型下一篇:环保监理