File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Design and the fly likes BDD in my job Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Engineering » Design
Bookmark "BDD in my job" Watch "BDD in my job" New topic
Author

BDD in my job

Carlos Solano
Greenhorn

Joined: Jun 13, 2013
Posts: 11
Mi company don't work with tdd.
Can you give me reason for to use bdd in my company.
John Smart
Author
Ranch Hand

Joined: Aug 06, 2013
Posts: 43
    
    5
Here are a few reasons companies adopt BDD:
- It helps teams build more valuable and more useful software
- It helps provide better automated visibility on features delivered and in progress
- Practicing TDD/BDD can reduce defects by 70-90%: when teams are proficient with the practice, this reduces both development and maintenance costs
- New features are faster and cheaper to add, because the resulting code quality is much higher, which makes the code easier to change. The automated tests also reduce the risk of introducing regressions.
Jayesh A Lalwani
Bartender

Joined: Jan 17, 2008
Posts: 2431
    
  28

What reasons do they have for not using TDD?
Burk Hufnagel
Ranch Hand

Joined: Oct 01, 2001
Posts: 814
    
    3
Jayesh A Lalwani wrote:What reasons do they have for not using TDD?

I don't know about Carlos' company, but as a long time Java User group attendee, I can tell you some of the common answers:
  • I don't have time
  • I already test my code manually
  • Automated testing is for QA not developers

  • And, my favorite
  • What difference does it make whether I write the tests before, or after, I write my code?


  • Burk
    (TDD and BDD fan)


    SCJP, SCJD, SCEA 5 "Any sufficiently analyzed magic is indistinguishable from science!" Agatha Heterodyne (Girl Genius)
    John Smart
    Author
    Ranch Hand

    Joined: Aug 06, 2013
    Posts: 43
        
        5
    I find that, despite their very obvious benefits once you adopt these practices, both TDD and BDD have a pretty high learning curve (though to a lesser extent with BDD). You really have to experience the benefits for yourself, or work for a while on a project that uses BDD extensively, to really assimilate them. You *will* go slower when you first learn the practices, just like when you learn any other skill. If you have the discipline to persist, you get the benefits. But, unlike a new technology that you have to use (say, like learning AngularJS if you are working on an AngularJS project), with TDD and BDD it is easy to give up and fall back on the old ways.

    To get around this you need to be persistent. Training certainly helps, as does pairing/mentoring with experienced practitioners. Doing it yourself can work, though it certainly requires motivation and persistence, so for a whole team to adopt these practices, you need to be a bit more organized, and come up with some sort of training (internal or external)/mentoring and adoption plan.
    Burk Hufnagel
    Ranch Hand

    Joined: Oct 01, 2001
    Posts: 814
        
        3
    Carlos,
    Even if you can't get them to buy in yet, you can start doing it yourself. After a bit, others will start to notice what you're doing, and they should see that it's making your life - and maybe theirs - easier. That'll be motivation enough for someone else to get started, and so on, and so on.

    It's harder to to all by yourself, but that doesn't mean you shouldn't.

    Good luck,
    Burk
     
    I agree. Here's the link: http://aspose.com/file-tools
     
    subject: BDD in my job