1. A computer-implemented method for creating a computer software application, comprising: structuring the application into an application layer and an adaptation layer; defining a plurality of data elements used by the application; establishing, by a processor, the application layer, based on the data elements, for processing the data elements; creating, by the processor, the adaptation layer comprising adaptation data compatible with the application layer and a rendering control configured to render the data elements modified by the adaptation data associated with the data elements, wherein the adaptation data enables plural presentations of the data elements by the rendering control of the adaptation layer independently from the application layer; and upgrading the application layer without modifying the adaptation data, wherein the upgraded application layer is compatible with the unmodified adaptation data.