仅仅还在几年前,
XP
还被认为是方法异教,
FDD
属于黑客程序方法。如今,敏捷俨然已经成为主流学说,敏捷方法成为人们学习和讨论的热点。敏捷方法的应用也更加广泛,以至于不少外包项目都要求采用某种敏捷方法。它不仅仅是小团队和小项目在使用,甚至连微软都开始使用
SCRUM
。
敏捷已经成为一种炙手可热的新时尚。
因为火热,各种不同的说法就多起来;因为时尚,原本有些不认同敏捷的人也开始追捧起来。人们反复地讨论敏捷方法,涉及从哲学思想到实现细节的各个层面。人们不断地推出各种不同版本的敏捷方法,甚至有些方法显得如此矛盾、如此不同。
同时,一些误解也一直在坊间流行。一般误认为敏捷就是快,越快就是越敏捷
——字典上的名词解释是其依据。岂不知它本来要以“
lightweight
processes
”(轻量级过程)命名,只不过有些参会者不喜欢被看做是在拳台上跳来跳去的轻量级拳手,所以才用了“
AGILE
”这个词。还有其他一些误解是,敏捷就是只写代码不写文档;敏捷需要重构而无需设计;敏捷迭代就是尽量做到最小,以至于一个小时就好几次;敏捷需要天才的程序员才能应用,其他人都会水土不服;如此这般。
可以看到,市面上以敏捷为题目的图书俯拾皆是,似乎软件开发的书不加上敏捷这个词就是落伍一样。敏捷体系下存在多种方法,介绍每种方法的图书就有一大堆。再加上每种方法采用不同的技术,每本书采用不同的组织形式,存在这么多书也不奇怪,就更不用提那些仅仅为了跟风而敏捷的作品了。
面对如此百花齐放、百家争鸣的现象,你该从什么地方开始呢?有没有一本图书可以作为入门的第一读物呢?
《高效程序员的
45
个习惯:敏捷开发修炼之道》
这本书就可以胜任这样的角色!
这是一本很容易理解并掌握,不需要太多基础就可以阅读的书。不管你是开发人员,还是管理人员、财务等后勤人员、学生、编程爱好者,只要你对敏捷有兴趣,就可以读懂这本书。你不会被众多的概念和曲折的逻辑所迷惑,不会被高难度技巧所困扰。这本书为你打开了了解和学习敏捷方法的一扇大门,并指出继续前进的道路。
你会很悠闲自在地读完这本小书,然后说:“原来
AGILE
就是这么一回事啊!”
自由软件顾问 刘新生(
ooooooz
)
分享到:
- 2009-10-28 14:17
- 浏览 667
- 评论(3)
- 论坛回复 / 浏览 (3 / 1346)
- 查看更多
相关推荐
**Hibernate**是一种对象关系映射(Object-Relational Mapping, ORM)工具,主要用于将Java对象映射到数据库表,以及从数据库表映射回Java对象。它极大地简化了持久层的编码工作,减少了大量的SQL编写和结果集处理。...
《Agile Java 高清中文版》是一本专注于敏捷开发和Java编程的书籍,它将敏捷开发的理念与Java编程实践紧密结合,旨在帮助读者提升在快速变化的软件开发环境中使用Java进行高效开发的能力。这本书深入浅出地介绍了...
开源项目“agile-leaf-50mm”是一个基于Golang语言开发的Web图像库应用程序。这个项目的名称可能来源于敏捷开发的理念(agile)和灵活轻便的特点(leaf),而"50mm"通常指的是摄影中的标准镜头,可能象征着项目提供...
Agile Controller-DCN是华为推出的一款数据中心网络管理与控制系统,其V300R019C00版本提供了全面的自动化、智能化管理功能,旨在提升数据中心的运营效率和网络服务质量。这款产品文档(hdx)包含了丰富的技术信息和...
1. **Agile Development**: 敏捷开发是一种强调快速响应变化、迭代式开发和团队协作的软件开发方法。它鼓励通过短期的迭代周期和持续集成来提高软件的质量和可维护性。书中提到的敏捷方法在Rails项目中体现为频繁的...
**本书采用了一种特别的出版方式**——“敏捷出版”(Agile Publishing),即在书籍尚未完全完成时就提前发布,以便读者可以尽早获取内容并提供反馈。这种方式不仅让读者能提前接触到最新的技术资料,同时也为作者...
控制器可以使用`before_action`或`after_action`回调来执行预处理或后处理任务。 测试在Rails中占有重要地位。Rails提供了TDD(Test-Driven Development,测试驱动开发)的支持,包括集成测试、单元测试和功能测试...
《敏捷Web开发与Ruby on Rails》是一本在IT领域尤其是Web开发领域内具有极高声誉的著作,被广泛认为是学习Ruby on Rails框架的经典教材。本书由多位经验丰富的开发者合著,包括Dave Thomas、David Heinemeier ...
1. **AgilePoint BPM Suite**:一款构建在.NET架构上的业务流程管理(BPM)软件,利用了微软的流行工具如Visio和SharePoint,提供了一种不同于基于J2EE架构的BPM解决方案。 2. **跨部门流程自动化**:通过...
在本项目"agile-board-backend"中,我们关注的是构建一个用于敏捷开发管理的后端服务,这个服务基于Koa.js框架编写。Koa.js是Node.js平台上的一个轻量级、高性能的web应用框架,它由Express.js的创建者开发,设计...
这不是一回事。 是这个人: 基本上,他戴着大礼帽,住在你的电脑里,等着你告诉他你想创建什么样的应用程序。 并非每台新计算机都预装了 Yeoman。 他住在包存储库中。 你只需要问他一次,然后他就收拾东西搬进你的...
Agile Core是为和创建的,但也可以在任何其他框架中使用。 您几乎可以在这里找到PHP特性,它可以在您的对象中添加功能,例如: 容器:在对象之间实现父/子关系 挂钩:创建挂钩并使用优先级和参数注册回调 初始化...
3. **Agile Controller**:华为的Agile Controller是一款集中管理平台,亮点包括基于GRE隧道的灵活业务编排、拓扑可视化的配置管理、不改变现网结构的设备增加以及自动化业务分析和编排。 4. **访客接入管理**:...
在软件开发中,Agile项目管理方法是非常流行的一种方法,它强调迭代开发、客户参与和快速响应变化。 Java面试题2022及答案58同城2022研发面试题涵盖了多个方面的知识点,包括算法、操作系统、编程语言和项目管理等...
- OSI七层模型或TCP/IP四层模型的理解,包括每一层的主要功能。 - TCP/UDP协议:连接建立、数据传输、流量控制、拥塞控制。 - HTTP/HTTPS协议,以及HTTP状态码的含义。 - DNS域名解析过程。 5. 数据库设计与SQL...
Agile Controller提供了一种灵活的业务编排方案,其中包括: - A选项:支持基于三层GRE隧道进行编排,提高网络设备部署的灵活性。 - B选项:通过拓扑可视化工具简化配置,方便管理。 - C选项:业务设备的增删...
6. **测试阶段**:测试LEAD创建测试Task,分配给测试人员,发现BUG后创建BUG Issue,链接回需求Issue。 7. **发布上线**:上线计划文档上传至Confluence,需求Issue下创建上线Task,由上线负责人负责。 二、敏捷...
这可以通过在C#类库中定义一个公共接口(如`QRCodeEventHandler`),并让C++组件通过事件或回调函数调用它。在C++中,可以使用`Platform::Agile`包装C#对象,以便在C++代码中安全地调用C#方法。 6. 编译和调试: ...
在IT行业中,跨语言互操作性是一个常见的需求,特别是在混合编程环境里。本示例"**CShapeTest.7z**"聚焦于如何在C++项目中调用C#编写的动态链接库(DLL),利用Visual Studio 2017进行开发。这个压缩包包含了两个...
Agile Java 测试驱动开发的编程技术.pdf Java 8 默认方法和多继承.docx Java NIO通信框架在电信领域的实践.docx java.png javaconcurrencyinpractice.pdf JavaEE学习笔记.pdf java_Java_学习笔记.pdf Java_...