Bill Penberthy

Information & Communications Technology

Goverment, Social Sector & Education

Business & Management

Media & Information

Software Architecture Software Development Trust Leadership

Seattle, Washington, United States

Evolving from TDD to BDD and how it increases quality

TDD, or test-driven development, is a sexy acronym that has the advantage of adding real value. However, behavior-driven development, BDD, is even sexier, and adds even more value. In this talk we discuss how moving from a TDD to a BDD approach increases both quality and developer effectiveness.

Behavior-driven development is an extension of test-driven development. It came about because common implementations of TDD are problematic, especially when looking at the context of the tests that are being created and how common it is to define tests that are either too high level or too low level to actually drive quality in the code. BDD is a way to define a more specific set of boundaries around the tests and how they are defined that will help drive quality and consistency.

Since BDD is basically an extension of TDD, it would seem that this should be a straight-forward change. It is not. Bringing BDD into a software development organization requires a level of stakeholder inclusion that is frightening to many development organizations. This workshop will go over: - common test-driven development practices - the difference between TDD and BDD - the changes necessary to be successful at BDD - how BDD drives quality improvement - how BDD helps you have those hard conversations - when you probably don’t need to change what you are doing

Bill Penberthy

Curmudgeonly .NET Advocate in a Modern Apps world

With over 25 years in software development (almost 15 of which is .NET), Dr. Bill brings a pragmatic (curmudgeonly?) approach to software development. With much of that time spent in consulting, he has worked on many different projects and used many different designs and approaches. He recently switched to the dark side and uses his development experience in a product management role where he acts as a .NET developer advocate with AWS, helping AWS to build a better and more rich .NET developer experience.

Bill's full speaker profile