How do you create detailed functional specifications that serve as a blueprint for engineering teams?