
The standard for role based access control 
(RBAC) could be utilized by enterprises for 
protecting digital resources (Ferraiolo et al. 2001). In 
RBAC, “Users” are assigned “Roles”, which are in 
turn assigned permissions on “Resources”. In our 
case, the UI is the resource we need to secure. 
Table 1: CRUD to UI property mappings. 
CRUD Permission  UI Property  Value 
Allow / Deny (Create)  isEnabled  True / False 
Allow / Deny (Delete)  isEnabled  True / False 
Allow / Deny (Read)  isVisible  True / False 
Allow / Deny (Update)  isEnabled  True / False 
 
Table 1 lists the mapping between the CRUD 
permissions and UI-specific properties. The 
“Create” and “Delete” permissions are applied on 
the domain model UML classes whereas “Read” and 
“Update” are applied on UML class properties.  
To demonstrate that the proposed method is not 
only meant for newly developed applications we 
chose an existing open source dental practice 
software called OpenDental (www.opendental.com). 
We selected the “Claims” form, illustrated in the UI 
studio in Figure 2. It has 87 widgets of 9 different 
types, and was reverse engineered from code into 
relational data based on our proposed meta-model. 
We tested the performance of the dynamic UI, 
which loads all the widgets at runtime from a 
database, versus the code based compiled UI. 
Both versions of the “Claims” form were loaded 
and closed 1000 times. The time was plotted on the 
graph illustrated in Figure 3. The dynamic UI took 
slightly more time when it was loaded the first time 
then the caching allowed a significant drop in the 
time. Overall we could say that our approach will 
not incur negative impact on performance. 
 
Figure 3: User interface performance. 
8 CONCLUSIONS 
Adaptive user interfaces could be considered as a 
means for addressing variations in the needs of 
enterprise application users without incurring a high 
increase in the cost of developing such applications. 
In this paper, we have presented an approach that 
uses interpreted runtime models for creating 
enterprise applications, which makes it easier to 
realize both adaptive and adaptable user interfaces. 
Additionally, the dynamic model-driven nature of 
the proposed method could make enterprise 
applications more resilient to change in both 
technology and business requirements. 
In the future we will adopt the proposed 
approach as a basis for devising an adaptive solution 
for the scenarios discussed in Section 2.  
REFERENCES 
Blumendorf, Marco, Lehmann, Grzegorz and Albayrak, 
Sahin, (2010). ‘Bridging Models and Systems at 
Runtime to Build Adaptive User Interfaces’. 
Calvary, Gaëlle, Coutaz, Joëlle, Dâassi, Olfa, Balme, 
Lionel and Demeure, Alexandre, (2005). ‘Towards a 
New Generation of Widgets for Supporting Software 
Plasticity: The ”Comet”. 
Calvary, Gaëlle, Coutaz, Joëlle, Thevenin, David, 
Limbourg, Quentin, et al., (2003). ‘A Unifying 
Reference Framework for Multi-Target User 
Interfaces’. 
Clerckx, Tim, Luyten, Kris and Coninx, Karin, (2004). 
‘DynaMo-AID: a Design Process and a Runtime 
Architecture for Dynamic Model-based User Interface 
Development’. 
Ferraiolo, David F., Sandhu, Ravi, Gavrila, Serban, Kuhn, 
D. Richard and Chandramouli, Ramaswamy, (2001). 
‘Proposed NIST standard for role-based access 
control’. 
France, Robert and Rumpe, Bernhard, (2007). ‘Model-
Driven Development of Complex Software: A 
Research Roadmap’. 
Gajos, Krzysztof Z., Weld, Daniel S. and Wobbrock, 
Jacob O., (2010). ‘Automatically Generating 
Personalized User Interfaces with Supple’. 
Guerrero-Garcia, Josefina, Vanderdonckt, Jean and 
Gonzalez-Calleros, Juan Manuel, (2008). ‘Towards a 
Multi-User Interaction Meta-Model’. 
Kramer, Jeff and Magee, Jeff, (2007). ‘Self-Managed 
Systems: an Architectural Challenge’. 
Lepreux, Sophie, Vanderdonckt, Jean and Kolski, 
Christophe, (2010). ‘User Interface Composition with 
UsiXML’. 
McGrenere, Joanna, Baecker, Ronald M. and Booth, 
Kellogg S., (2002). ‘An Evaluation of a Multiple 
Interface Design Solution for Bloated Software’. 
UsingInterpretedRuntimeModelsforDevisingAdaptiveUserInterfacesofEnterpriseApplications
77