产品规划十步法.ppt
产品规划十步法Something about grammar&literature产品经理社区2开始的话3产品规划十步法人文比科技重要!方法比技能重要!初做者初做者有经验者有经验者监督者监督者专家专家管理者管理者高级专家高级专家领导者领导者资深专家资深专家4产品规划十步法一天,三年甲班的杨过忘了交作业,导师郭靖问他:“为什么没交作业?”杨过答曰:“作业为什么要交?交了不一定是自己写的;写了又不一定会;(不小心破了珍珑的虚竹不好意思地看了逍遥子一眼)会了又不一定会考;(苦心准备当盟主的左冷禅背后响起闷响)考了又不一定会过;(白眉鹰王身边秋风吹过阵阵凄凉的落叶)过了又不一定能毕业;(被古墓派退学的李莫愁脸色一变)毕业又不一定会找到工作;乐天的令狐冲正在酒醉中没听见)找得到工作又不一定保得住工作;(萧峰夺门而出)?”只见现场沉默三秒之后,众人联手围殴杨过5产品规划十步法用户是一个或者多个名词;产品是名词,一般由很多个名词组成;产品设计过程功能需求就是找出“动宾短语”的集合性能需求就是找出“形容词”的集合6产品规划十步法产品订书机:n.一种装订文件的文具订书机包括:杠杆结构:n.进钉结构;n.压钉结构;n.钉书钉(消耗品):n.用户用户:n.使用订书机的人,应大于3周岁;且有手或者类似可以发出至少1kg力量的人。最常用(80%以上)为女性(21-40)。需求功能需求装订文件;Load钉书钉;Unload钉书钉;性能需求外观、颜色、省力、材质.7产品规划十步法定义好用户定义好产品先分析功能需求再分析性能需求80/20的误区:产品日趋同质化,公司之间的差别,市场竞争的成败,往往是由性能决定8产品规划十步法计算机为什么叫计算机?互联网其实是一个大数据库大部分应用都是数据库应用Search?B2B、B2C、C2C?Gaming?Avatar?Blog?小部分应用是即时的存储转发类IMVoIP复习数据库的知识!9课程概述10产品规划十步法Use Case分析方法找寻用户定义产品发掘功能需求性能需求的“套路”需求文档的撰写产品经理常用“技法”工作组织方法常用图表和绘图方法11产品规划十步法需求分析是一个工业化的写作过程80的套路20的创意好的语文水平:有利于抓住关键词汇有利于培养数字敏感有利于增强形容能力有利于组织文档结构有利于提高沟通能力读书吧!写博客吧!12Use Case分析法13产品规划十步法1967年Jacobson在爱立信工作的时候开始使用这种思想这种想法最早应用于大型交换机系统的需求获取1971年完成了这种方法的最初原型1985年推出了改进版,并发布了面向对象的OOSE方法大部分面向对象技术都采用这种需求方法,UML建模语言也已将它包容进去它还被广泛的应用于工业领域14产品规划十步法用户必须告诉你他想要什么你必须完整地了解用户的业务你必须知道与系统有关的任何人和任何东西如果用户不能告诉你他们想要什么,你必须花费时间去观察和记录他们现在是怎么工作的从专家那里了解用户业务的原理和规则你是去了解要做什么而不是怎么做15产品规划十步法一开始就深入细节的产品经理,忙乱而又没有绩效往往陷入细节的泥坑,甚至是技术细节,甚至UI细节被层出不穷的需求点和例外处理困扰控制不住满脑袋乱冒的ideas请相信!系统内部无论多么复杂他总是可以被“使用说明书”说清楚16Actor17产品规划十步法谁是这个产品的用户?或者,谁是这个产品系统中的角色?18产品规划十步法与系统发生交互作用的、系统之外的任何东西都是角色可以是人也可以是机器角色不等同于使用者角色存在于系统外部角色不是活动的准确描述使用者是行驶某个角色职责的系统的使用人员如小王是个采购员我是角色Actor!19产品规划十步法每个Actor都通过不同的方式使用系统,除非他们是相同的ActorActor使用系统的每一种方式就是一个Use Case群普通用户群管理员群股东群创建者群股东20产品规划十步法主动角色:Use Case的动作序列是由他先发起的,通常系统返回最后结果主叫方,采购人员,票据录入员等被动角色:系统通过调用角色来完成Use Case的动作序列(或其中的某一个动作)不是初始动作的发起者当系统需要它们帮助的时候最终是为了满足主动角色的需要通常是机器或其他系统ActorUse Case1Use Case2ActorActor21Script22产品规划十步法脚本是一个角色与系统之间的一组交互作用通常具有详细的真实数据及实际的期望输出值一个应用系统可能具有成千上万个脚本即使同一件事,所得到的脚本可能也会有细微的区别脚本是描绘Use Case的重要的背景信息23产品规划十步法1:小王输入他的账号#4135972:小王输入他的密码#1198233:小王查询98.7.1至98.12.31日之间的平均余额4:系统显示余额1:小张输入他的账号#4133432:小张输入他的密码#6467883:小张查询98.3.1至98.5.31日之间的平均余额4:系统显示余额1:小李输入她的账号#3467802:小李输入她的密码#4356453:小李查询98.7.1至98.12.31日之间的平均余额4:系统显示余额24产品规划十步法一个Use Case代表一组潜在的脚本通过研究一组相似的脚本,可以得到它们内在的逻辑相似的脚本通常遵循相似的模式工作,并提供相似类型的结果一个Use Case通常关注某一个目标例如:查询存折余额Use Case25Use Case26转让群产品规划十步法一个系统具有无限个潜在的脚本但一个系统可以被有限的Use Case完整说明系统的每一个Use Case都必须列举,否则系统将会遗漏功能创建群解散群加入群赞助群邀请加入群群内发言授权群管理27产品规划十步法描述系统提供的交互功能一个Use Case可以被其他的Use Case调用Use Case可以组合完成某一项更大的功能Use Case说明系统需要提供什么而不是怎么提供用户并不关心你如何给他们提供所需要的功能Use Case一般是用“动宾”短语命名创建群解散群加入群赞助群邀请加入群群内发言授权群管理28产品规划十步法Use Case不是分析设计文档虽然它们支持后续的分析设计工作Use Case不是操作脚本它不是用户使用系统时实际操作的具体步骤的记录虽然它可能是通过操作脚本得来的29产品规划十步法Use Case清晰地描述了系统的功能界面测试人员可以在开发初期制定测试计划每一个Use Case都严格地说明了系统的某一项功能它的输入它的输出期间的交互作用Use Case是黑盒测试的基准30产品规划十步法应该包含Use Case的所有重要细节应该包括角色与系统交互的关键步骤,可以使用顺序图(Sequence Diagram)要表述有关角色的信息要分清哪些是角色所具有的职能、哪些是系统所应提供的要列清使用这些功能是所应满足的前提条件如果某些功能具有质量上的要求(如性能),也要列出来创建群dDddddxxafsdfadsdDdddfcadsfasdddddccdasdwe31产品规划十步法Actor名称Use Case名称32产品规划十步法经纪人下单投资人报价审查货币存取经纪管理系统33产品规划十步法经纪人下单投资人报价审查货币存取经纪管理系统银证转账系统34产品规划十步法主动角色画在图的左边被动角色画在图的右边每个Use Case必须为用户提供确切的功能Use Case名称必须写在椭圆里面保持图面整洁每一张图里不能有太多的Use Case为每一个Use Case编号便于检索为Use Case建立目录(编号和名称)便于管理35Use Case 高级概念36产品规划十步法通过分析Use Case图,分析人员可以找出不同的业务过程之间的共性扩展、包含、派生、使用等关系通过这些关系可以降低系统的复杂度为重用提供了条件将共性提出来,可以帮助我们发现重复的过程二次开发应该关注的地方37产品规划十步法类似于Use Case的扩展,角色之间可以继承其他银行不仅具有储户的所有功能,还有其他的功能38产品规划十步法在不丢失信息的前提下,简化了Use Case图继承说明了角色间的层次关系派生者继承了父角色的所有能力父角色不知道派生者39产品规划十步法扩展关系通常用来表示某一个Use Case的可选择部分扩展关系允许分析人员在没有改变基Use Case的情况下增加或修改基Use Case的功能复杂的可替代途径应该使用扩展关系把它们分成多个Use Case也可以这样看扩展关系:在基Use Case上插入功能,而基Use Case本身不知道这个扩展40产品规划十步法41产品规划十步法如果Use Case A包含Use Case B,表示在执行Use Case的动作序列过程中,在某一点上将开始执行Use Case B的动作序列,完成后将回到同一点上继续执行完Use Case A的动作序列它与扩展关系的区别是:扩展是可选的包含是必做的(更象一个子过程)和扩展关系一样,一个Use Case可以包含很多个子Use Case,也可以被很多个父Use Case所包含42产品规划十步法43产品规划十步法44产品规划十步法45Use Case发掘实操46产品规划十步法定义Actor发掘Actor使用系统的脚本Script总结Use Case组合研究Actor之间的继承关系研究Use Case之间的include、extend关系贯穿始终:维护一套词汇表CE47产品规划十步法词汇表有多重要?可以建巴别塔代码中的变量需求文档的重要组成部分和线索维护词汇表应该是产品团队最重要的工作之一Buddy?面板联系人?通讯录联系人?电话好友?手机好友?QQ联系人?邮件好友?IM联系人?过滤联系人?48产品规划十步法本节所述之被叫号码,其格式要求为:符合E.164电话号码编号计划规范。对于PBX分机号码,应为18位数字;对于普通电话号码,合法格式为:以“+”、“-”分隔的1-21位数字字符串;可选包含以“+”引导的国家代码;如+86代表中国,+1代表美国;必须包含地区代码和电话号码,其间用“-”分隔;如9;如果包含国家代码,则地区代码的长途前缀(如“0”)应省略;如+86-;+86-10-38454233如果某外线号码包含分机号码,其间用“-”分隔;如9-384;+86-384对于中国移动电话号码,合法格式为:国家代码和移动电话号码如+86-或移动电话号码如,在被叫号码中无需根据对外地手机加入0前缀。不包含Omni PCX交换机的外线拨号前缀。如某Omni PCX交换机的外线拨号前缀为“9”,但在RTX系统中的电话号码资料中不需要具备这个外线拨号前缀。RTX Omni PCX插件软件需求规格说明书.doc49产品规划十步法大部分互联网服务本质上是DB:增删改查导入导出批量操作计算机应用的基础支撑功能:安装卸载启动停止重启动OAM(运营、管理、监视)50产品规划十步法用户Server组管理员PMM第三方头像CP设置自定义头像从本机设置从网络硬盘设置从第三方系统设置 第三方头像系统网络硬盘系统extendextendextend添加第三方CP查看头像运营数据51Use Case阐述52产品规划十步法Use Case图并不是需求文档的必备部分Use Case分析是过程,不是结果Use Case阐述,等于:53产品规划十步法进入条件描述Use Case在何种情况下进入如用户必须具备什么条件?之前发生了什么?基本流程不考虑任何异常例外,没有if then else从用户角度阐述Use Case如何运作结束条件Use Case成功结束后,发生了什么变化用户发生什么变化?系统发生什么变化?例外流程逐个阐述在基本流程中某个环节出现异常时的处理54产品规划十步法禁止假设系统由哪些技术实现模块组成“系统从服务器基础DB中删除好友关系”禁止假设用户可以使用哪些UI界面“系统弹出错误提示窗口”禁止使用没有主谓宾的语句“给出提示”禁止使用没有任何意义、意义不全的语句“系统给出状态提示信息”“系统立即显示”、“等”、“或者”、“其他”、“通常”禁止给出没有值域的定义“系统显示天气温度信息”55产品规划十步法a)当邮件用户要求管理邮件信息时功能夹启动,系统显示信息。b)邮件用户可以按照以下的一个或多个步骤执行:c)按照发送这或主题整理邮件信息;d)阅读邮件信息的内容;e)把邮件信息保存为文件;f)把邮件信息的附件保存为文件;g)当邮件用户要求退出管理新来邮件信息时,功能夹终止。56产品规划十步法a)当邮件用户要求管理邮件信息时功能夹启动,系统显示信息。用户必须能够区分新的、已读过的、未读过的消息。用户还必须能够看见每个消息的发送者、主题和优先级。b)邮件用户可以按照以下的一个或多个步骤执行:c)按照发送这或主题整理邮件信息;d)阅读邮件信息的内容;e)把邮件信息保存为文件;f)把邮件信息的附件保存为文件;用户必须能够看见附件的文件类型 g)当邮件用户要求退出管理新来邮件信息时,功能夹终止。57产品规划十步法a)当邮件用户要求管理邮件信息时功能夹启动,系统显示信息。用户必须能够区分新的、已读过的、未读过的消息。用户还必须能够看见每个消息的发送者、主题和优先级。平均每100个同时显示的未读邮件消息中,其中90%的消息主题行少于40个字符。b)邮件用户可以按照以下的一个或多个步骤执行:c)按照发送这或主题整理邮件信息;d)阅读邮件信息的内容;平均消息内容包括100字符。e)把邮件信息保存为文件;f)把邮件信息的附件保存为文件;用户必须能够看见附件的文件类型 这种情况下,95%的邮件都少于2个附件。g)当邮件用户要求退出管理新来邮件信息时,功能夹终止。58产产品品规规划十步法划十步法a)当邮件用户要求管理邮件信息时功能夹启动,系统显示信息。用户必须能够区分新的、已读过的、未读过的消息。用户还必须能够看见每个消息的发送者、主题和优先级。平均每100个同时显示的未读邮件消息中,其中90%的消息主题行少于40个字符。b)邮件用户可以按照以下的一个或多个步骤执行:c)按照发送这或主题整理邮件信息;(在这种情况下,有超过60%做了此项操作。)d)阅读邮件信息的内容;平均消息内容包括100字符。e)把邮件信息保存为文件;(在这种情况下,少于5%做了此项操作。)f)把邮件信息的附件保存为文件;用户必须能够看见附件的文件类型 这种情况下,95%的邮件都少于2个附件。(在这种情况下,有少于30%做了此项操作。)g)当邮件用户要求退出管理新来邮件信息时,功能夹终止。59产品规划十步法发现词汇,并给以定义详细的解释,值域的描述形成需求文档中的“定义”发现功能需求和性能需求整理文字,形成功能需求规格说明和性能需求说明60性能需求61产品规划十步法性能指性能指标易用性易用性安全性安全性兼容性兼容性可可扩展性展性可可维护性性可延展性可延展性可移植性可移植性可可编程性程性可靠性可靠性可可测试性性产品关注技术关注62产品规划十步法产品经理应忘记自己懂技术、交互从用户、市场角度把要求提出来弄清楚自己的专业发展方向User-Oriented,Market-Oriented其他的,不妨“扮猪吃老虎”63产品规划十步法在一个产品系统中,性能需求是可以Copy的第一份性能需求是重点,大家一起作之后的需求文档往往只需改变:性能指性能指标可可扩展性展性易用性易用性可延展性可延展性安全性安全性兼容性兼容性可可维护性性可移植性可移植性可可编程性程性可靠性可靠性可可测试性性这里简简单单几句话要求,让开发同事、设计师作半年64需求规格说明书65产品规划十步法没有高没有高质量的需求量的需求软件就象一个巧克力的盒子件就象一个巧克力的盒子你不会知道你将要得到什么你不会知道你将要得到什么66产品品规划十步法划十步法正确正确 可行性可行性 必要性必要性 优先先权 明确明确 可可证实 67产品品规划十步法划十步法正确:正确:每个需求必每个需求必须精确描述要交付的功能。精确描述要交付的功能。正确性依据于需求的来源,如真正确性依据于需求的来源,如真实的客的客户或高或高级别的系的系统需求需求说明明书。只有用只有用户的代表能的代表能够决定用决定用户需求的正确性,需求的正确性,这就是就是为什么在什么在检查需求需求时,要包括他,要包括他们或他或他们的的代理的关代理的关键所在。不包括用所在。不包括用户的需求的需求检查就会就会导致开致开发人人员的:的:“这是没意是没意义的的”,“这可能是可能是他他们的意思的意思”等众所周知的猜等众所周知的猜测。68产品品规划十步法划十步法可行性:可行性:在已知的能力、有限的系在已知的能力、有限的系统及其及其环境中每个需求境中每个需求必必须是可是可实现的。的。为了避免需求的不可行性,在需求分析了避免需求的不可行性,在需求分析阶段段应该有一个开有一个开发人人员参与,参与,这个开个开发人人员应能能检查在技在技术上什么能做什么不能做上什么能做什么不能做哪些需要需要哪些需要需要额外的付出或者和其他的外的付出或者和其他的权衡。衡。在抽象在抽象阶段段应该有市有市场人人员参与。参与。69产品品规划十步法划十步法必要性:必要性:每个需求每个需求应载明什么是客明什么是客户确确实需要的,什么要需要的,什么要顺应于外部的需求,接口或于外部的需求,接口或标准。准。每个需求源于你每个需求源于你认可或者具有授可或者具有授权的原始的原始资料料跟踪每个需求回溯到出跟踪每个需求回溯到出处,如用例,系,如用例,系统需求,需求,规章,或来自其他用章,或来自其他用户(特(特别是是Boss)的意)的意见。如果你不能如果你不能标识出出处,可能需求只是个,可能需求只是个镀金的例金的例子,没有真正的必子,没有真正的必须。70产品品规划十步法划十步法优先先权:为了表明在一个了表明在一个详细的的产品版本中品版本中应包含哪些要点,需包含哪些要点,需要要为每个需求,特征,或用例分配每个需求,特征,或用例分配实现的的优先先权。客客户或其代理都或其代理都应有有强烈的烈的责任建立任建立优先先权。如果所有的需求都被如果所有的需求都被视为同等重要,那么由于在开同等重要,那么由于在开发中,中,预算削算削减,减,计划超划超时或或组员的离开的离开导致新的需求致新的需求时,项目目经理将不能起理将不能起到作用。到作用。优先先权的作用是提供的作用是提供给客客户的价的价值,实现的相关的相关费用,用,实现相关相关联的有关技的有关技术风险。Must Have,Nice To Have,Can Delay71产品品规划十步法划十步法明确:明确:需求叙述的需求叙述的读者者应只能从其得到唯一的解只能从其得到唯一的解释说明,同明,同样,一个需求的多个一个需求的多个读者也者也应达成共达成共识。自然自然语言极易言极易导致含糊。要避免使用一些致含糊。要避免使用一些对于于SRS作者很作者很清楚但清楚但对于于读者不清楚的主者不清楚的主观词汇,如:,如:用用户友好性,容易,友好性,容易,简单,快速,有效,几个,快速,有效,几个,艺术级,改善的,改善的,最大,最小等等。最大,最小等等。每写一个需要都每写一个需要都应简洁,简单,直,直观的采用用的采用用户熟知的熟知的语言,不要采用言,不要采用计算机算机术语。检查需求模糊的有效方式包括需求需求模糊的有效方式包括需求说明明书的正的正规检查,根据需求写根据需求写测试,建立用,建立用户的假想来的假想来说明明产品某个特定品某个特定部分部分预期的特性。期的特性。72产品品规划十步法划十步法可可证实:看你是否能看你是否能够做出做出测试计划或其他划或其他验证方式,如方式,如检查和和实证,来决定在,来决定在产品中每个需求是否正确的品中每个需求是否正确的实现。如果需求是不可如果需求是不可验证的,决定需求是不是正确的的,决定需求是不是正确的实现就就成了判断的事。成了判断的事。需求之需求之间不一致,不可行,不明确也能不一致,不可行,不明确也能导致不可致不可证实。任何需求如果任何需求如果说产品将要支持什么品将要支持什么也是不可也是不可证实的。的。73产品品规划十步法划十步法完整完整 一致性一致性 可修改性可修改性 可追踪可追踪 74产品品规划十步法划十步法完整:不应该遗漏要求和必需的信息。完整性也是一个需求应具备的。发现缺少的信息很难,因为根本不存在。在SRS中将需求以分层目录方式组织,将帮助评审人员理解功能性描述的结构,使他们很容易指出遗失的东西。在需求抽象上,应用Use Case方法会发挥很好的作用。能够从不同角度察看需求的图形分析模型也可以检查出不完整性。使用TBD(to be determined)标准标志已知的缺失当你在构建产品的相关部分时,就可以从一个给定的需求集中解决所有的缺陷。如“Vista表现”75产品品规划十步法划十步法一致性:一致性:一致性需求就是不要于其他的软件需求或高级别的系统(商业)需求发生冲突。需求中的不一致必须在开发开始前得到解决。只有经过调研才能确定哪些是正确的。修改需求时一定要谨慎如果只审定修改的部分,没有审定于修改相关的部分,就可能导致不一致性。76产品品规划十步法划十步法可修改性:可修改性:当每个需求的要求修改了或维护其历史更改时,你必须能够审定SRS。每个需求必须相对于其他需求有其单独的标示和分开的说明,便于清晰的查阅。通过良好的组织可以使需求易于修改,如:将相关的需求分组,建立目录表,索引,以及前后参考Feature List.xls 是很好的工具77产品品规划十步法划十步法可追踪:可追踪:应能将一个软件与其原始材料相对应如高级系统需求,用例,用户的提议等。能够将软件需求与设计元素,源代码,用于构造实现和验证需求的测试相对应。可追踪的需求应该具有独立标示,细密和结构化的编写,不应过大,不应是叙述性的文字和公告式的列表。78产品规划十步法“产品应在不少于每60秒(?)的正常周期(?)内提供状态信息”“产品应瞬间在显示和隐藏不可打印字符间切换”“HTML分析器可以产生HTML标记错误报告,帮助HTML入门者快速解决错误”。“如果可能,主管号码应通过联机校验,而不是通过主全体主管号码列表校验”。79产品品规划十步法划十步法句子和段落要短采用主动语气使用正确的语法,拼写,标点使用术语保持一致性,并在术语表或数据字典中定义它们以开发人员的观点看需求是否被有效的定义需求编写者还要努力正确地把握细化程度要避免包含多个需求的长的叙述段落把正常流程和异常流程分开密切关注多个需求合成了单个需求 通篇文档细节上要保持一致避免在SRS中过多的重复需求在多处包含相同的需求可以使文档更易于阅读,但也会给文档的维护增加困难。文档的多份文本要在同一时间内全部更新,避免不一致性。使用Word的“超链接”功能!换位思考,不要太自信Review再Review,朗读自己的作品!当成高考作文来认真对待!80产品规划十步法文档标题:准确、言简意赅、遵守SCM规定给产品取个好的英文简称RTX Omni PCX插件插件软件需求件需求规格格说明明书修订记录 认真对待,仔细填写81产品规划十步法关关 键 词、摘摘 要要:就像写您的学位论文一样去写摘要可以最后补充,先标红免得忘记82产品规划十步法缩略略语清清单:对本文所用缩略语进行说明,要求提供每个缩略语的英文全名和中文解释。参考参考资料清料清单:请在表格中罗列本文档所引用的有关参考文献名称、作者、标题、编号、发布日期和出版单位等基本信息。83产品规划十步法引言引言背景背景A.用一个名字标识要生产的软件产品。B.说明软件产品将干什么,如果需要的话,还要说明这个软件产品不干什么。产品定品定义本节必须给出易发生混淆的术语的定义把把词汇表都放表都放这里里84产品规划十步法概述概述 1。系。系统描述描述一般整个系一般整个系统作一份,所有需求文档都作一份,所有需求文档都Copy2。系系统功能功能推荐用表格来推荐用表格来说明本文档所列的功能需求明本文档所列的功能需求3。开开发环境境一般整个系一般整个系统作一份,所有需求文档都作一份,所有需求文档都Copy4。开开发环境境一般整个系一般整个系统作一份,所有需求文档都作一份,所有需求文档都Copy85产品规划十步法产品需求品需求功能需求功能需求到肉了,把功能需求一个个的写到肉了,把功能需求一个个的写UI需求需求找找设计师性能需求性能需求天下文章一大抄天下文章一大抄把握把握产品重点的性能要求品重点的性能要求86常用方法和工具87产品规划十步法88产品规划十步法89产品规划十步法90产品规划十步法UML中的几种图表:动态的观察系统:Usecase图序列图(Sequence Diagram)协作图(Collaboration Diagram)状态图(Statechart Diagram)活动图(Activity Diagram)静态的观察系统:部署图(Deployment Diagram)组件图(Compoment Diagram)对象图(Object Diagram)类图(Class Diagram)91产品规划十步法请参考RUP 2000中文版本学习各种图表工具学习工作方法不是去学UML!记住:产品经理的图,应该是用户可看懂的不是程序设计图可以不用Visio,用Powerpoint就可以画出来不会超过One Page的规模,最好是Half a page92产品规划十步法仁爱、喜乐、和平、忍耐、恩慈、良善、信实、温柔、节制