【QCon】精华内容上线92%,全面覆盖“人工智能+”的典型案例!>>> 了解详情
写点什么

Naresh Jain 谈印度敏捷

  • 2012-02-12
  • 本文字数:3133 字

    阅读完需:约 10 分钟

Naresh Jain 印度敏捷软件社区的创始人,也是即将来临的敏捷印度大会的主席。我们联系了Naresh,讨论了印度公司敏捷方法的应用现状以及前路几何。

InfoQ:你觉得敏捷在印度的应用现状是什么样子的?

Naresh Jain:很疯狂!就像印度的交通系统——控制下的混乱!人们需要有欣赏者的眼光才能发现它的美!

在过去的 7 年之中,我已经看过了很多公司逐渐地试水敏捷,并开始嬉水。绝大多数在印度的机构,无论是大型 IT 企业、小型公司,抑或庞大的离岸研发中心,他们已经 100%地受到敏捷方法的影响。

就像在世界(即使在亚洲)其他的地方一样,产品公司的敏捷实施都更加严肃和严格(但不一定更成功)。

如果你访问不同的公司,并且真正 去与不同层次的人去交谈,他们会告诉你迄今为止他们的疯狂行径。埋怨外包工作的性质、缺乏对这些方法的了解、层级式的社会或者在某些情况下就是简单地无法 胜任。[以下为嘲讽]只有我们参加了为期 3 天地 Scrum Master 培训,世界才会是一个更为宜居的地方。[嘲讽结束]真相是事实是,旅程才刚刚开始,真正有趣的部分尚未来到呢!

InfoQ:您是否认为敏捷仅仅在创业公司和小型软件作坊里面实施得很到位,或者它正在进入大型公司?

Naresh Jain:关于星星之火的事实之一是,在传播的时候,它会向各个方向传播。今天,我 看到 95%的印度软件公司都是在耍敏捷。现在的流行趋势是说我们在正确地实施敏捷?当我看到公司迈向敏捷时,在某些情况下是由于绝望,在某些情况下是由于 客户或现场压力,而在某些情况下,则仅仅是一个营销噱头。有时候感觉它似曾相识。难道我们在十年前的 CMM 身上没有看过类似的事情吗?

不过,我很幸运地与几家真正相信敏捷精神的公司合作。他们了解它不是在“做”敏捷,而是在“变得”敏捷。一个说起来非常禅意的东西!

InfoQ:印度当前最丰厚的利润行业之一是 IT 行业。大型外包项目通常必须包括大量的前期工作以决定项目范围,并在整个项目周期里面仔细地控制。敏捷是否可以应用于外包项目?

Naresh Jain:我们人类建立“东西(stuff)”的心理模型,并尝试将我们周围的世界适配到这种模式。

几年前,软件开发的心理模型是“装配线”。这个心智模型的展开如下:

第 1 步:计划和制定策略(在这里和那里加一些幻想)
第 2 步:记录每一个小细节
第 3 步:定义一个严谨的过程,让你如何像齿轮啮合一样严丝合缝地对待人
第 4 步:寻找廉价劳动力
第 5 步:将工作交给他们,定义非常严格的“做什么”和“不做什么”的合同
第 6 步:定义最佳实践来管理执行
第 7 步:迭代…
第 8 步:直到获取美妙的结果不幸的是极少数项目的存活能超出第 7 步。大多数人在野生求生存。

除了许多其他的缺陷,这种模式下低估了信任、共识、集体所有权、自豪感以及适应性的重要性。

无论外包与否,这些项目都是注定要失败的。[以下为嘲讽]当然,离岸外包给你最好的炸药包。[嘲讽结束]

事实证明(至少对我来说),分布式开发是非常困难的。离岸更是困难,外包和离岸则是最难的。然而,正如我们所看到的,离岸外包模式对于某些业务和管理仍然合理(但不适用于所有的项目)。

鉴于不得不妥协的现实,我见过敏捷和精益思想对于如下情况相当有帮助,例如:

  • 我们很难预先明确地计划太多。敏捷方法给你一个基本的模型来管理这种不确定性
  • 我曾帮助组织实现一个轻量级的 RFP 流程。作为对 RFP 的回应,我们实际上提交了 MVP(最小可行的产品),虽然价格 3 倍于其他人
  • 越来越多的客户要求更短的发布周期和更多的参与
  • 更好的双方透明度和伙伴关系在一些外包公司是共通之处

