1、 软件项目计划书一、项目计划书格式根据GB856788 计算机软件产品开发文件编制指南中项目开发计划的要求,结合实际情况调整后的项目计划书内容索引如下:1 引言1.1 编写目的1.2 背景1.3 定义1.4 参考资料1.5 标准、条约和约定2 项目概述2.1 项目目标2.2 产品目标与范围2.3 假设与约束2.4 项目工作范围2.5 应交付成果2.5.1 需完成的软件2.5.2 需提交用户的文档2.5.3 须提交内部的文档2.5.4 应当提供的服务2.6 项目开发环境2.7 项目验收方式与依据3 项目团队组织3.1 组织结构3.2 人员分工3.3 协作与沟通3.3.1 内部协作3.3.2 外部
2、沟通4 实施计划4.1 风险评估及对策4.2 工作流程4.3 总体进度计划4.4 项目监控4.4.1 质量控制计划4.4.2 进度监控计划4.4.3 预算监控计划4.4.4 配置管理计划5 支持条件5.1 内部支持(可选)5.2 客户支持(对项目而言)5.3 外包(可选)6 预算(可选)6.1 人员成本6.2 设备成本6.3 其它经费预算6.4 项目合计经费预算7 关键问题8 专题计划要点二、项目计划书的编写说明1 引言1.1 编写目的说明编写这份项目计划的目的,并指出预期的读者。作用:本节是为了说明编制“项目计划书”亦即本文档的意图和希望达到的效果。注意这里的“目的”不是“ 项目目标”,而是
3、为了说明本文档的目的与作用。“项目目标”在 2.1 中说明。意义:使项目成员和项目干系人了解项目开发计划书的作用、希望达到的效果。开发计划书的作用一般都是“项目成员以及项目干系人之间的共识与约定,项目生命周期所有活动的行动基础,以便项目团队根据本计划书开展和检查项目工作。”例如可以这么写:为了保证项目团队按时保质地完成项目目标,便于项目团队成员更好地了解项目情况,使项目工作开展的各个过程合理有序,因此以文件化的形 式,把对于在项目生命周期内的工作任务范围、各项工作的任务分解、项目团队组织结构、各团队成员的工作责任、团队内外沟通协作方式、开发进度、经费预算、 项目内外环境条件、风险对策等内容做出
4、的安排以书面的方式,作为项目团队成员以及项目干系人之间的共识与约定,项目生命周期内的所有项目活动的行动基础, 项目团队开展和检查项目工作的依据。常见的问题:把项目本身的“项目目标”误作编制项目开发计划的目的。1.2 背景主要说明项目的来历,一些需要项目团队成员知道的相关情况。主要有以下内容:项目的名称:经过与客户商定或经过立项手续统一确定的项目名称,一般与所待开发的软件系统名称有较大的关系,如针对“XX 系统”开发的项目名称是“XX 系统开发”。项目的委托单位:如果是根据合同进行的软件开发项目,项目的委托单位就是合同中的甲方;如果是自行研发的软件产品,项目的委托单位就是本企业。项目的用户(单位
5、):软件或网络的使用单位,可以泛指某个用户群。注意项目的用户或单位有时与项目的委托单位是同一个,有时是不一样的。如海关的报关软 件、税务的报税软件,委托单位是海关或税务机关,但使用的用户或单位不仅有海关或税务机关,还包括需要报关、报税的企业单位。项目的任务提出者:本企业内部提出需要完成此项目的人员,一般是领导或商务人员;注意项目的任务提出者一般不同于项目的委托单位,前者一般是企业内部的人员。如果是内部开发项目,则两者的区别在于前者指人,后者指单位。项目的主要承担部门:有些企业根据行业方向或工作性质的不同把软件开发分成不同的部门(也有的分为不同事业部)。项目的特点就是其矩阵式组织,一般一个项 目
6、的项目成员可能由不同的部门组成,甚至可能由研发部门、开发部门、测试部门、集成部门、服务部门等等其中几个组成。需要根据项目所涉及的范围确定本项目 的主要承担部门。项目建设背景:从政治环境上、业务环境上说明项目建设背景,说明项目的大环境、来龙去脉。这有利于项目成员更好地理解项目目标和各项任务。例句:根据某部关于某建设工作的实施意见精神,为了保障某建设工作的正常实施,必须加强监督考核,建立督查通报制度,某市某建设工作小组办公室把此项建设工作实施列入督查的重要内容,及时掌握进度,相关部门建立市某建设工作简报制度,及时反映全市某建设工作动态。目前对于某建设工作的工作主要采用计划部门手工编制年度计划、建设
7、工作主管部门和建设工作实施单位联合手动编制进度计划,某建设工作单位手工上报建设工作 进度情况的方式,而全市的建设工作有数百个,加上前期建设工作的数量和今后某市建设发展的趋势,建设工作的数量将越来越多,原来的工作模式已经越来越无法 适应市委市政府的要求。因此,充分利用现代信息化、因特网的优势,建立“某市某建设工作信息报送反馈系统”,提高某建设工作信息报送反馈工作效率,提高信 息的及时性、减轻各级相关工作人员的劳动强度是非常有必要和紧迫的任务。软件系统与其他系统的关系:说明与本系统有关的其他系统,说明它们之间的相互依赖关系。这些系统可以是这个系统的基础性系统(一些数据、环境等必须依靠这 个系统才能
8、运行),也可以是以这个系统为基础的系统,或者是两者兼而有之的关系、互相依赖的系统。例句:本系统中对外部办公部分如需要各个建设单位报送材 料的子系统应当挂在市政府网站。软件系统与机构的关系:说明软件系统除了委托单位和使用单位,还与哪些机构组织有关系。例如一些系统需要遵守那些组织的标准、需要通过那些组织机构的测试才能使用等等、是否需要外包或与那些组织机构合作。1.3 定义列出为正确理解本计划书所用到的专门术语的定义、外文缩写词的原词及中文解释。注意尽量不要对一些业界使用的通用术语进行另外的定义,使它的含义和通用术语的惯用含义不一致。1.4 参考资料列出本计划书中所引用的及相关的文件资料和标准的作者
9、、标题、编号、发表日期和出版单位,必要时说明得到这些文件资料和标准的途径。本节与下一节的“标 准、条约和约定”互为补充,注意“ 参考资料”未必作为 “标准、条约和约定”,因为“参考” 的不一定是“ 必须遵守”的。常用资料如:本项目的合同、标书、上级机关有关通知、经过审批的项目任务书;属于本项目的其他已经发表的文件;本文档中各处引用的文件、资料,包括所要用到的软件开发标准。1.5 标准、条约和约定列出在本项目开发过程中必须遵守的标准、条约和约定。例如:相应的立项建议书、项目任务书、合同、国家标准、行业标准、上级机关有关通知和实施方案、相应的技术规范等。“参考资料”一般具有“物质” 特性,一般要说
10、明参照了什么,要说明在哪里可以获得;“标准、条约和约定”一般具有“ 精神”特性,一般是必须遵守的,不说明在哪里可以获得。参考资料的内容应该涵盖“标准、条约和约定”。 2 项目概述2.1 项目目标设定项目目标就是把项目要完成的工作用清晰的语言描述出来,让项目团队每一个成员都有明确的概念。注意,不要简单地说成在什么什么时间完成开发什么什么软 件系统或完成什么什么软件安装集成任务。注意“要完成一个系统”只是一个模糊的目标,它还不够具体和明确。明确的项目目标应该指出了服务对象,所开发软件 系统最主要的功能和系统本身的比较深层次的社会目的或系统使用后所起到的社会效果。项目目标应当符合 SMART 原则:
11、l S Specific 明确的陈述l M Measurable 可以衡量的结果l A Attainable 可以达成的目标l R Realistic 合理的,现实的或者说是能和实际工作相结合l T Trackable 可以跟踪的项目目标可以进行横向的分解也可以进行纵向的分解。横向分解一般按照系统的功能或按照建设单位的不同业务要求,如分解为第一目标、第二目标等等;纵向的分 解一般是指按照阶段,如分解为第一阶段目标、第二阶段目标等等,或近期目标、中期目标、远期目标等等。阶段目标一般应当说明目标实现的较为明确的时间。一 般要在说明了总目标的基础上再说明分解目标,可加上“为实现项目的总目标,必须实现
12、以下三个阶段目标”2.2 产品目标与范围根据项目输入(如合同、立项建议书、项目技术方案、标书等)说明此项目要实现的软件系统产品的目的与目标及简要的软件功能需求。对项目成果(软件系统)范 围进行准确清晰的界定与说明是软件开发项目活动开展的基础和依据。软件系统产品目标应当从用户的角度说明开发这一软件系统是为了解决用户的那些问题。产品 目标如“提高工作信息报送反馈工作效率,更好地进行工作信息报送的检查监督,提高信息的及时性、汇总统计信息的准确性,减轻各级相关工作人员的劳动强 度。”2.3 假设与约束对于项目必须遵守的各种约束(时间、人员、预算、设备等)进行说明。这些内容将限制你实现什么、怎样实现、什么时候实现、成本范围等种种制约条件。假设是通过努力可以直接解决的问题,而这些问题是一定要解决才能保证项目按计划完成。如:“系统分析员必须在3 天内到位”或“用户必须在 8 月 8 日前确定对需求文档进行确认”约束一般是难以解决的问题,但可以通过其他途径回避或弥补、取舍,如人力资源的约束限制,就必须牺牲进度或质量等等。假设与约束是针对比较明确会出现的情况,如果问题的出现具有不确定性,则应该在风险分析中列出,分析其出现的可能性(概率)、造成的影响、应当采取的相应措施。2.4 项目工作范围