Users are getting increasingly more demanding about the services and functionality that (online) organizations have to offer. This is especially true for organizations where users arrange most or all of their services online. Some examples are Internet banking, online insurance and travel agencies.
Users expect this functionality:
- To be easy to use
- That new features are added continuously and provide real value
- Will work on their mobile devices like phones and tablets
- Is tailored to their personal needs
This functionality is most of the time designed within the company itself and eventually, when developed and tested, deployed in production. In this model, the company expects that the functionality will meet the needs of most or all users. I believe this model is not sufficient anymore in the ever-increasing expectations of those users.
One of the models to cope with this is to let users/developers themselves build the functionality they need. We also see a lot of this on the Internet where users build their own application/gadgets by using provided API’s. A prime example of this is of course Facebook.
What if we extend this model to the enterprise? What if, for example, Internet Banking companies expose (some) of their functionality through API’s and let users develop functionality they really need? What kind of applications would arise out of this?
I do not think this is a question of how but when. As some or most of you already know, Google owns a banking license. What does it mean for regular banks if Google or perhaps Facebook adopts such kind of platform for banking and/or insurance products? I think a whole new generation of users will make the transition to those companies. This indeed may have a large impact on the customer base of traditional organizations.
Before organizations are ready to make such transitions, a large number of questions must be addressed:
- How do we secure access to API’s and data?
- Which data do we want to expose?
- Why would developers want to build applications for us? How do we compensate developers who are building great applications for us?
- What about legal issues?
- What technology do we use?
- How do we change the mindset of our own people?
And the most important question: when are organizations ready to adopt this model and radically change the way applications are delivered to end-users? Of course this change does not have to be a big bang but can and should be made incrementally.
From a technology point of view, one of the ways to implement such eco-system is by adopting the Open Social specification. The Open Social specification defines:
- A social data model, which provides a standard representation of people their relationships and activities also known as a connected graph of people.
- A standard to develop gadgets that encapsulate reusable application logic.
As an example, iGoogle is one of the platforms based on Open Social (in fact, Google donated their iGadgets container to the community which is Apache Shindig). IBM and Atlassian are also incorporating Open Social technology in their own products.
Since users become more and more demanding about the services and functionality that (online) organizations offer, organizations need to find other ways to provide that functionality instead of the traditional specification-build-deploy cycle. A possible way to do this is to let users themselves build the functionality they need. Open Social could be the technological enabler to facilitate this.
However, the ultimate question remains: if and when are organizations ready to adopt a radical new strategy to provide functionality to its end-users.
What is your opinion about this?