The document proposes a "Blocks" plugin architecture for Cocoon to address issues with its monolithic nature and configuration complexity. Blocks are designed to be reusable application packages containing libraries, resources, components and sitemaps that can be parameterized and extended. The architecture uses OSGi bundles and services to provide class isolation, dependency management and hot deployment between blocks that can be discovered, deployed and wired together at runtime.