1. A computer-implemented method for modifying a user experience associated with a software product, comprising: collecting behavioral metrics that are associated with a user's emotional state while the user is using the software product; determining, using a computer, the emotional state based on the collected behavioral metrics; and modifying the user experience based on the determined emotional state by changing a path in a process associated with the software product, wherein said changing involves modifying a flow in the software product so that at least a different user interface is presented based on the emotional state, wherein the different user interface includes additional content in the software product that enables the user to provide user inputs to the document with ease.