Focus where it belongs
Take, for example, camera apps; it's a category so crowded that a dollar is pretty much the high end of what developers can hope to charge for the fruits of their toils.
The problem is that even if a particular app has some unique hook, like, say, being able to capture numerous pictures in rapid sequence, or taking panoramic pictures, it still needs to provide all the other functionality that users have come to expect from apps of its ilk — filtering, cropping and editing, red-eye reduction, and so forth.
While iOS itself may provide some of these features, the developers have little choice but to either invest their time on code that isn't really central to the app they've built, or ignore the issue altogether and hope that users will somehow manage to figure out a way to build their own manual workflow that approximates the same level of functionality.
The end result is something that benefits no one: Developers waste time on features that others have already implemented, and users end up with sub-par apps that all implement the same functionality, but with inconsistent user interfaces and varying degrees of quality. Not to mention workflows that create multiple inconsistent copies of the same documents as they're shuffled around from app to app.
On the other hand, if apps were able to communicate with each other, the photo app in our example could focus on providing the best panoramic stitching experience, and delegate the remaining functionality to other apps, which could manipulate the original file through their own interface and then return it to the original app, giving users the best of both worlds.
From A to B to C
The presence of some kind of inter-app communication mechanism would also allow users to tie together the services offered by multiple apps into cohesive sets of steps that can be executed without user intervention, perhaps via apps that, like Automator on OS X, facilitate the creation of complex workflows with little or no technical knowledge.
I am not necessarily suggesting that Apple should bring Automator to iOS, but, if you consider how useful an app like Launch Center Pro can be — even with all the limitations currently imposed on it by iOS's sandboxing model — it's not hard to imagine what better inter-app communication could mean for everyone, regardless of how savvy they are in the ways of computing. Users could create complex workflows for everything from sending e-mails to setting reminders, using the kind of simple interface that we've come to expect from our mobile devices.
Sign up for Computerworld eNewsletters.