需求分析与解决方案设计ch4_第1页
需求分析与解决方案设计ch4_第2页
需求分析与解决方案设计ch4_第3页
需求分析与解决方案设计ch4_第4页
需求分析与解决方案设计ch4_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 第4章 需求分析员4即使没有明确指定,软件项目组中也会有某个人会担当需求分析员的角色。4企业的IS组织中,行使这一职责的专家被称为业务分析员。4对需求分析员的不同称谓还包括系统分析员、需求工程师、需求经理,也有简称分析员的。4软件开发组织中,这项工作往往落在产品经理或营销人员肩上。4这一章将介绍需求分析员承担哪些重要职责,称职的需求分析员应具备哪些知识和技能,以及如何在组织中培养需求分析员。 2 4.1 需求分析员的职责4需求分析员是对项目涉众的需求进行收集 、 分析、记录和验证等职责的主要承担者。4如图4.1所示,需求分析员是用户群体与软件开发团队间进行需求沟通的主要渠道。 需求分析员

2、项目管理 规格与复杂度信息 业务需求 用户代表 用户需求 开发 功能及 非功能需求 需求分析 期望与约束 功能及非功能需求 测试 其他股东 注意:不要指望优秀的开发人员或知识渊博的用户可以自动成为优秀的业务分析员,而不需要为他们提供培训、资料和指导。3 4.1.1 需求分析员的工作 需求分析员是客户与开发人员交流的中间人,负责将客户对产需求分析员是客户与开发人员交流的中间人,负责将客户对产品的初步想法转化为明确的需求说明,用来指导开发工作。品的初步想法转化为明确的需求说明,用来指导开发工作。4定义业务需求 需求分析员的第一项工作是帮助业务或投资管理人、产品经理或销售经理定义项目的业务需求。4确

3、定项目涉众和用户类别 前景和范围文档可帮助需求分析员分辨出产品的重要用户群和其他涉众。4获取需求需求分析员可能要用到下列信息收集方法:1. 交谈交谈、需求讨论会需求讨论会、文档分析文档分析、调查调查、现场访问客户现场访问客户、业务流业务流程分析程分析、工作流程分析和任务分析工作流程分析和任务分析、事件列表事件列表、同类产品分析同类产品分析、根据现有系统导出需求根据现有系统导出需求、回顾以往项目回顾以往项目。4 4.1.1 需求分析员的工作44.分析需求 需求分析员还要对收集到的需求进行分析,找出那些客户没有明确说明的需求。5.编写需求规格说明 需求开发的作用是各方对用于解决客户问题的系统形成了

4、一致的理解。 需求分析员负责编写条理清晰的需求规格说明,从而清楚地表述出这种理解。6.为需求建模 需求分析员应该适时地选用文字以外的方式来表达需求。5 4.1.1 需求分析员的工作7.主持对需求的验证 分析员还要对设计、代码和测试用例(源于需求说明)进行检查。8.引导对需求的优先级划分 需求分析员安排不同用户群与开发人员进行合作与协商,以保证他们进行合理的优先级划分 。9.管理需求 需求分析员参与了软件开发的整个生命周期,因此,他应该帮助制订、检查和执行项目的需求管理计划。6 4.1.2 需求分析员必备的技能 需求分析员需要了解多种获取需求的方法,如何采用语言文字以外的方式来传达信息。优秀的需

5、求分析员应该同时具备出色的交流、引导和人际交往能力,具备技术和业务领域的丰富知识,以及适合这项工作的相应个性,耐心和真诚的合作愿望是关键的成功因素。下面列出的这些技能对需求分析员特别重要:1.倾听的技巧倾听的技巧 |要善于双向交流,就必须知道如何有效地倾听要善于双向交流,就必须知道如何有效地倾听。2.交谈和提问的技巧交谈和提问的技巧 |大部分需求是通过讨论得到的,因此,需求分析员必须能够与不同大部分需求是通过讨论得到的,因此,需求分析员必须能够与不同的个人或小组就需求展开讨论。的个人或小组就需求展开讨论。3.分析能力分析能力 |优秀的需求分析员能够以不同的方式思考问题优秀的需求分析员能够以不同

