论需求分析在软件开发过程中的重要性

时间:2022-10-11 07:18:09

论需求分析在软件开发过程中的重要性

摘要:所谓“软件需求分析”,是把软件计划期间建立的软件的可行性进行分析求精并细化,分析各种可能分配给各个软件元素。需求分析是软件定义阶段的重要一步,是确定系统必须完成那些工作,是对目标系统提出完整、准确、清晰具体的要求。

关键词:软件需求分析;系统;元素

中图分类号:TP311.52 文献标识码:A文章编号:1007-9599 (2011) 20-0000-01

The Importance of Requirements Analysis in the Software Development Process

Zhong Zhenghua

(Ganzhou Local Taxation,Ganzhou341000,China)

Abstract:The so-called"Software Requirements Analysis" is created during the software program to analyze the feasibility of the software refinement and detailed analysis of various software elements may be assigned to each.Software-defined stages of requirements analysis is an important step is to determine the system that work must be completed,the target system is made complete,accurate,clear and specific requirements.

Keywords:Software requirements analysis;System;Elements

一、软件需求分析的任务

一个软件项目开发的主要阶段为:软件需求分析阶段、软件设计测试阶段、软件使用和维护阶段。而软件需求分析是其他几个阶段的基础。如果在软件需求分析阶段出现失误,就很有可能导致整个项目的返工进而使整个项目无法按时完成达到预期结果,甚至最终开发不出用户所需要的产品。这些后果会直接导致损害开发者经济利益。所以,软件开发者在整个项目开发过程中的初级阶段,首先要从分析软件应该为用户解决的业务问题,通过对用户业务的分析,规划出用户所要求的软件产品。既是软件开发者把用户业务管理流程转化为软件产品,这样才有可能开发出用户认可的软件产品,是用户能够真正运用开发者所开发出的产品帮助其解决业务或管理方面的问题。从这些描述可以看出,软件需求的任务不是简单的确定系统怎样完成工作而是必须完成那些工作,即是对软件系统提出完整、准确、清晰的要求,深入确定软件的功能性能,软件设计限制和定义软件同其他系统的完美结合。简而言之,就是要了解用户和分析系统的数据的要求。需求分析的最基本的也即是最重要的任务是了解用户的要求,只要这样才能顺利完成需求分析。软件产品一般都是软件开发者根据市场需要开发的,具有实用性和可销售性的产品,并且具有很高的通用性,只有对软件系统的数据充分分析之后,才能开发出很强通用性和适应性的软件产品。软件需求分析的任务也是借助当前系统的逻辑模型导出目标系统的逻辑模型,进而实现目标系统的性能。

二、需求分析过程和方法

软件需求分析的过程可简单的分为:(1)问题识别。即是系统分析人员确定对软件目标的综合要求,并确定如何实现这些需求和应该达到的标准。这些需求应包括功能性能需求,可靠性保密性需求,用户界面需求,软件成本和开发进度需求。还要针对采用的开发模式,确定软件质量控制标准,验收和评审要求和软件的可维护性等方面的非功能性需求。(2)问题的分析与方案的综合。分析和综合是需求分析中不可缺少的部分。在这个过程中,分析者必须从细节出发,逐步细化软件所要的功能,找出各个元素之间的联系并且确定各个元素之间如何衔接,还要明确确定软件产品是否存在片面性或者其他可能导致不符合用户要求的因素,是否有潜在的有价值的市场,最终综合为系统的软件设计方案,给出目标系统的详细逻辑模型。(3)编辑需求分析之后的文档。从以上步骤中确定下的需求必须要有清晰的描述,也就是要编辑需求的文档即软件需求说明书。为了准确表达用户对软件的要求,还要编写初步用户手册和制定数据要求说明书。(4)需求分析评审。对需求分析评审,可以进一步确认和完善需求分析,可以对功能的正确性、文档的完备准确和清晰性给予客观准确评价。在评审阶段,要专门指定人员确保需求分析的质量。

要想到得合理的需求分析,而没有正确的分析方法,这是不可能的。所以在分析软件需求时,必须要有正确可行的分析方法。软件需求的方法很多。如传统方法、原型方法、面向数据结构的结构化数据化系统开发方法等,具体选择那种方式,要依据情况而定。目前比较常用的分析方法是原型法。因为这种方法可以依靠分析结果确定一套完整、一致、有效的软件需求,并且预定义的方案可以适应用户需求不断变化的情况。在软件工程项目中,开发者首先分析得到系统的原始模型,在得到基本的需求说明后,通过分析构造出一个简约软件系统,用来满足用户的基本需求,在此基础上,不断演化得到高质量的产品。这样,软件产品设计过程中就比较灵活,能够增进软件开发者和用户对需求的理解,使比较含糊的软件需求明确化。在使用原型化方法时,可以容易确定系统的功能和性能,确定系统服务的可应用性可靠性,进而确定最终产品。

三、需求分析变更

在项目开发过程中,之前确定的需求随时都可能得到改变,因为在这个过程中,用户会随时提出新的需求,要求开发者解决,甚至这些需求时在开发阶段后期提出的。这样就导致了后一段或周期的需求分析结果于前期需求分析结果不一致,通常把这种不一致叫做需求变更。之所以会产生需求变更,主要是由于在需求分析阶段,开发人员于用户的沟通不够还有可能是项目的实施周期过长和技术更新过快。

要想尽可能避免需求变更,可采用的方法有一下几种:(1)对开发人员进行深入的专业培训。只有这样才能让开发人员更好的理解用户需求;(2)开发方和用户及时协作和交流。如果用户提出新的产品需求,开发人员应该认真听取并加以整理和分析,分析出变更的原因并提出可行性方案,同时向用户及时说明这些变更会对整个项目带来的不良后果;(3)设立需求评审和需求意见。用户作为需求的提出者,在需求评审过程中,往往能提出许多有价值的意见,让开发者详细了解用户需求和让不同人员从不同角度对需求进行验证。同时,用户对需求有最终决定权,可以减少需求变更的发生。需求分析在通过正式评审和批准之后,还应该确定需求基线,可以将变更引起的麻烦减到最小。

四、结论

需求分析在整个项目开发过程中起到了决定性作用。它包含了用户对软件产品的需求,为开发者提供了开发的方向并且指明了开发的策略。如果能够进行科学的需求分析,避免可能导致需求分析失败的原因,就能够圆满完成软件设计的要求,开发出满足用户需求并且具有潜在市场价值的软件产品。并且开发出来的产品的通用性和可操作性更强,易于软件的推广,从而创造出更大的市场利益。

参考文献:

[1]江开耀,张俊兰,李晔.软件工程[M].西安电子科技大学出版社

[2]张海藩.软件工程导论[M].北京:清华大学出版杜,2003,12

[3]楼浩.大型信息系统集成项目的项目管理研究[D].对外经济贸易大学,2007

[作者简介]钟正华,工作于江西省赣州市地方税务局,方向:软件设计。

上一篇:基于教育资源库的高校课程E-learning平台设计 下一篇:基于WAP的高校移动教学信息系统设计