需求分析心得

需求分析心得

  为了开发出真正满足用户需求的软件产品,首先必须知道用户的需求。对软件需求的深入理解是软件开发工作获得成功的前提条件,不论人们把设计和编码工作做得如何出色,不能真正满足用户需求的程序只会令用户失望,并且给开发者带来烦恼。

  需求分析是软件工程中的重要步骤,是决定软件项目成败的关键影响因素之一,需求阶段的错误在后期具有巨大纠错成本,因此,需求工程成为软件工程和系统工程重要的分支领域之一。

  需求获取可能是软件开发中最困难、最关键、最易出错及最需要交流的方面。在需求分析的初期,用户对问题的描述、对目标软件的要求通常是相当零乱和模糊的。更为严重的是,分析人员与用户的知识领域不同,从而造成相互理解介面的困难。因此,在需求分析过程中,如何获取有效的信息并转化成需求是最为关键和困难的。需求获取大致有如下五种方法:

  1. 市场搜索法:通过广泛搜集市场需求(包括通过互联网、向目标群体直接了解需求的方式) ,搜集产品需求。
  2. 项目提炼法:指从组织建设的若干用户的项目中,抽取出通用需求,形成产品需求的一种方式。
  3. 问卷调查法:在已经拥有比较完整的产品需求的基础之上,就一些细节需求、需要进一步明确的需求(或问题),通过采用向目标群体发送问卷调查表的方式,弄清产品需求的一种需求获取方法。
  4. 会议讨论法:指邀请相关专家、目标群体的代表,召开若干次需求讨论会议,挖掘出产品需求的一种需求获取方法。
  5. 原型法:指根据自己所了解的产品需求,开发出原型系统给目标群体试用,借助原型系统和目标群体进行交流和沟通,挖掘出产品需求的一种需求获取方法。

  由于对相应领域的不熟悉和需求分析流程的不熟练,我们为此进行了多次线上、线下会议进行讨论和确定项目的需求,同时根据项目的主题,我们过滤了一部分明显不合理的需求,同时使用渐进式原型的方式一步步诱导项目的指导老师和用户来获得真正的需求,通过这些信息,我们完成了数据库的设计和原型界面的确定,现在回想起来还是很有意义的。同时我们也发现,沟通在软件开发中的重要性,没有及时的沟通和确定,我们做了很多无用功,需求分析和获取造成的错误对于开发来说成本成指数级上升,这次的教训让我们知道了以后一定要及时的沟通和反复的确定需求,对于需求的变更也需要及时的响应,否则会造成不可预计的后果。

  在进行部分功能性开发时,我们发现确定的需求还可以根据一些标准进行深层次的划分,例如常规的KANO模型,对于我们使用的渐进式开发方式有着巨大的作用,提高了我们开发的层次感。

  综上所述,这次需求获取、分析、确定的经历让我们对软件开发需求管理有了更深层次的了解,是一次非常有意义的尝试。

posted @ 2021-11-15 00:16  MonkeymanHNU  阅读(396)  评论(0)    收藏  举报