Object modeling and programming have become indispensable in the industrial world, particularly with the advent of model-driven architectures (MDA) and urbanized service-oriented architectures. Indeed, the need to master increasingly complex Information Systems is driving companies to implement this type of approach. Object programming technologies such as Java, C++ or DCOM enable the implementation of solutions designed in these architectures, thus facilitating both the maintenance and scalability of the Information System.
While object concepts are very much in evidence in the design phases, the solutions used for data storage remain predominantly relational. The problem of transposing applications designed with an object-based approach and intended for implementation in a relational context is therefore a recurring problem within companies.
To solve this problem, we often resort to implementing specific SQL queries that ignore the original object model. Although relatively effective, this solution complicates any evolution of the object model, as the impact on the data is difficult to assess and rarely negligible. This approach therefore runs counter to the current trend for companies to take greater control of their information systems.
It is therefore essential to implement automated transposition rules, particularly for projects that will have a major impact on the company. To this end, transposition mechanisms can be custom-built if the technical environment meets specific corporate requirements, or with a third-party transposition tool in more standard environments (for example, in a J2EE environment with tools such as Hibernate or TopLink, both integrated into Eclipse).