为何要写软件功能规格书?程序员
1,提升研发效率:可以在开始研发以前设计好软件,在设计的时候就暴露全部可能的逻辑问题可用性问题从而调整,而不是在研发的时候,从而大幅度提升效率,下降研发损耗。编程
2,提升对合做伙伴的沟通效率: 便于设计,测试,运维,客服,运营等等合做伙伴来学习和了解软件,而不用把全部内容都用一遍同时还要打扰 程序员不断追问,才知道这是什么,该怎么用,有什么效果。而合做伙伴会面向用户,告诉用户这个软件该怎么用。运维
3,没有软件功能规格书,就没法制定进度表。编程语言
什么是规格书?学习
简单来讲就是说明这个软件是作什么用的。测试
软件功能规格书是一个正式文档,它用来为软件开发者详细描述一个产品的潜在功能,表现以及与用户的交互性。当开发者写程序代码时,功能规格说明书是一个指导纲领和持续的参考书。设计
造楼房(非狗窝)和桥梁须要蓝图,出门旅行要看地图,即便没地图,好歹也有一些生存技巧做为指引,好比有罗盘和北极星辨别方向。然而,没有了这些用来指引的东西来作事情,是赌博。是生,是死,听天由命。3d
这篇文章不是给赌徒看的,目标读者是软件从业者,包括那个不可或缺该死的码农,还有项目经理,测试,产品狗等若干人等。blog
写过代码的人都有这种感受,一我的写代码的时候很爽,只要把这个软件相关的全部知识装载到脑壳里,而后用某种或者多种编程语言讲这些逻辑写下来,最后神奇的事情就发生了,一个能够正常工做的软件产品开始有了生命。开发
随着软件的规模愈来愈大,一我的很难把全部的知识细节都加载到脑壳里,进入了像亚当斯密提到的钉子生产车间那样的分工协做时代。
在软件工程里,最大的成本就是沟通。具体的数据我没有,可是软件开发过程当中,人的成本之重要已是共识,人与人之间最困难的事情就是沟通,所以把沟通成本放大也不会偏离正确的方向。
然而如何保证高效的沟通,是个世界性的难题,但也毫不是不治之症。
首先,要有聪明的人,这是前提条件,由于除了软件自己的知识技能之外,还要掌握软件自己所解决问题的所在行业的知识技能,毕竟软件大多数状况下是不会孤立存在的。所以软件从业者须要可以快速领会当前软件所须要的行业知识。
其次,要认识到软件开发成本和维护成本的关系,业界共识是维护成本远大于开发成本。
最后,要保证相关知识的传承,既然软件须要长期维护,那么人员更迭是必然的,要让后来者快速掌握当前软件的状态。
看完以上几点,读者们应该也猜到了:软件功能规格书很重要。
然而前几年,一些软件工程的方法论给你们一种误导,说文档不重要。其实人家说的是减小没必要要的文档。
那什么文档重要呢? 重要的文档有不少种,这里说的是其中之一:软件功能规格书
在本篇文章的摘要里是这样描述功能规格说明书的。
软件功能规格书是一个正式文档,它用来为软件开发者详细描述一个产品的潜在功能,表现以及与用户的交互性。当开发者写程序代码时,功能规格说明书是一个指导纲领和持续的参考书。
功能规格说明书就如同建造大厦的蓝图,野外探险的指南针同样。不可或缺。
最后问一下,你的团队里有软件功能规格书吗?