烂项目之殇——遇到烂项目该怎么办?

2023-12-12 18:40
文章标签 项目 遇到 之殇

本文主要是介绍烂项目之殇——遇到烂项目该怎么办?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


人在江湖飘,哪能不遇到烂项目呢?遇到烂项目,无非就是欲哭无泪,想跳跳不出来,项目中的每个人都筋疲力竭,惟愿赶紧结束了项目,至于项目能做成啥样,已没人再去关心了。既然大家都不想碰到烂项目,不想陷入到烂项目中,咱们就来简单聊一聊如何识别和规避烂项目。

为啥会遇到烂项目

一般而言,遇到烂项目大概有以下几种情况:

自己开启并做出来一个烂项目

作为项目最早的参与人员,烂项目可以算是自己亲手做出来的了,在这种情况下不能怨天尤人,只能含着泪跪着也要做完。

进入项目时就已经是个烂项目

这种情况就很不幸了,算是跳进了火坑,项目做烂了,中途接手,想S的心都有;想退出来,没门,好不容易逮着你了,没有接盘侠,怎能放你走。

项目做着做着就成了烂项目

一开始项目并不烂,大家也是激情满满,但不知咋回事儿,做着做着项目就给做烂了,但又不能半途而废,只能一边抱怨着一边继续做下去。

这几种情况我都碰到过,既有自己虎头蛇尾开启过烂项目,也有作为接盘侠填坑烂项目,更有眼瞅着项目越做越烂。特别是跨平台联合作战的项目,更容易出现烂项目。当然,经历多了烂项目,看多了烂项目,也就能认清烂项目的几个特点,也算是血与泪的教训吧~~~

烂项目的几个特点

以个人经历来看,烂项目至少有几个典型特点,一旦能识别这几个特点,就可以趋利避害,躲避烂项目,或者及时止损,改造烂项目。

1、缺少项目经理

我认为烂项目最典型的特点就是缺少称职的项目经理。我见过不少项目,缺少项目经理角色的人选,没有统一协调人,项目参与方各自为政,进度对不齐,出了问题不知道找谁,就跟无头苍蝇似的乱飞。当然,没有称职的项目经理,等同于没有项目经理,不称职的项目经理对于项目团队而言更具破坏力。

2、缺少可落地的行动计划

没有行动计划是很多项目烂掉的原因之一。缺少行动计划的指导,心里就没底儿,感觉项目就是个无底洞,不知道要做到啥时候,要投入多少资源,特别容易让人懈怠,最后不了了之。另外,现在有迭代版本一说,没有明确的行动计划,最终在哪个版本上体现都不清楚。当然,不具备可落地预期的行动计划,等同于没有行动计划。计划不可落地,直接就让大家产生抵触心理,带着抱怨做工,其项目质量也就可想而知。

3、缺少明确的项目目标

没有项目目标是很多烂项目的典型特点。项目目标不清楚,质量要求不明确,参与人员不知道整个项目要做成啥样,有啥质量或性能要求不清楚,最终就是不清不楚的做。反正也没有明确的目标要求,做成啥样算啥样呗,等到用户一验收,暴露出来N多问题,这时又不想修复了,因为没有目标已成了最好的搪塞之词,就想着赶紧跳出项目呢,破罐子破摔,剩下的烂摊子爱谁接谁接了。

4、缺少项目跟踪和管控

做着做着做成了烂项目,根因之一就是缺少项目跟踪管控。跟放羊似的,起了个头,然后撒开了大家去做吧,结果就是整个项目不可控。没有项目跟踪,就不知晓项目偏差和进度风险,等到了不可收拾的地步时,项目也就千疮百孔,没法再救了。透明的可视化的项目管理(诸如精益看板)是这种病症的有效解药,即便没有日站会,所有参与人员也能知晓整个项目的进展情况。

5、缺少流程规范约束

涉及到跨平台的联合作战项目,特别容易因为缺少流程规范约束导致烂尾,比如需求变更、代码变更、merge合并、code review、缺陷提交等等。有人的地方就有江湖,何况是不同帮派的人员聚在一起。若是没有流程规范制约,各有各的做事风格,互相看不惯对方的做事习惯,自然容易起争执,结下梁子,协作出现嫌隙,进而影响整个项目顺畅开展。

6、缺少良好的沟通反馈机制

通畅的沟通反馈,容易让信息不失真,不滞涩。相反沟通反馈有问题了,很多问题就不能显式的暴露出来,自然问题也就得不到解决。问题不能及时解决,没头苍蝇似的乱转,找不到能解决问题的人,积极性就受打击,参与感不强,自然而然就不想开展下去,项目做好做坏也就无感,最终逐渐烂尾了。

如何规避或改造烂项目

遇到烂项目自然是痛苦的,大家的对策也是各有不同,粗略来看大概有以下几种:

1、一走了之

惹不起躲得起,干脆一走了之,爱谁收拾烂摊子谁收拾吧,反正我再也不想白白浪费时间了,眼不见心不烦;当然,至于会不会再碰到烂项目,那只能祈求老天了。

2、重起炉灶

既然项目做烂了,干脆重新再来吧,及时止损,但至于能不能再次走老路,再做出来一个烂项目,则很难说了。

3、外科手术

