An application can be dynamically composed and maintained by creating the
application within a component framework. The component framework
includes components that each implement an integration interface. The
integration interface has a number of methods that allow the component
framework to manage the lifetime of the component, and which give the
component the ability to communicate with the component framework, other
components, and external entities.