Multi-channel Feature Parity is also Important
You have to provide feature parity across all the channels you make avialable to the Customer or risk falling short of their expectations. To make it even harder, they fully expect the UX to be "native" to the device/OS that they happen to be using at the time. So that means a lowest-common-denominator HTML5 application won't cut it. They expect all the features of your website (at least Systems of Engagement) to be available on their iPhone, but it better look like, and act like an iPhone app, not some generic HTML5 code that they saw on the website that wasn't designed for touch. When they jump on their Andriod Tablet, it better take advantage of the expanded screen real estate and make the experience native to that device and OS, and so on, and so forth.
These user expectations are continuing to evolve and it increases the challenge for an enterprise intent on providing a great customer expertience. If you use best-of-breed develoment tools for each platform, you must make a huge investment in skills and tools and lose your ability to maintain feature parity due to the complexity of coordinating release schedules. If you outsource some, or all of the platform specific development work you also have a really difficult time maintaining feature parity.
It is going to require a new kind of platform to make it possible to create, deploy, and manage these kinds of multi-channel Systems of Engagement rapidly enough to allow enterprises to take advantage of the opportunities they find in the marketplace and win against their competition.