A non-transitory computer readable storage medium having stored therein instructions that, when executed by a computer system, cause the computer system to perform a method of generating an Availability Management Framework (AMF) configuration for providing services and protecting the services against resource failure, wherein the AMF configuration is an instance of an AMF sub-profile that defines AMF elements to be used to model resources and the services, and is generated from an instance of an Entity Type Files (ETF) sub-profile, which is called an ETF model, and an instance of a Configuration Requirements (CR) sub-profile, which is call a CR model, each of the AMF sub-profile, the ETF sub-profile and the CR sub-profile being specializations of a pre-defined Unified Modeling Language (UML) meta-model, the method comprising the steps of:
- receiving the ETF model, which defines a set of ETF prototypes of the ETF model that describe the resources provided by vendors;
- receiving the CR model, which defines a set of CR elements of the CR model that specify configuration requirements;
- and applying a set of transformation rules, which are pre-defined for the ETF sub-profile, the CR sub-profile and the AMF sub-profile, to transform the ETF model and the CR model into an AMF model as the AMF configuration, wherein the CR model is organized as a first hierarchy of the CR elements, the ETF model is organized as a second hierarchy of the ETF prototypes, and one or more levels of the first hierarchy are missing levels in the second hierarchy, the step of applying further comprising the steps of:
- transforming a selected subset of the ETF prototypes of the ETF model that satisfy the configuration requirements into a collection of the AMF elements organized as a hierarchy with the one or more levels missing;
- and building the one or more missing levels from the collection of the AMF elements based on relationships between the one or more missing levels and existing levels of the first and second hierarchies.