一、 概述 .1 目的 本标准把软件项目的管理和开发分为多个过程,并为各个过程的实施提供参考方法和相关文档的定义及规范。 .2 应用范围 本标准适用于与所有软件开发类项目的管理。 .3 限制 本标准主要叙述软件项目的管理过程和开发过程,不包含项目的获取、供应、改进过程。 本标准虽然为软件项目的管理和开发的过程提供参考方法和相关文档的定义及规范,但不规定如何完成各过程中包含的活动和任务的细节。 .4 本标准内容简介 项目管理工作覆盖整个软件开发项目生命周期,“管理制度”就是落实到管理过程中的一些基本要素,这里将其分为两大部分: 软件项目管理过程部分 1、项目章程制定 2、项目计划管理 3、项目风险管理 4、项目变更管理 5、项目评审制度 6、项目会议制度 7、项目评审制度 8、项目文档管理 软件项目开发过程部分 1、需求分析 2、基本设计 3、详细设计 4、程序编制 5、系统测试 6、业务培训 7、系统运行 8、项目完成及回顾 二、 软件项目管理办法 软件项目管理的过程决定项目的方向、质量和开发周期。 .1 项目章程制定 .1.1定义 项目章程:项目可以是已经确定的,也可以是有意向但还未确定的,由项目经理及系统分析人员(或设计人员)对项目相关方进行调查研究,包括项目实施对象的隶属关系、业务类型,项目业务结构组成,开发范围,项目提出方性质、希望达到目标、预计实施时间,项目具体负责人、联系人等,明确甲乙双方责任及义务。 .1.2目的 正式确认项目的启动,任命项目经理,赋予项目经理在项目活动中应用相关资源的权力,并为项目成员提供一个项目状况的概述对项目进行跟踪和全面调查研究,包括实施对象人员情况、业务情况、隶属关系、竞争对手等,为合同签订和下一步针对需求分析的调研工作做准备。 .1.3负责人 项目经理、系统分析人员(或设计人员)。 .1.4任务 对项目相关方进行调查研究,包括实施对象人员情况、组织机构、业务组成、隶属关系、技术需求、竞争对手等。 对项目进行跟踪,实时了解实施对象与项目相关的动态。 对项目可行性进行分析。 估算项目所需人员的结构组成、实施时间及实施成本。 确定项目实施(设计、开发)具体人员。 明确项目相关方负责人、联系人等人员配置。 确定项目启动。 .1.5形成文档 《项目章程》:项目名称、项目提出、项目实施对象简述、项目实施人员安排、预计实施时间、系统结构组成概述等。 .2 项目计划管理 .2.1定义 项目总体计划:在项目周期内确定和组织全部生产经营活动的综合规划,包括项目整体工期规划,项目任务分解,项目阶段任务的确定,各阶段任务工期规划,各方面资源配置规划等。总体规划侧重于以项目阶段任务为单位制定计划,指明要取得的各种结果,为合理地利用人力、物力和财力资源提供前提。 计划跟踪与监督:是对计划执行情况和项目实施情况的反馈,校验计划与实际工作情况的偏差,并评估阶段工作的质量,为计划的修正和实际工作的调 整提供前提。 计划调整:当因自身或外界原因造成实际工作进度、工作质量与计划发生偏差并且影响到下阶段工作内容时,需要对整体计划、阶段计划或周计划进行评估和调整,并形成新版本的计划。 .2.2目的 对项目整体工期进行合理规划; 明确项目组成,将项目任务进行分解,确定项目阶段任务,并且落实项目人员的职责; 对各阶段任务的工期进行规划; 对项目人力、物力和财力资源等各方面资源配置进行规划; 在实际工作中制定短期计划,并对计划及实施情况进行跟踪,以达到实时校验工作进度和质量的偏差,并及时对计划进行调整,保证项目工期和质量; .2.3负责人 项目总体计划:项目经理; 项目周计划:项目经理、模块设计人员; 计划跟踪与监督:项目经理、模块设计人员; 计划调整:项目经理。 .2.4任务 记录项目日志,记录项目各关键时间点的事件内容作为项目跟踪的依据。 制定项目总体计划,依据对项目总体情况的调研和项目管理经验制定项目总体计划,对项目整体工期进行合理规划; 明确项目组成,确定项目阶段任务和各阶段任务的起止时间及所需天数,并且落实项目人员的职责。软件开发项目的阶段一般包括:总体规划、业务调研、需求分析、基本设计、网络设计、设备采购、网络施工、机房装修、详细设计、程序编制、单体调试、系统集成、数据准备、业务培训、试运行、系统上线; 对项目计划的完成情况进行跟踪,可以利用项目管理软件或相应的记录文档,对计划的进度和完成质量进行校验,如有偏差,需分析原因并制定应对方案。 .2.5形成文档 《项目日志》:以天为单位记录项目关键事件、关键时间点。 《项目总体计划表》:以表格的形式列出项目的阶段,标记出各阶段实施计划的起始日期,计算出所需天数(或周数); 《项目开发进度表》:可以利用项目管理软件(Project)或相应的记录文档,记录从项目启动开始,每个项目成员计划完成的工作内容。 《计划调整记录表》:记录从项目启动开始,每次计划调整的原因、内容、 涉及人、调整时间及调整后的方案等信息。 .3 项目风险管理 .3.1定义 项目风险管理是指对项目风险从识别到分析乃至采取应对措施等一系列过程。在项目启动之前要进行项目可行性分析,总体评估项目实施的风险;在项目启动后要注重项目风险的预测和应对方案的制定。 .3.2目的 项目风险管理是对包括项目的可行性、实施方案的设计、潜在的技术、成本和进度安排风险等方面的管理,以保证项目实施进度、项目质量和成本控制。 .3.3负责人 项目经理。 .3.4任务 项目可行性分析:在项目启动之前要充分分析论证项目实施的可行性,包括项目实施成本需求、人力资源需求、技术力量需求、工期需求等方面,以及此项目对公司业务的市场占有率、未来发展的战略意义等方面,并提出项目可行与否的依据。 风险预测:在项目确立后要对项目中可能存在的潜在风险进行预测,如设计方案的可行性,使用技术的成熟程度,项目组成人员的能力等。 风险应对:对可预测的风险制定相应的预案;对项目进行过程中已经发生的问题制定相应的应对措施,以保证项目的顺利进行。 .3.5形成文档 《可行性分析报告》:分析项目技术难度、实施成本、实施时间等因素,论证是否可行,并提出依据。可行性分析应该在项目情况概述阶段完成。 《项目风险预测与应对预案》:对项目中可能存在的风险进行预测,并制定相应的应对方案。 .4 项目变更管理 .4.1定义 项目变更管理是指项目组织为适应项目运行过程中与项目相关的各种因素的变化,保证项目目标的实现而对项目计划进行相应的部分变更或全部变更,并按变更后的要求组织项目实施的过程。 项目变更主要的有以下几种:项目范围变更、项目进度变更、项目合同变更、项目人力资源的变更、费用预算变更。 引起变更的因素: 一是来自外部的变更要求,如客户要求修改工作范围和需求等或因不可抗拒的自然因素而推迟项目实施进度等。 二是内部的变更要求,如为解决实施中发现的设计错误而修改设计或测试中发现的一些错误而修改源码甚至设计等。 项目变更控制:是指建立一套正规的程序对项目的变更进行有效的控制,从而更好地实现项目的目标目的。 .4.2目的 变更控制的目的并不是控制变更的发生,而是对变更进行管理,确保变更有序进行。 .4.3负责人 项目经理。 .4.4任务 针对项目实际情况建立一套正规的变更程序,明确变更的具体流程、变更的提出方及责任、变更的审核方及责任和变更影响的评估方及责任。 对项目的变更需求进行审核,并由审核方签字落实审核结果。 对项目变更的影响进行评估,得出评估结论并由评估方签字落实评估结果。 在经过各方认可的情况下对项目的变更进行实施。 针对变更情况修改项目进度、调整项目人员等,必要时进行合同变更。 .4.5形成文档 《项目变更流程》:针对项目实际情况建立一套正规的变更流程。 《项目变更申请表》:变更提出方在变更提出时需填写变更申请。 《项目变更审核表》:项目变更需由项目的审核方(如甲方项目经理、项目管理方负责人、项目实施方项目经理等)进行审核,并记录审核结果。 《项目变更影响评估表》:项目变更需由影响的评估方(如甲方项目经理、项目管理方负责人、项目实施方项目经理等)进行评估,并记录评估结果。 《项目变更记录表》:项目变更通过审核和评估后,在客户、项目管理方和项目实施方均认可的情况下由项目实施方进行实施,记录下此次变更内容、结果及对项目的影响等。 .5 项目评审制度 .6.1定义 针对项目各阶段形成的设计、文档、代码、进度表的质量进行综合评价。 .6.2目的 确保项目的进度和质量在可控范围内。 .6.3负责人 公司管理层和技术项目部评审负责人。 .6.4任务 确定开发周期制定是否合理。 确定各项系统设计是否科学、合理、准确。 审核项目文档是否符合公司或甲方要求的规范。 审核代码编写是否符合规范。 .4.5形成文档 《项目审核表》:记录评审项目、内容、结论、调整及修改建议。 .6 项目会议制度 .6.1定义 针对项目制定的会议类型、开会时间、会议频次、与会人员等与会议相关的制度。 .6.2目的 明确项目会议时间、频次、与会人员等规定,为项目沟通联系、项目问题讨论、项目进度把握提供平台。 .6.3负责人 项目经理和项目管理人员。 .6.4任务 确定项目会议类型,如项目例会、项目阶段评审会、项目临时讨论会等,及不同类型会议的与会人员要求。例如项目确定有项目例会,要求项目经理和主要设计人员必须参加。 确定不同会议类型的频次和开会时间,例如项目例会定为每周五下午三点,有因特殊情况不开则另行通知。 .4.5形成文档 《项目会议制度》:记录与项目各类型会议相关的规定,可根据项目复杂度具体安排。 《会议记录》:记录并保存会议的内容。 .7 项目文档管理 .7.1定义 项目文档管理,是指在一个系统(软件)项目管理、开发进程中将提交的文档进行统一管理的过程。细分文档的生命周期,一般包括:创建、审批、发布、修改、分发、签收、追缴、归档、废止与恢复。 .7.2目的 将项目相关文档统一收集、统一发布、分类管理、规范命名、规范格式、管理版本、归档保存。 .7.3负责人 项目管理人员。 .7.4任务 明确文档编写格式:在项目文档编写前明确文档编写的统一标准格式,如文档的字体大小、段落行距、页眉页脚等,可以参照公司统一标准执行。建立文档编写模板,规范文档结构。 文档分类:定义软件项目各个阶段所要编写的文档,并将其分类,例如会议记录类,基本设计类。 规范文档命名:规范各个阶段所要编写的文档的命名方式,例如《XXX项目需求说明书20120101》,其中“20120101”为文档上交日期。 创建文档目录:在明确项目各个阶段所要编写的文档和文档分类后,创建文档目录,列出所有文档名、所属类别、最后版本、负责人、评审人及文档完成情况,并创建具体文档的超链接。 文档评审:依据文档编写规范和文档编写模板对收集上来的文档进行格式校对和内容评审,通过后统一发布。如没有通过校对,则退回修改,以新版本重新上交校对和评审。 文档版本管理:可以借助VSS等版本控制软件管理文档版本,保存并区分文档各个版本,明确标记文档的最新版,以保证每次修改都是对最新版的修改。 文档归档保存:对通过校对和评审的定稿文档标记为“评审版”或“完成版”,并归档保存。 .7.5形成文档 《文档编写格式规范》:不需要每个项目都重新制定文档编写格式规范,可以参照公司统一标准执行,但是项目文档编写前必须明确依据的标准。 《项目文档目录》:可以在项目初期就明确项目每个阶段所要编写的文档,将其命名并编入文档目录统一管理文档版本和完成情况。 .8 项目源码管理 .8.1定义 软件项目开发过程中对程序源代码、数据库表、索引、触发器、存储过程创建脚本、相关环境设置等进行定期备份和归档管理。 .8.2目的 对程序源代码进行版本控制、备份和归档,保证程序的安全。 .8.3负责人 项目经理和项目管理人员。 .8.4任务 版本控制:在开发过程中对程序源代码进行版本控制,常用的方式是使用SVN或VSS版本控制软件控制程序版本。 程序备份归档:定期对程序源代码、数据库表、索引、触发器、存储过程创建脚本、相关环境设置等进行全备份并进行异地存储以保证程序安全,对已经完成的程序或脚本进行归档,统一保存。 建立程序源代码目录:对所有程序,包括客户端程序、服务器端程序、数据内触发器、存储过程、函数等程序代码建立程序源代码目录,清晰管理源程序。 .8.5形成文档 《程序源代码目录》:包括程序名、编程语言(C#、VB、SQL等)、所属系统模块、编制人、最后修改日期、修改人等信息。 三、 软件项目阶段定义 .1 需求分析 .1.1 定义 需求分析指的是在开发一个新的或改变一个现有的计算机软件系统时描述新系统的目的、范围、业务流程和功能时所要做的所有的工作。需求分析是软件开发项目中的一个关键过程。在这个过程中,系统分析员和软件设计师调研现行业务,确定用户的需要,分析和寻求系统的解决方案。 .1.2 目的 调研用户组织机构、业务特点、业务流程,确定用户的具体需求,分析并提出具体的解决方案,明确开发范围、具体功能、本系统与其它系统的关联关系、用户对系统的技术要求等,并进行详细描述。需求分析是编写技术附件的基础,为合同的签订提供依据,也是系统设计、开发的基础和依据。 .1.3 负责人 项目经理、软件设计人员。 .1.4 任务 对用户的组织机构、业务特点、业务流程、具体需求进行调研; 明确项目背景:包括项目的提出(如项目提出方、开发此项目的目的),系统隶属关系及其它关联,用户特点,约束(如费用、交付日期)等; 业务现状描述:明确开发依据,确定开发业务范围和系统实现的主要目标。对前期业务调研的结果进行汇总,具体体现为组织机构图、工艺流程图、现行业务流程图、业务功能层次图和现有帐票/报表一览表。 功能需求描述:分析用户的需求和调研结果,对应业务功能层次图,详细描述系统将实现的业务功能。 明确技术需求:包括用户对本系统在技术层面提出的需求和本系统对用户或其它相关联系统的技术需求,包括现有计算机系统及运行环境的约束、接口约束、精度要求、时间特性要求和灵活性要求等。 问题备忘:记录本阶段未解决的问题或可能存在的问题预测。 对需求分析内容进行评审,并得到用户的签字认可。 .1.5 形成文档 《调研分析报告》:包括组织机构图、工艺流程图、现行业务流程图、业务功能层次图、现有帐票/报表一览表、业务功能模块等。 .2 基本设计 .2.1 定义 基本设计也称为概要设计,是软件系统设计中将业务逻辑优化改造为系统内处理流程的重要过程,是系统最终功能层次的具体体现,并对每个功能的处理过程进行详细描述。 .2.2 目的 将软件系统需求转换为系统内的设计。 确定系统内的具体功能模块和模块内的具体功能层次。 将现行业务的处理流程进行优化改造,形成系统内的新处理流程,明确每个新处理流程所要求的输入信息和所产生的输出信息。 对系统内具体模块所包含的具体功能进行详细描述,明确每个功能的实现过程及其所产生的结果和主要数据信息,为数据库表结构设计提供基础。 .2.3 负责人 项目经理和设计人员。 .2.4 任务 确定系统的具体功能层次结构,绘制功能层次图。 将现行业务的处理流程进行优化改造,明确新处理流程所要求的输入信息和所产生的输出信息,明确功能模块之间的关联关系,对应功能层次图中的具体功能,绘制业务流程图。 对系统内每个模块所包含的具体功能进行详细描述,明确每个功能的实现 过程及其产生的结果和主要数据信息,明确本系统与其它系统的接口关联关系、通讯方式和具体通讯内容,对应功能层次图中的具体功能进行业务功能描述。 对基本设计内容进行评审,并得到用户的签字认可。 .2.5 形成文档实用性原则 《概要设计报告》包括以下部分: 《功能层次图》:明确系统内功能层次结构,(格式见附录)。 《业务流程图》:展示优化改造后的业务流程,(格式见附录)。 《业务功能描述》:对业务功能和与接口系统的通讯方式、通讯内容进行详细描述。 《系统编码规则表》:说明支持系统运行所需引用或建立的编码,包括对象、长度、格式、规则等,例如日期、单据号等格式。 《模块一览表》:对应功能层次图,列出在详细设计阶段需要设计的所有程序/模块。 《集成测试计划》:列出测试中的每一项测试内容的名称标识符、这些测试的进度安排以及这些测试的内容和目的,例如模块功能测试、接口正确性测试、数据文卷存取的测试、运行时间的测试、设计约束和极限的测试等,给出对这项测试的进度安排,包括进行测试的日期和工作内容(如熟悉环境。培训、准备输入数据等)。说明测试各环节的控制方式,如输入是人工、半自动或自动引入、控制操作的顺序以及结果的记录方法。 .3 详细设计 .3.1 定义 详细设计是指在软件设计过程中基本设计完成后,明确了系统内的具体功能层次和所有功能的具体处理方式的基础上,针对系统内功能的实现即程序编制所做的设计,在详细设计的过程中可同时进行程序的编制。 .3.2 目的 明确本系统与其它系统的接口关系、通讯方式和具体通讯内容,编写通讯设计文档和接口电文描述表。 明确系统内涉及所有的数据信息及数据之间的关联关系,进行数据库表结构设计。 结合《模块一览表》,对每一个程序进行画面设计和前后台程序规格说明书的编写,程序员将结合画面设计和程序规格说明书的内容编制程序。 详细设计是程序编制的基础和铺垫,所做的工作是为了更好的指导程序的编制。 .3.3 负责人 设计人员和程序员。 .3.4 任务 编写接口描述表,确定通讯工具、通讯方式、IP、端口号和双方电文具体数据项约定。 编写数据库表结构设计书,并创建数据库表、主键、索引、视图等,可以使用PowerDesigner数据库表设计工具。 编写画面设计书,依据统一的设计风格设计画面,明确画面内所显示窗口中数据的来源(表、视图)、检索条件、具体数据项名称、类型、精度限制、是否主键等和按钮等控件的命名和摆放位置。 编写程序规格说明书,具体描述每个程序模块,包括画面、函数、对象、后台进程程序等的具体命名、功能、处理逻辑、触发时序、输入输出限制和涉及数据库表等内容。 画面设计书和程序规格说明书是指导程序员编程的重要依据,其详细程度、准确程度和可读性将直接影响程序员对程序编制内容的理解。 .3.5 形成文档,依据实用性原则设计,具体格式件附录 《应用系统间接口内容定义表》:定义系统内部外部接口,例如:通讯用电文的ID、具体数据项名称、类型、精度、顺序及内容备注等信息。 《数据库设计》:规划设计数据库用户、模式、表空间名称、大小等信息。设计数据库表名称、所属模式、表空间及具体字段名称、类型、精度、主键、索引等内容。 《程序界面设计》:依据统一设计风格设计程序画面,可以用Word画图工具展示界面布局,也可以用编程工具(如VB)布置窗体格局后抓图展示画面布局。明确画面内所显示数据窗口中数据的来源(表、视图)、检索条件、具体数据项名称、类型、精度限制、是否主键等和按钮等控件的命名和摆放位置。 《数据流程设计》:数据流是组织中信息运动的抽象,是信息逻辑系统模型的主要形式。这个模型不涉及硬件、软件、数据结构与文件组织,它与对系统的物理描述无关,只是用一种图形及与此相关的注释来表示系统的逻辑功能,即所开发的系统在信息处理方面要做什么。 《算法设计》:描述系统主要业务逻辑的算法,例如:运输总量的计算公式、GPS定位算法等。 .4 程序开发 .4.1 定义 编制程序代码,实现相应的系统功能。 .4.2 目的 将设计的具体内容在系统内实现。 3.4.3 负责人 设计人员和程序员。 .4.4 任务 设计人员制定程序编制进度计划和程序模板,指导程序员编程,并考核程序编制进度。 程序员依据画面设计书、程序规格说明书、程序模板和程序开发规范编写程序,并对程序进行单体测试,测试完成的程序交予程序设计人员。 .4.5 形成文档 《程序编制进度计划》:对程序编制时间进行管理,掌控工作执行情况。 《单元测试用例》:用来证明一个独立的单元是否实现了详细设计说明书中要求,详细列出每项测试中所使用的输入数据及选择这些输入数据的策略,说明预期的输出数据,如测试结果及可能产生的中间结果或运行信息。 .5 系统测试 .5.1 定义 指对一个完成了全部或部分功能的程序在正式使用前的检测,以确保该程序能按预定的方式正确地运行。 .5.2 目的 发现程序错误、缺陷和隐含陷阱。 .5.3 负责人 设计人员、程序员和测试人员。 .5.4 任务 制定测试计划,制定程序组合测试计划和结合业务功能的综合测试计划。 单元测试,在编程阶段,由程序员对自己编写的模块自行测试,检查模块是否实现了详细设计说明书中规定的功能和算法。单元测试主要发现编程和详细设计中产生的错误,着重测试程序执行结果、模块接口、重要的执行通路、出错处理及边界条件等。 集成测试,在单体程序组合之后,由设计人员测试模块整体功能和模块间关联功能,着重测试数据流的通畅性、完整性,模块间的借口和通信问题及异常情况处理等。依据软件需求说明书检查系统的功能、性能及其他特征是否与用户的需求一致;由业务人员依据基本设计中的业务流程设计测试系统功能表是否正确,数据结果是否完成等,并按照正式应用的操作方式测试系统功能。 .5.5 形成文档 《集成测试计划》:由程序设计者制定并测试模块整体功能和模块间关联功能。由业务人员或操作人员测试系统内部及与外部接口的功能。 《单元测试报告》:程序员在开发程序过程中对每个编制完成的单体程序进行测试,并记录测试情况,编写测试报告。 《集成测试报告》:由项目总体负责人记录集成测试的进度及结果。 .6 业务培训 .6.1 定义 软件开发项目中的业务培训是指对软件系统的用户关于软件系统的操作方式、操作流程等进行的培训。 .6.2 目的 使用户会使用软件系统的相应功能。 .6.3 负责人 设计人员和程序员。 .6.4 任务 设计人员或程序员在系统功能全部确定后编写操作手册和技术手册,在正式培训前递交用户负责人。 项目负责人根据用户实际情况确定培训方式,编制培训计划,可以采用集中培训的方式或随操作岗位按班培训的方式。 在每次培训后需要填写培训记录,记录每位用户的培训效果。 每个岗位的用户至少培训两次,重点岗位或操作较难的岗位可以增加培训次数,或提供实验环境熟练操作。 .6.5 形成文档 《操作手册》:针对操作人员的描述系统功能操作方式、流程的文档。 《培训计划》:根据用户实际情况确定培训方式,编制培训计划。 《培训记录》:记录每位用户的培训效果,必要时附加评分。 .7 系统运行 .7.1 定义 经过综合测试的软件系统在进行过业务培训后,布置正式环境,布置客户端,分配系统内用户权限,准备运行数据,正式投入使用的过程。 .7.2 目的 使软件系统顺利投入使用。 .7.3 负责人 项目经理、设计人员。 .7.4 任务 布置正式环境,按照系统规划配置正式环境,将数据库、通讯中间件配置、开发环境下的前后台程序移植到正式环境并进行测试。 布置客户端,可以由我们提供需安装的客户端软件、编译后的可执行程序和客户端配置方法等,用户方自行布置客户端。布置客户端的时候可以同时安装远程控制软件,核对客户端IP地址表,以方便维护。 分配系统权限,对系统内的功能按岗位、角色分配使用权限,可以由用户方自行分配权限。 准备运行数据,准备系统运行所必须的初始数据,可以采用人工录入或导入的方式注入系统内。 制定系统上线计划,对应复杂的软件系统或实时性很强的生产管理洗头膏需要制定详细的上线运行计划,协调安排所有与系统上线相关的因素,必要时可以做上线前的模拟上线。 .7.5 形成文档 《部署说明文档》:详细说明程序上线部署的全部流程、网络和系统环境需求、外部先决条件、配合人员。 《系统上线计划》:制定上线的详细步骤,具体时间安排。 《系统运行报告》:记录系统运行情况、故障情况和运行结论。 .8 项目的完成及回顾 .8.1 定义 项目依据合同要求验收后,以签署竣工文件作为项目完成的标志。项目完成后对项目的文档、资料、源程序等进行归档,同时总结项目经验、教训、成果等。 .8.2 目的 确定项目完成,归档项目资料,总结项目成果。 .8.3 负责人 项目经理。 .8.4 任务 在系统稳定运行后,依据合同要求协调用户和项目相关管理方对系统进行验收(通常规定系统稳定运行三个月可进行验收),在验收时需提供《运行报告》,《验收报告》,《维护方案》。 对项目的文档、资料、源程序等进行归档,同时总结项目经验、教训、成果等,形成项目总结报告。 3.8.5 形成文档 《运行报告》:记录系统稳定运行的情况。。 《验收报告》:记录系统内功能依据合同技术附件内容的完成情况和验收时需要移交的文档签收情况。 《维护方案》:记录系统维护方法、值班及响应时间和参与维护的人员的姓名及联系方式。 《项目质量综合评价报告》:记录归档的项目的文档、资料、源程序,评估项目质量,总结项目经验、教训、成果等。 四、 软件项目开发流程 .1 项目策划与需求分析 内部项目《项目建议书》、外部项目《可行性报告》。 .2 项目调研与评审 公司内部招募项目组长或推选项目组长。 进行项目调研,并编写《调研分析报告》。 各项目组长候选人评选或推选的项目组长进行项目答辩,确认项目组长。 评审并确认调研分析报告。 成立项目组,制定《项目章程》。 .3 基本设计与评审 编写《基本设计》和《集成测试计划》 基本设计评审(主要评审业务流程设计、功能设计、集成测试计划) .4 详细设计与评审 编写《详细设计》。 《详细设计》评审。 .5 系统开发 编制项目开发分工和各模块工期表,即《项目开发进度表》 《项目开发进度表》评审 编写《单元测试用例》 .6 系统测试 单元测试并编写《单元测试报告》。 集成测试并编写《集成测试报告》。 .7 项目审核与内部验收 对项目各项指标进行综合评审并编写《项目质量综合评审表》。 根据评审结果确定是否达到内部验收标准。 .8 项目实施 编写《操作手册》和《培训计划》,对甲方进行业务培训。 编写《部署说明文档》和《系统上线计划》,开始按计划实施。 .9 项目验收 根据甲方要求编写项目验收相关文档,例如:《系统上线报告》、《项目验收报告》 4.10 软件项目开发流程图 五、 开发人员进度检查与绩效考评 .1 考评原则 软件开发人员的绩效考评是所有软件公司都深感棘手但又必须面对的问题。棘手的原因是既不能进行计时处理、也不能进行计件处理。计时会造成出工不出力,计件(一般按代码条数)会挫伤优秀软件人员的积极性(同样实现一个功能,不同层次的软件人员实现的过程差别很大,且质量不同)。但是只要尊重一些必要的原则,还是能够加以评估的。这里提出六条原则: 、 被考核对象必须有明确的任务 项目经理或开发经理必须发出明确的任务书:任务书中指定任务名称、任务内容、完成时限之、考核标准、向谁负责、任务的难易程度(业务与技术两个方面)。难易程度由项目组成员集体评价。没有明确的任务当然就无法考评。 、 考评标准要综合计量量与非计量量 计量量如:完成时间、完成了多少功能、测试出多少缺陷等,非计量量如:用户接受程度如何、项目组合作情况如何等等,要将这些因素综合考虑。 、 要体现多劳多得、奖勤罚懒 高效、高质完成任务的人员必须得到区别对待(调资、休假、奖金)。 、 考评结果要及时与被考评对象沟通,容许争议协调。 、 考评时间为项目正式验收后。 、 被考评要提供周报月报之类的内容,但不作为考评的依据。我们只注重结果,也就是说根据结果认定过程。 .2 考评标准 考评分为三方面:1.工作任务(占比70%),2.能力态度(占比30),3.遵守规章制度(减分项) 遵守规章制度考评:考评员工是否遵守公司和部门的规章制度、流程、规范,此考评项目是扣分项,对不遵守的各项制度按公司规定进行相应的减分。 工作任务和能力态度的各单项评分标准: 100 满足KPI要求(完成工作),不易超越,并且能影响别人 100 满足KPI要求(完成工作),远超预期,或工作优秀,能影响别人 95 满足KPI要求(完成工作),有难度,并且超越预期要求 90 满足KPI要求(完成工作),有一定难度 80 满足KPI要求(完成工作),一般难度 70 没有满足KPI要求(完成工作),一般难度,或,工作态度存在问题,影响团队 60 严重影响工作进展,工作态度存在问题,影响团队 单项以5分为一阶,也就是最小打分单位为5分 各项得分需乘以其权重就是该项最终得分 测评总分计算公式:总分 = 工作任务得分 能力态度得分–遵守规章制度考评得分
信息发布:广州名易软件有限公司 http://www.myidp.net
|