What is patch management?
Management done for patches. :P
Seriously though, it's maintaining the patches for kernels or software by testing functionality, and stability after a patch is applied. When dealing with it on the end-user side of it, usually it deals with the kernel, and keeping it up to date with the latest patches available. For software, it's usually "package management", but technically speaking, it could be called the same.
arrogance breeds ignorance
Screaming Electron, Full of BSD Goodness
Yes, patches are usually created to fix performance, functionality or security issues with a software release.
You have to be careful that the patch isn't incompatible with some other software component or application which could make matters worse.
This is why it is best to test all patches on a test system before applying them to production systems.