Abstract:There are limitations with most of the current role models. For example, the issues of role creation and attachment have to be handled explicitly in the source code: the navigation between role objects and source objects is unidirectional, and messages cannot be transferred bi-directionally, etc. Such limitations always result in the core business becoming tangled with the control logic for role objects. A dynamic role model, named DR, can provide the automatic creating and destroying mechanisms of role objects and can also provide the bi-directional navigation between role objects and source objects. These functionalities make up the core of the use of the role model, and the control logic for role objects is also transparent to users. The implementation of DR is centered around prepositve objects and delegation mechanisms not only resolves the complex hierarchy of roles problem, but the dynamic role model also solves the compatibility problem with traditional object-oriented systems.