1.重视需求“实现成本、产生的价值”两者的比例。
更高层次需求分析应该不是仅按用户的想法去实现就可以了,而是多替用户考虑:
1)实现这个需求要付出多少成本?
2)需求实现后能产生多少实际价值?多少隐性价值?
3)是不是值得去实现?
4)是否有更高性价比的方案?
一个案例:
曾经做过一个电子数据仓库的项目,目的是为了解决1)电力数据长久保存2)自动化电力报表 这两个需求。第一个需求能产的价值是隐性的,第二个需求的价值也不并是很大。
后来按用户的想法花几万块钱实现了。但使用中又出现了意料之外的事情,当时需求调研没考虑细致的几个变化:1)数字电表有显示上限,达到一定度数后会归0,如读数已经99999度了,再多一度就变0度。2)电表所计量的线路用途会出现改变,如本来是给A场地供电的线路改用给B场供电了3)电表出现故障后会替换,新电表的初始读数不一定是0。
而且因为项目发起方并不是实际用户,所以实际用户只愿意使用自动化报表,而却不愿意去登记那些变动记录来让统计数据更正确。比如换了电表,换了线路等信息。用了几年后自动化报表生成的数据与实际数据误差越来越大,并且无法修正,最终难免被废弃。
几点反思:
一)其实用户的几个需求可以用其它方案实现,并不一定要开发一套新系统来解决。比如:1)数据保存可以用扩充存储空间或做数据库增量备份来实现;2)自动化报表可以在原厂电力自动化系统上做简单的二次开发实现。这些方案可能性价比更高。
二)需求调研阶段就该明确用户的收益和工作增量,在用户认可后才执行。否则用户只愿享受成果,而不愿意增加工作量,那么方案就不具备可行性,需要修改方案和重新预算成本。(虽然有些变化可以由系统自动判断和修正,但成本会增加很多,所以实际方案中用人工登记替代。)