位于不同领域内的人,由于掌握的知识的不同,可能存在着交流上的问题。例如,当OA软件开发人员说:“文件读取失败时,系统会发出一个异步消息。”什么是异步消息呢?如何发出呢?客户也许不清楚这句话的含义。另一方面,当客户说:“如果标的的保额大于10000美金,保单发送给核保人员。”没有保险领域知识的OA软件开发人员,或许也不清楚这句话的含义。 为了保证交流的准确性,交流双方必须要基于同一个语境。显然,由于客户的主导地位(客户需求是软件开发的基础),需求分析人员在收集、整理、讨论客户需求的过程中,应该使用客户熟悉的领域知识。这对于开拓型项目来说,常常是个巨大的挑战。
根据上面的讨论,我们可以得出这样的结论。准确表达的本质,是指信息的准确传递,而特定的领域知识是准确表达的基础。我曾经兼职于一家OA软件开发培训机构,一位金牌讲师传授了他的教学之道。他说,在授课时,一定要避免复杂的句式。复杂的句式包含了大量的信息,在两秒钟的时间内,学员根本无法接收和消化这些信息。学员也许会佩服教师的学识,但是这对于准确传递信息没有任何帮助。最简单的句式和最简单的信息,是传递信息最准确的方法。 需求的准确表达,与这位金牌讲师的教学之道是一样的。OA软件开发人员应该把这种思想贯彻到工作中去。
在与客户的频繁沟通中,要潜移默化地改变客户的表达方式。这一点非常重要。怎样才能做到准确表达呢?我们先来探讨几个原则,在下一节中,我们会介绍一些具体的方法。前面谈到,我们不能对客户提出的需求(其准确程度)期待过高,因为他们缺乏准确表达的技能。同时为了得到准确表达的信息,我们不能为客户暂时提不出有效的需求而心中窃喜(该来的迟早要来)。事实上,为了帮助客户准确表达需求,我们应该引导客户讲述他们心中的“愿望”。在和客户沟通需求的过程中,软件系统开发需求分析人员经常会有一些错误的心得。我曾经遇到过一位需求分析人员,她非常佩服自己的上司。