The present invention provides for a
system and method facilitating
configuration management. The
system includes a configuration store that stores persisted configuration and / or
dependency information associated with application(s), and, a configuration
service component that manages access to the configuration store. The
system can further include a
configuration management engine (e.g., API) that allows
client application(s) to access, query and / or modify setting(s). In accordance with an aspect of the present invention, application(s) submit an
XML assembly manifest which comprises: the
assembly identity, the application binaries, its dependencies etc. The manifest can also include a configuration section that declaratively specifies the persisted settings for the application. The configuration section includes an XSD-based schema that defines rich types for the settings and the settings themselves, and
metadata for these settings including description and default values, manageability attributes (e.g., migrate,
backup, policy), and integrity constraints called assertions (that could potentially describe the relationships between settings).