您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 水利工程 > 软件需求分析技术在广东省水利厅办公业务资源系统的应用探讨
软件需求分析技术在广东省水利厅办公业务资源系统的应用探讨DiscussionOnSoftwareRequirementsAnalysisTechnologyinOfficeAutomationSystemofGuangdongWaterResoursesDeparmentSUNshu孙书(广东省水利水电信息中心,广东广州510150)摘要:本文通过分析软件工程项目中需求分析阶段常遇到的问题和困难,探讨了需求分析技术的一般方法和步骤,并结合水利厅办公业务资源系统的需求调研的实例,论述了如何运用需求分析技术去正确地把握用户的需求。关键词:软件工程需求获取需求分析1引言软件需求分析是整个软件系统开发过程中最关键的一个环节,可以说项目成败的关键就在此。软件需求工程包括需求开发和需求管理两个部分,见下图所示:软件需求工程需求开发需求管理需求获取编写需求规格说明书需求分析需求评审从上图可以看出,软件需求工程一般要经历“需求获取”、“需求分析”、“编写需求规格说明书”、“软件需求评审”、“需求管理”五个方面的活动。需求获取和需求分析两个阶段是整个软件工程需求活动的基础,它往往是一件看起来简单、做起来难的事情,很多情况下由于用户对计算机知识的缺乏或者看不到整个系统的全貌,因此无法正确完整地描述需求,这时作为需求分析人员如果不采取合理科学的需求获取技术,正确引导和分析用户对需求的描述,就会导致编写出来的软件需求规格说明书远远偏离用户的期望,最终导致整个项目的失败。本文下面将介绍需求获取和需求分析两阶段活动的一般方法和步骤,并结合广东省水利厅办公业务资源系统需求调研的实例,在如何合理运用需求获取和分析技术正确把握用户需求和读者进行一些探讨,借以抛砖引玉。2软件需求获取的一般方法和步骤软件需求获取的一般方法和步骤如下:(1)识别用户:这一阶段主要需要了解所有用户类型以及潜在的类型。然后,根据他们的要求来确定系统的整体目标和系统的工作范围。(2)选用合适的需求获取技术进行需求调研。需求获取技术主要包括“用户调查表”、“用户访谈”、“参观考察”、“联合讨论”、“现场观摩”等。值得提醒读者注意的是,每一次需求调研一定要有记录,对于收集的各种需求最好按照功能需求、非功能需求、设计约束等进行分类整理。(3)需求整理:需求分析人员对收集到的用户需求做进一步的分析和整理。主要把握好如下几条准则:对于用户提出的每个需求都要知道“为什么”,并判断用户提出的需求是否有充足的理由;将用户以“如何实现”的需求表述方式转换为“实现什么”的描述方式,因为需求分析阶段关注的目标是“做什么”,而不是“怎么做”;分析由用户需求衍生出的隐含需求,并识别用户没有明确提出来的隐含需求(有可能是实现用户需求的前提条件),这一点往往容易忽略掉,经常因为对隐含需求考虑得不够充分而引起需求变更。(4)需求呈现:需求分析人员将调研的用户需求以适当的方式呈交给用户方和开发方的相关人员。大家共同确认需求分析人员所提交的结果是否真实地反映了用户的意图。需求分析人员在这个任务中需要执行下述活动:明确标识出那些未确定的需求项(在需求分析初期往往有很多这样的待定项);使需求符合系统的整体目标;保证需求项之间的一致性,解决需求项之间可能存在的冲突。3分析用户需求在很多情形下,分析用户需求与获取用户需求是并行的,主要通过建立模型的方式来描述用户的需求,为用户、开发方等不同参与方提供一个交流的渠道。分析用户需求需要执行下列活动:以图形表示的方式描述系统的整体结构,包括系统的边界与接口;通过原型、页面流或其它方式向用户提供可视化的界面,用户可以对需求做出自己的评价;系统可行性分析包括技术可行性、环境分析、费用分析、时间分析等;以模型描述系统的功能项、数据实体、外部实体、实体之间的关系、实体之间的状态转换等方面的内容。4应用实例分析广东省水利厅办公业务资源系统是一个面向300多用户以及十多个部门日常业务流程的项目,由于系统牵涉的用户面和业务范围较广,系统的各种功能与用户的日常工作息息相关,因此做好系统需求分析显得至关重要。在本项目需求调研阶段,需求分析人员始终坚持“以用户为中心”,采取了有效、多样的方式与用户沟通,充分重视用户提出的每一项需求,并根据实际情况采用各种技术手段与用户进行沟通以最大限度获得需求,取得了良好的效果。(1)系统功能和性能需求分析分析总结旧系统功能和性能方面存在的问题和缺陷对于获取新系统的需求具有很大参考价值。经过研究分析,水利厅原有办公自动化系统存在几个突出的问题:(1)技术手段比较落后。如采用C/S的模式一方面随着用户量增加导致服务器负载过高,服务器性能明显下降;另一方面系统管理员的维护工作量很大,系统版本更新后需要重新更新各客户端程序。(2)系统的跨平台性和移植性差。旧系统是基于.NET平台开发,未来想移植到LINUX或者UNIX操作系统上困难很大。(3)工作流固化,用户实际流程与默认流程不符时需手工重新配置流程,导致系统推广应用难度大。(4)可供办公使用的信息资源少。基于以上分析,可得出新系统的功能和性能方面基本要求如下:功能主要包括公文处理子系统、内部电子邮件、机关事务管理子系统、业务资源库等。性能及约束条件方面要求主要包括跨平台性、易维护性、稳定性、响应速度等。技术方面要求采用J2EE平台和关系型数据库(ORACLE)实现,基于B/S的三层体系结构进行设计。(2)需求信息来源分析通过对需求信息的来源进行分析,得出如下需求捕获计划(见表一)。表一需求捕获计划想得到的需求信息获取需求的可能途径旧系统可保留和继承的功能旧系统需求分析报告、旧系统用户新系统应新增加的功能和非功能需求新系统潜在的用户、技术人员自身的经验同类系统成功案例可吸纳的做法和经验参观和考察同类系统,借鉴好的经验(3)需求分析技术的选用用户调查。在直接与用户进行面对面交流前,先对旧系统用户作一个书面调查,收集他们对旧系统的使用体会以及对新系统的最关心的功能需求,目的是在面对面进行用户访谈时提高需求分析人员提问的针对性和引导作用。《需求调研表》涉及的主要内容包括:用户使用频度最高的功能、旧系统设计存在的主要不足、对系统改进的建议等,调查对象为全体用户。通过收集用户的信息反馈表并进行归纳总结,得出以下几个结论:用户使用频率最高的模块主要是公文收发处理、内部电子邮件、公告发布;旧系统最大的不足主要集中在系统界面不够友好、系统响应速度越来越慢、流程设计不灵活、系统可供办公参考的资料较少等几个方面。用户访谈。经过用户调查后,通过组织用户进行面对面访谈来达到细化系统需求的目的。访谈的对象主要是典型业务处室代表,如办公室负责文件收发的秘书、关键业务部门、技术部门的代表。进行访谈前要根据用户调查的结果设计一些有针对性和引导作用的问题,如:公文收发的流程是怎样的(办公室代表回答)?在业务处室内部处理的流程是怎样的(业务处室代表回答)?系统界面的人性化方面有哪些要求(全体代表回答)?系统管理方面的需求是什么(技术部门代表回答)?参观考察。为了吸取兄弟单位同类项目的先进经验,开拓思路,组织用户到一些有成功案例和良好口碑的单位进行参观考察。通过参观考察,博取众长,将各单位有价值的好的经验和做法吸纳到本系统的建设需求中来。(4)几种需求分析技术对比用户调查覆盖的面较广(涉及到本单位300多用户),不需要占用被访用户太多工作时间,容易被用户接受。但是由于某些用户对用户调查的重视程度不够,导致所反馈的信息不全面,参考价值有限,只能作为需求分析技术的一种参考和补充手段。用户访谈对于本系统需求分析是一种收效较好的技术手段。但是这种技术的使用对于需求分析人员来说有较高要求,如谈话技巧、领域的知识面等;另一方面寻找一个各关键被访对象均有空的时间较难。在条件允许的情况下,应尽量采用这种技术。参观考察对系统需求获取可以起到画龙点睛、开豁用户思路、取长补短的好效果。5、结论需求分析阶段是系统建设成败的关键。所谓“磨刀不误砍柴功”,因此应投入较大的人力物力开展系统需求分析工作,而且在需求分析的过程中,如何与用户进行沟通,把握好用户的需求并选取合适的需求分析技术对于编写一份对开发阶段有价值的需求规格说明书也是至关重要的。另外有一点值得提的是,需求分析过程不是瀑布式的发展过程,而是一个迭代的演化过程。参考文献:【1】张友生.系统分析与设计技术.北京:清华大学出版社,2004.【2】(美)RogerS.Pressman著.梅宏译.软件工程—实践者的研究方法.机械工业出版社,2004.[作者简介]孙书(1976-),女,工程硕士,系统分析师,从事政务信息化及软件项目管理工作。
本文标题:软件需求分析技术在广东省水利厅办公业务资源系统的应用探讨
链接地址:https://www.777doc.com/doc-2012336 .html