The develop and test phase of software development is the focus of continuous integration. As developers change software code, those changes are immediately checked into a central source code control system. When code is checked in, automated build processes and tests are triggered to make sure that the changes did not break the larger software system being worked on. When shorter and more frequent develop-build-test cycles are used, coding errors are caught more quickly, and the risk associated with large-scale code changes is mitigated.
Continuous delivery means that as new software features and fixes pass through the develop-build-test cycle, they become available as rapidly as possible. When smaller changes are delivered more frequently into production, the risk of large-scale changes breaking the system goes down, and the delay in releasing them to customers is minimized.