D) Integration and Testing: It brings all the pieces altogether to a special testing environment, then checks for bugs, errors and interoperability.

E) Maintenance: What happens throughout the rest of the software's life: changes, correction, additions, and moves to a different computing platform and many more. This is frequently the longest of the phases.