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

敏捷与产品开发

  • 2007-11-20
  • 本文字数:1712 字

    阅读完需:约 6 分钟

InfoQ 敏捷社区最近发布了一篇新闻《敏捷遭遇实效营销》 ,其中提到科技领域的产品管理方法论——实效营销 ,并指出实效营销“不但展现了敏捷方法的价值观和原则可以成功地应用在业务方面,而且更重要的是,某种意义上,它还试图说明,在什么情况下敏捷开发实践不 起作用。”虽然文中没有明确说明,不过我们可以从中得出结论:相对于定制项目来讲,敏捷方法论对于新产品的研发,并不能起到特别大的推动作用。

对于这个问题,王晓明(ThoughtWorks 业务分析师,拥有采用敏捷方法开发和管理大型政府和企业应用开发项目的丰富经验)在自己的一篇 blog 中,提到了为什么会这样的原因:

在项目开发与产品开发之间区别是:项目有明确的外部用户和客户目标,而产品则不是。敏捷在面对不明确的需求和需求提炼方面有明显 的优势。在实施敏捷时,我们不能容忍存在基于假设的、不确定的业务和需求分析。我们要知道用户与客户真正需要的东西,他们的基本需求是什么,他们希望拥有 什么或喜欢拥有什么。……相对项目而已,产品开发有两个主要的不同点。首先,对于产品来说,同时存在目标客户与潜在客户。即使是在理想状况下,假定我们可以与所有的目标客户 面对面接触(实际状况下,这基本上不可能发生),我们仍然不能得到他们的全部需求。……第二个原因是:从市场角度来讲,一个产品必须要很有创意。你可以想 象:一个没有新想法的产品没有顾客会购买的,除非有很大的价格优势。……

针对此问题,胡凯认为

……产品有产品的难点 。 - 需求:既然是产品,大多数的情况下是有很多同类产品不具备的功能,否则,很难在饱和的市场中分得一杯羹 (开拓市场更得需要一些新的思路和功能),这样产品中的很多功能是有前瞻性的­,用户也许并没有这样需求或者还没有意识到自己有这样的需求,BA 也许很难作出需求分析。

  • 简单:产品的命运很多时候再初一登陆市场的时候就确定了,用户试用了你的产品后如果印象不佳,也许以后都不会再使用你的任何产品。这样 使得产品很难使用发布 -­反馈 - 改进的方式,也是由于这样的原因很多产品会有开源的版本,希望依赖社区的力量在商业版本发布前尽可能多的获得反馈,设计出 用户需要的产品。
  • 改进 - 反馈:如果发现某些功能多余,或者进行大规模的调整的时候都必须特别的注意,因为在这个世界的某个角落,还有人使用你的产品 N 年前的版本,你的升级也许会让这些人无法工作,但是这些用户很可能不会再你所发布的若干个 RC 版本向你提出任何反馈,或许就在发布的庆功宴进行的同时, 很多愤怒的 EMail­出现在你公司的邮箱中。

不过,王晓明仍然认为敏捷还是适于软件产品开发的,不过要有选择地实施敏捷实践:

……极限编程、结对编程、scrum 和 TDD 都是好的实践,因为它们不依赖需求分析的结果。

最后,王晓明告诫大家:

要牢记在心,产品的灵魂核心在于创意和差异化。有时,我们必须抛弃循规蹈矩的做法,而且要冒很高的风险。这时一定要高度关注风险管理。

InfoQ 中文站在四个月之前有一篇熊节的原创新闻:《敏捷的核心:消除浪费,走向精益》。研发新产品时,如果强要在创意收集和设计阶段使用敏捷方法和实践,必然会造成浪费。那么我们这些“软件人”是不是就要脱离开产品设计阶段呢?李默根据自己在实际工作中的实践,在 “敏捷中国”Google 网上论坛讨论贴中开宗明义地指明:

敏捷过程中的 BA 角色应当更加多的参与甚至融入到 marketing 的团队中,从一开始的 Marketing segment 就开始。

熊节更是在自己的 blog 里面提出

有了敏捷方法,还要有一套全流程的产品设计方法支持,才可能做出好的产品。这就是我们要去学习和探索的方向。

