Sometimes ideas don’t get the attention that they deserve. The Java Modelling Language (JML) is just such an idea. JML is something every Java programmer should know about. That does not mean every project in Java should make use of JML, only that developers should be aware of it so they can use it wherever it does make sense. The fact is that JML provides so many benefits for so little extra work that it deserves far more use than it gets. If you program in Java it could definitely make your life easier.
Read the whole article here. My only reservation is that without IDE support that hides the JML annotations the source code will be too ugly for my stomach to handle.