Ce diaporama a bien été signalé.
Le téléchargement de votre SlideShare est en cours. ×

Moving to tdd bdd

Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Prochain SlideShare
Agile Simplified
Agile Simplified
Chargement dans…3
×

Consultez-les par la suite

1 sur 18 Publicité

Moving to tdd bdd

Télécharger pour lire hors ligne

Technical stream: Moving to test- and behaviour-driven development
In this session Kim will be going over the benefits of introducing TDD and BDD: How to introduce them, their differences, how to deal with push back from team members and upper management.
The benefits of driving our development with tests, how it helps the quality and maintainability of our software, how it helps the business and the client. The types of tests that best serve us for the different layers of our application development and how business people can get benefit from TDD and especially BDD.
When Kim’s not working at his day job as a senior software engineer, consultant, Scrum Master, you can find him indulging his passions of software architecture, creating and exploiting software and networks. In order to develop and release software faster, it's Kim’s aim to increase the awareness for the need of higher quality incremental software releases.

Technical stream: Moving to test- and behaviour-driven development
In this session Kim will be going over the benefits of introducing TDD and BDD: How to introduce them, their differences, how to deal with push back from team members and upper management.
The benefits of driving our development with tests, how it helps the quality and maintainability of our software, how it helps the business and the client. The types of tests that best serve us for the different layers of our application development and how business people can get benefit from TDD and especially BDD.
When Kim’s not working at his day job as a senior software engineer, consultant, Scrum Master, you can find him indulging his passions of software architecture, creating and exploiting software and networks. In order to develop and release software faster, it's Kim’s aim to increase the awareness for the need of higher quality incremental software releases.

Publicité
Publicité

Plus De Contenu Connexe

Diaporamas pour vous (20)

Publicité

Similaire à Moving to tdd bdd (20)

Plus récents (20)

Publicité

Moving to tdd bdd

  1. 1. Acceptance Test Driven Development (ATDD) Automated Acceptance Testing (AAT) Behaviour Driven Development (BDD) Pioneered by Dan North 2006
  2. 2. What are the goals? What's in it for The Development Team? What is it going to cost The Development Team? What's in it for the business? What is it going to cost the business? What does it mean to be doing BDD or ATDD Tooling options? How to deal with push back from management or team members.
  3. 3. Goals ● Communication bridge ● Measurability ● Ultimate visibility ● Assistance in being able to deliver every Sprint ● Provide confirmation that we have implemented specification ● Code that is testable, of high quality, maintainable, extensible ● RoI ● Write less code
  4. 4. Beware! Higher level tests = more expensive to create and maintain Slower to run, not run in CI, usually run in nightly build ● Potential for latency in the development cycle ● Developers less likely to run them manually ● Faults take longer to locate and fix
  5. 5. What's in it for the Devs? Clear, concise and often terse automatable specifications Living (always up to date) documentation Confidence we're only writing what's needed Clarification of assumptions Product quality Unit tests tell us our software works... BDD tells us it does what the customer wants Instant feedback Assists in tight iterations
  6. 6. Cost to the Development Team? Paradigm shift Forced into active engagement Finding unit test and mocking frameworks Learning curve Mocking frameworks I've evaluated recently: ● NMock2, 3 ● Rhino Mocks ● TypeMock ● Moq
  7. 7. Cost of not doing BDD ● Product quality ● Predictability ● Accountability ● Rework... Ultimately costing the business.
  8. 8. What's in it for the Business? ● Executable, living specifications providing assurance that the business functionality is “Done” ● Confidence in The Scrum Team ● Solid development KPI ● Visibility of what to expect from a Done increment ● Visibility into how much business value is being delivered ● Predictability. Empowerment ● Higher product quality = less money spent on rework and maintenance ● Confidence that not only is the product being built correctly... but also that the correct product is being built
  9. 9. Cost to the Business? ● A little team planning and a spike on tools ● PO and stakeholders to understand what they are asking for.
  10. 10. Cost of not doing BDD ● Visibility ● Forecast-ability ● Ability to make informed decisions ● Software that does what it should do. ● Speed to market. Software is a liability until it's released.
  11. 11. How do we do it? → Once tools are chosen → At the beginning of the Sprint → Test condition workshop... Search BinaryMist on how-to-optimise-your-testing-effort
  12. 12. Resources: You'll find everything you need here: https://github.com/techtalk/SpecFlow/wiki/Documentation
  13. 13. Resources: Best Intro Video: http://www.watchmecode.net/jasmine-standalone#preview Standalone Runner: https://github.com/pivotal/jasmine/downloads Best Intro Doc: http://pivotal.github.com/jasmine/ Serenity Runner with .NET: http://lostechies.com/josharnold/2012/02/25/running-jasmine-specs-in-d
  14. 14. FitNesse Resources: Two Minute Example: http://fitnesse.org/FitNesse.UserGuide.TwoMinuteExample Test Driven .NET Development with FitNesse by Gojko Adzic Start here with Installation: http://fitnesse.org/FitNesse.UserGuide.DownloadingAndInstallingFitNes FitSharp: https://github.com/jediwhale/fitsharp/downloads Source: https://github.com/unclebob/fitnesse
  15. 15. Dealing with push back This is never going to be easy. Books I've found helpful: ● Fearless Change: Patterns for Introducing New Ideas by Mary Lynn Manns and Linda Rising ● Change Agent: Engaging your passion to be the one who makes a difference by Os Hillman
  16. 16. Resources ● If not already TDD'ing http://blog.binarymist.net/2012/12/01/moving-to-tdd/ ● Guidance on prioritising areas to test that give biggest bang for your buck http://blog.binarymist.net/2012/03/24/how-to-optimise-your-testing-ef ● Book: Specification By Example by Gojko Adzic

×