Developers frequently integrate code into a shared repository. Automated builds and tests are run to detect issues early. Encourages smaller, more manageable code changes.