Modularize-Interfaces
This is an extension to Modularize that allows your application to define interfaces in-code that serve both as a primary documentation and as compliance control. Other modules can then implement interfaces to provide the actual functionality as outlined in the definition. A good example for a scenario in which this would be useful is databases. If other parts of the application can rely on a standardised interface it won't matter which database is really connected underneath and the type of database connection can be switched without having to change any of the other modules that rely on this functionality.

The project can be found on github including a fully documented symbol index and a getting started tutorial.
As of August 2014, Modularize-Interfaces is available on Quicklisp.

Modularize-Interfaces is licensed under the Artistic License 2.0.