Distributed development
From APIDesign
Applications can no longer be written from scratch. They need to be assembled from modular pieces. The art of organizing the teamwork or at least the development style in a way that developement schedules can remain independent is called distributed development. Its essential piece is a modularity and BackwardCompatibility. When you have these, you have the freedom to stick with older version of a software and at any suitable time migrate to newer one.