第1页共10页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第1页共10页对软件研发项目管理的深入探讨第一章简介1.1研究背景我之前曾在厦门一家中等规模(合计开发人员50人)的软件公司担任项目经理,开始由于对软件工程的不怎么重视,一些失败的软件项目给我留下了极深的映象。在失败和困惑中,我们开始反思,也总结了一些经验教训。后来,我们在开发过程中引入了MSF(MicrosoftSolutionsFramework)软件开发模型,并结合公司的具体情况进行了裁减。实践证明,我们的软件工程过程管理能力大为提高,软件的质量也有较大程度的提高,软件的交付期也得到了基本保证,已经没有再发生那种“永远也完不成项目”的情况。1.2研究动机在这篇文章中,主要谈论了在产品开发中的项目管理问题,此处的“产品开发”是指做一个通用的软件产品或者一些具体的领域性系统集成项目。下面我主要结合我们公司实施MSF的情况,谈谈自己对软件工程的一些初步看法。第二章MSF概要介绍MSF主要由几个模型构成,其中包括:组队模型、开发过程模型、应用模型、风险管理模型。下面只对组队模型进行较详细的介绍,其他模型则简要说明,更详细的资料请查阅[2]。2.1组队模型MSF把软件开发分成了六个小组,分别是:程序管理组、产品管理组、开发组、用户培训组、测试组、安装管理组。组队的原则是小队(一般3-8人)、多侧面;角色交叉、目标一致;人员技术、业务精;关注能力和交货期;对项目的前景认识一致;人人参与设计;善于总结经验;共同管理、共同决策,项目人员同地工作等。程序管理组的工作是:①推动开发过程;②负责产品规范说明;③沟通和协调各组关系;④管理项目进度,报告项目状态;第2页共10页第1页共10页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第2页共10页⑤把握总体决策。产品管理组的工作是:①代表客户(customer);②描述项目产品轮廓;③负责需求定义;④平衡功能和进度要求;⑤负责市场、宣传、公共关系等。开发组的工作是:①概要、详细设计;②完成产品开发;③准备安装的产品。测试组的工作是:①制定测试策略和计划;②尽可能发现问题。用户培训组工作是:①代表终端用户(enduser);②负责用户需求定义;项目管理者联盟文章③把握可用性和用户性能指标。项目管理培训安装管理组工作是:①负责产品安装;②把握可管理性和可支持性。项目管理培训各组的地位同等,非领导关系,并充分授权,保证目标清晰一致,由各组的负责人共同管理项目。项第3页共10页第2页共10页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第3页共10页目管理者联盟2.2过程模型项目管理者联盟文章MSF过程模型主要确立了四个重要的里程碑:前景范围确认、项目规划确认、开发完成、对外发布,通过控制这四个里程碑来分解管理项目过程。2.3应用模型项目管理论坛MSF应用模型是分层次的应用模型,大体可分为三层,用户层、业务层和数据层,各层次通过标准组件进行封装,互相通讯调用来完成系统任务。项目管理论坛2.4风险模型MSF风险管理过程主要包括:风险识别、风险表述,通过分析、计划、跟踪和控制过程,最终解除风险。第三章MSF在项目中的具体应用项目经理圈子3.1组队模型裁减在中小软件企业中,一般项目的规模不会太大,通常是十几个人,少的只有几个人,所以必须对MSF的组队模型进行简化。通常的做法是划分成三个组,程序管理组:一般对应于原来的项目经理,通常就项目经理一个人,如果需要还可以给他配个组手,通常称为“项目秘书”;产品管理和测试组:一般包括MSF中的产品管理组,测试组、用户培训和安装管理,主要代表用户确定软件需求并测试产品是否满足需求;开发组:和MSF的开发组相同。这样的组队,比较符合中小项目的需要,在实践中也证明是比较合理的。首先,确立项目经理角色,符合一般公司的管理模式,比较容易被接受。如果有多人同时负责的话,容易产生责权理不清楚,互相扯皮的现象。有一个项目经理对项目完全负责,遇到问题容易很快得到解决;他作为项目组代表,负责向上级汇报工作,能使其他人全力投入到项目中,而不至于在日常的事务中耽误太多时间,从而在某种程度上也提高...