归根结底,正像 alexgreenbar 在 Javaeye 一篇帖子中提到的,敏捷:

……不是对每种类型的软件开发都适合,它自有其适应的合适领域……

这无疑是正确的。不过究竟哪些领域不适合采用敏捷,在这些领域应该用什么技术来弥补敏捷的不足,请问您有何高见?


作者简介:郑柯,目前任职《程序员》杂志社高级编辑,有志于在中国的软件开发业界推广 Agile 的理念和方法论,笃信以人为本,关注 Ruby,关注敏捷,关注人。参与 InfoQ 中文站内容建设,请邮件至 china-editorial@infoq.com ,加入 InfoQ 中文站用户讨论组,请点击 ICUG,InfoQ China User Group

2007-11-20 18:563630
用户头像

发布了 479 篇内容, 共 152.5 次阅读, 收获喜欢 47 次。

关注

评论

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

TDSQL-C for PostgreSQL 主从架构详解

腾讯云数据库

tdsql 国产数据库

Serverless 背景下,一部分“前端工程师”会转变为“应用交付工程师”

杨成功

Serverless 架构 前端

我相信:没有解不开的难题|ONES 人物

万事ONES

TDSQL | 将企业级分布式数据库做到极致

腾讯云数据库

tdsql 国产数据库

1月月更|推荐学java——Spring之AOP

逆锋起笔

spring SSM框架 spring aop 依赖注入 面向切面编程

ReactNative进阶(二十三):Javascript 严格模式详解

No Silver Bullet

React Native 1月月更

前端使用 zx 库在 Node 中编写 Shell 脚本

devpoint

node.js Shell 1月月更 zx.js

CSS 自适应内容宽度的输入框

编程江湖

组件通信、硬件池化,这些创新技术你get了吗?|HDC2021技术分论坛

HarmonyOS开发者

HarmonyOS

架构实战训练营-模块7-作业

温安适

「架构实战营」

ONES CTO 冯斌|如何低成本地做出高质量决策

万事ONES

TDSQL PG版企业级分布式数据库技术创新实践

腾讯云数据库

tdsql 国产数据库

龙蜥社区一周动态 | 1.10-1.14

OpenAnolis小助手

Linux 开源 社群

Scrum Master需要具备哪些能力和经验

华为云开发者联盟

Scrum 敏捷 团队 教练 Scrum Master

虎符研究院深入解读Web3.0未来趋势 盘点代表性项目

区块链前沿News

Web Hoo虎符 虎符研究院 虎符平台 3.0

线上流量对比应用实践

得物技术

架构 数据 流量 实践 流量回放

为什么HashMap会产生死循环?

王磊

Chrome插件:摸鱼倒计时、每日摸鱼时间统计,奋斗逼、卷王必备,用于减少摸鱼时间和频率

OBKoro1

效率 开源 效率工具 chrome扩展 高效率

GIS :元宇宙未来发展的有力技术支撑

华为云开发者联盟

AI GIS 虚拟世界 数字孪生 云宇宙

java开发之Redis的使用规范

@零度

redis JAVA开发

2021 OceanBase 开源半年度报告 | 不忘初心,感恩同行

OceanBase 数据库

开发者 报告 OceanBase 开源 OceanBase 社区版

前端开发之JQuery的综合应用

@零度

jquery 前端开发

知识库进化论 | 华创资本对话 ONES & 为知笔记创始人

万事ONES

Android技术分享| 自定义View实现使用更方便的SeekBar

anyRTC开发者

android 音视频 移动开发 白板 SeekBar

项目管理是做什么

PingCode

Hive SQL底层执行原理

五分钟学大数据

Hive SQL 1月月更

Jetpack—LiveData组件的缺陷以及应对策略

vivo互联网技术

android livedata JetPack 移动应用开发

使用php-amqplib实现RabbitMq

Owen Zhang

php RabbitMQ php-amqplib

低代码实现探索(二十二)如何构建一个可以看的懂的系统

零道云-混合式低代码平台

创业老兵李峻的新征程|ONES 人物

万事ONES

软件设计——依赖倒置

苏州程序大白

架构师

敏捷与产品开发_研发效能_郑柯_InfoQ精选文章