系统分析、系统设计与系统实现是计算机应用项目开发的“三部曲”,书上是这么说的。国内目前系统分析级的人才奇缺,系统设计级的人才相比之下满大街(当然得是中关村的大街)都是,报纸上是这么说的。解决这个问题的办法大概只有一条,那就是快速培养系统分析师傅,因为这是关乎系统成败的关键,许多人都这么说。
----不过“三部曲”的说法太专业,可以改写成:写报告、编程序和买设备。
----我认识的安利思就是系统分析级的人物,或者起码自认为是系统分析师傅,因为此公对软件工程的老方法、新概念烂熟于心,对可行性研究的五大步骤、市场行情、技术动态无不通晓,更可贵的是,安师傅训练有素、勤于琢磨、待人诚恳、性情温和。
----一日,安师傅带着笔记本电脑里386页熬夜的成果和一个Prototype,单刀赴会,打算给一家新开张的酒店一个漂亮的TotalSolution。在酒店的小会议室里,安师傅鼓起三寸舌打开电脑,指东戳西地从大堂讲到厨房,从吧台讲到客房,又从后勤讲到账房,布线如何结构化,网络怎样“内特”化(注:Intranet的汉语规范译名据说叫内特网),数据需要范式化,界面显得漂亮化……
----厄运往往从最简单的问题开始。趁小安子重启动该死的“晕倒死Windows”的空儿,店老板问起了“这玩意儿得花多少钱”的问题。这个问题是谈话主动权转移的标志。当系统分析师把一个系统在报告里解决得过于Total、过于完美的时候,分析师是老师,店老板是学生,而且是一个喏喏连声、越听越糊涂、越听越哆嗦的学生;当说到这玩意能花多少钱,又能替老板省多少钱(省下的就是赚下的)的时候,就轮到师傅上火了。
----有这样的感觉大概不为过。因为分析师眼里的系统需求乃至对需求的分析,主要是建立在对业务的理解之上的;而老板眼里的系统需求要直截了当得多:这东西必须赚的比花的多,否则是宁可不用的。
----问题的焦点就在于“需求”究竟是什么。如果说需求是分析师试图建造的那个系统的逻辑前提的话,就只能写在纸上,因为这个“需求”其实是一个懂得电脑的人,虚构出来的需求;如果说需求是店老板希望能“赚多少”的话,这个需求肯定会让安师傅这样的高级人才感到“俗不可耐”,因为在安师傅看来,信息化带来的好处是不容质疑的,是“一言以蔽之”的,所以就只能说在嘴上了。
----从吃饭这样一个直观的事例说,需求似乎应该是“欲望”。如果没有欲望,可能就不会产生真实的需求。但吃饭的欲望并不能无止境地存在,一旦吃饱后,哪怕再多吃一口,满足的感觉就不是上升,而是开始下降了。
----因此这里有一个基本的错位:系统分析师用自己“解决的欲望”替换了老板“尝到甜头”的欲望,从书本上讲到的需求分析开始,从对业务的解构与建构,从组织形态、业务流程与关系、数据类型与存储处理交换,以及用户打算干什么等等开始,并且以此为假设,推导出了一个完整的报告来。这个虚构的需求不停地以把问题搞玄乎、使系统显露出超越店老板的控制能力为特征,所以非但没有“激活”真正的需求,还可能倒掉胃口,使其“晕倒而死”。
----店主的欲望其实一点也不复杂:对那些没有“上级主管部门”拨机器、配软件的店主来说,用电脑的目的就是为了管好钱袋子。只不过许多真实的故事表明,在“用户打算干什么”这点上,因为技术壁垒和心理“障碍”,用户的需求处于“尚未激活的边缘”,或者说处于“饥饿的边缘”。也就是说,许多店老板,并不清楚自己为什么要请一个安利思来,或者请一个Programmer,他的欲望是很直观的:干什么都得赚,不能赔;他的边际防线也很明白:不能让这小子白拿钱。
&nb
sp; ----这是个有趣的差异,如何弥补这两者之间的差异,恐怕是超出“三部曲”之外的故事了。