Debian package configuration management system
debconf is a powerful package configuration system used by Debian and derivative distributions such as Ubuntu.
When one installs (or upgrades) any single package or a group of packages, debconf asks the packages' configuration questions all at once, and stores the user/admin preferences in a database. Later as the packages are installing, their scripts use the configuration preferences in the database to generate configuration files and otherwise do administrative tasks (e.g. set up servers to start or not start, install other software such as libdvdcss, etc.). This saves the hassle of editing configuration files by hand, and also of waiting for each individual package to install before responding to certain configuration questions.
Administrators can preset the answers to any debconf question, which will cause a subsequent installation of that package to skip asking that question, since it already knows the answer. The admin can force reconfiguration (re-asking and reconfiguring all questions related to a package) when necessary.
Debconf provides much of the machinery for the initial Debian installation process as well, making the unattended installation "preseeding" process quite effective and powerful.