对每一模块编写一页纸规模的设计说明书,包括功能优先级的制定与理由,对资源的估算,时间表的估算,风险评估,同其他功能块的关系;目的要评估实现这个功能块的成本,目标与条件。
召集产品单元经理,各部门经理参加的设计说明书评审会,汇总所有功能块说明书,对进度,功能块的取舍做总结和决定。
2) 制定工作详细任务表,跟踪任务的执行情况,保证其符合规格说明书的原始设计。
3) 指导项目开发的过程设计与实现;对各种具体方案进行取舍并做出决定。
4) 组织会议,评审程序错误;协调成员之间交互配合。
5) 产品完成后,主持项目总结报告会,讨论此次的经验与教训;下一版本的改进,及具体的行动计划。
项目经理要求
项目经理通过产品单元经理,对软件设计工程师和测试工程师的资源和任务分配进行调整,但不会直接下达行政命令;其核心任务是业务领导,掌握产品全局观念和进度,协调开发人员与测试人员的工作进度,及同与产品有关的其他人员接触,如市场,用户支持,客户教育等。
对团队的领导,主要依靠其个人威信(credit),开发人员和测试人员的尊重和配合;其威信来自于工作中表现出的领导力,洞察力和判断力,以及高素质的技术专长和出色的协调沟通能力。
1) 领导能力保证项目组的高效运作,如,召集每周的项目进度会议,确定工作日程并进行跟踪,提交项目进度报告。
2) 洞察力和判断力,有助于在复杂情况下,迅速找到问题症结所在,并提供解决对策。
3) 技术专长使其能真正帮助开发人员解决设计上难题,帮助测试人员分析和判断程序错误;懂得开发人员和测试人员的共同语言,使之感到你对他们的理解和尊重,从而赢得大家的信任。
项目经理面试问题:
1) 在过去做过的产品项目中,哪一个你觉得最自豪 ? 为什么 ?
2) 你解决过的最难的技术设计问题是什麽?为什麽采用那种解决方案?
3) 你有什麽项目是按计划的时间完成的?未能按时完成的原因主要是哪些方面?
2. 软件开发过程 software development in Mircosoft
1) New product project 提议 ;
2)市场分析预测 <是否有用,是否是需要的>;
3)技术可行性分析 <是否能够实现>;
4)产品研发计划和实施步骤;
5)高层论证和审批 <支持者>;
6)项目确立和执行 <人力资源和财务资源的配置>
3. 微软项目管理-- 多里程碑式流程
每个里程碑完成部分功能;便于团队集中力量完成一个又一个功能;提供多个机会以适应需求的更改
如何完成一个里程碑
步骤一: 达成共识 Vision / Scope Approved Milestone
基本完成需求调研和分析 (产品经理负责); 确定大方向和长中短期目标,Vision来说明,并激励团队; 评估Opportunities & Risks;分析可利用资源限制,证明该产品值得去做;
项目管理团队:设计新产品目标,具体实现方法;描述产品结构,用户情景覆盖80%以上功能。
软件开发团队:开发技术原型,检验新产品价值,并展示产品未来预期。
步骤二: 完成项目计划 Project Plan Approved Milestone
定义详细的逻辑设计,功能设计规范(项目经理负责),其优先级;所有角色参与审阅功能规范;
评估进度控制风险,功能技术风险; Risk Assessment 通常在物理设计之后,立即执行。
制订总体开发计划和进度表,包括 资源与职责的分配,制订测试,开发计划和进度表;
产品管理团队:概念设计和市场推销计划/进度表;
软件开发团队:物理设计和开发计划/进度表,Task-level Estimating。
步骤三: 完成功能 Scope Complete / First Use Milestone α Version Phrase
版本化的功能规范,完成全部功能代码的编写; All features built to specification
及时进行模块间的整合,及时发现问题(daily build);版本控制工具 VSS ;
测试团队:测试规范 与Test Case 设计,BMS缺陷跟踪,实现解决Bug自动流程;
产品管理团队:控制用户的期望,推销,价格,包装(正式产品为 Golden Release)
项目管理团队:项目跟踪/沟通,按照综合进度表不断检查进度; 制定β版本计划。
步骤四: 稳定与发布 Release Milestone β Version Phrase
全面地测试功能;开发组全力配合解决Bug;决定哪些Bug到下个版本中解决;
预测发布日期 ;编写操作手册与帮助文档;
基于版本发布:每一个版本有明确清晰的目标,解决或终结产品中的某些问题;
成立Triage小组:由PM,Dev与Test的负责人组成,决定对发现Bug的处理。
三. 微软的开发管理经验:100%以Bug为核心
Bug 追踪归类:
Fixed:已修复或更正; Duplicated: 某bug以被别人找出来了; Won't fix:可忽略不计
Postponed:此bug不很重要,可推迟到下一阶段解决,或更正风险太大,bug本身影响有限;
By design :不符合逻辑,也不符用户需求,但同设计吻合;
Not repro :某bug自动消失,可能处理其他bug时,一并修复了。
1.Bug 及常见类型
功能未实现,和规格说明书不一致; 不能工作:死机,没反应;不兼容; 边界条件
界面、消息、提示不够准确,不友好;把尚未完成的工作也作为一个Bug;文档与帮助信息中的缺陷
4. RAID/BMS的基本功能
完整的Bug数据库; 整个产品组的中央记录和控制; 强大的查询功能,有效地跟踪项目的状态
所有的记录无法删除,对于每个记录只能一直添加内容;丰富的报表功能,为产品发布提供判断标准
5. Bug 记录中的有效信息
状态; 负责人; 问题种类; 严重级; 优先级; 修改时间; 登记时间