Software packages contain software as well as information about its dependencies- that is, which other software, if any, this software depends upon to run properly. These are usually libraries. and help and configuration files. Even simple applications usually have several dependencies.
Software packages are usually hosted on Software Repositories and allow software to be easily installed and removed using a Package Manager by not requiring the user to manually keep track of all software dependencies in order to successfully install or completely remove software.