1. A computer implemented method for authoring and maintaining heterogeneous design assets in a computer system, comprising: (a) defining one or more heterogeneous design assets belonging to disconnected applicative fields, wherein: (i) the disconnected applicative fields comprise a computer-aided design field and a computer graphics field; and (ii) the one or more heterogeneous design assets comprise data/processes of an application; (b) representing the one or more heterogeneous design assets in a hierarchical structure wherein a structure of the heterogeneous design assets is separated from one or more contextual attributes of the heterogeneous design assets, the hierarchical structure comprised of: (i) data comprising the one or more contextual attributes, wherein the one or more contextual attributes define a context within which the one or more heterogeneous design assets are instantiated; and wherein the context is the application/applicative field in which the one or more heterogeneous assets are used/instantiated; (ii) one or more nodes, wherein each node comprises a container for the data and/or other nodes; and (iii) one or more constructs, wherein each construct comprises a template defining a structural view for the data and the one or more nodes, and wherein the one or more constructs do not carry contextual information; (c) binding one or more of the constructs to the data and one or more of the nodes, wherein such binding defines a representation of the one more heterogeneous design assets with contextual information and structure; and (d) providing access, to said heterogeneous design assets in the hierarchical structure, to a user using a computer and display, wherein the heterogeneous design assets are usable across different products in the disconnected applicative fields.