NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

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:021510
用户头像

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

关注

评论

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

一起学习ML和DL中常用的几种loss函数

华为云开发者联盟

人工智能 企业号九月金秋榜

【JAVA】基于GUI界面编程的水果“人生”模

Java-fenn

Java

vue2数据响应式原理——数据劫持(初始篇)

海底烧烤店ai

Vue 前端 9月月更

leetcode 110. Balanced Binary Tree 平衡二叉树(简单)

okokabcd

LeetCode 数据结构与算法

Java基础 | 关于Final Static Abstract修饰需要注意的地方

Java-fenn

Java

如何將私有的 JAR 檔加入到由 Apache Maven 管理的 Java 專案中

Java-fenn

Java

【荣耀开发者服务平台—百亿曝光扶持等你来】智慧服务安卓卡片接入指南

荣耀开发者服务平台

手机 安卓 卡片服务 widget honor

【Java入门】十八 面向对象的三大特征之一-继承

Java-fenn

Java

企业数据治理过程中都要经历的四个阶段?你的企业处在哪个阶段?

雨果

数据治理

为什么阿里人能够快速成长?看完他们 Java 架构进化笔记,我秒懂!

Java-fenn

Java java面试 Java面试题

LED柔性屏的发展趋势

Dylan

柔性屏 LED显示屏 led显示屏厂家

滴滴前端一面必会面试题汇总

hellocoder2029

JavaScript 前端

ThreadLocal源码解析:巧用弱引用解决内存泄漏问题

程序员小毕

Java 源码 程序员 面试 高并发

vue2数据响应式原理——数据劫持(数组篇)

海底烧烤店ai

Vue 前端 9月月更

易周金融分析 | 数字人民币生态发展等再迎监管重磅发言;易观千帆发布用户体验GX指数

易观分析

用户体验 数字人民币 GX指数

java读取movielens数据txt

Java-fenn

Java

基于Java springMVC+MySQL的大学校园BBS论坛网站设计与实现

Java-fenn

Java

JAVA面试题——CAS原理

Java-fenn

Java

Java必会基础题,量不多,但每天进步一点也是好的

Java-fenn

Java

Java 多线程:锁(一)

Java-fenn

Java

OceanBase 核心能力解读和支付宝实践|9月17日广州见

OceanBase 数据库

2022年9月中国数据库排行榜:榜眼、探花纷纷易主,AnalyticDB蝉联榜单十强

墨天轮

数据库 opengauss TiDB 国产数据库 达梦

vue2数据响应式原理——依赖收集和发布订阅

海底烧烤店ai

Vue 前端 9月月更

为什么Java流行了这么久,而Scala来去匆匆?

Java-fenn

Java

京东前端常考面试题(附答案)

coder2028

JavaScript 前端

dapp智能合约系统开发技术流程分析

开发微hkkf5566

JAVA学习1_PATH环境变量配置

Java-fenn

Java

JAVA:List 与 数组 相互转换

Java-fenn

Java

阿里前端常见面试题(附答案)

coder2028

JavaScript 前端

给数据技术初学者:解读从数据编织到增强分析20个最新数据技术概念

雨果

数据湖 数据编织 数仓一体

Java面向对象8——抽象类和抽象方法(知识点+使用方法)

Java-fenn

Java

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