Skip to content

Comment on TDD is Behavior Specificationparent

Comments

I think there is actually a meaningful distinction between the two. "Specification Driven Development" refers to the artifact you are creating; whereas "Test Driven Development" refers to the activity you are using that specification for. You are right that in the case of TDD as typically practiced, it doesn't really matter since the specifications are only used to conduct tests. However, if you treat the specifications as _data_ rather than code, you greatly increase kinds of verification activities you can with those specifications; such as theorem proving, model checking, test generation, code contracts, and documentation. See the talk "Beyond Contracts: An Exploration into Unified Specifications" -- (http://www.infoq.com/presentations/Unified-Specifications-Cl...) for more on this idea.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.