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
分享到:
相关推荐
现在已经有大量的书籍描述敏捷开发是什么或者为什么它能帮助软件项目成功,但很少有哪一本书能把针对开发者、管理者、测试者和客户的信息合并成一个整体,从而使其能够直接应用。, 本书为敏捷的计划、开发、交付和...
### 敏捷开发:管理者的成功路线图白皮书 #### 引言 软件开发历来是一门复杂的艺术,尤其在当今快速变化的商业环境中更是如此。传统的“大爆炸”式开发模式以及过于随意的方法往往导致项目延期、超出预算并且最终...
敏捷开发的成功实施,需要组织内外对敏捷理念的深刻理解和全面接纳。 ### 敏捷开发的实际体验与反馈 作者通过在IBM担任ScrumMaster的亲身经历,提出敏捷开发是一个富有挑战性的过程。作者在实践中发现,敏捷开发...
### 敏捷开发核心知识点详解 #### 一、敏捷开发概览 **1.1 敏捷的概念** 敏捷开发是一种以人为本、迭代增量的软件开发方法论。它强调快速响应变化,通过简化的流程来提高软件开发效率和产品质量。相较于传统的...
这些建议旨在帮助联邦机构更好地理解和实施敏捷开发,从而提高IT项目的效率和成功率。 总之,敏捷开发作为美政府推荐的一种软件开发方法,不仅提供了一种更灵活、响应速度更快的项目管理方式,而且在提高软件质量、...
敏捷开发是一种强调适应性和灵活性的软件开发方法论,旨在提高团队的工作效率并确保项目的成功。本文将深入探讨敏捷开发的核心原则,包括其背景、核心价值观以及十二项指导原则,帮助读者更好地理解和应用这些原则。...
【敏捷开发需求验收确认书】是项目管理中的一个重要文档,特别是在敏捷开发的环境中,它确保了团队对需求的理解一致,并且在开发过程中有一个明确的验收标准。这份文档通常包括以下几个关键部分: 1. **基本信息**...
通过这些原则的应用,团队可以更好地构建出高质量、可维护性强的软件系统,从而支持敏捷开发的核心价值观——即快速响应变化并交付高质量的产品给用户。在实际操作中,敏捷开发要求团队具有高度的责任感和自我管理...
本书名为《高效程序员的45个习惯 敏捷开发修炼之道》,由Venkat Subramaniam和Andy Hunt两位作者共同撰写。书中所提到的45个习惯,不仅涉及软件开发过程、编程和调试工作,还包括了开发者的个人态度、项目和团队管理...
### 敏捷软件开发概述 #### 一、引言:不可知与无法沟通 - **不可知性**:软件开发过程中遇到的问题往往...- **参考书目**:最后部分提供了一些关于敏捷开发的经典著作和参考资料,帮助读者深入了解相关理论和技术。
"敏捷开发专辑.pdf"可能是整个敏捷开发专辑的综合指南,可能包含了敏捷开发的起源、发展历程、不同敏捷方法的对比分析以及成功案例研究。它可能还讨论了如何在企业环境中实施敏捷,以及面临的挑战和解决策略。 ...
《敏捷游戏开发与Scrum》一书由Clinton Keith撰写,旨在填补传统软件开发与游戏开发之间的空白,通过具体的案例和实用建议,为游戏开发者提供了一套完整的Scrum应用指南。 #### 关键知识点概述 1. **Scrum框架介绍...
随着敏捷开发理念的普及与应用,越来越多的企业开始意识到高质量代码对于软件项目的成功至关重要。特别是在Java项目开发中,由于开发者经验、编程习惯及缺乏统一标准等原因,可能导致代码质量较低,从而影响后期维护...
### 敏捷开发与重构的重要性 #### 一、敏捷开发概述 敏捷开发是一种以人为本、迭代式的软件开发方法,强调灵活性和高效性。与传统的瀑布模型相比,敏捷开发更加强调团队成员之间的紧密合作、快速反馈循环以及对...