PO是product owner,是一个role,负责与stakeholders打交道,提炼stakeholders的需求,按照需求的价值以及紧急程度安排优先级。PO是一个角色,对product backlog负责,通俗地讲,product backlog上的条条目目应该长什么样子,PO都有一个清晰的picture;抽象点讲,每个user story的acceptance criteria对于PO而言是确定的。PO为每个user story设定一个goal,scrum team的工作就是hit the goal,让PO心中所想的那个user story成为现实。
 
PM是product manager,是一个titile。可以由PO或者BSA来冠名,这里讲BSA作为PM的职责。PM负责管理产品的需求和研发。PM往往需要了解PO的需求,把这些需求转化成产品的一个个feature,然后依托其技术背景,与团队一起讨论出实现的可行性方案;(注:这里,PM可能未必要100%地满足PO的需求,在可控范围内,提出一个满足product vision的折中方案,使得product team和product owner双赢)同时,PM是product的管理者,并非people的管理者,所以PM侧重点是产品的特性features的管理与研发,在规范化的控制流程(比如Scrum的框架)下与各个团队功能角色一起工作,管理产品的研发进度,确保产品高效地以及高质量地发布上线。
 
需求的角度看待这几个角色:
Stakeholder <-> PO(关注 businessman 需要什么) <-> PM (关注 用户的需求可以成为Product的features吗,如果是则把user story转化为product features,如果不是则workaround)
 
上述可能有点抽象,为了阐述清楚PO和PM的区别,这里举个例子:
PO提出一个user story:我要一个登录界面供注册用户登录网站(PO脑子里想像的登录界面的样子(Acceptance Criteria)就是很简单的一个用户名输入框+密码输入框+提交按钮的功能性需求)
PM根据这个用户需求细化该注册用户登录界面的feature:1. UI 设计(可能是第一稿):配色,输入框、按钮、链接的风格样式,排版 2.登录功能(存在用户+不存在用户;正确密码和非正确密码) 3. 忘记密码链接和恢复密码的功能 4. SQL注入防范 5. 穷举式攻击防范(验证码)等等。而且,PM还需与技术团队共同商讨实现这些feature的可行性方案、难点,可能存在上线延期的风险等等。feature是对user story的详细化的设计,同时拆分了user story为多个小的story,这些小的story可以在若干个sprint完成。
所以PO是从用户功能的角度提出功能性需求(粗放型),PM则是从产品设计的角度把功能需求细分为多个feature(集约型)并确定实现方案的角色。

