这是《落叶》文集里第 218 片落叶,希望你能喜欢,不为别的,只为这份坚持。
【背景】
最近经常会跟人讨论任务并行的执行策略,因为在日常的工作和学习中,不可避免的,在同一时间段,都会承接多个任务,很少人会在一段时间里只需要完成一个任务那么简单。所以很多同学在并行任务较多的时候就会比较容易产生焦虑、慌乱的情绪。
【你问】
怎么制定多任务并行的执行策略?
【我答】
A & B or A -> B
上面写的既不是什么公式算法,也不是地图路线,而是 AB 任务,也就是我们每个人在工作和学习中最最常见的任务 A 和任务 B,我们最常见的执行策略是不是一般就两种:
一、A & B,即任务 A 和 任务 B 并行;
二、A -> B,先执行任务 A,完成后再执行任务 B;
先说说第一种执行方案吧,我们需要将精力一分为二,做一会 A,再做一会 B,首先,这个方案和当下常说的一次只做一件事的原则有所违背。其次,就是我们会在做 A 的时候,还时不时地会想着还有 B 也在待执行,然后又停下 A,跑去执行 B,导致精力不能很好地聚焦在一件任务上,总是在 A 和 B 之间来回切换,切换的过程中其实消耗了不少看不见摸不着的精力和注意力。
再来说说第二种执行方案吧,先专注的执行 A,一直到把 A 完成,才会开始执行 B,这种方案相比第一种而言,可以将精力相对完整的聚焦于一个任务的执行过程中,减少在两者之间切换导致的损耗。但是有一个较为现实的问题是,这样会导致 B 任务的完成时间节点靠后较多,假如在 A 任务的执行过程中,临时要求 B 任务需提前完成,就会比较被动了,因为 B 任务完全还没有开始呢。
我想尝试的方案是:A1 -> B1 -> A2 -> B2,即,将任务 A 和任务 B 先分解成合适大小的任务包 A1、A2、B1、B2,然后先执行 A1,完成 A1 后开始执行 B1,完成 B1 在执行 A2,完成 A2 再去执行 B2。
首先,我在 A1 的执行过程中可以将精力完全聚焦于它,而不用焦虑和惦记着 B,因为我知道 B 已经被我分析且拆解好,完成 A1 就可以开始执行了,所以既不是一无所知的担忧,也不会等到很晚才会完成。
即使中间有临时要求提前完成 B,我们也不是一点都没开始,而是完成了合适的量,可以将 A2 的包调整到 B2 后执行即可。
你是不是会问,这种策略和方案一的区别在哪?不也是执行一会 A,再执行一会 B 吗?看上去貌似是的,但后者其实是有计划的切换,而方案一是一种无计划的切换,两者在精力分配和计划执行上还是有本质区别的。
《测试路上你问我答》里的 Q&A 72,如果是你要的,甚好!如果不是,你问,我答!
作者简介:14 年测试 + 11 年项目管理 + 11 年团队管理 = 一个测试老兵