QUOTE(janne_panne @ 30 Oct, 2009 - 12:00 PM)

For example version control holds information about changes so if you implement the same kind of mechanism to the program
Those would be source deltas. They contain only the information that has changed between specific versions of a source file.
Typically, patches that are small in size are most likely bug fixes made in the libraries (.dll), and they typically relate to one of the layers of the application (3-Tier Architecture). These library files are overwritten, and the base application will simply utilize the library as it normally does. When the patch is substantially larger, 10's to 100's of megs, the fix needed to take place in the "driver" program, or the base app that utilizes the library files. The executable program would have been recompiled, and needs replacing.
Bottom line, I'm not so sure there is a 'bible' on how to handle patch management. It's typically proprietary, and can change shape based on scope and context. Hope this helps.