Главная
Study mode:
on
1
Intro
2
Modelling by Example Combining BDD and DDD concepts
3
Behaviour Driven Development
4
BDD is the art of using examples in conversations to illustrate behaviour - Liz Keogh
5
Why Examples?
6
Rules are Ambiguous
7
Examples are Unambiguous
8
Examples are Objectively Testable
9
Gherkin A formal language for examples
10
You do not have to use Gherkin
11
Scenarios are not Contracts
12
Scenarios Create a shared understanding of a feature + Give a starting definition of done → Provide an objective indication of how to test a feature
13
Domain Driven Design
14
DDD tackles complexity by focusing the team's attention on knowledge of the domain - Eric Evans
15
Ubiquitous Language A shared way of speaking about domain concepts → Reduces the cost of translation when business and development communicate → Try to establish and use terms the business will under…
16
By embedding Ubiquitous Language in your scenarios, your scenarios naturally become your domain model - Konstantin Kudryashov (@everzet)
17
The best way to understand the domain is by discussing examples → Write scenarios that capture ubiquitous language → Write scenarios that illustrate real situations Directly drive the code model from…
18
Directly driving code with Behat?
19
Improving scenarios
20
Add realistic details
21
Actively seek terms from the domain
22
Get good at listening
23
Model values as Value Objects
24
Model boundaries with Interfaces
Description:
Explore Modelling by Example techniques in this PHP UK Conference talk, combining Behaviour Driven Development (BDD) and Domain Driven Design (DDD) to create a workflow that directly drives code from user requirements. Learn how to define features through stakeholder conversations, capture automatable requirements, and express them in the object model using tools like Behat and PhpSpec. Discover the benefits of using examples to illustrate behavior, understand the Gherkin language for formalizing examples, and grasp the importance of establishing a Ubiquitous Language for effective communication between business and development teams. Gain insights on improving scenarios, modeling values as Value Objects, and defining boundaries with Interfaces to create a more robust and domain-focused codebase.

Driving Design through Examples

PHP UK Conference
Add to list
0:00 / 0:00