躲闪,只能把定时炸弹的爆炸时间往后推,让你错过良好的沟通机会。要沉着面对客户的需求,只有本着严谨的态度,摸清楚客户的实际需求,才会知道软件最少要做到什么程度客户才满意。
项目启动后的关键就是需求分析了。做需求分析是最重要的,但同时也是容易犯大错误的时候。
千万别尽量不修改
之所以说做需求分析时容易犯错,是因为一方面,这段时期内,时间相对比较充裕,人员的精神也没有紧张起来,各种矛盾没有尖锐起来。这样,人们做起事情来就很容易肤浅,不能深入,不能真正为后期着想。另一方面,修改软件是一件费力费时不讨好的事。我们在做完B省高速公路联网收费后已经有了一套相对比较稳定和成熟的联网收费软件,在潜意识里当然不愿意修改。当时研发部内部对A省联网项目的想法就是直接使用B省联网的软件,然后做一些小的修改就可以了。现在看来,这个想法有些天真。
要做好需求,肯定要与客户充分交流。可是,有的地方说明白了可能会引起很大的改动,这又导致不想和客户交流,想在以后以既成事实的局面来让客户接受。这个方法在涉及到小需求的时候的确管用,但如果关联到大的功能和性能,最后一般都是承包商要让步。而且,如果是到项目后期才被迫让步,那样项目风险就更大了。
考虑不周的四方面
我们去了5条高速公路A、B、C、D、E 做需求调查。以下几个方面是当时考虑不周的地方。
1.没有详细记录硬件情况。各级计算机的配置如何、服务器型号是什么、网络状况如何等都是做需求分析需要了解的信息。例如,在我们的系统构架中,每条路在分中心设置一个图像服务器,分配了专门的IP,存放路段内的所有抓拍图片。可是,后来我们发现,所有的路段都没有专门的图像服务器。软件实施的时候只好重用数据服务器。对于硬件状况,后来又专门派人调查了一遍实际情况,浪费了时间和金钱。
2.没有认真考虑老收费系统的构架。在老收费系统中,有一个软件叫稽核软件,功能是比对收费流水记录和图片,如果发现收费员有错误的地方就进行纠正。我们的软件系统中没有这个软件,类似的有一个图像管理软件,图像管理软件只能查看图像,但不能纠正收费员的错误,不能对收费错误进行处理。当时我们的想法是,两个软件差不多,不想再写一个软件。后来在需求评审的时候这种情况没有被通过,不得不再加上稽核软件。
3.没有认真考虑实际操作习惯。在站管理软件中,我们对票据的管理规则是每个员工必须上班领票,下班还票。而原系统中是收费员一次性领取票据,等这些票据使用完了再领用,这样做比较简单。而且,每次还票时我们的软件要求工作人员输入票据的起始号和终止号,号码长,容易出错。这个功能在软件实施的初期引起票据管理员的很大的反对,后来还是按照以前的操作习惯改了。
4.没有仔细考虑软件实施的问题。因为这是工程软件,软件研发只是一方面,另外一个更重要的方面是软件实施,就是说怎么把软件安装上去,教会用户使用。因为是新老系统的切换,而高速公路是一刻都不可能因为系统切换而封闭的,平滑过渡需要考虑很多软件之外的细节问题,这是软件成功运行不可缺少的前提。但这方面我们最初并没有想周全。
实际上我们的需求调查没有得到什么东西,在12月5日提交需求报告初稿的时候,基本上都是B省联网的那套文档,由我再独写了一个需求的总体介绍,摘录了一些标书、设计方案中对A省高速公路实际情况的介绍,也就是在整体上对我们的系统做了一个简介。




