因为所在的小组上要在中旬交付四个需求,从十一回来后的时间里都在加班赶进度。
可是现在看来,效果并不理想,虽然与原先设想的进度偏差并不大,但是自己每天都要很晚才能回家,幸福感知度会下降的。那实际在那个环境出现问题了呢?当然最大的问题就在于人力不足的情况下,承接了这么多需求,又不加班,能顺利交付才怪呢。可是,排除这个原因之外呢,为什么我自己搞的这么累呢?多任务并行时,有没有好的方法或者规律可以遵循呢?
这次共四个需求需要做18号或者之后一两天交付,仅从人力上来看,几乎都是2个人负责一个需求,既要开发,又要测试。我从中承担的角色,既要写自动化用例,又要解决其他同事验收时碰到的问题。对于我自己,时间也主要是花费中这两个点上。
(1)自己写自动化用例,并且调试。
写自动化用例,其实并没有花费太多时间,但是调试花费了很多时间,有如下两个原因:
a.自己对自动化工具不熟悉(大概30%的时间)——改进方法:后面有时间后,熟悉自动化工具的代码;
b.调试用例的版本,本身不确定是否完全支持本次需求,又没有全人力支持(大概70%的时间)——改进方法:找到确定支持该需求的版本调试(对于本次交付,正好处于青黄不接的阶段);这个问题其实也在于对于方案流程的了解,如果自己确定就应该如何实现,按照方案写出来的自动化用例肯定没有问题,如果还有问题,就是实现的问题了。——这个地方也涉及一个改进方法:一定要清楚需求和实现的前提下再着手工作,会事半功倍的。如果没有理解需求或者方案时就开始工作,可能最后的结果都和方案不一致,到时候再返工就麻烦了。
(2)解决其他同事验收时的问题。
也会有三种情况:
a.自己碰到过的问题;
直接给同事把规避或者解决方法扔过去就可以了,也花费不了多少时间;
b.自己没有碰过,但是自己有思路解决的问题;
这种情况也好处理,只不过要多花一些时间罢了,有方向就可以按照自己理解的方向一步一步排查问题;
c.自己没有碰到过,也没有思路解决的问题;
(3)跟踪多个同事负责的多个需求增加了自己被打断的次数。
这个也是件头疼的事情,同事只要对自己负责的需求做好就行了,专心一点做按照既定的目标做就好了;可是自己要想着他们做的进度,有没有遇到问题,当然这也增加了自己被打扰的次数。这种情况下怎么解决呢,其实就是上面问题(2)相关联了。被打扰,要么是有问题,要么是要告知我什么东西,如果是有问题,那就按照上面三条进行,如果是告知我什么东西,如果当时自己正在做一些需要专心的事情,等结束后再联系下同事;如果当时正在搞一些其他事情,可以及时回复下。
现在自己也会尝试着去看下,但是现在多任务并行时,时间就很宝贵了,这个时候为什么不让其他同事帮忙解决下呢?最后把问题的原因和如何解决的告知下自己就可以了。即使时间充裕的情况下,也最好让熟悉这块的同事来解决吧,自己对相应模块不熟悉的情况下,找到解决方法还是比较困难的。
多任务并行时,其实就是处理好任务优先级和单个任务执行时的策略问题。
优先级排列好了,就有目标先解决什么问题了;单个任务执行策略有了,就能朝着目标按照策略进行了。最怕的就是,多任务并行时既没有优先级,又对特定的任务啥都不知道的情况下上来就干,这样进度根本无法得到保证。
归根到底,多任务并行时,想清楚了再去干。如果中途被打扰,要根据自己的情况和同事的目的来决定怎么应对。