An application groups classes or methods that are functionally related so they can be reused as a unit.