软件项目管理-需求开发与需求管理课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件项目管理-需求开发与需求管理课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 项目 管理 需求 开发 课件
- 资源描述:
-
1、软件项目管理软件项目管理需求开发与需求管理需求开发与需求管理Page 2目录目录1. 什么是需求什么是需求 2. 了解客户、最终用户、间接用户了解客户、最终用户、间接用户3. 需求工程基本概念需求工程基本概念4. 需求开发的主要困难与对策需求开发的主要困难与对策5. 如何开展需求调查如何开展需求调查6. 如何进行需求分析如何进行需求分析7. 什么是好的需求规格说明书什么是好的需求规格说明书8. 如何定义产品需求如何定义产品需求9. 需求管理:确认、跟踪、变更控制需求管理:确认、跟踪、变更控制Page 31. 什么是需求什么是需求1.1 需求的基本概念需求的基本概念 u宽泛地讲,需求来源于用户的
2、一些“需要”,这些“需要”被分析、确认后形成完整的文档,该文档详细地说明了产品“必须或应当”做什么。 u所以如果只有一些零碎的对话、资料或邮件,你就以为自己已经掌握了需求,那是自欺欺人。1.2 需求的重要性需求的重要性uFrederick Brooks在他1987年经典文章“No Silver Bullet”中阐述了需求的重要性:开发软件系统最困难的部分就是准确说明开发什么。最困难的概念性工作是编写出详细的需求,包括所有面向用户、面向机器和其它软件系统的接口。此工作一旦做错,将会给系统带来极大的损害,并且以后对它修改也极为困难。u需求是产品的根源,需求工作的优劣对产品影响最大。u国内软件业的痼
3、疾:人们并不清楚究竟该做什么,但却一直忙碌不停地开发。 Page 42. 了解客户、最终用户、间接用户了解客户、最终用户、间接用户2.1 基本概念基本概念u“用户”(user)是一种泛称,它可细分为“客户”(customer)、“最终用户”(the end user)和“间接用户”(或称为关系人)。u掏钱买软件的用户称为客户,而真正操作软件的用户叫最终用户。客户与最终用户可能是同一个人也可能不是同一个人。2.2 客户是掏钱买软件的人,所以他是客户是掏钱买软件的人,所以他是“上帝上帝” u某饭店经理在解释“先有鸡还是先有蛋”这个哲学问题时,精辟地阐述了客户的地位: 如果顾客先点鸡,那么就先有鸡;
4、如果顾客先点蛋,那么就先有蛋。u“现代营销学之父”菲利普科特勒所著的市场营销导论是这样描述客户的:客户永远是本公司的座上客。客户并不依赖我们,而我们却依赖客户。客户不是我们工作的障碍,而是我们工作的目标。我们并不因为服务于他而对他有恩,他却因为给予我们服务于他的机会而有恩于我们。客户不是我们要与之争辩和斗智的人。从未有人曾在与客户的争辩中获胜。客户是把他的欲望带给我们的人,因此我们的工作就是满足这些欲望,从而使客户和我们共同获益。u与客户打交道的主要目的是:一是获取需求,二是签合同。Page 52. 了解客户、最终用户、间接用户了解客户、最终用户、间接用户2.3 重视重视“间接用户间接用户”,
5、千万别,千万别“大意失荆州大意失荆州” u间接用户既不掏钱买该软件产品,也不使用该软件,但是它可能对软件产品有很大的影响。u例如,财务软件开发商在把“财务软件”卖给客户之前,这个“财务软件”必须得到国家财政部的批准。u同理,市面上流通的信息安全软件、杀病毒软件必须得到国家公安部的批准,否则软件开发商被逮住后戴上“非法经营”的帽子就惨了。 Page 63. 需求工程基本概念需求工程基本概念3.1 什么是需求工程什么是需求工程u把所有与需求直接相关的活动通称为需求工程。u需求工程中的活动可分为两大类,一类属于需求开发,另一类属于需求管理。 u需求工程的结构图 Page 73. 需求工程基本概念需求
6、工程基本概念3.2 需求开发过程域需求开发过程域 u需求开发的目的是通过调查与分析,获取用户需求并定义产品需求。 u需求调查的目的是通过各种途径获取用户的需求信息(原始材料),产生用户需求说明书。 u需求分析的目的是对各种需求信息进行分析,消除错误,刻画细节等。常见的需求分析方法有“问答分析法”和“建模分析法”两类。 u需求定义的目的是根据需求调查和需求分析的结果,进一步定义准确无误的产品需求,产生产品需求规格说明书。系统设计人员将依据产品需求规格说明书开展系统设计工作。 3.3 需求管理过程域需求管理过程域 u需求管理的目的是在客户与开发方之间建立对需求的共同理解,维护需求与其它工作成果的一
7、致性,并控制需求的变更。 u需求确认是指开发方和客户共同对需求文档进行评审,双方对需求达成共识后作出书面承诺,使需求文档具有商业合同效果。 u需求跟踪是指通过比较需求文档与后续工作成果之间的对应关系,建立与维护“需求跟踪矩阵”,确保产品依据需求文档进行开发。 u需求变更控制是指依据“变更申请审批更改重新确认”的流程处理需求的变更,防止需求变更失去控制而导致项目发生混乱。 Page 83. 需求工程基本概念需求工程基本概念3.4 需求工程的一些感悟需求工程的一些感悟 u不论是合同项目还是自主研发的产品,都必须开展需求开发和需求管理活动。 u开发者对待需求工程的态度可分“被动型”、“主动型”和“领
8、先型”三种,只有后两种才有可能开发出成功的产品。 “被动型”是指开发者被动地对待需求工程中的各项活动,能少干则少干,能偷懒则偷懒。他们认为需求是用户的事情而不是自己的事情。开发过程中经常发生需求变更,导致产品迷失方向,不是半途而废就是陷入半死不活的状态。 “主动型”是指开发者积极地开展需求工程中的各项活动。他们把获取准确的需求当作自己的职责,会想尽一切办法克服需求开发和需求管理过程中的困难,而不是找借口推卸责任。俗话说“良好的开端是成功的一半”,“主动型”需求工程是开发成功产品的必备条件。 “领先型”是需求工程的最高境界。开发者发掘了连用户自己都没有意识到的需求,导致用户跟着新产品跑而不是新产
9、品围着用户转,这叫引导消费。需求工程做到这个份上,才能使产品立于不败之地,长盛不衰。 Page 94. 需求开发的主要困难与对策需求开发的主要困难与对策4.1 知识技能问题知识技能问题 u应用域的知识是无边无际的,任何人都不可能是“万事通”。u当需求分析员缺乏应用域知识时,他该怎么办? 首先他要有勇气做事,否则连实践的机会都没有。 其次他应当赶紧补习应用域知识。 4.2 态度问题态度问题 u相当多的开发人员习惯于被动地对待需求开发。每当遇到麻烦、挫折时,他们会发牢骚,找出一堆用户的毛病。很多开发人员错误地以为: 需求是用户的事情,不是我们的事情。我们为用户开发软件,难道用户不该告诉我们应当开发
10、什么吗?如果用户说不清楚需求,或者经常变更需求,这类问题是用户产生的,应当由他们自己负责。 u用户说不清楚需求或者需求发生变更,这些都是常见的问题,并不是绝症,是人们可以设法解决的。可悲的是开发人员把这些问题当成了借口,不愿主动攻克问题,导致需求问题扩散到整个软件开发过程,产生太多的后患。 u软件企业的领导应当给具有错误观念的开发人员们洗脑:需求分析员的天职就是在有限的时间内获取准确而细致的用户需求,如果做不到就是失职,不要找借口。 Page 104. 需求开发的主要困难与对策需求开发的主要困难与对策4.3 合作关系合作关系 u如果需求分析员不能与用户建立良好的合作关系,那么他们在需求开发过程
11、中会很疲惫。 4.4 用户说不清楚需求用户说不清楚需求 u用户说不清楚需求是普遍现象,这是让开发人员头痛的大问题。 u有些用户真的不知道需求是什么,或者对需求只有朦胧的感觉,他当然说不清楚需求。 u有些用户虽然心里明白想要什么,但却说不清楚需求。 u需求分析员绝不能以用户说不清楚需求为借口而草率地对待需求开发工作,否则会连累整个开发团队的。u无论是什么原因导致用户说不清楚需求,需求分析员必须设法搞清楚用户真正的需求,这是需求分析员的职责,也是职业的挑战。 Page 114. 需求开发的主要困难与对策需求开发的主要困难与对策4.5 双方误解需求双方误解需求 u人们在交流的时候,经常会发生“问非所
12、求,答非所问”的事情。 u有时用户会把开发人员的建议或答复给想歪了。u而用户表达的需求,不同的开发人员可能有不同的理解。如果需求分析员误解了需求,那会导致后续的不少开发人员将错就错、白干活。 u不论是复杂的项目还是简单的项目,需求分析员和用户都有可能误解需求。所以需求确认工作(属于需求管理)必不可少。 Page 124. 需求开发的主要困难与对策需求开发的主要困难与对策4.6 开发人员写不好需求文档开发人员写不好需求文档 u需求调查工作不充分,获取的需求信息太少或者太乱,以至于写不成需求文档。 古时候,一书生在考试前补习“写文章”,成天愁眉苦脸。其夫人甚为不解,问:“相公,你写文章比我生小孩还
13、难吗?”书生长叹一声:“娘子你哪里知道我的难处啊!你生小孩时肚子里有东西,可我写文章时肚子里没东西啊。” 所以要想写出好的需求文档,前提条件是把需求调查工作做好。 u开发人员写作能力比较差,虽然在调查过程中已经获得了不少需求信息,却写不出好的需求文档来。 提高开发人员写作能力的根本办法就是让他们多练习写文档,熟能生巧。 另外,企业应当提供合适的文档模板以及比较好的示例文档,尽可能地降低写作难度。 Page 134. 需求开发的主要困难与对策需求开发的主要困难与对策4.7 用户经常变更需求用户经常变更需求 u需求变更通常会对项目的进度、人力资源、经费产生很大的影响,这是开发商非常畏惧的问题。u如
14、果在项目开发的初始阶段,开发人员和用户没有搞清楚需求或者搞错了需求,到了项目开发后期才将需求纠正过来,导致产品的部分内容需要重新开发。毫无疑问,这种需求变更将使项目付出额外的代价。这种损失是由于双方工作失误造成的,双方应当好好反省,认真学习需求开发和管理的方法,避免再犯相似的错误。u如果由于市场变化而导致产品需求发生变更,开发商大可不必为此烦恼,应当高兴才对。倘若市场静如死水,那么开发商吃了“上一顿”就没有“下一顿”。正因为市场在变化,才会产生更多商机,聪明的开发商才会有活干,有钱赚。 u其实需求变更并不可怕,可怕的是需求变更失去控制,导致项目混乱。所以需求变更控制是需求工程的重要活动。 Pa
15、ge 145. 如何开展需求调查如何开展需求调查 5.1 准备调查准备调查 u首先,需求分析员应当起草需求调查问题表,将调查重点锁定在该问题表内,否则调查工作将变得漫无边际。 问题表可以有多份,随着调查的深入,问题表将不断地被细化。 根据经验,用户通常没有耐心回答复杂的论述题,所以问题表应当以“选择题”和“是非题”为主。 制定问题表最简便的方法就是从用户需求说明书的模板中提取需求问题。 u其次,需求分析员应当确定需求调查的方式,例如: 与用户交谈,向用户提问题。向用户群体发调查问卷。 参观用户的工作流程,观察用户的操作。 与同行、专家交谈,听取他们的意见。 分析已经存在的同类软件产品,提取需求
展开阅读全文