在网上哪里可以找到更详细的关于软件工程的项目管理计划?
根据PMBOK2000,项目计划可包括以下要素:
1,项目范围描述
项目范围说明书说明开展本项目的原因或意义,形成项目的基本框架,以便项目业主或项目经理对项目的关键问题和项目形成中的交互要素进行系统的、逻辑的分析,项目利益相关方在项目开始实施或项目相关文件编制前就项目的基本内容和结构达成一致;项目范围说明书应形成项目成果检查表,作为项目评估的依据,并在项目终止后或项目最终报告完成前进行评估,作为评价项目成败的依据;范围说明书还可以作为在整个项目生命周期内监测和评估项目实施情况的基础,以及项目的其他相关计划。
2、工程进度计划
进度计划是说明项目中每项工作的开发顺序、开始时间、完成时间和相互依赖关系的计划。通过进度计划的编制,项目实施形成一个有机的整体。进度计划是进度控制和管理的基础,可分为项目进度控制计划和项目状态报告计划。
在进度控制计划中,需要确定哪些工作应该进行监督,何时进行监督,由谁负责监督,如何收集和处理项目进度信息,如何按时检查工作进度,采取什么调整措施,并将这些控制工作所需的时间、人员、技术和物质资源纳入项目总计划中。
3、项目质量计划
质量计划为待确定的具体项目安排质量监控人员和相关资源,并规定使用哪些体系、规范、程序和标准。项目质量计划应包括与确保和控制项目质量相关的所有活动。质量计划的目的是确保项目的质量目标能够实现。根据ISO9001和PMBOK2000的要求,为实现质量目标,组织应遵循以顾客为中心、主导作用、全员参与、过程方法、系统管理方法、持续改进、基于事实的决策方法和互利的供应商关系等八项质量管理原则。
4.项目资源规划
有了项目范围计划和进度计划,资源计划就决定了什么样的资源(人、材料、设备、信息、资金等。)要用在项目的各项工作中,每个阶段要用多少资源。项目成本计划包括资源计划、成本估算和成本预算。
5.项目沟通计划
沟通计划是对项目过程中项目利益相关者之间信息交流的内容、人员范围、沟通方式、沟通时间或频率的约定。
6.风险对策计划
风险对策计划是为了减少项目风险的损害而分析风险和制定风险应对策略的过程,包括识别风险、量化风险和制定风险应对策略。
7、项目采购计划
项目采购计划的过程是确定哪些项目需求可以通过从企业外部采购产品或设备来满足。如果是软件开发工作的采购,也就是外包,那么应该同时制定一个监控外包进度和质量控制的计划。
8、变更控制、配置管理计划
由于项目计划不能从一开始就保证非常准确的预测,也不能保证在项目进行过程中进行准确有力的控制,所以经常会出现项目计划与项目实际情况不符的情况,因此需要有效地应对项目变更。变更控制计划主要规定变更的步骤和程序,配置管理计划是确定项目的配置项和基线,控制配置项的变更,维护基线的完整性,向项目涉众提供配置项的准确状态和当前配置数据。
二、项目规划流程
由于软件开发的手工性和个体性,软件开发项目计划不可能是静态的计划。在项目开始时,可以先制定一个相对粗粒度的项目计划,先确定项目的高层活动和预期的里程碑。粗粒度的项目计划是需要不断更新迭代的,要根据项目的规模和性质以及项目的进展进行迭代调整。迭代调整的周期也是根据项目的情况制定的,一般短则一周,长则两个月。经过不断的规划、调整和修改,项目计划从最初的粗粒度变成了非常细致。这样的计划将持续到项目结束,直到项目的成果出现。
制定计划的过程是一个逐渐了解项目的过程。项目经理通过精心制定计划,可以知道哪些要素是明确的,哪些要素是要逐步明确的,通过逐步细化不断完善项目计划。阶段计划中包含的工作报告和下一阶段工作安排是把握项目进度的基础。只有将阶段计划与总体计划进行对比,才能对工作进度一目了然。制定计划的过程也是在进度、资源、范围之间寻求平衡的过程。制定计划的本质不是写一份好看的文件,而是用你的智慧去应对各种问题和风险,尽可能做前瞻性的思考。一旦负责任地完成了计划,他就能给自己一个与管理层或客户沟通协商的基础,帮你预防项目过程中出现的各种问题,帮你保证项目按时完成。
企业决定立项时,一般会出具项目立项文件,暂称为“项目立项文件”。主要内容是要遵循的合同或相关协议,项目的大致范围,项目结束的期限和一些关键时间,项目经理和部分项目成员的任命等等。
下一个项目计划一般按照以下流程编制:
1成立项目组:相关部门收到批准的立项文件及相关材料后,由立项文件中指定的项目经理组织项目组。随着项目的进展,成员可以在不同的时间加入项目团队,或者在分配的工作完成后退出项目团队。但是最好是在项目开始的时候参加项目启动会,了解总体目标,计划,尤其是自己的目标和职责,加入时间等等。
2项目开发准备:项目经理组织前期加入的项目组成员,准备项目工作所需的规范、工具和环境。如开发工具、源代码管理工具、配置环境、数据库环境等。前期加入的项目组成员主要由计划经理和系统分析师组成,但即将做出的项目计划必须尽可能在所有项目组成员和项目干系人之间进行充分的沟通。如果项目存在一些关键的技术风险(会影响到项目的成败),项目经理在这个阶段要组织人员进行预研。预研究的结果应留下书面结论供审查。
注意:项目计划必须准确定义项目目标、阶段目标和相应阶段的各项任务,即进一步细化相应阶段的项目目标;特别是,在概要设计完成和详细设计或编码实现开始之前,应细化下一阶段的目标和任务。应充分调查和掌握影响项目计划的所有内部和外部因素;应该尽可能全面地分析项目的工作分解结构。通过分析项目的工作分解结构,不仅可以得到项目的静态结构,而且可以通过逻辑分析得到项目工作任务之间的动态工作流。应分解项目目标和任务,制定详细的实施方案。
3项目信息收集:项目经理通过分析收到的项目相关文档,并进一步与用户沟通,组织项目组成员在规定时间内尽可能全面地收集项目信息。项目信息收集要注意充分高效的沟通,做到* * *知情。有些成员认为文件(计划、要求、周计划等。)通过电子邮件发送都是在沟通不充分的情况下完成的。成员看了之后,对自己的能力或意愿不理解或不认同,但通过邮件沟通的效率并不高。这可能是一个习惯性的问题,也可能关系到一个具体的问题是否可以很容易的通过邮件沟通清楚。所以重要内容需要开会问答;a讨论,确保所有重要问题都得到理解,最终达成* * *理解。研讨会上达成的内容应该以书面形式记录下来,并落实到具体的文件中。
4.编写软件项目计划
项目经理负责组织软件项目计划的编制。软件项目计划是项目计划活动的核心输出文档,它包括计划的主体和附件形式的其他相关计划,如配置管理计划。软件项目计划的编制参照GB 8567-88《计算机软件产品开发文档编制导则》中项目开发计划的要求。在建立ISO9001质量管理体系或CMM的过程中,企业也会建立相应的软件开发项目计划规范。
项目规划过程应分为以下步骤:
a、确定项目的可交付成果。这里的项目可交付成果不仅指项目的最终产品,也指项目的中间产品。例如,一般情况下,软件开发项目的项目产品可以是:需求说明书、概要设计说明书、详细设计说明书、数据库设计说明书、项目阶段计划、项目阶段报告、程序维护说明书、测试计划、测试报告、程序代码和程序文件、程序安装文件、用户手册、验收报告、项目总结报告等。
b、任务分解:从项目目标出发,自上而下,逐层分解,确定实现项目目标必须完成的工作,并画出完整的工作分解结构图。软件开发项目在开始的时候,可能只分阶段,比如需求分析、架构设计、编码、测试等等。当然,规模大的时候,需求和设计也可以分成不同的任务。但是,特别是当大纲设计完成后,可以横向细化下一阶段的目标和任务。
c、在资源相互独立的假设下,确定任务之间的相互依赖关系,从而确定每个任务开始和结束时间的顺序;获取项目工作任务之间的动态工作流。
d、确定每项任务所需的时间,即根据经验或应用相关方法确定任务所需的时间;确定每项任务所需的人力资源要求,如需要什么技能、知识、经验、熟练程度等。
e、确定项目组成员可以支配的时间,即每个项目成员花在项目上的确切时间;确定每个项目团队成员的角色构成、职责、关系和沟通方式。
f、确定管理工作,管理工作是贯穿项目生命周期的,如项目管理、项目会议等。,写阶段报告。项目团队成员之间以及项目团队成员与其他项目利益相关者之间的沟通时间也容易被忽略,很难用固定的方式量化和安排沟通时间。但这些工作都要在计划中充分考虑,回归到项目计划中,有效减少因计划不合理造成的项目进度延误,才更合理。
g、根据以上结果,编制项目总体进度计划,进度计划应反映任务名称、责任人、开始时间、结束时间,以及应提交检查的工作成果。
H.考虑项目的成本预算,可能的风险分析和对策,需要公司内部、客户或其他方协调或支持的事项。
5软件项目计划的评审和批准
项目计划评审和批准的目的是使相关人员理解,减少不必要的错误,使项目计划更加合理有效。
项目经理在完成软件项目计划后,首先组织项目组内的项目组长、测试组长、系统分析组长、设计组长、质量主管对项目计划进行评审。评审可以通过电子或会议的方式进行,阶段性成果的记录在项目组内部进行评审。应要求所有相关人员在收到软件项目计划后的约定时间内给出反馈。项目经理确保所有人员都同意项目计划中列出的内容。这种一致性要求所有项目组成员对项目计划的内容做出承诺,他们不能做出承诺或达成一致。要么他们修改项目计划以适应部分项目组成员,要么部分项目组成员采取折中措施以适应项目计划的要求。
项目经理将商定的软件项目计划提交给主管该项目的高级领导或其授权人员审批,审批的完成时间不得超过预先约定的时间。对于重大项目,过程控制部门如质量管理部门和主管项目的领导应同时审批软件项目计划。
经批准的软件项目计划作为项目活动的依据,也是企业对项目进行控制和检查的依据,必要时根据项目进展实施计划变更。
项目质量主管应根据软件项目计划和软件开发项目质量计划说明书编制软件开发项目质量计划。大型项目应编制单独的软件开发项目质量计划;规模较小的可以在软件项目计划的一个章节中解释“软件开发项目质量计划”,或者单独准备一个类似于“软件开发项目质量控制表”的文档。
配置管理员根据计划准备项目配置管理计划。基于项目工作计划中的阶段成果,按照配置管理计划规范编制配置管理计划,项目经理批准配置管理计划并对其有效性负责。
项目计划工作完成后,软件项目计划通过评审。一般来说,对于软件开发项目,工作转向需求分析阶段。
三。项目计划内容的确定
项目计划的内容一般按以下流程确定:
1确定项目概况
合同项目以合同和招标文件为依据,非合同项目以项目可行性研究报告或前期研究成果为依据,界定项目范围和约束条件,在此基础上界定项目交付成果。进一步明确项目的工作范围和参与项目各方的责任。
2确定项目小组
确定项目团队的组织结构和与项目开发相关的职能组织,包括管理、开发、测试、QA、评审和验收。确定项目小组成员及分工。与相关人员协商确定项目团队的组成。如果内部无法满足人员需求,应提交人员支持申请。
3.明确项目组内外的合作与沟通。
明确与用户单位的沟通方式。明确最终用户、直接用户及其所属企业/部门的名称和联系电话。更多的客户参与是项目成功的重要推动力。在开发过程中加强与用户的项目经理或合作人员的主动沟通,有助于加强客户和其他项目的参与。建议以周报或月报的形式公布项目的进展情况和下一阶段的计划,以及需要客户协调或了解的问题。
当项目组需要与外部单位合作开发时,应明确与合作单位的沟通方式。确定协作单位名称、负责人姓名、承担的工作、实施者姓名和联系电话。
明确部门名称、经理、承担的工作内容以及企业内部负责实施工作的人员姓名和联系电话。阐明项目团队的沟通活动。对于项目组成员超过3人的项目,应组织召开项目组周会,项目组应采用统一的通讯系统,建立项目组的通讯空间。
4规划发展环境与规范
解释工具、开发环境、测试环境等。用于系统开发。列出项目开发应遵守的开发技术规范和行业标准。由于该企业没有标准化的开发技术,项目经理应组织人员制定该项目将遵循的规则。
5.准备工作进度计划
根据企业的规定和项目的实际情况,确定项目的工作流程。制定项目的工作计划,这是一个高层次的计划。每个阶段的工作进度应包括完成文档成果、提交文档成果供审核和修改的时间,每个阶段结束的标志是成果的发布。计划中应明确以下内容:
一、工作任务分工;
B.显示项目每个阶段或迭代的时间分配的时间线或甘特图;
c、确定主要里程碑、阶段成果;
要求用文字解释项目工作计划。最后用一个时间表来充分说明整个工作计划;对于迭代开发项目,应该制定第一阶段计划。阶段内任务划分以2-5天为宜,特殊任务时间跨度在两周以内;在项目过程中,项目经理编制双周工作计划,指导成员的具体工作。
6.准备项目的监控计划。它解释了进度控制、质量控制、版本控制、预算控制等。
7 .编制项目风险计划,分析项目过程中可能出现的风险及相应的风险对策。对于大型项目,建议以附件的形式进行编制,方便持续更新。
8.制定辅助工作计划。根据项目需要,如培训计划和招聘计划。
规划开发支持工作,如供应商管理计划。
10规划项目验收:制定项目验收方案。这项工作可以根据需要减少。
11策划项目收尾及交接活动。制定项目的验收和培训以及项目进入维护阶段时向技术支持部门的移交。参考
管理软件开发项目(第二版)尼尔·惠滕(软件项目管理系列,孙艳春等译。);
《IT项目管理》凯西·施瓦尔贝(王金玉等译。);
《项目管理——计划、进度和控制的系统方法》(第7版)哈罗德·克兹纳(电子工业出版社,杨爱华等译);
实用软件工程(第二版),尹仁坤,陶(清华大学出版社)
软件工程:实践者的研究方法(第五版);
罔O9001:2000: 2000质量管理体系要求;
高级项目管理基础(信息产业部计算机信息系统集成高级项目经理培训讲义);
《成功的项目管理》Trevol L Young(泰晤士报商业版,闫红娟译);
《成功的项目管理》杰克·吉多&詹姆士·p·克莱门茨(21世纪管理经典教材系列,张锦程等译。);
《如何做好项目管理》Stanley e . Portny(《IDG新经济商业实务傻瓜丛书》,宁军等译。);