It is normal to spend a huge amount of time creating incredibly detailed behavior specs in avionics and other code where people can die from bugs.