[1] UIMS are designed to support N-tier architectures by strictly defining and enforcing the boundary between the business logic and the GUI.
A UIMS may also have libraries and systems such as graphical tools for the creation of user interface resources or data stores.
A more directly applicable theory of user interface management is the model–view–controller design pattern, which is described in detail in its own article.
A controller layer automatically synchronizes the object with the presentation and vice versa through a two way connection provided by an Observer pattern.
A commercial program, ViewSoft Internet, was briefly available in the 1990s that implemented a general purpose GUI builder based upon the Editing Model.
Important research in this field has been done by Brad Myers, Dan Olsen, Scott Hudson and James D. Foley.