We are reviewing usability of the mechanism responsible for storing and managing Application Model
differences in the database (aka ModelDifferenceDbStore), and hence wanted to ask you to tell us about your practical experience with it.
In order to do this, please consider these questions:
1. Differences for which levels are you currently storing in the database and how well does this work for you (shared, user, or both)?
2. Have you required customizing differences stored in the database for already deployed production apps? If so, clarify the following points:
2.1. Was this customization done for shared or user levels?
2.2. List the exact use-case scenarios that needed such customizations (e.g., a client screwed up a View layout and could not reset it back to normal)?
2.3. Which solutions and how often did you use for this customization (e.g., direct database updates, editing raw XML after enabling the
Administrative UI inside the app, etc.)?
2.4. How well did your current solutions for different customizations work for you so far and what could be improved in them and why?
3. Have you considered the opportunity to customize shared or user differences using the
Standalone Model Editor, which visualizes the actual differences in XML content as a nodes tree? If so, clarify the following points to help us better understand the behavior you expect from such a feature:
3.1. Do you need to customize differences for shared, user or both levels?
3.2. Taking the severeness and effect of this operation over all application users, do you think that a logon form should be shown before someone can perform this customization for security reasons? Or, how do you plan to prevent a power user from obtaining the
Standalone Model Editor tool binaries and running it locally for this or even harmful purposes?
We would greatly appreciate your answering these questions or providing any other information that would help us see how the current feature works for you and what can be improved further.
Thanks in advance.