Behavior Driven Development (BDD) is being increasingly seen as an alternative way to approach Test Driven Development. SpecFlow and NSpec are popular frameworks for BDD in .NET. They help create test specifications that are easy to read even for non-programmers and allow the design of the software to be driven by it’s purpose.
A new form of an old question has been asked in the Behavior Driven Development community: is BDD merely Acceptance Test Driven Development done well? While the community calls out the differences, Dan North makes a request to avoid focusing on them, calling TDD "amazing".
Real Options, a decision-making process based on Financial Option mathematics, was mentioned by Kent Beck in his 1999 "white book," Extreme Progamming Explained. More recently, Agilists have been exploring how Real Options intersects with Agile. Now Chris Matts and Olav Maassen specifically address the Lean Software community, proposing that application of Real Options improves Lean Development.
JetBrains has taken it on themselves to create one of the premier Ruby IDEs on the market. It has been just over 6 months since version 1.0 was released and today, RubyMine 2.0.
It is often the case, a new piece of software is developed by someone who needed to fill a void left by an existing product. Software evolves from tools we use which don't exactly meet our needs, this is the case with a new Behavior Driven Development (BDD) tool called Coulda, developed by Evan Light.
There are many ways to develop, test and integrate your Rails application: from TDD with the basic Test:Unit or ZenTest, to BDD with RSpec, Shoulda or Cucumber. Remarkable tries to unify the syntax and adds some more flavors to make your Rails BDD painless.
In this interview from QCon San Francisco 2008, Ian Robinson discusses REST vs. WS-*, REST contracts, WADL, how to approach company-wide SOA initiatives, how an SOA changes a company, SOA and Agile, tool support for REST, reuse and foreseeing client needs, versioning and the future of REST-based services in enterprise SOA development.
The last few weeks, a public dispute has been going on between Joel Spolsky and Robert C Martin (Uncle Bob) about Test-Driven Development and about the SOLID principles of OO design. Here is a summary and review of the match.
In this presentation held during OOPSLA 2008, Rebecca Wirfs-Brock reviews various forms of driven development in order to understand the principles and values of several design practices used today. By comparing them, a designer will get a broader view over design and will better understand which design practice is more appropriate for him.
Behavior-Driven Development is nothing new but has steadily risen to the forefront as an excellent technique for technical and non-technical participants to collaborate on a software project. Several frameworks exist to aid the development of software in the BDD (Behavior-Driven Development) mindset, with one particular framework trying to make it as easy as possible for everyone.
In this presentation filmed during Agile 2008, David Anderson talks about the history of Agile, the current status of it and his vision for the future. The role of Agile does not stand in just having a practice, but in finding ways to implement the principles contained by the Agile Manifesto.
Included in the Python standard library, various DocTest Ruby implementations were made available starting one year ago by Tom Locke, Roger Pack, and more recently Dr Nic. We caught up with Duane Johnson who added his changes into the 1.0 version. We discussed DocTest and when docstring-driven testing should be used.
In this presentation from QCon San Francisco 2007, JRuby project lead Charles Nutter discusses the Ruby and JRuby featureset, the JRuby compiler, calling Java from JRuby and vice versa, programming Swing with JRuby, JRuby web applications, JRuby on Rails, persistence, build automation, Test-Driven Development and Behaviour-Driven Development.
Peter Ritchie raised concern about TDD and BDD keeping practitioners from writing good unit tests. He cites an over-reliance on “interaction testing", a core mantra and essence of TDD and BDD, as a driver with tendency to result in incomplete unit testing.