Patent ID: 8689174

Claim:
A computer program product, tangibly embodied in a machine-readable storage device, the computer program product being operable to cause data processing apparatus to perform operations comprising: receiving input characterizing: a definition of potential roles for a plurality of child components of a pattern component, the plurality of child components and the pattern component forming a hierarchical structure, the pattern component being an object identification pattern component that is displayed on a graphical user interface of a resource planning application, the pattern component containing the plurality of child components displayed on the graphical user interface, the plurality of child components comprising a data view component, a form pane component, a list pane component, and a chart pane component, each child component containing a plurality of grandchild components displayed on the graphical user interface, the plurality of grandchild components comprising one or more tool bars, one or more tables, and one or more tab strips, each potential role associated with one or more interfaces, the pattern component defining a pattern of a component of an application in a visual modeling environment of an application development system, and a selection, based on user interaction and from the plurality of child components, of a child component of the plurality of child components that implements at least one of the one or more interfaces; determining, based on a role associated with the pattern component, a role associated with an interface implemented by the child component, the role being one of the potential roles; assigning the role associated with the interface to the child component; and associating, based on the role of the child component, a corresponding behavior with the each child component of the plurality of child components such that the corresponding behaviors of the child components differ based on the role of the corresponding child component of the plurality of child components, the differing behavior of the child component being enabled by late-binding of the child component, wherein the pattern component graphically depicts an entity of a visual modeling language, and wherein the late-binding enables the extensibility of pattern components, the extensibility comprising addition of new one or more patterns such that existing one or more patterns adapt to the new one or more patterns without a change of the existing one or more patterns.