Example Driven Development

Example driven development is the best name to cover acceptance test driven development, behaviour driven development and specification by example approaches.

The concepts of acceptance test, testing and a tester have been defined long ago. I have found that changing their meaning is difficult. Even when we talk about test driven development we have to spend a lot of effort to explain that it is not done after programming and not by the separate testers.

The same happens if we talk about specifications. The old school uses user stories as a new way of writing specifications, which could be then send to a separate development team. Collaborative design is not happening as it should.

Though I like the idea of programming with natural languages, I think that they are too abstract and too prone to interpretations. Examples are a good way to explain things unambiguously and in a way that both the users and programmers see useful. Behaviour is something that programmers talk about, but for users that might not be as clear as examples.

With example driven development I want to emphasize collaborative design where users and developers work together using examples to clarify how users interact with computer programs to achieve business benefits that pay the return on investment.

Traditionally we have specifications, tests and code written to different purposes. They should not just be consistent but the same. In agile tests are specifications and in behaviour driven development code is moving closer to the tests.

The ultimate goal might be that we have only one description of the program that can be understood by both the users and the compilers. That is one goal of visual programming. The lack of programmers has been tried to be solved by moving the work to users. This approach has not been very successful because building large programs requires a lot of logical thinking and solutions to huge amounts of details. Software designers are not endangered species but programmers might be if the abstraction level of programming goes up.

 

 

 

 

2 thoughts on “Example Driven Development

  1. It’s hard to find your posts in google. I found it on 18
    spot, you should build quality backlinks , it will help you to increase traffic.
    I know how to help you, just search in google – k2 seo tips

  2. Thank you. Google ranking of this site looks surprisingly good if I use keywords “lean developer” in Finland. My name works well, too. And of course, SEO tests are not done using my cookie-infected computers.

    I have been oversold the last 5 to 10 years and have not invested in marketing. Need to write here is in my backlog but its priority is not very high.

Leave a Reply

Your email address will not be published. Required fields are marked *