软件测试从零开始之十三:测试管理

上一篇 / 下一篇  2014-03-16 18:25:39 / 个人分类:软件测试从零开始

    这里的测试管理主要是指去负责一个测试团队管理工作。另外因为负责一个50个人的测试团队管理和负责一个10个人的测试团队管理区别应该还是很大的。没有接触就没有发言权,所以这里只是根据笔者的经验来分享下一个小的测试团队的管理工作(也是目前笔者的工作)。这里的岗位名称我们就定为测试经理吧。

    这里将一个团队的工作主要分为下面的几个方面。

项目相关工作:作为该团队的责任人,项目的工作肯定是首先要保证了,这个是其他相关工作得以顺利进行的基础,当然也是团队责任人最主要的工作。

技术改进工作:一般来说,我们可以将该工作交给测试架构师。或者跟测试架构师来一起负责整个技术的规划和改进工作。但是在没有测试架构师或者测试架构师还没有完全成长起来前,测试经理就需要承担该工作了。

人员培养工作:人员的成长是团队得以持续发展的基础,这里包括技术人员的培养和管理人员的培养。

团队建设工作:一个好的团队环境对于更好的达成团队目标是必不可少的。这里的团队建设包括团队的文化、流程制度、团队氛围等等方面的工作。

    而做为一个团队管理者,整个工作过程大概如下:

    团队目标的确认:这里的团队目标主要是包括团队的长期目标和团队的短期目标。长期目标主要是整个团队的发展方向(3-5年后整个团队会走到哪个地方);短期目标则是部门的年度kpi考核指标,因为这个涉及到部门的利益。而团队管理者则需要在长期目标和短期目标上面寻找平衡点。

    团队差距分析:仔细评估好当前团队的现状,包括:整体的技术水平、人员的能力、团队的氛围等等,然后跟目标进行比较,找到其中的差距。

    制定目标达成计划:有了差距分析后我们就要开始确认如何去达成目标。当然, 如果目标比较远的话我们可以将目标细分到每一年。

    合适的人做合适的事情:我们需要根据每个人的特点和意愿来安排对应的工作,这样才能够更好的达成目标。

    过程中及时的激励:根据胡萝卜原则,有效的激励是团队目标达成的催化剂。

    定期的总结和调整:过程中很难避免会出现一些意外情况,这个时候需要去及时的识别出来,并且做相应的调整。

团队目标的确认:

   团队目标即整个团队的方向,也是用于指导工作的一个很重要的衡量标准。那么,怎样去确认团队的目标呢?

   首先要跟相关干系人确认对整个团队的期望的什么?其中干系人包括:上级(测试主管)、开发主管、开发人员、团队成员等等。这样才不至于因为完全根据自己的想法来确认团队的目标而导致目标不符合预期。

   下面是笔者跟相关干系人确认后的出来的干系人期望分析,供大家参考。

l   持续发布高质量的版本(上级和开发主管的期望)。

l   持续的技术改进并且有明显的效果展现出来(上级的期望)。

l   团队成员稳定,离职率低(上级的期望)。

l   测试人员能够自己排查和定位问题,减少开发在这块的时间(开发人员的期望)。

l   减少大量的重复执行用例工作,让测试更加有技术含量(团队成员)。

l   让大家在更加轻松的环境下面工作,团队有良好的氛围(团队成员)。

将相关干系人的期望进行整合,尽量能够满足所有的人合理的期望,并且将这些期望转化成具体可以去量化的目标,从而形成团队持续发展的目标。如:持续发布高质量的版本可以转化为客户那里的网上问题数比例每年下降多少。

团队目标完成后,一定要跟上级进行确认,避免出现方向偏离的情况。

制定目标达成计划:

目标确认完成后,我们就要思考如何去达成对应的目标了。首先我们先分析当前团队现状,跟每一个目标进行相比,将里面的差距分析列出来。比如:目标之一是自动化率达到50%以上(假设有10000个用例)。然后当前的自动化率不到10%,这个时候我们就要去实现4000个用例的自动化。这个就可以作为我们的一个工作计划了。

其他目标也可以采取类似的方法,总之我们需要将我们所有的目标和计划都能够尽量的量化出来,不能够量化的就要细化,细化后再进行量化。

任务确认完成后,我们就要开始将这些任务分解到每一年(因为我们的目标可能是3-5年的),从而形成每一年的年度工作计划。分解的时候就需要同时考虑到当年的kpi了,比如:我们不能够完全为了追求实现自动化而在项目质量上面投入了更少的人力,最后导致项目出问题了,这样的工作计划就是不合理的了。

我们应该尽量将一些短期就能够看到效益的工作优先去完成,这样既能够推动目标的落实,也能够对当前工作产生帮助。

同样,计划完成后也要及时的跟上级进行确认和沟通,来确保自己的计划没有问题。

