p; (3)建立良好的沟通环境和氛围。分析人员和用户沟通的程度关系到需求分析的质量,因此建立一个良好的沟通氛围、处理好分析人员和用户之间的关系显得尤其重要,一般情况,用户作为投资方会有一些心理优势,希望他们的意见得到足够的重视,分析人员应该充分的认识到这一点,做好心理准备,尽量避免和他们发生争执,因为我们的目的是帮助用户说出他们的最终需要。在沟通时分析人员应注意以下几个方面:1)态度上要尊重对方,但不谦恭。谦恭可能会让用户一时感到满意,但对长期合作并没有好处,尤其是在发生冲突的时候,用户会习惯性地感到自己的优势,而忽略分析人员地意见。2)分析人员要努力适应不同用户的语言表达方式。每个人都有自己的表达方式,所以优秀的分析人员应该是个优秀的“倾听者”,他们能非常快的适应用户的语言风格,理解他们的意思。3)善于表达自己,善于提问。分析人员在开口前应该先让对方充分表达他的意思,在领会了后,自己再说,尽量不要抢话。4)工作外的交流有助于增进理解,加强沟通。
(4)需求质量控制要制度化需求的变化是软件项目不可避免的事实,因此需求质量控制是一项艰苦的工作,要确保该项工作的顺利实施,就必须有制度确保,这个制度能在项目质量控制方案中制定,该方案主要是具体化、定量化的描述用户需求,形成全方面、一致、规范的软件需求分析规格说明书,明确需求分析规格说明书的工作程式和要素,规范研发活动,为后续软件设计、实现、测试、评审及验收提供依据。在方案中要明确项目组各部门关于需求质量控制的职责,制定需求分析的工作程式,包括编制需求分析工作计划、编制《需求分析说明书》、《需求分析规格说明书》的评审和确认、《需求分析规格说明书》修改控制、确定需求质量控制的质量记录文件规范等内容。
3.2需求研发和管理的一些方法
需求研发是一项复杂的工作,使用的方法也非常多,不同的研发方式有不同的方法,这里简单介绍一些相关的方法:
(1)绘制关联图:绘制系统关联图是用于定义系统和系统外部实体间的界限和接口的简单模型。
(2)可行性分析:在允许的成本、性能需求下,分析每项需求实施的可行性,提出需求实现相关风险,包括和其他需求的冲突,对外界因素的依赖和技术障碍。
(3)需求优先级:确定使用实例、产品特性或单项需求实现的优先级别。以优先级为基础确定产品版本将包括哪些特性或哪类需求。
(4)系统原型:当用户自身对有的需求不十分清晰时,我们能建立一个系统原型,用户通过评价原型更好地理解所要解决的问题。。
(5)图像分析模型:绘制图像分析模型是编制软件需求规格说明重要手段。他们能帮助分析人员理清数据、业务模式、工作流程及他们之间的关系,找出遗漏、冗余和不一致的需求。这样的模型包括数据流图、实体关系图、状态变换图、对话框图、对象类及交互作用图。
(6)数据字典:数据字典是对系统用到的所有数据项和结构的定义,以确保研发人员使用统一的数据定义。在需求阶段,数据字典至少应定义客户数据项,确保客户和研发小组是使用一致的定义和术语。
(7)质量功能调配:质量功能调配是一种高级系统技术,他将产品特性、属性和对客户的重要性联系起来。该技术提供了一种分析方法以明确哪些是客户最为关注的特性。他将需求分为三类:期望需求、普通需求、兴奋需求。
需求管理的目的就是要控制和维持需求事先约定,确保项目研发过程的一致性,使用户得到他们最终想要得产品。需求管理的方法主要包括以下一些方面:
1)确定需求变更控制过程。制定一个选择、分析和决策需求变更的过程,所有的需求变更