One thing that I always run into during project management and program development is that we tend to think short term, about current projected needs and usage, and fail to prepare for popularity. Brough Turner has a very lengthy (and technical) blog post about the current service issues with AT&T's wireless network and devices.
Beyond the technical, this is failure in planning. One of the key points that I saw in the post was that the buffering was set for zero packet loss (superior data integrity). In choosing that AT&T inadvertently created an over demand for their network and in turn delivered a lousy user experience. In trying to maximize data transfer they overloaded their circuits.
My understanding is that if there were fewer people o nthe network cuncurrently that it would function at zero packet loss, but the iPhuone sold so well that the popularity of the device is its downfall (and thier mobile 3G laptop antenna).