如何平衡开发人员和测试人员之间的心理冲突?
我觉得回答这个问题首先要知道为什么两者之间会产生冲突:
1、因为开发与测试在某个程度上来说是两个行为相反的职位。开发代表着创造,而测试代表着摧毁。因为测试的目的就是以各种方式不断地从开发出来的软件中发现大大小小的各种缺陷,所以很多开发人员心里都感觉测试人员是在故意找茬,让自己难堪,证明自己做的东西不好,所以两者的矛盾必然会慢慢地产生。
2、职位的优越感。很多开发人员都认为测试的比自己低一等,因为开发自己是创造东西,而测试只是拿着自己做的东西在工作。所以很多开发人员对测试人员的脸色都不怎么好。
3、失败的沟通。在需求的理解或者说是测试发现问题时,测试人员一般都会找相应的开发人员进行讨论,因此在讨论过程中,假如由于双方语言上的不合,导致各自心里都存在着芥蒂。可想而知后面的工作双方之间的关系肯定会很僵。
4、由于很多大公司业务比较多,因此就有可能会采取外包的方式与其他的外包公司进行合作,因此在相互交流的过程中本公司的开发人员大多都会对不属于自己公司的工作人员都有排斥感。
针对以上四种情况,我个人认为可以采取如下措施:
1)开发负责人和测试负责人沟通,同时需要把两个部门的同事组织在一起参加会议,要让开发人员认识到,测试其实不是在质疑或者捣毁开发人员的劳动成果。测试其实是为了找出软件中隐藏的BUG,让开发出来的产品质量更加具有保障,使得后期的开发人员的维护工作量最大的减少,最终的目的其实是为了让开发人员做的产品更加的好,而不是毁坏。
2)测试负责人可以和开发负责人商定一些技术性的问题讨论,可以使编程方面,也可是业务方面,多增进两个部门人员之间的接触度,开发的确是对代码很熟悉,但是测试却对业务相当的了解,双方各有所长。同时让双方都明白,开发与测试都是对等的两个职位。其实不管开发还是测试都是为供公司服务,都是公司里的同事,更是同一个项目组的兄弟。我们的目的就是让我们处在的项目能够做得更好。
3)针对于第三个问题,这需要个人的沟通能力。建议多看看如何能够实现成功的沟通的一些方法,案例。
4)对于那些有外包的大公司,要多加强本公司于其他外包公司的人员之间的合作,要以一个主办方的姿态对待盟友公司,从而咋项目组内部形成一个整体。
以上只是个人浅陋的一些想法,如有错误请批评指正,谢谢~~~
1、开发与测试的职责
开发的职责是创造,创造出满足用户需求的产品,需要其尽可能的不出现BUG;测试的职责是保证,保证产品的质量满足用户需求,需要其尽可能的找到BUG。从目的上看,两者都是为了产品能满足需求,只是方向和方式不同,开发是正向的,测试则是反向,这就为两者的心理冲突提供了前提。
2、公司制度的影响
公司为了激发员工的工作热情,会出台一些奖惩制度,当开发所负责的模块出现了BUG,会被扣除一定额度的奖金或工资;当测试发现了BUG,会奖励一定额度的奖金。于是乎,开发为了保收而想尽办法避免或掩饰BUG,而测试为了创收想尽办法发现和提出BUG,此时,公司制度已经将两者至于对立面,这就为两者的心里冲突提供了基础。
3、个人改变心理冲突
从前面的职责上看,其实开发和测试两者的最终目标是一样的,就是能够让客户对产品质量满意。两者所做的事情都是殊途同归的,开发不能将测试提BUG的行为当成故意让自己难堪,应该自己检讨一下,为什么自己的代码写的不够完美,所以才会让测试发现,如果自己的代码写的严谨一些,测试也就不会发现BUG或者只是发现少量的低级别BUG;测试方面,不能说为了创收而乱提BUG,应该以负责的态度去发现影响产品质量的高级别BUG。
4、公司制度改变心理冲突
很多时候开发与测试的心理冲突都是收入引起的,简单来说,就是钱闹的。所以对于公司的奖惩制度的制定要慎之又慎,不能一味的以BUG的发现的多少和责任来对开发或测试进行奖惩,要对具体条款进行细化,如:在发布之前,可以用模块的缺陷密度和缺陷等级来判定开发的奖惩系数,同样的,测试主要从其找到的缺陷的等级、数量和有效性来判定奖惩系数;产品发布后,如果出现线上问题,那么相关的开发和测试都有责任,都应该进行惩罚,让开发和测试荣辱与共。
5、公司和项目领导改变心理冲突
领导可以定期或不定期的把开发和测试召集到一起,坐下来大家面对面的沟通一下,聊聊对于工作的各自想法,开发和测试不理解更多的是因为沟通不畅造成的,所以基于领导的管理职能,应该协调两者之间的出现的不和谐因素,让双方互相知道对方在做什么,怎么做的,为什么这么做,这些都有利于化解之间的心理壁垒。