 A derivative version of CAB exists in both the Web Client and Mobile Client Software Factories as well.It encourages the developer to use either the Model-View-Controller or Model-View-Presenter architectural pattern, to encourage reuse of the individual User Controls (referred to in CAB as "SmartParts") by not coupling them with their underlying data elements or presentation code.It is part of the foundation of the Smart Client Software Factory, another patterns & practices deliverable.