转自:http://wangyazhong1201.javaeye.com/blog/553790 (部分情节有删改)

在网站项目开发上,有了人员配置的初步安排后,剩下的前期工作就是招人,如果人员都到位,需求分析却还没来,那其他人员都只有等着啦。这篇我主要说说我在项目中进行需求分析的一些经验。
1.1 需求从哪来?
就我个人经验来说,软件项目的需求分析一般分信息管理系统网站频道,这两个不同方向的需求分析的获取途径是截然不同的。
信息管理系统的用户确定,获取需求的途径明确,而且有现成的业务模式和业务流程,相关的信息表单、基础数据等都比较完善,这类项目的需求分析可以直接从这个信息管理系统的直接用户那里获取
网站项目或网站频道虽然有比较明确的定位和目标客户,但这些都是未知数,我们在前期不可能花很多时间与网站未来的目标客户进行直接的沟通从而获取需求,更多的来源是策划人员、行业专家、老板或自己对这个行业的理解模拟目标客户的期望值来获取需求
1.2 如何获取需求?
网站需求来源很难,而且很多需求不明确、不确定,而且多变,经常做出来后,挂到网上后感觉不对劲,又马上对其进行更改或重新定位。这就需要做需求的一定要注意方法和技巧,而且自己要对所做网站的核心定位和目标客户有深刻的了解和理解。
1、多与老板和所做网站的行业专家沟通、交流。一般来说老板投资准备做一个网站,他本身肯定对网站将来的走向和目标有个清楚的定位,而且前期肯定做了很多的市场分析、目标客户分析及前景预测。但我们在与老板沟通的过程当中不要被老板当时的雄心壮志和其描绘的宏伟蓝图给框住了,一定要向老板了解:要完成这个目标,我们网站要提供些什么功能?实现些什么东西?向目标客户提供哪些服务?比如说老板要做一个有特色的、行业类的专业博客频道,我们就需要向老板问清楚,准备通过什么东西或内容来突出我们的特色?行业到底有多大?怎么突出专业?这个博客只是一个频道呢还是要与其他频道或功能进行集成?用户能通过什么途径来写博客(比如说网站、手机、PDA等)等等像这样具体的东西。这里只是举个例子,作为需求分析人员来说要问的还要比这细、深的多。与老板的沟能和交流更多可能只会停留在目标和价值上,具体的、深入的需求还是要向行业专家进行咨询,比如说前面的几个问题有些老板可能回答不了,这些就需要行业专家解答。这些信息都会直接影响到网站将来的功能和频道的表现形式和内容。
2、多收集和分析同行的网站。现在行业网站很多,在着手进行一个新网站的时候一定要多分析他们的网站,包括他们的核心定位,实现核心定位的功能和频道;还有目标客户,他们怎么向这些核心客户提供有价值的服务;这些网站的特色在哪里,行业内还有哪些他们没做或没做好的等等方面去分析。在分析的过程中最好用表格列出一些分析指标作横向的对比。比如说医疗类很多网站都有博客,针对这块就可以列出一些分析指标出来:是用开源还是自己开发?写博客的核心群体主要有哪些?他们是怎么管理这些博客文章的等等。有些对行业内网站深入和仔细的分析后,也就可以结合老板及行业专家的需求和意见提炼出网站的一部分需求及需求的细节。
3、多做表格和写文档。表格是最直观、最容易归纳总结的,比如分析同行网站的时候就可用表格的形式作横向比较。好记性顶不过一个烂笔头,所以一定要有记笔记和写文档的习惯,文档是用来交流和沟通的一种工具,这种文档并不要求一定要多好的文采,只要把你要表述的意思表达清楚就可以,哪怕只是把口头语言用文档记录下来就可以了。
1.3 如何处理需求?
通过以上方法和途径,需求就会有个初步的书面资料以及相关市场和客户的分析,接下来就是这些需求怎么处理。一般从老板、行业专家和目标客户那里得到的需求都是很零散或者很专业的,作为需求分析人员需要对这些需求进行疏理、归纳、汇总、综合形成一份初步的面向老板或行业专家能理解的文档(切记,暂时还不能转成软件开发的需求文档,因为这样以后你的老板或行业专家就不一定能看得懂啦)。
形成文档后,对这份文档进行初步的分析,包括需求评估、技术评估等工作;接下来做初步界面原型,因为只有这样,老板或行业专家才知道他所提出的那些东西最终是如何展现在网站上的,这一步有很大的技巧在里面,如果你只是画一个很粗糙的界面原型与老板或行业专家去沟通他很有可能看不懂,所以在做这个原型的时候尽量把这些原型界面弄的与将来网站表现出来的界面相似,而且还要把界面的内容充实,弄些有意义的数据(开发人员最大的毛病就是在做界面或做开发的时候的测试数据就是aaa,bbb,ccc)。
可能有些人对于上面的这种做法有疑问,但我个人认为这个时候如果不做界面原型而放到后面去做,很有可能你的某些页面要推倒重做,因为老板或行业专家所提出的需求只是意识形态上的,他们很难会想到这些东西在你的整合下会变成什么样子,可能你弄完这份需求后脑子里已经有了所有界面的全部原型和功能原型。