项目做烂是因为技术不好,那就用新技术新方法新工具改造;当然,能不能烂上加烂,那也是很难说了。

4、温和改良

虽然项目做烂了,但本着治病救人的态度,有改善的希望就改造烂项目,能挽回一点损失算一点。

当然,就我个人而言,也是倾向于温和改良,保守治疗。既然已经识别到烂项目的特点,无非就是对症下药,缺少项目经理,就赶紧找个称职的来顶上;没有计划,缺少规范,沟通不畅,那就缺啥补啥。最重要的是,项目要有定期复盘,通过复盘及时纠偏,不能让项目继续烂下去。就算这个项目真的烂尾了,通过项目复盘不断总结,以后一旦再碰到此类项目,就知道如何避开导致烂项目的问题,别再跌进去曾经踩过的坑里。

后记

在研发过程中,烂项目还是很常见的。究其因,打铁还需自身硬,平时不注意规避项目问题,平时不注意项目复盘总结积累,一旦项目做烂了,势必影响团队士气,也难以交付高质量的项目成果物。当遇到烂项目的时候,也别立即放弃了,针对病症对症下药,及时止损,也许还有救回来的可能呢?

文末分享:这下面有我学习整理出来的自动化测试资料、大厂面试…待你来领取~ 见公众号:【伤心的辣条】愿你我都有所获…

合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!

我的测试学习交流群:902061117 群里有技术大牛一起交流分享~

原文不易呀,眼睛都留眼泪了!麻烦伸出发财小手点个赞,感谢您的支持,你的点赞是我持续更新的动力。

这篇关于烂项目之殇——遇到烂项目该怎么办?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/485584

相关文章

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

如何用Docker运行Django项目

本章教程,介绍如何用Docker创建一个Django,并运行能够访问。 一、拉取镜像 这里我们使用python3.11版本的docker镜像 docker pull python:3.11 二、运行容器 这里我们将容器内部的8080端口,映射到宿主机的80端口上。 docker run -itd --name python311 -p

在cscode中通过maven创建java项目

在cscode中创建java项目 可以通过博客完成maven的导入 建立maven项目 使用快捷键 Ctrl + Shift + P 建立一个 Maven 项目 1 Ctrl + Shift + P 打开输入框2 输入 "> java create"3 选择 maven4 选择 No Archetype5 输入 域名6 输入项目名称7 建立一个文件目录存放项目,文件名一般为项目名8 确定

Vue3项目开发——新闻发布管理系统(六)

文章目录 八、首页设计开发1、页面设计2、登录访问拦截实现3、用户基本信息显示①封装用户基本信息获取接口②用户基本信息存储③用户基本信息调用④用户基本信息动态渲染 4、退出功能实现①注册点击事件②添加退出功能③数据清理 5、代码下载 八、首页设计开发 登录成功后,系统就进入了首页。接下来,也就进行首页的开发了。 1、页面设计 系统页面主要分为三部分,左侧为系统的菜单栏,右侧

SpringBoot项目是如何启动

启动步骤 概念 运行main方法,初始化SpringApplication 从spring.factories读取listener ApplicationContentInitializer运行run方法读取环境变量,配置信息创建SpringApplication上下文预初始化上下文,将启动类作为配置类进行读取调用 refresh 加载 IOC容器,加载所有的自动配置类,创建容器在这个过程

Maven创建项目中的groupId, artifactId, 和 version的意思

文章目录 groupIdartifactIdversionname groupId 定义:groupId 是 Maven 项目坐标的第一个部分,它通常表示项目的组织或公司的域名反转写法。例如,如果你为公司 example.com 开发软件,groupId 可能是 com.example。作用:groupId 被用来组织和分组相关的 Maven artifacts,这样可以避免

2. 下载rknn-toolkit2项目

官网链接: https://github.com/airockchip/rknn-toolkit2 安装好git:[[1. Git的安装]] 下载项目: git clone https://github.com/airockchip/rknn-toolkit2.git 或者直接去github下载压缩文件,解压即可。

9.8javaweb项目总结

1.主界面用户信息显示 登录成功后,将用户信息存储在记录在 localStorage中,然后进入界面之前通过js来渲染主界面 存储用户信息 将用户信息渲染在主界面上,并且头像设置跳转,到个人资料界面 这里数据库中还没有设置相关信息 2.模糊查找 检测输入框是否有变更,有的话调用方法,进行查找 发送检测请求,然后接收的时候设置最多显示四个类似的搜索结果

maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令

maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令 在日常的工作中由于各种原因,会出现这样一种情况,某些项目并没有打包至mvnrepository。如果采用原始直接打包放到lib目录的方式进行处理,便对项目的管理带来一些不必要的麻烦。例如版本升级后需要重新打包并,替换原有jar包等等一些额外的工作量和麻烦。为了避免这些不必要的麻烦,通常我们

Anaconda 中遇到CondaHTTPError: HTTP 404 NOT FOUND for url的问题及解决办法

最近在跑一个开源项目遇到了以下问题,查了很多资料都大(抄)同(来)小(抄)异(去)的,解决不了根本问题,费了很大的劲终于得以解决,记录如下: 1、问题及过程: (myenv) D:\Workspace\python\XXXXX>conda install python=3.6.13 Solving environment: done.....Proceed ([y]/n)? yDownloa