恕我直言,敏捷和精益思想已经把大量的注意力吸引到了外包开发模式的一些非常重要,但往往被忽视的方面。并且还大大减少了流程中的一些痛苦。我们仍然有很长的路要走。

InfoQ:外包项目的合同细节是怎么样的?客户的执行官都希望知道针对预算/时间线,她能得到什么,那你是如何与他们就合同进行谈判的?

Naresh Jain:往往,在信任度很低(首次合作)的情况下,客户想知道他们将得到什么,以及他们将何时获得 X 金额。在某些情况下,我认为这些要求很公平。

但真正的问题是,模糊的东西很难估算。在项目的开始阶段,我们掌握的知识量最少。

为了解决这个问题,我通常鼓励企业从产品识别研讨会(PDW,product discovery workshop)开始。一般长约 1-2 周。我们最初与客户签订主服务协议(MSA,Master Services Agreement)。根据 MSA,第一份工作合同(SoW)往往是针对产品识别研讨会。它有一个明确的开始时间、结束时间以及交付物列表。

在产品识别研讨会的结束阶段,我们会有一份高层次的发布路线图。从这个路线图,我们选择第一部分,做一些初步的研究(spike)和涉及工作量的估算(guestimate)。根据 MSA,第二份 SoW 是针对路线图的第一部分。固定价格,固定日期。

这样,我们就将大型的产品路线图分解到小的 SoW 合同,并执行该项目。有时在 PDW 之后,我们可以为整个发布路线图签署一份单一的 SoW。一切都取决于双方的信心程度。

这是我经验中的规划固定价格外包合同的敏捷方式。

InfoQ:敏捷社区有大量的方法/框架,如精益、Scrum、看板,您认为哪些在印度公司里面应用得更多?

Naresh Jain:Scrum 看上去是最容易开始的。与所有其他的方法 / 框架相比,Scrum 似乎对(中级)管理层的威胁最少。毕竟,在大多数的情况下,他们满握着金钱和决策的权力。与认证一结合,你就得到了一个杀手锏。 (一个真正的敏捷杀手!)

因此,毫无疑问,在亚洲和世界各地,Scrum 似乎是采用(至少尝试采用)最广泛的敏捷方法。

但这究竟意味着什么?从现在开始,项目经理应该被称为 Scrum master。团队应该将需求称为用户故事,而不是用例或任何他们曾经称呼需求的名字。每天晚上(以确保现场团队成员是“演习”的一部分)都有 30-45 分钟的“演习”。一组新的精巧(昂贵)的工具。每个团队成员都是用新的所谓燃尽图的度量标准进行衡量。更频繁的后半夜和周末。(传统)测试人员的噩梦。每 隔 30 天左右,该团队就要展示他们在过去 60 天里一直试图构建的东西。而最好的部分是,“客户”可以随时更改自己的想法。

如果你问我哪个是最有效的方法之一,这问题极为有趣。

InfoQ:您认为哪些敏捷方法在印度的效果更为优秀?

Naresh Jain:空流程——如果公司停止追逐过程和方法,就好像它们能够真实地解决软件开发中的困难问题似的。空流程鼓励企业忘记流程,专注于自己的业务以及业务背后的人。

在敏捷孟买(Agile Mumbai)2010 年会议上面,Sandeep 和我举行了一个名为“ Monkey See Monkey Do ”的研讨会,鼓励企业忘记并远离流程思维。

InfoQ:有些印度大学的课程表上已经出现了有关敏捷软件开发的课程,您能跟我们分享更多的一些信息吗?

Naresh Jain:在过去的 7 年中,印度敏捷软件社区(ASCI)曾与在印度的很多高校一起合作,往教育系统中引入了敏捷概念。我们已经在印度的一流大学里面举办过多次会议,以吸引更多的学者参与。我们已经给来自印度各地的教师组织了进修课程。

