团队版本交付不断延期,我们应该如何追回进度,赶上工期的一些思考

author author     2023-04-19     288

关键词:

参考技术A

再三思考之下,就想谈谈近期发生的一些事情给我带来的思考,近期我们团队有一个比较大的版本需要开发,该版本影响面较大,也是配合市场销售的一个版本。但是在开发的过程中,遇到了不少的问题,最终导致该版本不断的延期,截止到deadline,团队依然没有完成该版本,导致我们进行了一些调整,对公司来说,也是带来了不小的影响。此时我就在思考,我们后续面对这种情况,应该如何做出反应,作何应对措施才能让损失降到最低或者没有损失。

"项目经理常常会遇到这样的困境:项目交付时间被定死了,但是基于现有的资源完 成项目几乎是不可能的。遇到这样的情形,我们难道就束手就擒了吗?

答案肯定是否定的, 接触互联网项目管理以来,团队经常遇到这样的困境:老板已经把项目的交付时间 确定好了。但是项目团队经过初步估算后发现,就当前 的范围、资源、质量要求而言,完全没有可能按期交付。相信这样的情形也同样困 扰着其他一些项目经理。

我们应该如何应对这种情况呢?我们该做些什么?加班、 加人?

也许这些都是方法,却都是非常规的,在我所在的团队较少将这些方式作 为项目计划的一部分,原因如下。
(1)加班。一方面,在弱矩阵项目结构的组织中,项目经理没有绝对的权力要求团
队成员进行加班,即使项目经理将加班视为解决时间紧张的方案也未必能够实施; 另一方面,团队成员的工作是一个持续的过程,一个项目结束后就会马上有另一个 项目的任务,成员在加班的状态下会消耗比平常更多的能量。这与人在跑步的时候 一样,突然加速快跑冲刺肯定消耗大量体力,但是能量总是守恒的,一般在加班过 后,团队的士气和效率都会处于较低的状态,而且这个状态会持续较长一段时间, 势必影响其在下一个项目中的表现。

(2)加人。一方面,在项目需求已经出了初稿的时候再去招人是比较困难的事情, 人员的到岗速度并没有那么快。就算不需要重新招人而是从其他团队调人,也并非 易事,因为该人员必须在技术上很适合该项目,而且有时间过来协助。另一方面, 新成员的加入,会增加不少沟通成本,理论上讲,一个原来有n人的项目,每增加一 位新员工就会增加n条沟通渠道,这势必会增加一些沟通成本。我们平常也经常说1 个人两天完成的工作量往往大于两个人一天完成的工作量。所以这种方式也不作为 我们处理时间紧张问题的常规方式。

那么我们后续该如何解决这个问题呢?我想我们可以考虑下面一些选择。

一般项目都有关键约束因素和浮动约束因素。关键因素是决定项目是否成功的因 素;浮动因素是指可以调整的重要影响因素。在时间作为关键约束因素的项目中, 范围就成了可浮动的一部分。我们会重新回顾需求文档,根据需求的优先级,重新 划定本里程碑的范围,将一些锦上添花的功能先拿掉,剩下主体功能。在互联网的 项目中,产品经理或者策划在定需求的时候可能只是按照他们的期望定了范围,他 们总是希望在最近的里程碑将所有需求开发完,往往有一些需求并没有那么迫切, 对用户来讲可能也无关紧要,不需要非得在本里程碑完成,完全可以将这些低优先级的需求放到下一个里程碑完成,或者本里程碑可以完成这些需求的简单实现,在 下个里程碑进行完善。

在顺序开发的项目中,若时间不够充裕的话,往往测试的时间就会被压缩,最后导 致测试不充分,产品的质量不过关,测试期Bug“绵延不断”,交付后仍可能出现严 重的Bug。为了避免这种现象的产生,时间比较长(3个月及以上)的项目,我们会 采取分批提交的方式,将需求分2~3次提交,让测试同事提早介入。在第一批功能开发 完成时测试同事就可以开始测试,开发人员此时就能开发接下来的功能。这样就能减 少测试同事在开发阶段等待的时间以及开发在测试同事测试过程中的等待时间,提高了 团队的效率,缩短了整个里程碑发布需要的时间。如果有可能的话我们甚至可以按 功能提交,每完成一个功能测试同事就开始测试。不过该方式下,很多时候开发可能 身兼多重任务,修复第一批功能Bug的时候同时开发第二个功能,此时就需要项目经 理细粒度地跟进情况,及时发现问题,将开发任务和修复Bug的优先级定义明确。

关键路径即该项目中所需时间最长的一条路径。项目之初,理出关键路径,将关键 路径外的功能交由一些相对不稳定或者时间不固定资源(实习生、外部人员)去协 助完成。这些功能就算不能按时完成,整个项目的提交也不会受到太大影响。这样,更多的资源就能被分配到关键路径上,集中力量解决问题。

项目之初,若是时间不充裕,在定交付标准的时候可以适当降低Bug修复的标准。一 些修复代价较大且影响较小的Bug可以暂时不修。等到项目进入测试阶段,根据当前的情况,我们会重新评估之前的标准,看是否需要重新调整。关于Bug的优先级重要 性,测试同事在报告Bug的时候会有一个初步的判断,经过团队分类后会最终确定下 来。那些被“剩下来”的Bug,可以在里程碑结束之后修复,但是这都不会影响到关 键功能的使用。

以上方法,均需根据项目组的实际情况剪裁使用,“让你的团队赶上工期”。没有 最完美,只有最适合。"

你的devops中有完善的持续交付体系么?(代码片段)

