Shannon Sun 微软.NET工具开发组总监 成功的驱动者 ——微软程序经理 Shannon Sun 微软.NET工具开发组总监
日程 什么是程序经理 程序经理在项目周期中的任务 程序经理的策略
什么是程序经理 程序经理在项目周期中的任务 程序经理的策略
什么是程序经理? 微软产品组三大工作种类之一 是准时发布高质量的、全面符合客户需求的产品的总负责人 需要具备综合的管理能力;但又是没有权威的领导者
产品组组织结构
项目团队分工结构 程序经理 开发主管 开发人员 测试主管 测试人员 产品经理 客户教育 易用性工程师 设计人员
产品开发 ≠ 编写代码 市场和商业模式 产品设计和规格书 里程碑,进度表 阶段会议,bug的跟踪 测试 国际化和本地化 用户文档,教育和培训 产品支持
为什么需要程序经理 软件变得越来越大 团队需要在远景和广度方面的领导 开发和测试人员分别需要在开发和测试上留有缓冲时间 团队之间,以及与客户需要有效的沟通 在工程和业务之间存在隔阂 团队缺乏领导能力和沟通技巧
项目经理的工作重点 唯一的职责是保证产品的发布 项目经理是领导者、推动者和协调者。 掌握产品前景,攥写产品规格书 制定工作项目,检查产品规格书的实施情况 掌握“三国会议”(Bug Triage Meeting)和 “战争会议”(War Meeting) 对整个项目的进程进行追踪 指导产品开发进程 负责软件产品发行工作的管理 协调各个团队的工作以及团队间的沟通 项目经理是领导者、推动者和协调者。
项目经理 vs. 程序经理 一个人 vs. 一群人 管理人 vs. 管理项目 授予权威 vs. 赢得权威
什么是程序经理 程序经理在项目周期中的任务 程序经理的策略
产品周期 规划阶段 开发阶段 稳定阶段 发布阶段 总结 后续版本新的周期的开始
程序经理在规划阶段 准备项目的计划,包括产品前景说明、高层次的功能设计、产品开发进度、设定项目的里程碑、预估所需的资源 小组头脑风暴会议,确定产品的功能 攥写简单产品规格书,包括功能(按优先级),所需的资源,预计的进度,预计的风险 攥写详细设计说明
程序经理在开发阶段 审查开发人员的进展、技术实施规格书、测试计划和测试用例 主持会议安排工作项目、分派任务、确定进度 定义、执行开发过程中的版本构建,check-in和bug triage 组织会议进程,主持会议,检查工作 维护管理内网及内部沟通(team alias)
程序经理在稳定阶段 每天召开Triage会议讨论Bug和快速分配谁修复Bug 代码完成,界面冻结 对产品的性能进行权衡,管理设计变更请求DCR (Design Change Request) 同客户教育,本地化工程师和法务部门沟通 管理内部和外部Beta版的发布
程序经理在发布阶段 到达ZBB反弹日期,并产生候选发布版 进行作战会议来审查每天的Bug 对于showstopper事件进行决策 推动测试进程,直到最终测试通过并签字 停工并发出通知 开庆功会!
程序经理在总结阶段 准备文档来描述项目周期中发生的好事或坏事 决定将来需要改善的地方 列出每个团队或个人的行动计划,直到下一个周期开始 组织项目组会议 准备文档来描述项目周期中发生的好事或坏事 决定将来需要改善的地方 列出每个团队或个人的行动计划,直到下一个周期开始
什么是程序经理 程序经理在项目周期中的任务 程序经理的策略
程序经理核心能力 - IQ 编码技能 架构设计的能力 用户界面设计的能力 进行API和界面设计能力 洞悉用户的技能 写作或口头,正式或非正式沟通能力和沟通技巧 演讲表述能力 财务知识 基本的商务知识,合同、专利和版权法的基础知识 市场调研技能 了解竞争对手 能快速学习和使用任何软件 ……
程序经理核心能力 - EQ 聪明睿智 领导能力 自律能力 合同和商务谈判 对机密信息保守秘密 交际技能 计划和项目管理 时间管理 组织技巧 团队精神 招聘、面试及雇用 ……
谁能成为程序经理 对软件产品开发充满激情,有领导力并有责任感 对设计有很强的兴趣,对技术有敏锐的认识 对时间和计划有敏锐的感知,能够跟踪和排列复杂任务的优先级 通常自己独自找到解决问题的办法或能寻求到别人的帮助 能够快速且自信地做出决定,愿意做出权衡
小结 PM是一个独特的职位,他们对于微软开发出成功的产品功不可没 PM在整个产品生命周期中定义并管理项目进程
谢谢!