将团队目标和个人目标结合起来:

工作计划确认后,我们需要让团队成员去具体完成这些计划。同时,我们也需要对团队成员的个人职业发展负责。所以,在确认好团队目标后,最后是能够跟每个团队成员沟通下个人目标,保证我们的团队目标和个人目标都能够实现。

个人目标确认后我们就能够让合适的人去做合适的事情了,比如:想做自动化的就安排自动化相关工作,想做性能的就去安排做性能相关工作,让每个人都能够发挥自己的长处。当然,这里有2个地方需要注意的

l 一个人想做的并不一定会擅长或者合适,这个时候就需要沟通好,避免个人目标和团队目标都受到影响。比如:有个人想去做自动化,但是你可能认为他并不适合,这个时候也不一定要马上告诉他不适合,可以先让他尝试将1-2个用例实现自动化(并且给个自己能够承受的风险时间),通过结果来说明是最有说服力的。

l 当所有的人都想去做一件事情的时候要尽量每个人都给予尝试的机会,并且提前跟大家说明,谁完成的结果更好,则后面才会给更多的计划。这样才会让大家觉得公平。也让非常想去做这件事情的人更加的投入到相关工作里面。

形成团队的文化和制度:

首先需要明确的是,我们团队的文化和制度也是为了更好的来为团队目标来服务的,比如:我们需要大家去不断的提高技术能力,那么我们就要形成学习和分享的文化。

团队的文化其实是个很虚的概念,我们这里转化为团队鼓励什么,反对什么!而部门的制度就能够通过一些具体的措施来引导大家更好的达成团队目标了以及个人目标了。

团队文化不是一个人来决定的,也不是短时间就能够形成的,所以我们可以先通过制定制度的方法来规范大家的行为,从而形成我们的团队文化。

作为一个团队管理者,我们总是希望从各个方面来规范大家的行为,让大家来按照自己的期望一样去做事情。但是,我们的团队成员毕竟不是机器人。所以,我们只要抓住主要矛盾就可以了,而主要矛盾就是我们要达成目标一定要做好的一些事情。比如:项目的质量。那么这块就可以去形成我们的制度,避免因为因为个人原因导致项目出现风险(比如:执行漏测)。

而其他一些方面(比如:日常行为)可以不作为重点,我们通过结果来考核一个成员即可,比如:偶尔迟到就是一件无关痛痒的问题。但是,如果迟到频率高到超过自己预期的话自己就需要去及时去沟通和解决了,但是没有必要去制定一个制度出来。毕竟这个是极个别现象。

定期总结和调整:

计划全部确认并且分配下去后,就是开始执行的过程了。在整个执行过程中,为了更好的达成目标,我们就需要不断的通过物资和精神上的奖励或者处罚来更好的激励大家,让大家能够更好的发挥自己的能力。

另外,就是我们需要定期的进行总结我们的计划完成情况(比如:每个月总结一次),发现有问题的地方要及时的进行解决。当然,也有可能因为新技术的出现,我们可能也需要及时的调整我们的目标的,这个时候尽量跟上级进行沟通,至少要让上级知道这件事情。

个人在团队管理方面的经历:

  项目结束后,刚好因为上级调到了其他团队,自己开始去承担该团队的管理工作。刚开始的时候自己完全搞不清楚状况,算是打了2个月的酱油,基本没有做什么事情,思考的比较少,个人也没有感觉太大进步。幸好团队还算是处于一个有序状态,没有出现大的问题。

  然后开始思考部门整体规划以及自己需要提高的地方,并看了很多相关东西,自我感觉进步比较大,对于部门的规划和人员培养有了一些思路,虽然也有了一些改进想法,但是还没有一套很完善的计划,主要的还是慢慢适应了角色的转变,并且能够承担整个部门的工作。

  再然后开始对部门有了整体的规划想法,并开始按照这些规划思路转化为具体的计划并执行下去,并且在执行的过程中不断的完善整个过程,并且开始学习如何去激励团队成员以及将整个团队的目标跟个人目标来结合起来。

从开始负责这个团队到现在个人觉得主要就做了如下几件事情:自动化的全面开展,到目前基本有了60%以上的覆盖率,并且部门一半以上人员具备了自动化开发能力;深入了解团队成员,并且将每个人的职业发展方向明确下来(虽然走了一些弯路),并且能够安排对应的工作,让其朝着自己的方向来进步。也有了很多的计划没有坚持下去的,导致现在没有达到预期的。比如:测试人员定位问题能力的培养。

   当然,路还要继续走下去...


TAG:

 

评分:0

我来说两句

日历

« 2024-04-29  
 123456
78910111213
14151617181920
21222324252627
282930    

我的存档

数据统计

  • 访问量: 12014
  • 日志数: 14
  • 建立时间: 2014-03-16
  • 更新时间: 2014-03-16

RSS订阅

Open Toolbar