1.完整地做完第一件事后再开始第二件。软件开发的一个大问题就是同时做几件事情,这将不可避免地使得某些工作被废弃从而造成浪费。用厨房来比喻就是:“先上这道菜,再开始烧下一个。”
2.不要害怕做决定;不要害怕改变先前的决定。最大可能地延迟决策,直到必须做决定的时候。一旦有新的信息了,不要害怕改变先前的决定。
3.度量、度量、度量。敏捷开发帮助处理了未来不确定性的问题。但是对于过去,应该没有不确定的事。
4.设计是为了人,而不是系统。太多的程序员偏离了设计的目的,而更关注技术本身。软件最终的成功取决于让人们有效合作并增加商业价值。
5.过早地进行优化是万恶之源。仅仅基于对代码的静态理解就直觉地判断什么对整体性能最为重要,结论几乎总是错误的。相反,应该衡量整个系统的行为,随后来识别性能问题。
6.决不过度强调功能的通用性。这也就是著名的“YAGNI——你不会需要它的(You Aren’t Going to Need It)。”
7.不要用代码行数来度量代码。完成特定任务所需的代码行数,不同的程序员之间和编码风格之间差异很大。应该去统计功能用例的数目。
8.软件是可塑的。不像实体制造业,软件可以很容易地获得显著改变。
9.不要去发明新的语言。XML的出现引领了无休止的专门订制“脚本语言”的潮流,想来应该会让软件开发更加趋同。这种推理的缺陷在于,离开某个特定实施的环境,几乎从来都没能很好地精确定义操作行为。
http://www.pmhut.com/26-hints-for-agile-software-development
分享到:
相关推荐
现在已经有大量的书籍描述敏捷开发是什么或者为什么它能帮助软件项目成功,但很少有哪一本书能把针对开发者、管理者、测试者和客户的信息合并成一个整体,从而使其能够直接应用。, 本书为敏捷的计划、开发、交付和...
5A.1.6敏捷开发在纪律上要求很低 5A.1.7敏捷只适合最优秀的开发人员 5A.1.8敏捷是既老又新的、失败的、没有尝试过的 5A.2敏捷方法集的演进 5A.2.1XP第2版 5A.2.2Scrum 5A.2.3实用主义和无名的 5A....
《Scrum实战——敏捷软件项目管理与开发》为软件项目团队提供了如何成功实施敏捷软件框架Scrum的实用指南。本书叙事清晰准确,是第一本由实践者编写的针对现实状况的实用指南。书中描述了如何使项目团队价值最大化,...
结合广西省级气象大数据云平台“天擎”业务试运行近一年来的系统测试运维、迁移应用研发经验,以气象预报服务人员的技术视角给出在客户端应用融入的敏捷开发策略,作为官方推荐方法的补充。主要包括:使用函数式编程...
在此框架的基础上,我们提出了一些建议,这些建议提出了具有已建立流程的大型组织如何成功实施敏捷实践的方法。 我们对文献和理论的分析为敏捷软件开发的研究人员提供了新的见解,并帮助从业人员确定如何在其组织中...
火龙果软件工程技术中心 1摘要ANSTO...同传统的有严格的文档、确定的计划和过程的软件开发方法不同,敏捷软件开发方法更强调对于项目目标的持续逼近、开发者的个人能力,以及小组成员之间的沟通。本文探
无论何时,当你需要专家建议时,都能从这些已成功解决的问题中汲取营养。 每篇文章都源自一线的实践经验,可以拓展你的技能和视野。无论是从事软件开发、部署、测试的人员,还是软件开发的管理者,都可以从本书中...
当软件开发组织采用敏捷开发时,测试团队通常需要花很长时间来完成转变。在很多公司中,独立的质量保证团队已经根深蒂固。当它们开始适应新的敏捷组织时,会遇到难以接受的文化差异。敏捷测试专家Lisa和Janet对此...
当软件开发组织采用敏捷开发时,测试团队通常需要花很长时间来完成转变。在很多公司中,独立的质量保证团队已经根深蒂固。当它们开始适应新的敏捷组织时,会遇到难以接受的文化差异。敏捷测试专家Lisa和Janet对此...
用例是10多年来最重要的需求分析技术,在保障全球各类软件的成功开发中发挥了极其重要的作用。鉴于目前用例技术尚存在几种相互竞争的流派,在实践中如何仔细甄别,取长补短,有效地作出选择,成为实践者必须面对的...
无论使用传统的分析方法或敏捷方法,都可以学习如何使用需求的模式,从而为成功的软件开发编写一致的、有效的需求。本书提供了模板和实例,帮助分析师编写出更好的需求。读者可以应用本书中的概念开发自己的行业、...
无论使用传统的分析方法还是敏捷方法,都可以学习如何使用需求模式,从而为成功的软件开发编写一致的、有效的需求。《MICROSOFT核心技术丛书·软件需求模式》提供了模板和实例,帮助分析师编写出更好的需求。读者...
设计冲刺是一套用于解决棘手难题的五天式流程,是战略、创新、消费行为学、产品设计等领域的“超级精选专辑”,可以理解为设计思考和敏捷开发的实践操作版。设计冲刺起源于谷歌,在那里,它几乎被用于谷歌的任何项目...
通过引入敏捷开发、跨部门协作、数据驱动决策等先进理念和方法,推动金融机构从传统的以产品为中心转向以客户为中心的运营模式。此外,资料还提供了丰富的实践案例和成功经验,为金融机构的数字化转型提供了有力的...
因此,建议创业团队建立起灵活的反馈机制和敏捷的开发流程,以便及时响应市场变化,实现持续改进。综上所述,这份商务网站运营策划书是一个全面而深入的文档,它不仅涵盖了从市场调研到网站上线的全过程,还提供了...
Rofi应用程序和实用程序启动器 i3 Status Rust(以Rust语言实现的状态栏)终端泰力克斯敏捷性sh星际飞船如壳 Vim新病毒带有File Navigator,TagBar和Python Editing + Linter的Nvim带有Python自动完成功
由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速。它使用服务层框架可以将JavaBeans从Jsp/Servlet中分离出来,而使用表现层框架则可以将Jsp中剩余的JavaBeans完全分离,这部分JavaBeans主要负责显示相关...
如果你是一个.Net开发者,你可能在girlfriend身上发现Windows Workflow的影子,不过借助Python语言强大的表达能力,girlfriend要比XAML灵活敏捷的多。 ## 名字的由来 girlfriend起源于我之前在一家O2O公司开发的...
由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速。它使用服务层框架可以将JavaBeans从Jsp/Servlet中分离出来,而使用表现层框架则可以将Jsp中剩余的JavaBeans完全分离,这部分JavaBeans主要负责显示相关...