上个项目接近尾声,我以developer的身份加入了现在的项目,姑且叫做项目A吧。说实话A项目蛮神奇的,干了一年多了只有一次release,8月初要进行第二次release了,但是测试环境还未搭建好。

该项目是个分布式团队,分布在成都和澳洲两个地方。由于成都这边团队都是清一色的developer,没有qa,严重阻碍了交付的进度。所以我跑到澳洲出差1个月来了解一下整个项目的context,并争取能找出一种解决方案来实现让成都团队中有人能够担任QA职责。目前已经在项目中呆了3周了,2周在成都,1周在澳洲。通过这三周的观察,我总结出了项目中目前存在的一些问题。

  1. 此项目是一个一个遗留系统,里面使用到的各种技术很多,有些技术很冷、很偏,维护起来较难。

  2. 此项目相关的依赖也比较严重,大大小小有将近10个依赖项目。

  3. 集成及系统测试环境搭建太晚,严重缺乏及时的端到端测试,导致大量卡被堆积在ready for test中,却没有足够的测试人员来测试。

  4. 由于data security的原因,成都团队无法触及集成测试环境及系统测试环境。(公司是一个保险公司,不允许客户数据被在澳洲以外的人看到)

  5. 成都团队对业务了解不深入(至少在客户这边看来),每张故事卡做完都需要澳洲团队review代码。

  6. 每个人看似都在认真工作,但交付完全跑偏,压力堆积在team leader, Iteration manager等人身上。

虽然我们称为敏捷团队,但这个团队怎么看也不像是敏捷团队。为什么会导致这么多的问题那?我分析了一下,觉得大致有两方面的原因。

  1. 由于特殊的data security问题,导致了项目不能满足敏捷团队中起码的开放原则。在一个敏捷项目中,首要的就是开放。无论是程序中的每一行代码,还是数据库中的每条数据,都不能是某人或某些人的私有财产,团队中的每个人都能有所触及,这样才不会引起项目中的盲点,导致一个对团队大多数人来说的黑区。而成都团队无法触及项目中的真实客户数据,直接导致了成都团队无法做真正的端到端测试,即使开发者也难对自己开发出的功能进行验证,只能mock掉大部分的集成点。

  2. 团队中的成员没有完全做到以交付为目标。敏捷项目中的最终目标就是以交付产品为目的。如果BA只管给墙上添加story,developer只顾埋头开发story,虽然每个人都在尽力做自己的本职工作,但story并没有很好的进入done column。这是因为由于多种原因,测试环境并没有尽早的搭建起来,大量story堆积到了测试环节,使得一个敏捷项目愣是变成了瀑布型。在这种情况的早期阶段大家就应该要有所觉察,developer应该停止开发story,而是协助QA尽早建立起测试环境,协助QA一起来做测试。大家应该一起关心当前项目的delivery的状况,找出其中的block并商讨出一定的解决方案。

既然存在这么多的问题,接下来应该怎么做那?我想应该从以下几个方面着手。

  1. 尽快建立起集成测试及系统测试环境,准备好测试数据,保证测试的正常进行。
  2. 和团队人员讨论出一种测试策略,比如采用给集成环境灌输fake data的方式使成都团队能避免或部分避免data security的干扰,能够开展测试。
  3. 基于上面几点,建立起端到端的自动化测试,使得QA脱离手工测试的苦海,完善我们的质量保护网。

希望自己能在剩余的3周onshore中能够有所进展。其实我比较鼓励大家在做自己手头工作的同时能够多多思考,不能将自己局限在某一个角色之中,这样子才不会日复一日重复昨天的工作,而是在工作中能够有所提高,提升自己的专业能力和职业素养。这些都是日后前进的宝贵财富。

转载于:https://www.cnblogs.com/huang0925/p/3221916.html

