软件项目的需求

点赞:11989 浏览:54348 近期更新时间:2024-04-04 作者:网友分享原创网站原创

摘 要:在计算机软件开发项目当中,返工开销所占用的比例比较大,发生这种情况的主要原因就是没有很明确的需求分析,所以需求分析能够决定软件开发的质量,本文介绍了需求分析的目标和方法等等,提成了一些解决措施.

关 键 词:软件;项目;需求分析

中图分类号:TP311.52文献标识码:A文章编号:1007-9599(2012)05-0000-02

我国科学技术和经济都在快速发展,信息化的进程速度也在加速发展,计算机已经开始应用到各个行业当中,很多应用软件业都纷纷涌现出来,各个行业的管理也逐渐走向了快捷化和数字化.现在很多客户对计算机的软件要求都比较高,需要完成很多复杂的程序,软件需求的设计作为一种前端设计,主要就是为了把客户的需求勾勒出来,软件需求分析做地好于坏能够直接影响到这个软件的成功和失败.在软件开发的市场当中,返工的开销很大,导致返工成本高的原因之一就是没有把需求明确化,一些人不重视需求分析,导致在项目完成后会进行大量的修改工作.这些更改的工作浪费了大量的时间、人力,推迟了软件项目的完成时间.可以这样说,需求分析是软件开发的基础,是项目顺利上线的基础.我国国内的软件开发的发展落后于发达国家,软件行业的缓慢发展制约了我国计算机行业的发展.我国自主开发的软件比较少,而且开发的工程项目都存在着缺陷,或者是开发失败了.当前我国正在培养软件人才,需求分析做地不好所导致了缺陷占据了一半以上,只有小部分原因是由于程序代码编写错误导致的,所以说,做好需求分析的工作能够有效提高项目的质量.通过对软件系统的学习,并且结合自己的经验,提出了一些有效的措施来做好需求分析的工作.

一、需求分析的目的

需求分析阶段是软件开发的最初阶段,需求分析得到的结果决定了后面的设计、编码、测试以及维护阶段,在需求分析当中如果出现了一个小的差错,就很可能会造成很严重的后果,所得到的产品就不是客户所需要的,就需要返工修改.在软件的需求分析当中一定要有很详细的文档,做需求分析的工作人员要弄清楚用户的需求,帮助用户解决业务问题,规划处软件开发的产品.需求分析阶段把用户的业务管理集中体现出来,这样才能够让用户认可自己的产品,加强管理的效果.需求分析要明确需要完成的工作内容,要把系统所要实现的目标完整化、清晰化、具体化和准确化,要能够深入了解软件的功能,确定一些细节的工作内容.软件需求要解决以后的工作当中需要做什么,首先要确定物理模型,之后确定逻辑模型,最后确定目标模型,如图1:

二、做好需求分析的措施

(一)了解项目企业

要能够了解项目企业的有重要影响的人,比如项目的负责人,这个负责人很可能让项目受益,当然也可能让项目受害,所以说,需求分析要从项目的启动阶段做起,项目的相关成员要清楚项目的负责人以及和项目有关的人,要能够协调他们的关系,要获取他们的支持,把他们对项目的需求和愿望都明确化,从而减少他们对项目的阻挠,确保项目能够顺利成功.一些开发的项目在进行调查分析的阶段的时候,受到进度方面的要求,分析员与企业的技术部门会有很多交流,导致了没有深入调查软件使用者的需求,也会造成之后复杂的返修工作,甚至是从头再来,这严重浪费了时间和人力,财力.所以,分析员要把握好软件使用企业的全貌,这才是需求分析的最基础的环节.在软件使用企业的相关人当中,最中意的就是人事部门,最好是能够画出单位的组织结构,并且分清人物的重要性,这样才能够全面进行调查,还要保证与软件使用企业的负责人的沟通.

(二)挖掘客户的需求

一些客户计算机知识很匮乏,没有办法提成比较准确的需求信息,所以,分析员要能够深思熟虑,在各个方面为客户着想,明确客户的需求,启发客户的潜在需求,并且结合各自分析技术来挖掘客户的需求,从而让客户满意自己的工作.分析员自身要熟悉相关的业务,要能够在客户的立场去考虑问题,要把软件与业务的关系协调好.可以使用可视化的调查方式,挖掘客户的需求,使用图、表等工具来进行叙述,让客户的需求更加全面,更加完善.在调查企业的高层领导需求的时候,可以提供总体的框架,而在调查管理人员需求的时候,可以选择业务流程图的方式来展示,在调查技术人员需求的时候,可以使用数据流图等图形进行描述,而调查各个流程的使用者的时候,就需要靠一些界面图来进行展示,与各个层次的人进行有效沟通.用户的界面很重要,虽然设计界面是软件设计者的任务,但是客户也可以提出自己的要求,一旦客户提出了这方面的要求,就要改善需求调研.因为在做需求分析的时候,客户对软件没有很明确的概念,都是很模糊的,所以,分析员画出相关的界面来展示给用户,可以深入了解客户的需求,更好地做好需求分析的工作.

