软件开发文档的价值和作用

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/szwxj/article/details/88596265

现代软件研发理念强调敏捷开发,快速迭代,高效地响应用户的需求变化。可以说,自从有了敏捷方法,有相当一部分程序员长出一口气:终于可以不用写文档了。

那么,事实真的如此吗,文档应不应该写,应该如何编写?

要搞清楚这个概念,首先要明白文档的价值和作用。其实,我们交付的是软件产品,而软件产品是通过编写的软件代码编译后产生的,开发文档并不能够直接转化成软件产品,因此,有人认为文档没有价值,既然没有价值,当然就可以不用编写了。而且,持这种观点的开发人员不在少数,也影响了项目管理者要求编写文档的管理要求。

我们都知道,我们人类的大脑相比电脑既具有抽象的逻辑思维和推理能力,同时也具有遗忘的特点。正因如此,文档的首要价值在于记录和沉淀,把过去通过思考而形成的结论记录和沉淀下来,方便日后查阅;另外,文档的作用还在于沟通和传播,把个人或集体智慧的结晶形成文档后,非常容易传播和指导今后的研发工作,尤其是新人加入到开发团队,如果没有文档,那么就必须浪费团队成员的精力给新人介绍项目需求,而这种介绍,如果没有文档,那么就像前些年湖南卫视的快乐传真一样:

每个人的描述都不一样,那么,每个人根据自己的理解去开发系统,那么系统的可用性和逻辑一致性,就很难得到保障。

因此,文档绝不是可有可无的,文档是必须的。

那么,应该如何来编写研发文档呢?

其实,我们可以把文档分为两类,一类是格式化文档,一类是随笔文档。

传统的结构化开发方法,强调的是“重”文档,也就是格式化文档,比较典型的是:软件需求规格说明书;现代的敏捷开发方法,强调的是“轻”文档,随时可以开会讨论问题,在白板上随手画一些业务流程图、类图、时序图等等,这些随笔,其实也是文档,不管是中间的讨论过程,还是已经形成结论的定性的结果,都需要保存和沉淀下来,以便于查阅,也便于指导今后的研发工作。

其实,敏捷方法,虽然强调的是“轻”文档,但并不是“无”文档,文档是必须要有的,这里要明白一个概念,那就是,传统的结构化方法要求的软件需求规格说明书,是一次性把所有的需求编写清楚,然后再展开后续的设计和研发工作,而敏捷方法是把这个大的过程打散成一个一个的小的研发过程,而每个小的研发过程是需要有“小”文档的,随着时间的推移,这些“小”文档,通过整理,也会逐步形成格式化的“大”文档。

因此,研发软件,文档绝非可有可无,而是必须要有的;而且,编写文档有助于提高程序员的逻辑思维能力,就这点而言,我认为:

文档能力,始终是衡量一个人综合素质的唯一标准。

作为一个开发人员,要想提高自己的综合素质,去编写文档吧,首先可以在白板上画一些草图,然后把这些草图,整理和沉淀下来,你会发现,你的逻辑闭环思维能力越来越强,你对需求的把握能力越来越准,你的工作效率越来越高,最后,你会越来越喜欢随笔,也会越来越喜欢格式化文档。

作为一个程序员,走出你的舒适区,别在盲目鼓吹敏捷开发不必写文档,这只能说明你的层次较LOW,提高自己的综合素质,从编写文档开始。。。

 

 

展开阅读全文

没有更多推荐了,返回首页