Implementing hypothesis-driven development