1、论系统设计中对用户需求的把握摘要:本文摘要:本文详细讨论了流媒体内容服务平台在项目开发中的需求分析阶段。该项目是某省电信部分委托我公司开发的为全省14个地市30万宽带用户提供高质量的基于流媒体的VOD服务,实现各地用户就近访问边缘流媒体缓存服务器,并为内容提供商(CP)服务提供商提供一个完善的商业运营管理平台。正文:我公司是专注宽带视频应用技术开发的企业,产品主要应用与电信和广电等领域。2005年7月,受某省电信部门(甲方)委托我公司(乙方),开发一套“多媒体内容分发网络平台(CDN, Context Delivery Network)及VOD系统”,(简称CDN平台),在全省 14 个地市建
2、立 CDN 分节点,为全省14个地市的30万宽带用户提供 11000户视频点播功能;同时为内容提供商(CP)服务提供商(SP)提供完善的商业运营后台管理功能。用户需求是对业务需求的细化,为了在用户需求分析阶段不会超出系统开发的范围,在业务分析的基础上我们建立了系统视图(范围)以规范用户需求分析的边界。对于水务系统范围的简要描述为:水务综合管理系统是为自来水公司日常经营管理服务的,提供该对客户用水从报装工程施工、用水计量、费用结算直至客户不再用水整个过程中业务处理的集成管理环境。并对客户用户过程中单个或多个水表生命周期(从安装、检修、维护到报废拆表)进行全程管理,为企业领导管理决策及相关业务人员
3、业务工作提供支持和服务,并对客户信息查询、报障提供及时的响应。确定系统视图后对于用户要求分析阶段的工作我们主要注意了以下几个方面的问题。首先,将与系统相关的用户进行分类以明确用户需求的来源及优先级。对于像我司这种涉及企业所有业务的大型应用系统的开发来说,用户需求的调查对象多种多样涉及到不同的部门或人员,为此为了更方便的从用户处获取有效的需求,我们将用户分成不同的类如首先将其分为管理人员、业务人员、最终客户等,通过这种划分明确了需求的来源,在需求分析的理解出现不一致时可以有确定用户为系统分析人员提供“决策”。用户类不一定都指人也可以是其它应用程序接口或硬件组件,如在抄表计量业务流程的分析时,相关
4、的业务人员要求系统能够简便一些,在经过系统分析人员进行详细的分析后发现是老系统对抄表机传输接口的处理不当造成的,通过对其进行记录后来在系统的设计中解决了此问题。其次,采用多种方式和途径获取用户的需求。在需求分析的初期我要求系统分析人员要深入到用户的工作现场中以观察用户是如何工作的,从而正确的把握用户需求的实质。如在完成客户档案登记的业务中,原来系统只提供给数据组一个窗口进行录入操作,而通过系统分析人员对其实际工作的观察发现客户在报装时就已经形成了部分资料,对此发现我们在新系统中的工程报装模块出现的客户信息进行了提取,从而极大的提高了操作人员的工作效率。在需求分析中我也注意了多种沟通方式的利用,
5、如果对于复杂的业务处理流程则采用用户与分析人员的小组会议进行正式的讨论,而对于最终客户的一些需求则采用电话或Email的方式与之联系。通过以上方式的采用极大的提高了用户需求分析的速度与质量。再次,利用Rational Rose创建的用例与用户进行沟通。系统分析人员在开始阶段对用户需求的确认主要是通过需求文档与用户进行沟通的,在实际的需求分析过程中我发现用户并不能看懂系统分析文档,对于需求分析的准确性也就无法保证。为此我们及时采用了Rational Rose创建的用例(Use Case)来展现用户的业务处理过程,并使用用例文档对其进行简要的描述,这样用户就能够很好的理解系统能够帮助其完成的工作任
6、务,一般通过两到三次的沟通就能够确定用户的需求,极大的提高了用户需求获取的质量与效率。同时也使用了传统的一些需求描述方式,如对于复杂的业务处理过程,我们就采用了判定树的方式进行描述。在用例文档的描述中我们汲取了前面的教训,使用通俗的语言进行表达以方便与用户进行沟通,如对于前置条件和后置条件我们就换成了前提条件及处理结果,避免了用户理解冗长而晦涩的专业用语,有利于与用户进行沟通并可简单明了的表达用户使用系统所要完成的任务。最后,在用户需求分析的过程中注意用户对系统的非功能性需求进行提取与处理。在系统需求分析的过程中用户往往不会对系统的非功能性需求,如可操作性、界面的简便性及系统性能提出明确的要求
7、,而这也往往是系统分析人员容易忽略的一个方面。为此,在系统分析的过程中我要求系统分析人员注意用户描述中的“简单”、“快一些”等词语的分析。如在了解处理客户扣款银行文件时用户抱怨系统处理不方便,而且在处理时其它业务都得停下来等。分析人员在知识这个情况时及时了解到系统在处理此业务时采用了独占的方式访问数据库,而且由于每次需求处理的记录都上万条,所以造成了以上情况。为此用户需求中的一些隐性的非功能性需求也得到了很好的处理,对于后期的系统设计有很好的帮助作用。需求分析阶段的成果是用户需求规格说明(SRS),完成SRS后再用户代表进行沟通确定以为系统的设计开发工作设定一条基线。通过综合采用如上所述的方法,在用户需求分析的过程中系统分析人员很好的把握了用户的需求,使得需求获取的效率与质量都有明显的提高,为系统的设计工作奠定了良好的基础。总的来说我们的需求分析工作是成功的,在系统设计开发阶段没有出现因需求不完全而停工的情况,系统已于2004年底顺利完成并能够较好的满足用户的要求,得到了公司领导及同事的认可。同时,在用户需求的把握上也存在一些不足之处,(1)、系统分析人员对于Rational Rose的使用不是很熟练导致需求开发的速度有所降低;(2)、在用户需求与分析人员的理解存在冲突时过分迁就用户而使部分需求用例开发的质量不高。(3)