I am looking for a Design Pattern to solve the issue of evolving models and sincronization with clients applications.
We create a version 1.0 of our model with entity beans and session beans in our EJB container. Then we deploy on several machines the remote session bean interfaces in version 1.0 in the client application.
Several weeks later we migrate the EJB application to the version 1.1 of our model assuming that they have been new attributes added since the first model.
We cannot expect to update all the clients in a day, and we want the model to be backward compatible with the old version 1.0 interface so that both versions can use the new model.
Is there a design pattern that deals with EJB versioning and allow several versions of remote sessions bean interfaces to access to entity beans that have been updated?
In our case, which strategy should we follow to solve the problem?