Part Based
As part of an overral risk-reduction strategy concerning product evolution Metro incorporates an internal controller management model that enables concurrent execution of different container versions within a single application. This strategy enables changes that would normally be classed as breaking compatibility to be isolated in dynamicaly loaded plugin control subsystems. The end-result is the potential for a composite comoponent to operate seamlessly with components using radicaly different controllers.
This is achived through the combinaton of:
- Layered internal container APIs.
- Component deployment data tagged with supporting system version
- Dynamic loading of plugin controllers
- Controller delegation rules