- There's a lot of breadth and a lot of depth, and as a result it's understandably very hard for anyone on the outside to understand where what they're looking at fits in the big picture.
Within Google, we're usually working on 2 or 3 version at the same time, targeting our flagship devices. When we ship to consumers, we take the source code for that version, remove the proprietary hardware files, remove the Google code, and release that source code to AOSP. That means that Nexus devices aren't technically based on AOSP, but rather than AOSP is based on Nexus devices.
In AOSP, we have source code (of course), but we also have processes (primarily defining how Google releases code and how external contributions are handled) and people running the whole thing (a few engineers dedicated 100% to running the AOSP process, but also a wide range of other Android people from Google).
From there, the source code can be used by different people, to be modified in different way. Specifically, it's possible to target actual devices, in layers:
-it's possible to run the code unmodified by just adding hardware-specific files. That's what we support in AOSP for Nexus 4 and Nexus 7, and we're seeing manufacturers start to do similar things.
-it's then possible to optimize the code for specific devices without changing the functionality.
-it's then possible to add device-specific functionality, to handle the specific peripherals of individual devices, without changing the overall look-and-feel of the system.
-it's then possible to modify the look-and-feel of the system, while still maintaining compatibility with the official programming interfaces defined by Google.
-finally, it's possible to add extra applications on top of that, which might be implemented in a way that runs on any compatible Android device, or might be tied to specific customizations done at any of the previous steps.
Because there are all those steps involved, within Google, within the AOSP project itself, and then in all the situations where the source code is used by other people, the only way to avoid ambiguity when talking about any of those steps is to describe it in a few sentences, as a single word won't be accurate enough.