A water dispensing system comprising: a boiler module configured to heat water, the boiler module comprising: an insulated pressure tank ; and a heating element configured to heat the water in the insulated pressure tank and a temperature sensor configured to sense the temperature of the water in the boiler module ; a dispensing head having a nozzle for dispensing the water heated by the boiler module and a user input device configured to receive an input; and a controller in communication with the user input device and the boiler module , the controller including a storage system , wherein; the controller is configured to control the dispensing of the water heated by the boiler module based on the input received by the user input device ; the controller is in communication with the heating element and the temperature sensor , and the controller is configured to control the heating element based on the temperature sensed by the temperature sensor ; the controller is configured to determine a length of time required to heat the water to a high water temperature which is stored; and the controller is further configured to determine a remaining useful life of the heating element based on the length of time required to heat the water to the high water temperature which is stored. a boiler module configured to heat water, the boiler module comprising: an insulated pressure tank ; and a heating element configured to heat the water in the insulated pressure tank and a temperature sensor configured to sense the temperature of the water in the boiler module ; an insulated pressure tank ; and a heating element configured to heat the water in the insulated pressure tank and a temperature sensor configured to sense the temperature of the water in the boiler module ; a dispensing head having a nozzle for dispensing the water heated by the boiler module and a user input device configured to receive an input; and a controller in communication with the user input device and the boiler module , the controller including a storage system , wherein; the controller is configured to control the dispensing of the water heated by the boiler module based on the input received by the user input device ; the controller is in communication with the heating element and the temperature sensor , and the controller is configured to control the heating element based on the temperature sensed by the temperature sensor ; the controller is configured to determine a length of time required to heat the water to a high water temperature which is stored; and the controller is further configured to determine a remaining useful life of the heating element based on the length of time required to heat the water to the high water temperature which is stored. the controller is configured to control the dispensing of the water heated by the boiler module based on the input received by the user input device ; the controller is in communication with the heating element and the temperature sensor , and the controller is configured to control the heating element based on the temperature sensed by the temperature sensor ; the controller is configured to determine a length of time required to heat the water to a high water temperature which is stored; and the controller is further configured to determine a remaining useful life of the heating element based on the length of time required to heat the water to the high water temperature which is stored. <EOS>