I answered this question at Yahoo Answers and I think it's valuable enough to re-post here.
"Software is a broad category and in it's most simplistic definition can be described as a set of instructions used to command hardware. The other definitions you require can be a subset of software.
Application is generally described as software with which a human would interact such as a word processor, a browser, an ERP system, a game etc etc
Add-ons and plug-ins are very similar in that developers who write applications create them so that the functionality of their application can be extended without them having to write more code. For example Firefox allows add-ons such as spell checkers, colored tabs, download utilities etc. A development editor may allow plug-ins that add spell check, specific language syntax highlighting, advanced text manipulation options etc etc.
Drivers are generally non-interactive pieces of software that are used to abstract operating systems from hardware or other software devices. The driver 'talks' to the operating system in one language as do other drivers and the driver talks to the webcam for example in it's specific language."
Original Post