东莞市阳光信息科技有限公司 广东东莞 523000
摘要:目前,伴随先进信息科技、社会经济的稳步向前发展,互联网技术也引起了人们的广泛关注,相应的软件开发也赢得了巨大的应用空间,进而带动着社会的进步。而在软件开发中,作为首个阶段,需求分析属于相当关键的阶段,通过科学的需求分析,可以大量节约资源。基于此,本文就软件开发,探讨了需求分析这一阶段的重要作用及主要任务,仅供参考
关键词:计算机软件;第一阶段;开发任务;需求分析
进入新世纪以来,计算机技术获得了空前的发展和普及。目前,在工业生产、虚拟商务、通信工程、政务、证券金融等行业,均有广泛使用计算机软件。在进行软件开发时,通过完成需求分析的各项阶段性任务,能促进工程师更好地与用户交流沟通,快速捕捉软件需要实现的功能,以令用户满意,促进软件工程的快速发展。
一、需求分析的重要作用
伴随软件功能的日趋丰富,相应的软件规模也越发显著,获得操作功能的工作也越来越难。所以,人们变得更加重视软件工程所具备的作用,并且一直在进行研究和完善。在现代软件工程中,进行需求分析的环节极其关键。具体而言,通过文档查询、原型分析、与用户的联系找出系统原有的漏洞及用户要求新的功能等方面的需求分析,能促进软件功能的优化。目前,需求分析一般有这些作用:知晓处理软件的过程,综合计算机技术,如数据流图、用例、业务流程图等方面的技术,来得到业务系统的功能逻辑模块,创建一个细致的工程软件模型,再向用户展示,以方便软件用户观察软件可否达到功能要求。作为设计、实现软件的一大前提条件,需求分析的准确性与后期设计及实现软件紧密相连,故此有无可替代的作用。
二、需求分析的主要任务
2.1问题识别
作为分析人员,应先分析计划阶段形成的可行性报告及软件实施规划。一般会系统地理解软件,确切评审计划估算出的范围科学性,并且得出目标系统的要求,也就是软件需求;并确立实现以上需求的条件、标准,也即要求软件干什么,具体到怎样的程度。
以上需求有:①性能需求:确立开发软件的专业性能指标,如运行时限、存储容量范围、安全及保密要求等。②功能需求:罗列开发软件的具体功能。③环境需求:软件运行的必要环境要求。比如,外部设备、硬件机型、通信接口等;系统软件的运行支持(含互联网软件、操作体系、数据库等);规定使用部门的制度、计算机操作人员需要拥有的专业技术等。④可靠性需求:不同软件的运行,往往会产生不一样的失效影响。通过需求分析,需要根据软件运行后不出现故障的概率,来从运行环境角度明确要求。针对关键的软件,又或软件运行出现的失效将引起严重事故的软件,要更高的可靠性。这便需要在开发环节,加以有效处理,以确保软件运行的可靠与稳定,以防运行问题引发失误。⑤安全保密需求:环境改变后,软件也会更改安全、保密方面的要求。为此,需要合理规定需求,针对软件采取特殊设计,确保运行的必要安全保密功能。⑥界面需求:考虑到用户的方便使用,软件必须与用户界面一致友好。在软件市场,用户界面越友好的软件往往竞争力越强。所以,在进行需求分析时,需要规范用户界面。⑦使用需求:软件运行中的必要数据信息、内存、空间等资源。而开发时消耗的人力、计算机软件、设备等,则在开发资源范畴,必须确定好。⑧成本消耗及进度需求:在立项后,应按合同要求,确立进度及各环节费用,供给管理参考。⑨预先估计需求:通过估计系统实现的目标,在进行开发时,可针对系统后续可能需要的扩充或者修改,事先准备好,若有需要,则能快速补充或者修改。
还有就是问题识别需要创建分析通信渠道,以顺利地分析问题。分作为析员,应积极联系用户、开发部门的管理层、开发组成员等,且通过项目负责进行协调。通过这样的商讨,分析员可根据用户要求,来识别问题的各项内容。
同时,若在开始需求分析前,缺乏可行性分析,则很有必要补充该环节的工作,基于问题定义及必要的调查,联系上用户密切,并获取问题产生的背景及需要处理的问题,再根据软件特性及详细的用户目标,考察市场及现场。经过信息收集后,再分析数据及功能,创建高层逻辑软件模型,并且分析成本/效益。最终,对可行性提交分析报告,以论证技术、社会经济、效应等的可行性,以明确开发目标的具体可行性。
2.2分析与综合
在需求分析环节,分析问题与综合方案为第二步,要求分析员根据数据流及其结构,来细化软件功能,明确系统元素的关联、设计限制、硬件接口特征,确立它们能不能达到功能要求及合理性。按性能、功能、运行环境等的需求,除去不当部分,添必要部分。最后综合并形成系统处理方案,创建目标系统的细化逻辑模型。
在该环节,需要反复分析、综合。分析员基于对既有问题、软件期望信息(输出入)的分析,开始综合形成解决方案(可以多个),再查看能不能与计划中规定等相符,然后适当修改。其实问题的分析及综合,会持续到双方均认为该软件规格正确为止。
目前,有SA、JSD、OOA、动态模型迁移图、Petri网等之类的需求分析法。以上方法均有结合图文,能直观地体现软件的内在逻辑模型。
2.3文档编制
在现代软件模型中,各阶段最后形成的文档均是做完的阶段性里程碑。所以,应储备需求分析中编制的文档,以供给下步评审。
上面确定好的需求,需要进行清晰准确地体现。一般会称需求的陈述文档为软件需求的有效规格说明书。此外,为准确表达用户输入输出方面的要求,还应编制数据使用要求说明书、用户初步手册,以体现用户界面及使用方面的要求。
同时,按在需求分析中的系统化分析,根据目标系统对应的模型,还能更好地估计出项目投入及开发进度,以便对计划进行改进、完善、实施。
2.4评审
主要的评审内容:①评审系统定义出来的目标和用户要求的差异;②需求分析中文档的资料齐全性;③描述文档的完整、清晰性,对用户要求反映的准确性;④有没有描述各个其他重要接口;⑤数据流、结构的全面、确定性;⑥图表的清楚性,缺失补充时可否理解;⑦关键性功能有没有在规定围,说明充分否;⑧约束及限制条件与实际能不能吻合;⑨技术风险内容;⑩有纳入其他软件需求方案否;11有考虑后续可能的软件要求否;12有没有确立详细的检验标准,这能不能成功确认系统定义;13存在重复、遗漏、相悖否;14用户审查初步使用手册否;15有没有影响计划估算等。
三、结语
综上所述,在软件开发中,需求分析这一阶段的重要性不言而喻。要想顺利开发软件,则应给予需求分析环节应有的重视,大量投入人力、物力等来研究其中的主要任务。此外,分析员还应加强学习,不断提高自身的能力,积极摸索先进的开发方法,以促进需求分析继续向前发展,加快软件工程的发展。
参考文献:
[1]吕游.新时期计算机软件开发技术的应用及发展[J].信息与电脑(理论版),2019,31(06):5-6.
[2]姚尚.在新时期下计算机软件开发技术的应用现状及发展趋势分析[J].计算机产品与流通,2019,36(05):25.
[3]罗亚东.浅谈软件项目开发过程中的需求分析[J].电子技术与软件工程,2014,28(9):93-93.
[4]武亚文.计算机软件开发技术的应用与发展趋势研究[J].计算机产品与流通,2019,36(05):27.
[5]周伟.计算机应用软件的需求分析与开发[J].计算机光盘软件与应用,2014,24(1):287-288.