英文原文:http://behaviour-driven.org/BehaviourDrivenDevelopment
行 为驱动开发(BDD)衍生于测试驱动开发和验收测试计划,它将测试驱动开发与领域驱动设计这两种有效的开发方法更紧密联系在一起。通过 一个共通的词汇表(common vocabulary, 也称普遍语言),业务逻辑与技术之间的间隙得以弥合,使得我们可以将开发的重心放在交付具有较高优先级的,可验证的商业价值(business value,业务价值?)上。
它将一个基于三个核心原则的行为框架展现在我们面前:
1. 业务和技术应该使用一致的方法表达同一个系统
2. 任何系统都应该有明确并且可验证的商业价值(业务价值?)
3. 预先分析!设计与计划的效果会越来越差(起码是低于预期的)
(译者:以下几段的核心就是:有了BDD,沟通不再困难,广告?另,此段翻译有译者自添的部分,-_-)
实 际的开发中,开发者,测试者,分析人员,业务(business),以及经理这些角色,由于各自领域的不同,彼此之间常常是鸡同鸭讲,误会时有发生。 BDD依靠一个极为明确的词汇表将使这种误会降至最低 从而保证了这些不在同一层面的角色可以使用共通的语言。如果你熟悉领域驱动开发,那么你可以把BDD看作是软件开发中的"世界语"。
有一点要指出的是,BDD并非崭新的理论,而是脱胎于业已存在的实践。BDD致力于使沟通渠道通畅,基于此念,一个准确,易懂,生动,一致(无歧义?)的词汇表由此产生。
附,英文原文
Behaviour-Driven Development (BDD) is an evolution in the thinking behind TestDrivenDevelopment and AcceptanceTestDrivenPlanning.
It pulls together strands from TestDrivenDevelopment and DomainDrivenDesign into an integrated whole, making the relationship between these two powerful approaches to software development more evident.
It aims to help focus development on the delivery of prioritised(此处疑为prioritized), verifiable business value by providing a common vocabulary (also referred to as a UbiquitousLanguage) that spans the divide between Business and Technology.
It presents a framework of activity based on three core principles:
1. Business and Technology should refer to the same system in the same way
2. Any system should have an identified, verifiable value to the business
3. Up-front analysis, design and planning all have a diminishing return
BDD relies on the use of a very specific (and small) vocabulary to minimise miscommunication and to ensure that everyone – the business, developers, testers, analysts and managers – are not only on the same page but using the same words.
For people familiar with the concept of DomainDrivenDesign, you could consider BDD to be a UbiquitousLanguage for software development.
It must be stressed that BDD is a rephrasing of existing good practice, it is not a radically new departure. Its aim is to bring together existing, well-established techniques under a common banner and with a consistent and unambiguous terminology. BDD is very much focussed on “Getting the words right” and this focus is intended to produce a vocabulary that is accurate, accessible, descriptive and consistent.
(删除废话一句)
In fact “Getting the words right” was the starting point for the development of BDD, and is still very much at its core, but the power of getting the words right has led to some insights and extrapolations that have helped us to better understand our approach and to extend it.
本段暂时忽略
分享到:
相关推荐
行为驱动开发(BDD)是一种敏捷软件开发的技术,它鼓励软件项目中的开发者、质量保证和非技术或商业参与者之间的协作。Cucumber是一个支持行为驱动开发的工具,它允许业务分析师、测试人员和开发者以一种他们都能...
针对Java语言,结合实例介绍测试驱动开发的方法。英文原版。 Test-driven development (TDD) is a development approach that relies on a test-first procedure that emphasises writing a test before writing the...
基于此认识,行为驱动开发(Behaviour-Driven Development, BDD)的概念被提出。 #### 五、BDD的核心理念 BDD的核心理念之一是使用“通用语言”,这是一种能够让客户和开发者共同理解的语言,用于描述系统的预期行为...
行为驱动开发(BDD,Behaviour-Driven Development)是一种软件开发方法,它强调通过明确的、共享的语言来描述系统的行为,以此提高设计的质量并确保开发出的产品满足客户需求。BDD的核心理念在于建立一种“通用语言...
《RSpec Book》是关于行为驱动开发(BDD)的一本权威书籍,特别是针对Rspec这一Ruby语言的测试框架。本书的最新版包含了Cucumber章节,使得读者能够更好地理解和实践BDD理念。 行为驱动开发(BDD)是一种软件开发...
编程-101 优秀程序员的基本知识 算法、数据结构、设计模式...... ... The Cucumber Book: Behaviour-Driven Development for Testers and Developers (Pragmatic Programmers) 其他 有效地使用遗留代码
Behaviour-Driven Development(行为驱动开发) - **保龄球游戏示例**:通过一个保龄球游戏的示例,介绍了行为驱动开发的基本思想和实施步骤。 ##### 15. Code Coverage Analysis(代码覆盖率分析) - **指定覆盖...
- **书籍**: 《The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends》虽然主要聚焦于RSpec,但也涵盖了Watir和自动化测试的最佳实践。 #### Ruby开源项目推荐 1. **forem**: - 一个...
Keyword driven testing(关键字驱动测试):一种自动化测试方法,依赖于预先定义的关键字来驱动测试脚本的执行。 Kick-off meeting(启动会议):项目或会议开始时举行的正式会议,以确定目标和计划。 Lag time...