A computer-implemented method, system, and computer program product for
generating an application is disclosed. A pattern module associated with
an application pattern is provided. The pattern module includes a model
of the application pattern, a design time component to provide content
for the model, and a runtime component to execute the operation
associated with the model based with the content. A set of dependencies
among the model, the design time component, and the runtime component is
determined. A set of interfaces is then generated to couple the model,
the design time component, and the runtime component based on the set of
dependencies.