...都与DevOps有着很强的联系。这种环境影响下,传统的运维团队均开始向DevOps进行转型。一时之间运维开发、SRE、工程效能工程师需求量大增,无论公司大小,都会开始着手DevOps的从0到1的建设。我们开始搭建工具链、部署流水线... 查看详情

敏捷交付中的自动化测试

...续不断地测试(ContinousTesting)。实现持续测试,不仅需要团队从文化上去支持,真正做到全员对测试和质量负责,创建Devops文化氛围,打通开发-测试-运维的壁垒;还需团队从技术上去储备知识,比如云平台、虚拟化技术,容器... 查看详情

谷歌大模型团队并入deepmind!誓要赶上chatgpt进度

...续。最新消息,其旗下专注语言大模型领域的“蓝移团队”(BlueshiftTeam)宣布,正式加入DeepMind,旨在共同提升LLM能力!DeepMind科学家们在推特下面“列队欢迎”,好不热闹~蓝移团队隶属于谷歌研究... 查看详情

软工网络15团队作业7——alpha冲刺之事后诸葛亮

...知道钱花到哪里去,没有好的金钱规划等问题。在之前的团队博客的需求分析中对典型用户和典型场景有清晰的描述。2.我们达到目标了么(原计划的功能做到了几个?按照原计划交付时间交付了么?原计划达到的用户数量达到 查看详情

团队作业9——事后分析(beta版本)

...?)  完成原计划第一部分的需求3.和上一个阶段相比,团队软件工程的质量提高了么?在什么地方有提高,具体提高了多少,如何衡量的?  没,都在忙其 查看详情

团队作业8——beta版本冲刺计划及安排

Beta版本冲刺计划及安排啊哈哈,小编我又来了,是不是觉得我没有被踢掉很遗憾?幼稚!逗比的世界你们是不会懂的。 a.先让我们介绍一下新加入的成员吧!  新进成员:孙佳萱(201421123061)  自我介绍:大家好,我是... 查看详情

《构建之法》——软工学习进度

...sp;2. 敏捷开发的原则:   ①.尽早并持续地交付有价值的软件以满足顾客的需求。  ②.敏捷流程欢迎需求的变化,并利用这种变化来提高用户的竞争优势。  ③.经常发布可用的软件, 查看详情

团队作业10——事后分析(beta版本)

一、设想和目标1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?我们软件是帮助教师和助教收集查看实验报告并解决实验报告的抄袭问题,基本用户有两个:1、教师或助教;2... 查看详情

三号团队-团队任务3:每日立会(2018-11-29)

我们是3号团队,我们开发的软件是家庭账本;今日整理人姓名:徐连顺,学号:2016035107249,在团队中担任的职务是:软件工程师。团队汇报:  燃尽图:进度正常,并且把昨天落的进度赶上来了遇到的问题:reclerview数据... 查看详情

软工网络15团队作业2——团队计划(代码片段)

确定选题团队选题:“背背佳”---英语单词学习微信小程序对于这次的团队作业,我们组想了很久最终决定了做一个英语单词学习的微信小程序。大家都知道现在微信小程序炙手可热,各类微信小程序层出不穷,但我们发现周围... 查看详情

团队作业9——事后分析(beta版本)

设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?我们要解决的是小学生通过一个比较好的方式来训练四则运算能力的问题,定义的算是比较清楚,对典型用户和... 查看详情

itsm|如何通过设计提升工单处理效率

随着数字化的进程不断加快,企业对IT团队和组织协作效率要求也不断提高。嘉为蓝鲸IT服务管理中心,基于ITIL实践,提供事件管理、问题管理、变更管理、请求管理能力,并通过与ITOM的集成融合,大幅提升管理效率与用户体验... 查看详情

软件测试的测试流程是怎样的?

要保证项目按照正常进度发布,需要整个研发团队齐心协力。有很多原因都可能会造成项目延期。1、产品经理频繁修改需求2、开发团队存在技术难题3、测试团队测不完今天我想跟大家聊一下,测试团队如何保证项目按期上线,... 查看详情

团队作业9——事后分析(beta版本)

团队作业9-事后分析设想和目标我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述?  帮助用户不用懂网站前端代码就可以自定义美化自己的博客园网站。针对典型用户比如拥有博客的... 查看详情

持续交付1-持续交付

持续交付持续集成:个体不断向主干分支快速迭代的过程,强调开发的及时性,以保障局部和整体开发进度的协调,而不是像瀑布模型那样集中提交,而存在大量冲突的情形;持续交付:将持续集成的二进制包不断进行测试,优化的过程,使... 查看详情

持续交付2-版本控制

...整历史,包括源代码,文档,数据库定义,构建脚本,测试等.当团队人数超过一定数量时,版本的冲突会日益增多,如何较好的进行版本控制管理,就变得非常重要.分支与合并分支的主要目的时帮助并行开发,而不互相影响.团队中的分支使... 查看详情

全面质量管理体系方案

...速交付能力的要求会进一步提升。如何成为更好的高效能团队,使得稳定性不因为交付吞吐量的提升而下降,同时让整个团队共同担负起质量的责任,是从去年以来,我们一直希望去做到的。很显然我们需要进一... 查看详情

敏捷开发的那些事

...捷项目管理解决方案特点为全角色、全流程、支持中大型团队:提供包含项目管理、产品、运营、研发、测试等各职能角色在内的完整解决方案。为需求管理、迭代规划、进度跟踪等经典Scrum环节提供工具支撑。兼具组织架构管... 查看详情