The first goal I had in mind when creating urpkg was to prevent installation programs from overwriting files or getting suid behind my back. I did not want to let the program run as root for a task as delicate as installing a program. So that's the first idea: complete control over what gets installed and how. You may trust your package manager, but do you trust all the installation scripts of all the programs you are ever going to install, remove and upgrade ?
The second goal was to be able to uninstall any software, even if there
is no available package (for example for development
versions), make uninstall
target, or other means of
uninstalling it. Urpkg lets you run any command, and then remove all
files generated by that command easily. This way it is much easier to
install software from source or to create packages for your favorite
distro in an automated way, much like
checkinstall.
By the way, since version 1.4, you can easily create Slackware packages using urpkg. See the section called “Creating a Slackware package”
In short, urpkg can be used to...
Keep control over what any installation program (including your favorite package manager) is doing
Install any program from source
Generate package for your favorite distribution
Anything you think it can be good at...