and identify any missing specifications. The discussion also gives a platform for QA, development team and Product owner to converge and hear out each other's perspective to enrich the requirement and also make sure if they are building the right product. The three Amigos are Business - Role of the Business user is to define the problem only (and not venture into suggesting any solution) Development - Role of the Developers involve to suggest ways to fix the problem Testing - Role of testers is to question the solution, bring up as many as different possibilities for brain storming through What-If scenarios and help make the solution more precise to fix the problem. See also Specification by example Behat (PHP framework) Cynefin framework Concordion (Java framework) Gauge (software) Jasmine (JavaScript testing framework) Squish GUI Tester (BDD GUI Testing Tool for JavaScript, Python, Perl, Ruby and Tcl) Use case References Software design Software development philosophies Software testing Articles with example Java code