• 软件项目总结


    一. 项目总结的意义

    项目总结的目的和意义在于提供一个系统化的方式来总结经验教训、防止犯同样的错误、评估项目团队绩效、积累过程数据等,给项目团队成员提供持续学习和改进的机会。
    在项目总结过程中,软件工程师对比计划检验实际完成状况,寻找改进机会。其背后的基本思想是鼓励在新的项目中采取更聪明合理的方式,而不是更加努力的方式来做事。需要改变的是做事的方式,而不是态度。
    在项目总结中,团队成员评价完成的产品的质量状况、消耗的开发代价以及相应的开发过程,消耗的开发代价以及相应的开发过程,判断计划的准确性和过程的合理性。识别问题和导致问题的根本原因,开发改进的方法以避免类似的错误反复发生。
    总结项目经验和教训,对其他项目以及公司的项目管理体系建设起到重要的作用。

    二. 项目总结过程

    项目总结需要系统化地、有条理地进行,以免遗漏重要的内容。因此往往需要事先定义总结过程,然后按部就班地开展总结工作。
    包括:准备阶段、总结阶段和报告阶段三个部分。为了体现系统化和完整性,将分别从 项目管理知识体系项目团队角色 两个角度描述典型的项目总结过程。

    1. 项目管理知识体系

    按照 PMBOK 2008,可以将项目管理的知识域分为 范围管理、时间管理、成本管理、质量管理、人力资源管理、沟通管理、风险管理、采购管理和整合管理。 项目总结可以从这些角度出发,考察项目实际状况与计划的差异,找到改进的机会。

    (1)范围管理

    包括产品范围和项目范围。产品范围定义了产品或服务所包含的特性和功能, 项目范围定义了为交付具有规定特性和功能的产品或服务所必须完成的工作。
    对范围管理的总结需关注项目的需求开发过程与变更管理中的得失,对需求管理实际执行情况的差距进行原因分析,找到改进的机会。
    典型的问题包括:
    是否有被识别的需求?
    是否有没有得到响应的需求变更?
    需求是否出现蔓延现象?

    (2)时间管理

    其所关注的是项目的日程计划以及对日程计划的跟踪和管理状况。对时间管理的总结,主要考察计划的准确程度以及各个里程碑的偏差情况,找到计划进展与实际进展之间的偏差并进行原因分析,找到改进机会。
    典型的问题包括:
    估算偏差有多大?
    日程计划准确程度如何?
    里程碑偏差有多大?
    日程计划有什么变更,为什么?

    (3)成本管理

    包括对成本进行估算、预算和控制的各个过程,从而确保项目在批准的预算内完工。故,对成本管理的总结,应当就计划成本、实际成本进行对比,对比成本构成明细的差距和原因等,并对他们进行分析,找到改进机会。成本主要是人力成本, 确切地说,当项目团队成员相对稳定时,成本主要体现为完成每一项任务所消耗的时间资源。
    典型的问题包括:
    项目计划投入的总时间是多少,实际是多少
    各个阶段计划投入的时间是多少,实际是多少
    出现偏差的原因是什么

    (4)质量管理

    包括执行组织确定的质量政策、目标与职责的各过程和活动,从而使项目满足其预定的需求。它通过适当的政策和程序,采用持续的过程改进活动来实施质量管理体系。质量管理重点考察项目的最终交付物与客户实际需求的符合度。 客户,指一般意义上的外部客户,也指内部客户。 对质量管理的总结,具体可以从质量计划、实施质量保证和实施质量控制等活动结果入手,使用统计分析工具或其他手段来分析问题原因,得出改进建议。
    典型的问题包括:
    项目整体质量状况如何
    验收测试缺陷率是多少
    缺陷类型分布情况如何
    有没有办法在前期消除这些缺陷

    (5)人力资源管理

    包括组织、管理与领导项目团队的各个过程,包括制定人力资源计划、组建项目团队、建设和管理项目团队等方面。 在项目总结时,应当考察项目成员的绩效,对他们进行统计、分析和评价,以便更加有效地开发和利用人力资源。
    典型的问题包括:
    项目的生产效率如何
    每个人的生产效率如何
    每个人对项目的满意程度如何
    有么有改进的办法

    (6)沟通管理

    包括为确保项目信息及时且恰当地生成、收集、发布、存储、调用并最终处置所需的各个过程。 沟通是人员、技术、信息之间的关键纽带,是项目成功的条件。有效的沟通能在各种各样的项目干系人之间架起一座桥梁,把具有不同文化和组织背景、不同技能水平以及对项目执行或结果有不同观点和利益的干系人联系起来。
    在项目总结时,可以就项目过程中的内外部沟通渠道是否畅通合理、沟通是否充分、沟通效果如何等方面进行总结。
    典型的问题包括:
    项目有么有因为沟通不够导致问题
    各个项目干系人的沟通手段有哪些?有没有需要总结的经验教训?
    什么样的沟通方法最为有效

    (7)风险管理

    包括风险管理规划、风险识别、风险分析、风险应对规划和风险监控等 各个过程。项目总结时,可以就风险识别、风险分析和风险应对中的经验和教训进行总结,包括项目中事先识别的风险和没有预料到而发生的风险等。此外,对风险的应对措施的有效性也可以进行分析和总结。
    典型的问题包括:
    哪些问题在前期没有预料到相应的风险?为什么?
    哪些风险应对措施比较有效?
    就组织层面考察,哪些风险发生的频率较高?
    整个风险管理过程有哪些经验教训?

    (8)采购管理

    包括从项目组织外部采购或获得所需产品、服务或成果的各个过程。 项目组织既可以是项目产品、服务或成果的买方,也可以是卖方。 采购管理包括合同管理和变更控制过程。 通过这些过程,编制合同或订购单,并由具备相应权限的项目团队成员加以签发,再对合同或订单进行管理。
    项目采购管理还包括管理外部组织为从执行组织获取项目产品、服务或成果而签发的合同,以及管理该合同所规定的项目团队应承担的合同义务。
    典型的问题包括:
    项目方案是否合理
    采购而得的各类工具是否合用
    对供应商服务的评价如何
    采购相应的成本和风险考虑
    项目合同管理的经验教训有哪些

    (9)整合管理

    项目整合管理包括为识别、定义、组合、统一与协调项目管理过程组的各过程及项目管理活动而进行的各种过程和活动。 项目整合管理需要选择资源分配方案,平衡相互竞争的目标和方案,以及管理项目管理知识领域之间的依赖关系。
    典型的问题包括:
    各类计划之间是否协调一致?
    团队章程的执行状况怎样?
    项目变更的处理流程是否有效?
    项目完成之后相应的产物是否得到妥善保存?
    有没有对组织过程资产的更新?

    2. TSP项目总结介绍

    在每个开发周期的末尾一般都需要开展总结工作,为下个开发周期的改进提供参考。一个TSP总结过程大致可以划分为如下一些阶段,准备阶段、过程数据评价阶段、人员角色评价阶段和总结报告撰写阶段。

    (1)准备阶段

    在准备阶段,TSP教练将向整个开发团队详细解释总结过程的各个步骤,强调过程数据的重要性,解释总结报告的格式和内容等。

    (2)过程数据评价阶段

    该阶段往往由过程经理或者质量经理带领整个团队分析过程数据,识别过程改进机会。可以结合典型TSP团队角色,逐个讨论改进领域。如团队领导力、计划准确性、过程优劣、质量管理能力、开发环境以及配置管理等。 要求所有成员都整理过程改进提案(PIP)。
    PIP是TSP过程中供开发人员在日程工作中记录改进想法的工具,其基本思想是积累小的改进,慢慢形成大的改进。重大的改进机会不多,往往需要从小做起,慢慢积累,就会形成对原有过程的显著改进。小的改进机会多,但容易遗忘,PIP的作用在于提供一个标准的表格工具,允许软件工程师时时记录改进方案。在项目总结阶段,将开发过程中记录的所有PIP整理出来,形成整个开发周期的过程改进提案,并对他们进行讨论,以确定下个开发周期要实施的过程改进。

    (3)人员角色评价阶段

    项目组长:他的角色评价应当从领导力角度来考察在团队中的表现,重点关注团队受激励的水平和团队承诺履行方面的状况。
    计划经理:他主要关注项目进度,因此,在总结阶段需要就估算、生产效率、里程碑等话题进行总结。
    开发经理:应当从开发内容和开发策略角度出发,总结得失。
    质量经理:从项目整体质量状况出发,总结质量目标的实现过程,并找出改进机会。
    过程经理:过程经理关注团队遵循过程的程度和过程改进方案。
    支持经理:主要关注配置管理状况、问题和风险跟踪机制以及复用策略的支持等话题。
    工程师:大部分角色经理同时充当着软件工程师的角色,还需要就工程师角色的工作状况进行总结。其重点关注个人绩效。

    (4)总结报告撰写阶段

    基于上述角色评审的结果,项目团队可以整理一份项目总结报告。由项目组长带领项目成员一起制作,各个角色经理完成自己角色相应的部分,项目经理进行汇总,并组织项目团队成员进行评审。

  • 相关阅读:
    babyheap_0ctf_2017
    效率工具:“蓝色书签”文件管理工具免费使用
    介绍一个开源IOT组态项目
    阿里云99元的主机到底怎么样?
    67、数据源配置 及 配置多个数据源--C3P0 数据源 和 Hikari 数据源
    行情不好,我还是啃下了27K的offer
    小学生python游戏开发pygame5--title地图调用
    std::ofstream 写本地音频
    larave使用sanctum进行API鉴权
    JVM:虚拟机类加载机制
  • 原文地址:https://blog.csdn.net/dazhongliu666/article/details/127678734