专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > SAP

会写需求和懂写需求的差别

发布时间:2010-06-06 17:04:02 文章来源:www.iduyao.cn 采编人员:星星草
会写需求和懂写需求的区别

 

注:本人为ABAP技术顾问,故以SAP实施过程中的功能说明书(Function spec,以下简称FS)的编写为例,说说我关于FS写作的一些看法。

       在SAP领域,写FS的人很多,会编程的也不少,但真心懂写作,懂功能说明书的人却不多。很多人扮演着ERP实施顾问的角色,只是单纯为了完成工作而写文档。只要能够实现功能,哪怕里面埋了很多雷挖了很多坑也无关紧要,甚至FS本身就是形式的存在,以至于难以依据它得知任何有关功能的真正情况。SAP系统最注重的是功能的完整性和严谨性,因为一旦程序有问题,影响的并不只是程序本身,更会影响到实际企业生产,甚至一定程度上影响到决策层的判断。跟SAP的开发一样,在功能说明书的编写方面,没个大几年的累积经验是无法成为大神级别的;除非之前就有相似的工作经验,并认真训练过自己。因此能发出功能说明书并没有什么了不起,跟其他诸如测试、开发工作一样,培训一段时间就能够上手了,但真的要做到把控需求,精确的定义功能,写出逻辑清楚、行文流畅、可维护的功能说明书,可就不容易了。也印证了一句话:会写FS的不稀奇,懂写FS才难求;会操作业务模块的人不稀奇,即会业务又能写作的才万金难求!

       以下列举几项,简要说说会写FS和懂写FS的区别:

 

(本文参考了一位园友的文章:会开发和懂开发的区别。本文以娱乐内容为主,如有雷同,纯属故意)

主体与客体

谁在写?为谁而写?这个问题的答案将决定文档的写作形式和写入内容。

在文档的编写过程中,这是一个十分基础的问题。本文中的FS,指的是在SAP系统实现阶段阶段的一种文档,它是由SAP业务顾问写出的、面向开发人员的文档。它不是业务蓝图、不是配置文档,也不是培训文档。

一些业务顾问,对需求的认识是清楚的,但是却搞不清自己写作时的主体和面向的对象是谁。所以行文飘忽,内容冗杂,重点不突出。

长句与短句

在写作过程中,句子有长有短,这是理所当然的事情。因为简单的事情自然可以用简单的语言描述,复杂的事情则会不可避免地将语言推向复杂...

复杂的长句,通常会有着较高的理解成本(想想英国大臣吉姆·哈克面临过的窘境),写作者应该尽量避免它的出现。这就要求写作者有以下才能:

  1. 精确地把功能本身抽象出来,而不是其他的东西。
  2. 掌握一点点写作技巧,学会把话题划分为若干个子话题。  

其中,1保证了读者不会收到无关信息的干扰;2则通过一定的冗余提高了文档的可读性。举个例子,我要告诉读者,存在一个A,它的意义等于B+C+D+E+F+G+H。读者在看到这句话的时候一定会思考,这七个字母到底代表什么东西?就算他知道了答案,也往往需要把它们全部背诵下来,才能顺利地进行阅读。而聪明的写作者也许会从X = B + C谈起,增加几个式子,却让它们的单个长度缩短,以适应人的思考能力。

书面语与口语

短句不能等于口语。尽管写作者应当尽量使用短句,文档自身的性质依然要求他不能忽视书面语的运用。相对于口语,书面语有着更加通用、更加持久、不易出现歧义等优点..对于FS来说,这些都是重要的特性,需要通过书面语来予以满足。

也许读者会觉得这种要求是不言自明的。遗憾的是,的确有部分业务顾问在尚未习得书面语的情况下,就开始了自己的职业生涯。 

版本控制

和程序一样,对FS而言版本控制是不可缺少的存在。文档的修改必须通过版本加以区分,不然无以追溯信息的变化。这还有一个前提是功能本身的修改可以通过文档来反映。一些业务顾问喜欢用口述的方式向开发人员交代自己的新想法。一段时间过去,经过若干这样的修改,新人们会发现自己能看到的FS和实际的功能完全是两样东西,从文档中得不到任何参考。过去的事情成为了空白的历史,功能成为了模糊不清的盒子。这是很糟糕的局面。为长远计,更新文档的意识对业务顾问是必要的(题外话:对程序员而言,技术文档也是一样的道理)。

