A usable design starts with careful observations of how the tasks being supported are actually performed, followed by a design process that results in a good fit to the actual ways the tasks get performed.
This is the definition of task analysis. How is this related to tkinter and python as a whole? How can task analysis be incorporated into software?

