When you are developing a large Software project, be it an Operating System or a major Virtualization Release, there are a large number of components that make up the finished product. Despite the best planning efforts from the Program managers, and the best development and test efforts from the Dev teams, release dates sometimes slip. As it happened when we took developers off of Windows Vista to work on Windows XP Service Pack (SP) 2, Apple is taking folks off Leopard to work on the iPhone.
I strongly feel that product releases should be based upon hitting a quality bar, and not by hitting an arbitrary ship date. So... Apple, we feel your pain ;)
iPhone contains the most sophisticated software ever shipped on a mobile device, and finishing it on time has not come without a price -- we had to borrow some key software engineering and QA resources from our Mac OS® X team, and as a result we will not be able to release Leopard at our Worldwide Developers Conference in early June as planned. While Leopard's features will be complete by then, we cannot deliver the quality release that we and our customers expect from us. We now plan to show our developers a near final version of Leopard at the conference, give them a beta copy to take home so they can do their final testing, and ship Leopard in October.
More from Mary Jo here: http://blogs.zdnet.com/microsoft/?p=388