在软件开发里,你要懂得开发软件的流程、步骤、跟步调。软件开发中有很多基本的观念,就像棒球比赛中跑垒、选球那样的基本,也那样的重要,但还是很多人是在不了解或不贯彻这些基本观念的情况下开发软件。在这种情况下,即使很会撰写程式,软件开发的过程,也有可能发生诸般的问题及不顺利。
就像有个基础的小观念就是,在开发时你应该画分阶段,不论究竟分为多少阶段、也不管每个阶段究竟有多长或多短,每一个阶段都有一个明确的开始和结束。在每个阶段里都应该要有明确的需求、有个明确的目标,才能开始进行之后的开发动作。
但是,我们还是很常看到一些人开发软件时没有明确的阶段画分,把所有想做的事都混在一起,也没有明确的需求就开始写程式,也放任需求不时地改变、调整,没有任何管控需求变更的程序或手段。这么一来,就容易导致无法收敛的需求、或是持续变化的需求,影响到整个开发。
控管品质也是软件开发的一环
又好比对软件品质稳定的看法,事实上,在程式源码写完之后,还需要一段测试及修改的时间,而这段时间通常不少于敲代码所花的时间,甚至倍数于写代码所花的时间。
其实,这是一个很基本的观念,但也总有人不知道、或是不相信这个观念,最后错估了软件实际需要完成的时程,或是在时间截止时,只能交付品质不够稳定的软件。
再者,又像是软件开发中的瑕疵(defect)或议题(issue),经提出后,都需要被透过某种方式来追踪,并且促使其完成。每个需求不论描述方式多严谨或多简略,都应该有一个明确的描述方式,以便在团队成员间沟通确认。