还有一些人不知道word有一个很好用的“审阅”功能,通过它,文档可以很清楚地记录文档修改的内容、时间、修改人等历史信息,并可以让其他读者通过打开相关标记的方式来方便地获取它们。如果使用手工的方式维护这些信息,既繁琐又容易出错。

 此外,有的业务顾问喜欢用“增量更新”的方式来更新需求:不是在原有的文档上更新,而是一次次地发布小的“变更文档”来更新。这种做法在某些情况下是有道理的。然而作者必须警惕它带来的几种风险。首先,增量更新会给后人带来相当的理解压力。因为他要搞清楚一个需求的现状,很可能不得不将N份更新文档从头读到尾。另一个问题是,甚至连FS的作者本人也有可能因为更新的增多而失去修改的基准,从而生产出不一致的内容,这种情况毫无疑问是危险的。

DRY

不要重复你自己(Don't Repeat Yourself)。一些业务顾问喜欢把自己写的大段文字进行复制,粘贴到各处去,这样做是不对的。

就和编程中要谨慎对待复制粘贴代码一样,写作FS时也要尽量避免这种做法。实际上,如果一个业务顾问能做到对版本的合理控制,那他会自然地意识到复制粘贴的弊端之一:如果把同一段文字复制到多处,那要修改这段文字的内容的时候,可就有大麻烦了..好的文档就和好的程序一样,要经过反复的抽象提炼之后才能产生。

用代码代替功能说明

首先,在FS中写入SQL和伪代码是常见的做法,这在多数情况下时合理的,因为程序语言在逻辑表达方面有着显然的优势。

但逻辑表达不是一份FS的全部,一些业务顾问,为了和开发人员表示亲近,或者炫耀自身的编程知识,往往会在文档中写入过量的SQL和伪代码。在某些情况下,甚至除了代码之外,什么都没有。这种做法的问题在于,FS的基础是功能的描述,并不是功能的实际实现。此外,用代码来描述代码,也会陷入表达的死循环。就算是技术文档,使用这样的写法来写作,也是不合格的。

 

以上几节列举了我在开发经历中所遇到的FS存在的问题。还有很多很多实际存在的不良文档,都是那些只知道写文档而不懂写作的萌新写的。比如基本的排版、比如错别字漏字、从来不懂什么叫word审阅。遇到这样的事故,有时候会哭笑不得,要给IT增加不少的负担。也只能感叹一句,操作系统简单,懂写作难,懂业务又能写作,简直万金难求!

 

本文链接:http://www.cnblogs.com/hhelibeb/p/7247909.html

友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

  • :安装MINI SAP失败

    求救:安装MINI SAP失败! 如题。 怎么办啊? 安装之前已经把SQL2000 2005 VS.NET05 08全都卸载了的。 安装CD1的时候就开始报错...

  • 哪位高手有abap eclipse editor

    谁有abap eclipse editor? 那位哥们有,可以进行资料交换。 ------解决方案-------------------- 这个现在只支持460,好像不支持640...

  • ,关于t-code:sgen的有关问题!

    求助,关于t-code:sgen的问题!急~~~ 昨天刚把sap ecc6装好了 。为了能够快速运行,事先准备用sgen编译一下 非常郁闷的是,在还没有开始...

  • sql查询语句中WHERE条件后面AND的个数解决方案

    sql查询语句中WHERE条件后面AND的个数 sql查询语句中WHERE条件后面AND的个数有没有限制啊! ------解决方案-------------------- ...

  • SAP模块,学哪个模块未来发展比较顺利

    【求助】SAP模块,学哪个模块未来发展比较顺利? 各位大侠,我是SAP新人。最近公司在培训,3周培训后要我们从PS,FI,CO,MM等中选择一个模...

  • 站在十字路口,该怎么处理

    站在十字路口 本人在一个快消公司做IT程序员,主要负责内部系统开发、报表开发、数据库维护等工作。现在公司要上SAP了,我也有幸参与...

  • alv field 是否可以进行日期选择解决方法

    alv field 是否可以进行日期选择 哪位达人知道怎么在ALV报表中实现 日期的选择,就像调整系统日期一样,不用手动收入 ------解决方...

  • 在sap中怎样获取字段所属的表解决思路

    在sap中怎样获取字段所属的表 小弟是SAP初学者,在这里遇到一个问题,由于对sap内部表结构不是很了解,现在要根据一些字段获取所属的表...

  • ABAP list report 输出有关问题

    ABAP list report 输出问题 小弟初学ABAP,苦难重重,望大侠门指点。两个问题: 第一,我做了一个list report,输出deliveray item 和invoi...

  • 在SAP中如何截取字符串

    在SAP中怎么截取字符串 在SAP中怎么截取字符串 比如 DATA:STR(10) LIKE C VALUE '1234567890', STR1(4) LIKE C. 我要取...

热门推荐: