失败的过程也是过程
做过程不是做工程,你做完了过程,但是你的工程并不一定就会成功,因为如果你是走过场,而不是为了实现目的的编程,去做工程,那么你的工程永远就不会真正成功。所谓走过场,就是在项目工程中没有什么实质的内容与进展,每个角色把自己的那一环当成过场,并没有什么用,试问如此项目工程的结局难道不是人走台散吗?上世纪60年代,软件工程这个概念被提出。其中瀑布模型将软件开发的过程分成需求、分析、设计、开发和测试等5个阶段,于是又衍生出来了RAD(快速应用开发)模型、螺旋模型和RUP模型。然而,如前面所提及的,根据模型做了过程,你以为工程实现了,成功了,实则并没有成功。其实,很多人把问题的本质给忘掉了,从我们接触编程开始,我们所做得就是实现功能、解决问题,而不是按照模板去做。
工程只是实现需求的一种途径,它并不是你被它限制的理由,我们做完一个工程,首先应该考虑的是是够符合用户的需要,为了工程而工程的人,都迷失在项目中了,忘掉了原本的初衷。
过程不是死模型,一个好的模型就得实际的符合当前项目开发的情况,比如日本IT发展史中的V模型,表面上把V模型拉直后就是瀑布模型,但是这仅仅是知其表里,我们应该去思考由瀑布模型到V模型这种变化的真实意图。V模型在每个环节中都强调了测试并提供了测试依据,同时又在每一个环节都对实现者和测试者分离,将其放在日本当时所处的环境你就明白他的意义了。由于近年日本老龄化严重,因次劳动力短缺导致的劳工输入和项目外包,直接影响了他的组织和管理模式,无论是外包还是雇外地劳工,项目成果的阶段性考察都是他们的第一要务,因此V模型就诞生了,它比其他模型更加的符合需求,这样既节省人力又可以保障工程质量。所以你要知道,过程模型是在既有工程中总结出来的 那么,为什么我们不是新的模型创建的团队或公司呢?古有刻鹄类鹜与画虎类狗,马援说刻成鸭子比画成狗好,其真实的意思是说学龙伯高不成,可得“谨敕”;学杜季良不成,则会流于“轻薄”。马援比较的二者在骨子里所得所失的东西。而不是架子上的像不像,其实越是简单的东西往往越是接近于本质,对于二者,你到底是选择骨子还是架子?工程不是做的,是组织的,所以我们当然不能“做”工程,而是要“组织”工程。