【总结】第一次负责大型项目,如何保证顺利完成任务

1,794

很多同学在职业生涯的初期,都是负责一些小型或者中型的任务,并且都是由领导制定好任务,你只需要按照指示完成任务即可。

但是随着经验、能力的不断提升,逐渐地开始独立负责一些大型项目。

众所周知大型项目的难度和复杂度是小型项目无法比拟的,因此,大型项目总是给人无法完成的感觉,会给人心里上造成沉重的负担,因为任务越大,越无法明确知道具体要做什么,从而让你感觉到无从下手。

面对大问题时,我们倾向于花更多的时间思考问题本身,而不是采取行动去解决问题。人类倾向于选择阻力最小的路径。 当面对一项大任务的时候,刷刷抖音、朋友圈看起来就是更容易的路径,于是拖延随之而来。

那么,我们如何去克服这种心理负担,保证任务的顺利完成呢?

答案就是:任务分解。

要吃掉一头大象,每次吃一口。——克雷顿·艾布拉姆斯(Creighton Abrams)

一、如何分解任务

如果我被分配了一项大任务,我要做的第一件事情就是弄清楚我能否将它分解为一连串的小任务。

其实任务分解并不难,只需要注意两点:

第一,确保每个小任务都有一个明确的目标 。即,这一步,我主要解决什么问题。

第二,能够估算出完成的时间 。如果你分解出来的小任务,依然无法确定需要多长时间完成,那么,说明你还得继续分解。

举个例子,比如我想做一个客户端持续集成系统,完成代码打包任务:

Task1:完成从命令行构建和编译程序;

Task2:完成让构建服务器检出代码;

Task3:将两者结合起来。

二、分解问题

分解任务的方法,同样适用于我们平时写代码和解决问题。

许多人会觉得想实现一个大的功能很难,或者解决某个问题很难,原因在于他们总是试图一次性解决太大的问题。

不管编程问题有多难,它总是可以被分解为更小的单元。

比如,我想实现一个高难度的算法,在开始正式编码之前,可以先把这个问题分解为能够依次独立解决的小模块会更有帮助。

无论应用程序多么庞大、多么复杂,它都可以被分解成一行行的代码。

单独一行代码的复杂度,绝对不会超过任何一位程序员的理解能力和编码水平,所以,如果你愿意将问题分解得足够小,只凭借写出单行代码的能力你就能写好任何应用程序。

参考文章:

《软技能:代码之外的生存指南》