1. A method for recommending a product using a computer implemented expert system, the method comprising: utilizing the expert system to determine problem domain information via interaction between a live human agent and a customer; utilizing the expert system to determine need information of the customer via interaction between the live human agent and the customer, wherein the need information relates to telecommunications needs of the customer; inputting the customer need information into the expert system, wherein the act of inputting the customer need information into the expert system is performed by the live human agent; transforming the customer need information into a trait, the trait being characteristic of a telecommunications product of relevance to the customer, the telecommunications product of relevance being selected from a plurality of available telecommunications products; calculating a rating of at least three telecommunications products within the plurality of available telecommunications products, wherein the act of calculating the ratings is performed by the expert system; and presenting an output comprising a recommended solution, a compatible solution, and a not recommended solution, wherein each of said recommended solution, said compatible solution and said not recommended solution are alternative solutions selected from the plurality of available telecommunications products by the expert system, and wherein said output is generated by said expert system.