项目中PO、PM的职责区分的更多相关文章

  1. java 项目中几种O实体类的概念

    经常会接触到vo,do,dto的概念,本文从领域建模中的实体划分和项目中的实际应用情况两个角度,对这几个概念进行简析. 得出的主要结论是:在项目应用中,vo对应于页面上需要显示的数据(表单),do对应 ...

  2. Web API项目中使用Area对业务进行分类管理

    在之前开发的很多Web API项目中,为了方便以及快速开发,往往把整个Web API的控制器放在基目录的Controllers目录中,但随着业务越来越复杂,这样Controllers目录中的文件就增加 ...

  3. Maven项目中的pom.xml详解【转】

    什么是pom? pom作为项目对象模型.通过xml表示maven项目,使用pom.xml来实现.主要描述了项目:包括配置文件:开发者需要遵循的规则,缺陷管理系统,组织和licenses,项目的url, ...

  4. Jquery和Javascript 实际项目中写法基础-弹出窗和弹出层 (4)

     一.实际项目中有很多如下界面效果.    二.该效果可以归结为弹出窗或者弹出层来实现的,为什么这么说?看如下代码:      <!DOCTYPE html> <html> & ...

  5. 使用SeasLog打造PHP项目中的高性能日志组件(一)

    云智慧(北京)科技有限公司 高驰涛 什么是SeasLog SeasLog是一个C语言编写的PHP扩展,提供一组规范标准的功能函数,在PHP项目中方便.规范.高效地写日志,以及快速地读取和查询日志. 为 ...

  6. iOS-旧项目中手动内存管理(MRC)转ARC

    在ARC之前,iOS内存管理无论对资深级还是菜鸟级开发者来说都是一件很头疼的事.我参 加过几个使用手动内存管理的项目,印象最深刻的是一个地图类应用,由于应用本身就非常耗内存,当时为了解决内存泄露问题, ...

  7. 如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架

    一直准备写这么一篇有关 SSIS 日志系统的文章,但是发现很难一次写的很完整.因为这篇文章的内容可扩展的性太强,每多扩展一部分就意味着需要更多代码,示例和理论支撑.因此,我选择我觉得比较通用的 LOG ...

  8. 谈谈MVC项目中的缓存功能设计的相关问题

    本文收集一些关于项目中为什么需要使用缓存功能,以及怎么使用等,在实际开发中对缓存的设计的考虑 为什么需要讨论缓存呢? 缓存是一个中大型系统所必须考虑的问题.为了避免每次请求都去访问后台的资源(例如数据 ...

  9. Xamarin.Froms项目中包含的文件

    Clearly, the program created by the Xamarin.Forms template is very simple, so this is an excellent o ...

随机推荐

  1. [UE4]让箭头保持水平

    如图所示,当手柄前后左右转动的时候,箭头也会跟着转动,我们的目标是要求箭头紧贴着地面,不会跟着手柄前后左右转动. 分析上图坐标系可以知道,只要让箭头绕着Z轴转动就可以了,不需要绕着X轴和Y轴旋转. 

  2. 转载 修改oracle用户密码永不过期

    1.查看用户的proifle是哪个,一般是default: sql>SELECT username,PROFILE FROM dba_users; 2.查看指定概要文件(如default)的密码 ...

  3. 刘志梅201771010115.《面向对象程序设计(java)》第十六周学习总结

    实验十六  线程技术 实验时间 2017-12-8 1.实验目的与要求 (1)当线程的run方法执行方法体中最后一条语句后,并经由执行return语句返回时,或者出现了在方法中没有捕获的异常时,线程将 ...

  4. Problem A: Apple(高斯消元)

    可以发现具有非常多的方程, 然后高斯消元就能85分 然而我们发现这些方程组成了一些环, 我们仅仅设出一部分变量即可获得N个方程, 就可以A了 trick 合并方程 #include <cstdi ...

  5. TreeMap中文排序,TreeMap倒序输出排列

    1.TreeMap集合倒序排列 import java.util.Comparator; /** * 比较算法的类,比较器 * @author Administrator * */ public cl ...

  6. Promise实现ajax

    利用Promise实现ajax GET function getAjax(url) { return new Promise((resolved,rejected)=>{ //创建ajax对象 ...

  7. windows快速搭建FTP工具Serv-U FTP Server

    本文介绍一个简单的FTP工具,当然windows系统自带FTP工具,但是配置方法没有第三方工具来的简单可操作性好. 此工具用于搭建FTP环境,对于需要测试FTP上传功能具有极大帮助.例如球机抓拍图片上 ...

  8. 用360清理了一下电脑后发现Eclipse软件无法打开

    今天用360安全卫士清理了一下电脑,然后双击Eclipse软件发现不能打开,弹出以下界面: 解决方法如下: 打开计算机-属性-高级系统设置,修改系统变量里变量名为JAVA_HOME.CLASSPATH ...

  9. 使用events.EventEmitter 控制Node.js 程序执行流程

    使用events.EventEmitter 控制Node.js 程序执行流程 标题写的可能也不太对,大家领会精神: Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台. ...

  10. P1348 Couple number

    题目描述 任何一个整数N都能表示成另外两个整数a和b的平方差吗?如果能,那么这个数N就叫做Couple number.你的工作就是判断一个数N是不是Couple number. 输入输出格式 输入格式 ...