对于软件需求分析及其变更的探讨是软件开发项目的基础和前提条件,也是软件开发能否取得成功的关键因素之一,提升软件项目管理中软件需求分析是我们当前的主要课题。
然而,软件是计算机技术开发的核心和关键,软件的开发和应用是人们不断追求的目标,在软件使用规模不断扩大、应用领域不断拓宽的新阶段,软件开发过程中对需求的分析显得至关重要,需求分析是软件项目成功与否的关键。本文将主要讨论需求分析在软件开发过程中的重要作用以及怎样做好需求分析。
在当前的软件开发过程中,软件需求变得尤为重要,软件工程中的需求分析是软件生命周期中最重要、最基本的环节,它不仅影响着整个软件开发项目的质量,也同时决定着软件能否成功的应用于生活以及能否给人们的生活带来相应的便利。
一、需求分析的含义
需求分析是一个对用户意图不断进行揭示和判断的过程,同时要进一步对经过可行性分析所确定的系统目标和功能进行详细论述,在此基础上进一步确定用户的要求和目的'。需求分析的内容大致可以分为两类,主要包括功能性需求和非功能性需求,功能性需求主要是用于说明系统各功能部件与环境之间相互作用的本质,换言之,就是还没开发出来的软件在实际应用中能做到什么,它是用户最主要的需求,常常包括系统的输入以及系统的输出、系统能完成的功能以及其他反应。非功能性需求主要是从不同的角度对能想到的具有可行性的解决方案的约束和限制作用,例如对时间、存储、界面的约束等等,非功能性需求也被称为“约束性需求”。
二、需求分析在软件开发中的意义
(一)能够减少不利因素对需求分析的影响
需求分析的第一步是全面熟悉该软件项目的所有相关人员,明确需求分析方成员和用户方成员,通过系统分析人员和用户方成员的交流和沟通,最终确定对目标软件的综合要求,同时最终确定如何实现用户方的需求和软件最终应达到的水平和标准。
在做需求调查时,首先分析者应该从软件项目的细节出发,并逐步将软件的功能细化,然后再做一份更加详细的设计方案,不仅要把各种不同的软件元素分门别类,还要找出各软件元素之间的关系,预测该软件项目是否存在不全面性或者存在可能导致用户不满意的因素,在做需求调查时,一定要避免不利因素的影响,如果在这其中发现问题,应及时与用户进行进一步的沟通和交流,从而确定软件的最终设计方案,同时定义目标系统的详细逻辑模型。
与此同时,为了更好更全面的进行需求调研分析,还应该主动建立用户方单位的人事组织、业务关系,并用结构图画出该组织结构,在发现问题时应适当调整,进而确保需求分析的高度准确性[1]。
(二)能够挖掘用户需求,并对其需求进行分析建模
软件需求包括三个不同的层次:业务需求、用户需求和功能需求。有些用户由于缺乏计算机方面的相关知识,所以没有办法提出相对准确的需求,从而导致一些潜在的需求得不到有效地满足和完善,致使最后的软件模型不能使用户完全满意。基于此种原因,软件需求分析人员应试图站在用户的角度,不但要确定用户的需求,还要适当的启发用户,挖掘用户的潜在需求,不仅节约时间和成本,还能更加有效的开发出令用户满意的高水平软件。
(三)能够详细描述各项需求,并最终与用户沟通确认
优秀的需求分析应该是准确、完整、可测试、可修改、可跟踪的,最终达到能够全面详细的展现整个系统业务流程的效果,并将最终的流程文档与用户进行再讨论和完善。所以,需求文档在需求分析阶段是不可被忽视的一道流程。需求规格说明书贯穿于项目开发的整个过程,能够提高需求的有效性。需求规格说明书应完整、准确、具体的描述对目标系统功能要求、数据要求、性能要求、用户系统等。
由于在一个软件开发项目中各个业务都是一个独立的功能模块,所以在应用时主要是通过接口来实现各模块之间的相互调用。因此,在需求文档中要要充分考虑关于用户接口和软件接口的运行需求,当软件项目中发生问题时,对需求文档中的描述要做到尽量精准,最终和用户共同确认,再对内容进行调整和筛选[2]。
三.优化需求分析的过程
(一)问题识别
问题识别阶段主要是对软件开发的可行性进行分析,并通过报告的形式展现出来。优化需求分析要尽量扩大需求范围,做到在实施过程中更加全面,这些需求主要包括功能性需求、性能需求、运行环境需求、可靠性需求、安全保密性需求、资源使用性需求、软件开发进度需求等,建立一条完善的信息通信途径,确保需求分析顺利进行[3]。
(二)采用新技术优化需求分析
在需求分析的过程中,开发人员必须对软件项目所处的技术环境进行考察和分析,以及项目边境以外的技术环境也要放在软件开发的考虑范围之内,充分发挥科学技术的作用,使其能够更好的带动需求分析的发展和更新,所以,软件开发企业可以积极引进新技术和新设备优化需求分析,同时对分析人员进行定期的专业性培训,使其能跟得上技术发展的步伐。
(三)完善软件的附加功能需求
为软件添加一些附加功能需求能够确保软件的平稳高效运行,这些附加功能需求在软件的功能需求中占有很大比例,它不仅能够使软件更加丰富,还能够使软件的功能更加强大。但是由于其实现的难度较大,所需费用也相对较高,常常导致其价值被用户忽视。因此,应该不断完善对软件附加功能的分析,从而更好的为软件添加合理的附加功能。
四、结束语
需求分析在软件的开发中占有不可替代的作用,为了更好的开发软件,必须要先做好需求分析。
【在软件开发的意义论文】相关文章:
1.论文春节的意义