PackageManagement gives the SystemAdministrator (whether that be an administrator of a large network of machines, or Joe Schmoe at his single-user Linux desktop) rapid, easy control over which Packages are installed. The Package format and corresponding PackageManagementTool used is one of the major points of difference between LinuxDistributions. In general, PackageManagement has to perform at least the following tasks:
It is nowadays commonly considered a requirement for PackageManagement to also address dependencies - which means it should make sure to at least notify the SystemAdministrator when they're trying to install a Package that won't work because it depends on other software not currently installed. For example, some GUI application may require GTK and/or GNOME libraries to run. These are of course also provided as Packages. Those may again depend on other packages, which may in turn have their own dependecies - and so on.