TDD
Meaning: Test Driven Development
Who involves: developers
Summary: developers start writing code defining tests (in general unit tests). It could sounds strange but it's a good approach for having a wide code coverage and, in particular, allows forcing devs to "think" about what they are doing. TDD can be applied to any kind of software.
BDD
Meaning: Behaviour Driven Development
Who involves: in theory anyone
Summary: allows defining a-priori the expected behaviours of a software. There are several tools, like Cucumber, for writing "Behaviours". You should write the expected behaviour using a predefined syntax that will be translated into code by developers and into test by QA. BDD cannot be applied to any kind of software
Meaning: Test Driven Development
Who involves: developers
Summary: developers start writing code defining tests (in general unit tests). It could sounds strange but it's a good approach for having a wide code coverage and, in particular, allows forcing devs to "think" about what they are doing. TDD can be applied to any kind of software.
BDD
Meaning: Behaviour Driven Development
Who involves: in theory anyone
Summary: allows defining a-priori the expected behaviours of a software. There are several tools, like Cucumber, for writing "Behaviours". You should write the expected behaviour using a predefined syntax that will be translated into code by developers and into test by QA. BDD cannot be applied to any kind of software