Formalism
Advantages
- requires careful thought
- provides precision
- removes unstated assumptions
- makes correctness proofs possible
- serves as a basis for tool development
- enables prototyping
Disadvantages
- hard to do and hard to read and understand
- may hinder productivity