Big Bangs, evolution, and feature counts
The biggst bang changes we're doing have been recast as evolutionary: put in a new infrastructure and start converting pieces over piecemeal to use the new infrastructure -- requires that the new and old can coexist. In the past we've sometimes fallen down on this one by taking several versions to finish the last 10%. So we end up with 90% new stuff, 10% old, and 2 infrastructures for a while.
The biggest items that can't coexist with the old just have to be started early in the cycle in a branch, and then the people doing them suffer through one or more extremely painful efforts to merge them into the main source. In the worst (thankfully very rare) cases this is accompanied by "nobody can change the main source this week while the giant "x" integration gets done". The Metrowerks->XCode conversion was particularly painful in this way, even though we kept the app building in both environments for a short while.
Re: Sean's talk at Metrowerks, they gave up that time shortly thereafter and didn't make another serious effort at incremental development for at least another 5 years.
#features. Every version we've shipped has gotten a certain number of complaints that the feature set was insufficient. "The last version had X and Y -- this version doesn't have anything that good". Based on the feedback from press and reviewers (who often have a lot of in-depth knowledge and have been using Photoshop for several versions), and our first-ever public beta (of several hundred thousand users), I think the amount of new feratures in this version is well on par with previous versions.
One problem with a program that's got this diverse an audience is that the audience for the new features is split. We try to bias things toward the current growth areas and things that are broadly useful, and make sure that each key segment gets at least some love.
There's a lot of other stuff in CS3, but I think the biggies (and certainly ones that took up a lot of time and energy) are: smart (non-destructive) filters, flexible B&W conversion, much better image alignment and blending (used for panorama stitching and merge to hdr, and now available to align or blend any layers), new Curves dialog, the quick selection tool, refine edges dialog (to refine any selection), Vanishing Point improvements (like non-perpendicular planes and pasting and dragging things around corners), more adjustments on HDR images, printing improvements, palette interface improvements in common with the rest of the suite, support for output for mobile devices, and a ton of new features in Camera Raw. And of course I'm not counting stuff that's only in the extended version. Oh yeah -- brightness / contrast actually does something useful to most people instead of just shoving your histogram off one side or the other.
It feels like a lot to us, anyway.