Adaptive object-model evolution patterns

Atzmon Hen-Tov, Lena Nikolaev, Lior Schachter, Rebecca Wirfs-Brock, Joseph William Yoder · 2010

An Adaptive Object-Model (AOM) is a software architecture style that represents user-defined entities, attributes, relationships, and behavior in an object-oriented domain model as metadata. In an AOM implementation, domain entities are constructed from externally stored definitions (metadata) that are interpreted at run-time. Users, who may not be programmers, can change externally stored metadata when they want to change the definitions of domain entities. This paper describes two patterns that help minimize the impacts of evolving Adaptive Object-Model definitions. The first pattern, Break and Correct, describes one way to guarantee consistent changes to an Adaptive Object-Model in an environment where the AOM must run continually (24x7). The second pattern, Evolution Resilient Scripts, enables the refinement of AOM type definitions without having to change scripting code.

Read the paper · More papers on PaperTik