软件项目总结_软件项目开发总结报告-程序员宅基地

技术标签: 软件工程  

一. 项目总结的意义

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

二. 项目总结过程

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

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)总结报告撰写阶段

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

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/dazhongliu666/article/details/127678734

智能推荐

oracle 12c 集群安装后的检查_12c查看crs状态-程序员宅基地

文章浏览阅读1.6k次。安装配置gi、安装数据库软件、dbca建库见下:http://blog.csdn.net/kadwf123/article/details/784299611、检查集群节点及状态:[root@rac2 ~]# olsnodes -srac1 Activerac2 Activerac3 Activerac4 Active[root@rac2 ~]_12c查看crs状态

解决jupyter notebook无法找到虚拟环境的问题_jupyter没有pytorch环境-程序员宅基地

文章浏览阅读1.3w次,点赞45次,收藏99次。我个人用的是anaconda3的一个python集成环境,自带jupyter notebook,但在我打开jupyter notebook界面后,却找不到对应的虚拟环境,原来是jupyter notebook只是通用于下载anaconda时自带的环境,其他环境要想使用必须手动下载一些库:1.首先进入到自己创建的虚拟环境(pytorch是虚拟环境的名字)activate pytorch2.在该环境下下载这个库conda install ipykernelconda install nb__jupyter没有pytorch环境

国内安装scoop的保姆教程_scoop-cn-程序员宅基地

文章浏览阅读5.2k次,点赞19次,收藏28次。选择scoop纯属意外,也是无奈,因为电脑用户被锁了管理员权限,所有exe安装程序都无法安装,只可以用绿色软件,最后被我发现scoop,省去了到处下载XXX绿色版的烦恼,当然scoop里需要管理员权限的软件也跟我无缘了(譬如everything)。推荐添加dorado这个bucket镜像,里面很多中文软件,但是部分国外的软件下载地址在github,可能无法下载。以上两个是官方bucket的国内镜像,所有软件建议优先从这里下载。上面可以看到很多bucket以及软件数。如果官网登陆不了可以试一下以下方式。_scoop-cn

Element ui colorpicker在Vue中的使用_vue el-color-picker-程序员宅基地

文章浏览阅读4.5k次,点赞2次,收藏3次。首先要有一个color-picker组件 <el-color-picker v-model="headcolor"></el-color-picker>在data里面data() { return {headcolor: ’ #278add ’ //这里可以选择一个默认的颜色} }然后在你想要改变颜色的地方用v-bind绑定就好了,例如:这里的:sty..._vue el-color-picker

迅为iTOP-4412精英版之烧写内核移植后的镜像_exynos 4412 刷机-程序员宅基地

文章浏览阅读640次。基于芯片日益增长的问题,所以内核开发者们引入了新的方法,就是在内核中只保留函数,而数据则不包含,由用户(应用程序员)自己把数据按照规定的格式编写,并放在约定的地方,为了不占用过多的内存,还要求数据以根精简的方式编写。boot启动时,传参给内核,告诉内核设备树文件和kernel的位置,内核启动时根据地址去找到设备树文件,再利用专用的编译器去反编译dtb文件,将dtb还原成数据结构,以供驱动的函数去调用。firmware是三星的一个固件的设备信息,因为找不到固件,所以内核启动不成功。_exynos 4412 刷机

Linux系统配置jdk_linux配置jdk-程序员宅基地

文章浏览阅读2w次,点赞24次,收藏42次。Linux系统配置jdkLinux学习教程,Linux入门教程(超详细)_linux配置jdk

随便推点

matlab(4):特殊符号的输入_matlab微米怎么输入-程序员宅基地

文章浏览阅读3.3k次,点赞5次,收藏19次。xlabel('\delta');ylabel('AUC');具体符号的对照表参照下图:_matlab微米怎么输入

C语言程序设计-文件(打开与关闭、顺序、二进制读写)-程序员宅基地

文章浏览阅读119次。顺序读写指的是按照文件中数据的顺序进行读取或写入。对于文本文件,可以使用fgets、fputs、fscanf、fprintf等函数进行顺序读写。在C语言中,对文件的操作通常涉及文件的打开、读写以及关闭。文件的打开使用fopen函数,而关闭则使用fclose函数。在C语言中,可以使用fread和fwrite函数进行二进制读写。‍ Biaoge 于2024-03-09 23:51发布 阅读量:7 ️文章类型:【 C语言程序设计 】在C语言中,用于打开文件的函数是____,用于关闭文件的函数是____。

Touchdesigner自学笔记之三_touchdesigner怎么让一个模型跟着鼠标移动-程序员宅基地

文章浏览阅读3.4k次,点赞2次,收藏13次。跟随鼠标移动的粒子以grid(SOP)为partical(SOP)的资源模板,调整后连接【Geo组合+point spirit(MAT)】,在连接【feedback组合】适当调整。影响粒子动态的节点【metaball(SOP)+force(SOP)】添加mouse in(CHOP)鼠标位置到metaball的坐标,实现鼠标影响。..._touchdesigner怎么让一个模型跟着鼠标移动

【附源码】基于java的校园停车场管理系统的设计与实现61m0e9计算机毕设SSM_基于java技术的停车场管理系统实现与设计-程序员宅基地

文章浏览阅读178次。项目运行环境配置:Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:Springboot + mybatis + Maven +mysql5.7或8.0+html+css+js等等组成,B/S模式 + Maven管理等等。环境需要1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。_基于java技术的停车场管理系统实现与设计

Android系统播放器MediaPlayer源码分析_android多媒体播放源码分析 时序图-程序员宅基地

文章浏览阅读3.5k次。前言对于MediaPlayer播放器的源码分析内容相对来说比较多,会从Java-&amp;amp;gt;Jni-&amp;amp;gt;C/C++慢慢分析,后面会慢慢更新。另外,博客只作为自己学习记录的一种方式,对于其他的不过多的评论。MediaPlayerDemopublic class MainActivity extends AppCompatActivity implements SurfaceHolder.Cal..._android多媒体播放源码分析 时序图

java 数据结构与算法 ——快速排序法-程序员宅基地

文章浏览阅读2.4k次,点赞41次,收藏13次。java 数据结构与算法 ——快速排序法_快速排序法