温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

敏捷开发一千零一问系列之二十五:什么是敏捷开发的根本基础?

发布时间:2020-04-04 22:55:54 来源:网络 阅读:428 作者:火星人陈勇 栏目:软件技术


问题:什么是敏捷开发的根本基础?What is the essence of Agile Software Development??

来自LinkedIn热帖http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&discussionID=156452723&gid=37631&commentID=93678048&trk=view_disc&ut=3OEFTrlSNevlo1,大家也可以到上面看看老外们的讨论。

道德经说太极生两仪,两仪生四象,四象生八卦,八卦生六十四卦,六十四卦生万物。

但是多数企业的敏捷开发都太“八卦”了,上不能掌握太极的根本,下不能根据企业具体情况衍生出万物。博客上的其他文章描述描述“万物”已经够多了,这篇文章只说说两仪。

在前面的帖子里边,有几个人支持fast feedback/short iteration,另外一些人则支持transparency/teamwork,加在一起算是敏捷开发的两个最重要方面。

答案:持续改进+团队协作

如果用地道的敏捷开发词汇,就是这两个。

持续改进包括 quick feedback, continues integration, daily buiding, standup meeting, short iteration, refact, working software, etc.
团队协作包括 stands for cross-function team, focusing on customer's value(把客户也当作双赢乃至多赢的团队的一部分), selforganized team, test automation (开发人员做测试的事),


下面是这两者和12个敏捷原则的对应关系:

持续改进

1: Our highest priority is to satisfy the customer through early and continuous delivery of valuable software
翻译:尽早并持续地交付有价值的软件以满足顾客需求。
3: Deliver working software frequently, from a couple of weeks to a couple of months, with a preference for the shorter timescale
翻译:经常发布可用的软件,发布间隔可以从几周到几个月,能短则短。
7: Working software is the primary measure of progress.
翻译: 可用的软件是衡量项目进展的主要指标
8: Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
翻译: 敏捷流程应能保持可持续的发展。 领导, 团队和用户应该能按照目前步调持续合作下去。
10: Simplicity--the art of maximizing the amount of work not done--is essential.
翻译: 保持简明 - 尽可能简化工作量的技艺 - 极为重要。英文说 maximizing the amount of work not done. 我的理解是 - 任何还没有明确的工作都会花不可知的时间,因此要 maximize, 不要把那些还没有做的工作和正在做的工作混起来。
12: At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
翻译: 时时总结如何提高团队效率, 并付诸行动。

团队协作:

2: Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage
翻译:敏捷流程欢迎需求的变化, 并利用这种变化来提高用户的竞争优势。
4: Business people and developers must work together daily throughout the project.
翻译:业务人员和开发人员在项目开发过程中应该每天共同工作。
5: Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
翻译:以有进取心的人为项目核心,充分支持信任他们
6: The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
翻译:无论团队内外,面对面的交流始终是最有效的沟通方式
9: Continuous attention to technical excellence and good design enhances agility.
翻译: 只有不断关注技术和设计才能越来越敏捷.
11: The best architectures, requirements, and designs emerge from self-organizing teams.
翻译: 只有能自我管理的团队才能创造优秀的架构, 需求和设计.

把客户和商业价值等内容放到团队协作里边看似有点牵强,这也是我更喜欢用“无我”的原因。“团队”很容易让人局限到开发团队的内容,实际上团队协作是在说“不要只考虑我”乃至“不要只考虑我们(还要考虑客户)”。
 

关于由持续改进产生的两象在这里:http://blog.csdn.net/cheny_com/article/details/7190094

而团队协作产生的两象在这里:http://blog.csdn.net/cheny_com/article/details/7189757

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI