1. A system for a searchable best fit abstraction framework comprising: a network having one or more network resources; a network inventory server programmed to generate a network inventory of the one or more network resources on the network; a searchable best fit abstraction engine in communication with the network inventory server, the searchable best fit abstraction engine comprising: at least one processor; a non-transitory computer readable media having encoded thereon computer software comprising a set of instructions executable by the at least one processor to perform one or more operations, the set of instructions comprising: instructions to retrieve, from the network inventory server, the network inventory of the one or more network resources; instructions to instantiate an inventory class object for at least one network resource of the one or more network resources, wherein the inventory class object includes a set of service abstractions; instructions to define the set of service abstractions, wherein the set of service abstractions includes at least one of properties, interfaces, capabilities, and requirements; instructions to provide a customer facing interface allowing a customer to identify service offerings available to the customer satisfying at least one service requirement; instructions to provide a service provider facing interface allowing a provider to define a service offering based on a service template; and instructions to provision at least one service offering satisfying the service requirement or defined by the service template.
2. The system of claim 1 , wherein the searchable best fit abstraction engine further comprises in the set of instructions: instructions to receive a search query indicating at least one service requirement; instructions to map each of the at least one service requirement to a set of one or more requirement abstraction; instructions to identify one or more inventory class objects, from a pool of inventory class objects, each of the one or more inventory class objects having a respective set of service abstractions satisfying the set of one or more requirement abstractions; instructions to identify one or more matching network resources for each of the one or more inventory class objects and fitting each respective set of service abstractions; instructions to identify based on the one or more matching network resources of the at least one inventory class object, at least one service offering utilizing the one or more matching network resources, satisfying the at least one service requirement; and instructions to receive, via the customer facing interface, a selection of at least one selected service offering of the identified at least one service offering from the customer, wherein the at least one selected service offering is provisioned to a customer premises of the customer.