Well, 'touch' changes the access and modification times of a file, and 'diff' compares files line by line to find any differences between the two.
You didn't mention any error messages, so it is hard to diagnose what is happening. The first things to check would be the file permissions on the programs, which should be in either the /bin or /usr/bin directories, and make sure the execute permission is set. Then see how the programs are being called - if the user you are working with is just using the program names 'touch' and 'diff', try using the full path to make sure it's not a problem with the environment.