Choosing between operational and definitional methods also depends on project-specific details and experience. Generally, programmers are initially more comfortable with operational methods since they are closer to programming. Operational specifications may lead to overspecification. They tend to be larger than definitional specifications. Their complexity thus tends to be greater, and relationships among operations tend to be harder to discern.
Definitional specifications are generally harder to construct.
The appropriate axioms to specify are usually not trivial. Consistency and completeness may be difficult to establish. Usually completeness is more problematic than consistency. Intuition will tend to prevent the specification of inconsistent axioms. Whether some axioms are redundant, or more are needed, is less readily apparent.