项目交付为什么失败?-记我在某个项目中的迷思相关推荐

  1. idea项目依赖导入失败_解决idea导入项目后依赖报错问题

    1.在idea首页 Confige-->setting-->build,execution,deployment-->buildTool-->maven-->work o ...

  2. 如何提高项目交付效率

    道法术出自老子<道德经>,道,是规则.自然法则,上乘.法,是方法.法理,中乘.术,是行式.方式,下乘."以道御术"即以道义来承载智术,悟道比修炼法术更高一筹." ...

  3. 论项目集管理的成功之道︱紫光云项目总监马洪卫

    紫光云技术有限公司智慧城市项目总监马洪卫受邀为由PMO评论主办的2022第十一届PMO大会(线上会议)演讲嘉宾,演讲议题为"论项目集管理的成功之道".大会将于8月13-14日和8月 ...

  4. 交付方式 saas_我在全职工作时如何交付我的第一个SaaS副项目

    交付方式 saas by Tigran Hakobyan 由Tigran Hakobyan 我在全职工作时如何交付我的第一个SaaS副项目 (How I shipped my first SaaS s ...

  5. 《人件(原书第3版)》—— 01 此时此刻,一个项目正在走向失败

    本节书摘来自华章出版社<人件(原书第3版)>一 书中的第1章,第1.1节,作者:(美)Tom DeMarco,Timothy Lister,更多章节内容可以访问云栖社区"华章计算 ...

  6. Kubernetes部署(七):k8s项目交付----(4)日志收集

    介绍 日志,对于任何系统来说都是及其重要的组成部分.在计算机系统里面,更是如此.但是由于现在的计算机系统大多比较复杂,很多系统都不是在一个地方,甚至都是跨国界的:即使是在一个地方的系统,也有不同的来源 ...

  7. Kubernetes部署(四):k8s项目交付----(1)持续集成

    实战交付dubbo服务到k8s 一.什么是Dubbo是什么 ● Dubbo是什么● Dubbo基于java开发的,是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,00 ...

  8. 软件项目交付实战技巧

    我是一名IT老兵,在软件行业已经干了二十多年.一路走来,身边有很多人创业,但成功的不多,我一直在关注这些人.我发现一个规律,凡是能让公司走到最后的人,都是做交付出身或是对交付很熟悉的.而那些做销售或售 ...

  9. 如何打造高效的项目交付团队︱中国联通(江西)工业互联网研究院熊小云

    中国联通(江西)工业互联网研究院高级咨询顾问熊小云受邀为由PMO评论主办的2022第十一届PMO大会(线上会议)演讲嘉宾,演讲议题为"如何打造高效的项目交付团队".大会将于8月13 ...

最新文章

  1. 【ES6】数组的拓展
  2. SOLID面向对象模式浅析
  3. tkmbatis 日志_mybatis打印sql日志
  4. 关于Puremvc的理解
  5. 取消mysql自动备份文件_MySQL自动备份并清理多少天前的备份文件
  6. linux C 进程内部存储管理
  7. 协同过滤算法_机器学习 | 简介推荐场景中的协同过滤算法,以及SVD的使用
  8. CentOS7 升级Python2.x到3.x
  9. route 更改网络设置
  10. python列表元祖字典集合运算_Python基础5:列表 元祖 字典 集合 Json
  11. 蓝桥杯 ADV-212 算法提高 3-1课后习题2
  12. 使用工具类DbUtils连接数据库,并简单操作数据库
  13. GB28181协议简介及实践
  14. 微信公众号采集之免费采集公众号爆文工具
  15. ubuntu创建服务程序
  16. 入侵html数据库,教你如何暴库(网站入侵)
  17. 联想国产自主计算机,实现零的突破,第一款纯国产电脑诞生,网友:此刻联想怎么想?...
  18. 你可能没有细究过的TCP/IP
  19. 入职一年,升职一次,涨薪两次
  20. MySQL中的表中增加删除字段

热门文章

  1. 如何在NEO共识节点间分配任务
  2. 原生JS DOM操作方法汇总
  3. Linux 网络编程详解二(socket创建流程、多进程版)
  4. Gamma校正及其OpenCV实现
  5. Cacti脚本及模板
  6. sql 使用存储过程传递列名或表名作为参数
  7. 一个比较明显的OOM的排查过程
  8. Cookie,Session
  9. pythonweb框架Flask学习笔记05-简单登陆
  10. 漫画算法:什么是一致性哈希?