大道至简进行到第5章,随着工程的进行,我们可能会有成功也可能会有失败,可能会遇到各种各样的问题,下面我将就失败的过程来谈一谈,我对“失败的过程也是过程的理解”。
首先我们谈谈做过程吧。上世纪60年代软件工程提出一个瀑布模型,这标志着软件工程走向成熟。瀑布模型将开发过程分成需求、分析、设计、开发和测试等五个阶段。可是如果真的只是按照过程来进行程序的开发,我们做的那就只能是过程,而不是工程,做工程不是过程,也不是目的。
做过场。首先我想解释一下什么是走过场,在新华词典的含义是:形容只是在形式上过一下,却不实干。只是表面上做做样子,不具有实际行动的意义。而在软件工程中,在沟通问题上,如果每个人,每个角色都把自己的环节当成一个“过场”,只是从开头到结尾一遍遍的做下去,没有投入到任何创意,任何思想,任何心思,那这个项目充其量就是一场无休无止的演出罢了
随着工程的进行,很多人似乎都忘记了我们开始时候的目标,忘记了问题的本质。从我们项目的一开始,我们要做的就是“实现”,而其他的一切,不过是一个工具,一种途径而已。所以工程不应该被当做我们的借口,用来掩盖事情的真正目的,我们要做的事为了目的而做工程,而不是为了工程而做工程。有的时候要跳出我们所在的小环境,从大局来观察整个项目,这样在项目上迷失的人和在技术细节上迷失的人就会变得越来越少。专注于流程的人,往往会被每一个流程捆绑,无法动弹,无法挣扎,无法逃出这个牢笼。
在我们注重过程的路上,我们往往会被那些所谓的经典流程束缚住,但当我们跳出这些流程的时候,我们可以看一看这些大师的经典过程,他们只不过是在原来的瀑布模型上做了一些变形。如果你只是单纯的停留在他形式上的变形上,那就会造成买椟还珠的后果。每一个模型的发展都是有他的原因的,每一个方法的应用必定有它与别的模型优秀的地方。所以我们要思考的是,用这种变化的真实的意图,而不仅仅是停留在表面。
做工程,并不是像做包子一样,有模型有套路,然后上锅蒸,就可以做出来的,工程需要的不是做,而是组织。有组织,有分工,把步调保持一致,才有可能把这个项目做得更加完美。组织,不单单是两个字,更是一门学问。要想组织的好,要进行角色的分工,作为项目的领导者,你需要做的就是分清你团队里的人员的优势特长,把每个人用的恰到好处。
工程,过程,都是完成一个项目所要经历的,而我们是要认清目标,不断完善。