关于高校,果阿大学(Goa University)是一所脱颖而出的大学。他们试图使整个教育体系更加敏捷。此外,他们已经开始在他们的课堂项目上使用极限编程和 Scrum 方法。事实上,在即将召开的敏捷印度 2012 年大会上,我们有两个来自于他们的演讲——高等教育中的敏捷实践:案例研究在软件工程课程项目上使用 Scrum

与之类似,其他高校,如 PES 工程学院(PES College of Engineering)、雅典卫城技术研究所(Acropolis Institute of Technology)、共生电脑学研究所和研究(Symbiosis Institute of Computer Studies and Research),安娜大学(Anna University)和巴黎圣日尔曼技术学院(PSG College of Technology)也都已在各自的编程课程中引入了各种极限编程的实践。

查看英文原文: Naresh Jain On Agile In India

2012-02-12 05:021496
用户头像

发布了 76 篇内容, 共 23.2 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

高仿瑞幸小程序 08 创建第一个云函数

曾伟@喵先森

小程序 微信小程序 大前端 移动

使用jdbcSstoragerHandler 处理mysql、oracle 、hive数据

飞哥

编写制度的几点实用建议

石君

制度 编写制度 安全管理

编程的门槛 - 抄作业的得与失

顿晓

编程门槛 编程思维 动手能力 抄作业

原创 | 使用JUnit、AssertJ和Mockito编写单元测试和实践TDD (五)第一个单元测试

编程道与术

Java 编程 软件测试 TDD 单元测试

从波音747学项目管理

顾强

项目管理 读书感悟 沟通

智浪

Neil

后浪 智能时代 智浪

爱是恒久忍耐,又有恩慈

霍太稳@极客邦科技

身心健康 心理

反对996,但是选择996是一个怎样的矛盾心态?

顾强

职场 加班

《硅谷革命:成就苹果公司的疯狂往事》读后感

顾强

回“疫”录(15):在家SOHO,是你想要的工作方式吗?

小天同学

疫情 回忆录 现实纪录 纪实 远程办公

用SpreadJS实现在线Excel的录入与展示,提升企业医保信息化服务水平

葡萄城技术团队

SpreadJS 医保信息化 在线excel

延时任务的几种实现方式

郭儿的跋涉

Java 延时任务 延时消息

你竞争我得利之零售变革

孙苏勇

行业资讯

高效阅读,成就自我-《麦肯锡精英高效阅读法》读后感

顾强

读书笔记 读书 读书方式

原创 | 使用JUnit、AssertJ和Mockito编写单元测试和实践TDD (四)关于单元测试的常见错误观念和做法

编程道与术

Java 编程 软件测试 TDD 单元测试

算法工程师的发展路径

Lucien

交易上链——中心化数字资产交易所的完美解决之道

Tux Hu

区块链 智能合约 数字货币 去中心化网络 数字资产

Spring 中不同依赖注入方式的对比与剖析

Deecyn

spring

认识数据产品经理(三 成为数据产品经理)

马踏飞机747

大数据 数据中台 数据分析 产品经理

借助第一性原理开启中台建设

数字圣杯

数据中台 数字化转型

业务信息化操作系统(BIOS)——中台的核心产出物

孤岛旭日

中台 操作系统 企业信息化

Dubbo集成Sentinel实现限流

Java收录阁

sentinel

工作两年简历写成这样,谁要你呀!

小傅哥

面试 小傅哥 简历优化 找工作

通过一个聊天应用学习 Deno

寇云

typescript 后端

面向页面的移动端架构设计

稻子

flutter ios android 大前端 架构模式

21天养不成习惯,28天也不行。不要痴心妄想。

赵新龙

TGO鲲鹏会 习惯养成

有了容器为什么kubernetes还需要Pod?

架构师修行之路

Kubernetes 分布式 云原生 pod

基于XGB单机训练VS基于SPARK并行预测(XGBoost4j-spark无痛人流解决方案)

黄崇远@数据虫巢

学习 算法

“字节”不断“跳动”,卡拉永远 OK?

无量靠谱

字节跳动 诺基亚 危机

我常用的在线工具清单

彭宏豪95

效率 效率工具 工具

Naresh Jain谈印度敏捷_研发效能_Roopesh Shenoy_InfoQ精选文章