组织架构
产品开发行政结构,一个Product Unit Manger,下设三个平级的部门经理,团队项目经理(Product Unit Manager),软件开发经理(Development Manager)和测试经理(Test Manager);每个部门经理管几个组长,每个组长下再有3到5个具体工作人员,如项目经理,软件开发人员与测试人员。
产品设计,产品实现和产品测试,三权分立,相互配合,相互制约,相互依赖,有助于建立明确责任制,从而保证产品开发的顺利完成。
软件开发与测试经理/组长,均为专业技术人员出身,能够指导部下工作或代替他们完成任务;这样人员的行政管理就是领域专家式管理,保证了开发从技术上思考和评判设计方面的问题。员工也会乐意接受能真正了解他具体工作的人领导,并给与充分的尊重,同时也能避免开发人员虚报所需工作日的情况。
微软行政级别决定员工工资,股权等福利待遇,而职务头衔与行政级别并不是直接挂钩的。技术人员只要能力强,贡献大,行政级别与工资,福利待遇可能同高层一样,不需成为经理或领导才能获得较高级别的待遇。这样他们可安心自己擅长的工作,其能力和贡献,可经不断的提级来得到认可和回报。
项目经理配置
随着软件产品项目规模增大,产品质量问题,开发周期问题,内部管理等问题越来越突出,必须从根本上加强项目的组织管理,从而微软产生了项目经理这一职位。
项目经理全权负责产品的最终完成,其任务涉及:了解用户需求;进行产品的功能定义,规划和设计;做各种复杂决策,保证开发队伍顺利开展工作,及跟踪程序的错误等。项目经理占开发总人数的1/5,即每个开发小组中,有一个项目经理,两个软件工程师,与两个软件测试工程师。
具体工作描述:
1) 制定产品远景计划,写出项目规格说明书;
确定商业机会后,产品单元经理制定出粗略的商业计划书,交项目经理准备项目计划草案,包括远景描述,主要功能,建议的时间表,里程碑及所需的资源。
主持由开发测试骨干参加的会议,对计划草案进行全面的分析讨论,确定主要功能模块。
对每一模块编写一页纸规模的设计说明书,包括功能优先级的制定与理由,对资源的估算,时间表的估算,风险评估,同其他功能块的关系;目的要评估实现这个功能块的成本,目标与条件。
召集产品单元经理,各部门经理参加的设计说明书评审会,汇总所有功能块说明书,对进度,功能块的取舍做总结和决定。
2) 制定工作详细任务表,跟踪任务的执行情况,保证其符合规格说明书的原始设计。
3) 指导项目开发的过程设计与实现;对各种具体方案进行取舍并做出决定。
4) 组织会议,评审程序错误;协调成员之间交互配合。
5) 产品完成后,主持项目总结报告会,讨论此次的经验与教训;下一版本的改进,及具体的行动计划。