为什么我不推荐敏捷开发?
当项目成员越多,我越不推荐敏捷开发,原因在于「当连自己要做什么事、为什么这样做、这样做为了解决什么问题」都搞不清楚前,就跳下去玩敏捷开发,那和比通灵还惨,通灵起码还有个目标物在前面,搞不清楚状况的人只能陪他跳世界迷雾开地图了 。
敏捷开发 – MBA智库百科 最下方有段「对敏捷开发的误解」。可顺便参考 敏捷软件开发 – 维基百科。
误解一:敏捷对人的要求很高
说高不高啦,撇开实作技术不谈,你觉得要找到清楚项目开发流程、知道每位项目成员的工作内容、职责范围、产出,并清楚项目目标、需求、用户需要的开发人员(含设计师)很容易吗?
如果上述条件无法达成,又怎么确定运用敏捷开发方式后,所有项目成员方向都是正确的?就因为这种人太难找,所以会产生「对人要求很高」印象。
连在有企划书、规格书、用户研究报告的文件情况下都还不知道自己要干嘛、同事在干嘛,能谈敏捷吗?
误解二:敏捷没有文档,也不做设计
文件撰写与否和敏捷开发一点关系也没有,敏捷开发强调「适应性而非预见性」,并没有强硬规定。虽然有一句「可用的软件:重于 详尽的文件」,但它没有叫你不要写文件。
先想看看写文件是为了解决什么问题?如果不写文件会产生什么问题?
以 UI 设计师来讲,交出 UI Flow、Wireframe 这种文件是为了解决什么问题?要敏捷开发嘛就不用写了跳过,直接出 Mockup 吧。因为发现出包有漏改来改去改到死,和找到产品问题改良,是两回事啊!
敏捷开发不是没文件没流程的包装纸。
误解三:敏捷好,其他方法不好
敏捷开发就是一直小幅度改啊改啊改啊,可以增加工作效率,让大家工作更顺利喔~~(就算是瀑布流式的传统开发流程,设计师也是一直改啊改啊改啊,效率了什么、顺利了什么啊!?)
先承认有问题,才能找出问题,之后找解决方法。而不是先有方法,再想这个方法能解决什么问题。敏捷开发只是一种「方法」,方法论用在敏捷开发上,要回答两个问题:
- 现有模式为何不能满足你的需求?
- 敏捷式开发为什么可以?
敏捷开发不是万灵丹,先找到问题点、知道为什么要采取敏捷,重点是卡在哪里需要敏捷这个「方法」来解决。设计师改来改去是为什么解决什么问题?敏捷 开发的小幅度改来改去、和现况设计师的改来改去有什么不同?如果都一样为什么要采取敏捷?(不要跟我说因为软件开发主力是 RD 所以忘记算上设计师。)
现实的扭曲
个人与互动:重于流程与工具
开会是非常烧钱的行为,如果项目成员一多,要用什么方式降低沟通落差、尽量让每个人理解到的都相同?怎么确保部门和部门间的信息交流顺畅?靠出张嘴沟通就能办到吗?
可用的软件:重于详尽的文件
有文件产生/解决什么问题?没有文件产生/解决什么问题?不写文件最爱用「我们是敏捷开发」当借口了,不会写就不会写、不知道文件写来干嘛就老实承认,少拿这个当说词。
与客户合作:重于合约协商
如果客户没有在好的引导下一起合作,现实状况会变成「最后一次-确定最终版-说好不改了-V21.psd」。嗯?改来改去不就是敏捷开发吗?(喂)
回应变化:重于遵循计划
这不是改来改去改到死的好理由!为什么要「变化」,变化是为了解决什么问题?没有问题改它干嘛?完全不代表可以没计划就上啊!
结论
敏捷开发宣言里各种许愿…拔掉敏捷二字不也是所有项目开发的理想?所以为了解决什么问题而采用敏捷式开发?为了改善工作流程加快效率?
那设计师修改到死的工作情况在敏捷开发里要怎么被改善?
我觉得敏捷开发适用「头脑清楚」的人,只是这种人往往是大神级的了。和大神 PM、大神 Planner、大神 RD 合作,都清楚知道自己在干嘛、别人在干嘛,还能 Cover 一点别人的领域,知道解决这个问题可以往目标更进一步,这种合作模式才有办法做到「敏捷」,而不是因为抓漏抓虫在修改。是啦这也算朝目标迈进,但「创新改 良产品」和「让产品看起来洞没那么大」的改来改去本质上是两回事啊!敏捷开发只是个方法,不是万灵丹。
敏捷式开发就是改来改去?
那「字大一点、Logo大一点、换一张照片、多出几版让我挑」也算啊~
为什么我不推荐敏捷开发?相关推荐
- Scrum敏捷开发工具实力推荐
软件开发的项目经理一枚!大家都知道,一个好的敏捷工具对开发项目可以起到推波助澜.事半功倍的做用! 我们做敏捷开发,如何敏捷?当然敏捷工具的选用也是非常关键的因素,对我们也起着关键的作用! 我来介绍一下 ...
- 推荐Scum敏捷开发的几款工具
1,VersionOne VersionOne市场排名第一.支持SaaS模式和本地安装模式,web客户端,支持Scrum, Extreme Programming, DSDM and Agile UP ...
- 推荐几款热门的敏捷开发工具
不知道有多少企业在很好的应用敏捷模式: 在今天的文章中,我们将一同了解更多有趣.高效且面向敏捷的项目管理工具. Atlassian Jira/ Jira Agile Atlassian的Jira是一款 ...
- 禅道项目管理_推荐一个项目管理工具,落地基于Scrum的敏捷开发!
作为一个开发人员,我们也该懂一些项目管理的知识,今天我们来讲一个基于Scrum的项目管理工具禅道.本文将从禅道的安装部署开始讲起,然后讲讲Scrum的核心概念,最后通过禅道的一套操作来实践下Scrum ...
- [敏捷开发实践](2) 用于开发和维持复杂产品的敏捷开发框架Scrum
[敏捷开发实践](2) 用于开发和维持复杂产品的敏捷开发框架Scrum 1,Scrum概述 上篇中提到敏捷开发有两种主流的方法,一个是XP,另一个是Scrum,本篇简要介绍Scrum方法.Scrum是 ...
- 研发流程在敏捷开发中的详解
在传统的软件研发模型中,从提出需求到最后交付,时间周期较长.瀑布模型遵循需求分析.设计.编码.集成.测试.维护六个步骤进行.一旦需求发生变化,不仅浪费前期投入,还不易于调整. 1. 敏捷开发是什么 在 ...
- Leangoo_多团队,大规模敏捷开发实现过程
通过敏捷看板来实现需求.迭代(支持燃尽图)和缺陷管理:此类型项目提供了单团队敏捷开发和大规模敏捷模板,适用于Scrum敏捷项目管理及产品研发. 本场景描述的是针对多个Scrum团队/敏捷团队,开发同一 ...
- Leangoo团队敏捷开发实现过程
通过敏捷看板来实现需求.迭代(支持燃尽图)和缺陷管理:此类型项目提供了单团队敏捷开发和大规模敏捷模板,适用于Scrum敏捷项目管理及产品研发. 本场景描述的是针对10以下小型产品研发团队或小型项目的敏 ...
- 用Leangoo项目管理工具怎么做多团队大规模Scrum敏捷开发?
概述 本场景描述的是针对多个Scrum团队/敏捷团队,开发同一款大型产品,或者大型项目的敏捷应用场景.Leangoo多团队大规模敏捷开发模板是基于大规模敏捷模型定义的,可以适配基于Scrum of S ...
最新文章
- 归一化EvoNorms
- python进程线程协程区别_Python3多线程与协程
- 5分钟完成业务实时监控系统搭建,是一种什么样的体验?
- 如何查看linux系统的体系结构
- SecureCRT出现 libpython2.7.so.1.0: cannot open shared object file
- 混合云的承诺,收益和产品
- 万维网发布服务 w3svc 已停止 除非万维_万维网和互联网的区别
- 谁说五月是没有收获的季节
- c4d阿诺德渲染器支持a卡吗_C4D常用的4大主流渲染器如何选择与比较 (OC/RS/VR/阿诺德)...
- 3串口多串口双串口以及2串口转WiFi多跳路由通讯实现一
- pm2.5计算和单位换算
- const注意点(对象赋值)
- 30行JS代码带你手写自动回复语音聊天机器人
- 北京积分落户公示名单公布:华为笑傲榜单,来看落户最多的是哪些企业!
- Axure幻灯片制作
- html购物页面产品展示,html5 3D交互式房间购物商品展示特效
- java 判断手机运营商_如何用java判断手机号运营商?
- 教师计算机基础教学考核制度,ArticleView
- Windows 查看电脑型号
- RedHat8更换CentOS阿里云镜像源
热门文章
- 实现indexof()
- python等待用户输入指定秒_如何在10秒后强制用户输入
- macos vmware 镜像_苹果电脑用vMware安装Windows系统
- coxphfit+matlab,Cox Proportional Hazards Model
- C++新特性探究(十):Lambda
- linux shell指令 amp,shell入门基础amp;常见命令及用法
- oracle12c用户名c##_Oracle数据库之oracle12c创建用户提示ORA-65096:公用用户名或角色无效...
- python程序设计课后答案第三单元_最新Python程序设计课后习题答案-第一单元
- go语言结构体标签的意义
- html5 调用微信分享,HTML5教程之微信调用分享接口