UG is a software framework for the efficient solution of partial differential equationson unstructured grids. Its main features are robust multigrid solvers for unstructured, locally refined meshes, parallel multigrid methods, parallel online visualization and flexibility, which enables it to be applied to such diverse application fields like Navier-Stokes equations, elastoplasticity, density driven flow andmultiphase flow in porous media. UG contains a large library of parallel solution methods for linear, nonlinear and time dependent problems and a parallel grid manager that is capable of local refinement and coarsening of unstructured meshes in two and three space dimensions. The reuse of this highly complex functionality is the key to enable the simulation of large-scale physical processes on modern supercomputers. In ten years of development UG has reached a mature state and is used in several institutions. Future development directions will consider greater modularization, especially on the level of problem class libraries to allow for the coupling of different partial differential equations in one domain.