- Extracts smaller functions out of big ones - Moves count distinct update related code to a separate module