6、的方式思考问题。7 4.1.2 需求分析员必备的技能4.协调能力协调能力 |需求获取过程中,对相关人员进行协调也是需求分析员必备需求获取过程中,对相关人员进行协调也是需求分析员必备的一项能力的一项能力(Gottesdiener 2002)。5.观察能力观察能力 |观察力敏锐的需求分析员能够从不经意的闲谈中发现重要的观察力敏锐的需求分析员能够从不经意的闲谈中发现重要的信息。信息。6.写作能力写作能力 |需求开发提交的主要结果是书面的需求规格说明,用于在客需求开发提交的主要结果是书面的需求规格说明,用于在客户、营销人员、管理人员和技术人员之间传递信息。户、营销人员、管理人员和技术人员之间传递信息。

7、7.组织能力组织能力 |需求分析员需要处理获取和分析过程中收集到的大量杂乱的需求分析员需要处理获取和分析过程中收集到的大量杂乱的信息。信息。8 4.1.2 需求分析员必备的技能8.建模能力建模能力 |每个需求分析员都应该掌握从传统的流程图到结构化的每个需求分析员都应该掌握从传统的流程图到结构化的分析模型分析模型(数据流图、实体关系图之类数据流图、实体关系图之类),直至当今的统一,直至当今的统一建模语言建模语言(UML)等多种分析工具。等多种分析工具。9.人际交往能力人际交往能力 |需求分析员应具备让彼此利益竞争的人们进行合作的能需求分析员应具备让彼此利益竞争的人们进行合作的能力。力。10.创造

8、力创造力 |需求分析员不能像抄录员那样只记下客户说过的每句话。需求分析员不能像抄录员那样只记下客户说过的每句话。9 4.1.3 需求分析员必备的知识 需求分析员除了具备专业技能及性格特点以为外还需具备:1.需求分析员需具备从实践经验中积累的广博知识。其中最基本的是对当代需求管理技术的深刻理解,以及在各种不同的软件开发生命周期环境中应用这些技术的能力。2.需求分析员需要将需求开发与管理活动贯穿于整个产品生命期中。充分理解项目管理、风险管理和质量工程,掌握产品管理概念。3.掌握应用领域的知识、最大限度地减少与客户间的误解。10 4.2 如何培养需求分析员 优秀的需求分析员是培养出来的,而不是训练出

9、来的。这项工作包括很多面向人而不是技术的“软性技能”。对于需求分析员的工作并没有标准的描述,因而也没有标准的培训课程。新的需求员更多的得益于更有经验的分析员对他的指导和训练(也许是师徒关系)。 不同背景的人可以转化为需求分析员。11 4.2.1 从用户转为分析员4用户对业务和工作环境有着深刻的理解 , 很容易获得原来同行们的信任。4他们讲的是用户的语言,了解现有的系统和业务流程。4让用户来担任需求分析员也有不利的一面。他们对软件工程知之甚少,也不知道如何与技术人员进行交流。不熟悉分析建模技术,只会用文字来表述所有信息。4要想成为需求分析员,用户需要多学习一些软件开发技术。这样才能以最恰当的方式

10、,有针对性的把信息传达给不同的受众。12 4.2.2 从开发人员转为分析员4合适的人选-需求开发工作对人员技能和个性的要求与软件开发工作不同。4培训要求-开发人员要想成为需求分析员,需要多掌握一些业务领域的知识。 开发人员应该接受一些软性技能的培训和指导,例如怎样有效地倾听、协商和引导。这些都是优秀需求分析人员必须掌握的技巧。4不利之处-开发人员很容易陷入技术思考和讨论,把注意力集中在要开发的软件本身,而不是用户的需求。13 4.2.3 主题专家4让应用领域的专家或主题专家成为需求分析员。4由领域专家担任需求分析员可能产生这样的问题:他根据自己的偏好来定义系统的需求,而没有说明各类用户的合理需求。 *推荐方式是让开发团队的成员担任需求分析员14 4.3 营造合作的氛围4在建立与客户代表和其他涉众的合作关系问题上,需求分析员负有主要责任。4需求分析员引导项目参与者就需求取得一致,进而达到三赢的目的:客户对产品感到满意。开发组织因产品在商业上取得的成就而兴奋。开发团队成员为在具有挑战性和高回

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论