A newer version of a program intended to add new features to an existing piece of software without having to purchase and install an entirely new edition. Upgrades typically cost less than buying a brand new copy of the software. Software upgrades can often be downloaded from the Internet.
A relatively minor upgrade can be offered as a patch; this does not contain the new version of the software in its entirety, just the changes that need to be made. Software patches usually aim to improve functionality or solve problems with security and are generally free of charge.