model/view/controller
An design pattern for writing programs that have a graphical user interface that separates the data model, view components, and control logic into separate modules. Originated in the SmallTalk language.
The Struts framework is based on a version of the Model View Controller design pattern.