This is also called Spec Driven Development.