The notion of contracts as interfaces annotated with preconditions,postconditions and invariants , is simple and practical. The interface defines everything the clients need to know, but no more than that. This Project focus is on developing a library of Desing by Contract for Java. SpringDBC uses Java 5 annotations, or commons-attributes for java 1.4, to define assertions based on AOP, Beanshell and powered by Spring framework.