(三)平衡用户方相关人员的愿望

不同的人有不同的追求,用户有很多相关人员,他们的愿望也是很不同的,所以分析员要平衡好他们的愿望,这项工作是很难的.比如,医院系统当中,管理层希望软件系统能够方便数据的统计以及分析,但是基层的窗口就需要减少信息的输入量,客户希望能够加快办事速度,这些要求有些是相互制约的,所以不可能都满足客户的要求,尤其是比较消极的需求,这些都是需要平衡的.不同的客户也有不同的需求,所以分析员就需要决定,满足哪方的需求,要了解客户的种类信息,产品的业务目标,这会决定哪个用户群的要求更加合理.如果分析员的需求与开发者的需求不一致,就需要分析员进行进一步的需求分析.根据项目的业务目标来决定最关心的客户群,不是核心用户的需求就安排在下个版本当中去.

(四)详细描述各项业务

分析员要做到详细调查所有用户的需求,并且把客户的需求做成流程图,并且把这些业务做成档案与用户讨论,把描述错误的进行修改,协调好之后就让确认.对于具体的业务都需要分为很多步骤,所有步骤也都有自己的名称,一个步骤就可能对多个数据进行操作,需要调查清楚了用户的习惯,让开发出来的软件更加受欢迎.分析员要排除掉业务流程的制约,把业务的每步工作都作为很独立的对象,考虑到接口,把业务流程做好,从而能够更加方便去做修改的工作.可以通过资料的收集和整理的工作来完成业务调查的工作,这些资料关系到用户遵循的标准、作业流程、办事指南以及技术资料等等.


(五)强调实现项目需求的层次递进性

了解该系统或者该项目用户所能够提供的最小的工程费用.当预计经费不能支持时,应当考虑将项目分期实施.在系统上、技术上对用户进行引导性建议,使用户了解集成商所要进行的工作,了解集成商是为了帮助用户实现他的需要、达到用户的目的,而不仅仅是为了赚钱,用户更了解集成商,也更了解自己的系统,有利于以后的项目合作、工程实施和系统维护.分析用户曾用系统模式、数据结构和库模式,看是否保持、共用、转换,这涉及保护用户投资的问题.根据现在工作业务流情况确定现有的工作模式,还应兼顾将来可能会发生的变化、扩展、新规定,及与同国际接轨可能的带来的变化.考查工程实施环境是否有保证,尤其是网络工程,必须在需求调查时充分了解用户领域的实施环境,当不具有实施环境时,要求进行配套设计和环境改造.

(六)编写需求文挡

文档资料是集成商重要的财富,贯穿于系统集成和项目开发的整个过程,其中包括法律文档、技术文档、资料文挡.文挡要求完整性、一致性、可修改性、可跟踪性.以原来的需求为基础的工作完成后,要修补需求错误需要大量的工作,研究表明:比起在需求开发阶段由客户发现的一个错误,然后更正这一错误需要多花到倍的时间.因此,需要进行需求评审.需求审查结束的标准为:已经明确阐述了审查员提出的所有问题、已经正确修改了文档、修订过的文档已经进行了语法检查、所有TBD问题都已经解决、文档归档.

如果能科学地进行需求分析,采用一些技术来避免可能导致需求分析失败的情况,能圆满地完成软件需求分析任务,为后续软件开发做好准备工作.

3;赵晋松,刘凤翔.测试控制方法在对日软件开发中的应用[J].中国科技信息,2009,22

[4]潘侠,王宇颖,洪家荣.软件需求分析生成环境RAGE/DFD的设计与实现[J].哈尔滨工业大学学报,1994,04

[5]吴洁.一种复杂系统需求和构架管理的分析工具(英文)[J].TransactionsofNanjingUniversityofAeronautics&Astronau,2005,03

软件项目的需求参考属性评定
有关论文范文主题研究: 关于软件开发的论文范文文献 大学生适用: 学位论文、学术论文
相关参考文献下载数量: 25 写作解决问题: 学术论文怎么写
毕业论文开题报告: 标准论文格式、论文目录 职称论文适用: 期刊目录、初级职称
所属大学生专业类别: 学术论文怎么写 论文题目推荐度: 免费选题

[6]蒋国强.论软件需求分析方法和工具的选用――结构化分析方法和Visio2000的使用[J].计算机时代.2002,09

[7]冯径,马小骏,顾伯萱,沈苏彬,顾冠群.面向对象的网络需求分析工具研究与实现[J].小型微型计算机系统,2000,07

[作者简介]

李凌莉(1983-),江苏淮安人,淮安市国土资源局助理工程师,研究方向:计算机科学与技术.