From Raw Template Development to a Compelling User Experience Studio
Introduction :
According to Gartner analyst Gene Phifer, “The user experience platform (UXP) will allow enterprise developers and end-users to create cross-platform user interfaces via a single set of integrated technologies, tying together disparate tools for the creation of websites, portals, mashups, RIA and mobile apps. The UXP brings together the technologies to support critical UX development methodologies like user-centered design, usability testing and analytics.”
Jim Murphy adds, “Today companies want web applications and services to be available to users in any situation and on any device. User interaction, rich media, and social concepts are no longer options, and mobility is no longer an afterthought. These trends are driving the next iteration of user interfaces which Gartner calls user experience platforms (UXP). UXP derive from portal frameworks and among the critical factors are context aware computing, rich internet applications, and enterprise mashups. UXP could provide the bridge that finally aligns the efforts and interests of IT, the business and the end-user.”
Instead of the term “user experience platform,” I would rather speak about a “user experience studio” that could foster the rapid development and assembly of composite content applications with context and contributor in mind (do you remember the 4Cs Paradigm?).
Developers already have access to a plethora of Integrated Development Environments (IDEs) to speed development, foster collaborative work, unit test code, fine-tune performance, and share reusable modules and templates with their peers. While there is still room to improve and enhance such tools, the real challenge today is to better integrate practitioners back into the loop, especially when promoting more rapid and agile style of development for 2.0 sites or new composite content applications.
Most existing content and portal platforms are focused on the content production and delivery tier, not on the development, testing and pre-production one. Of course, some offer enhanced, web based development environments with an embedded, tightly-coupled Eclipse-inspired IDE while some others offer a Dreamweaver-oriented template builder. But few, if any, are prepackaged and pre-integrated with user-centered design and usability testing tools. This situation certainly leads to the failure of a large percentage of CMS and portal projects, since there are no bridges among internal developers, system integrators, web agencies, business lines, and the final end-users.
This situation will only get worse with the current trend to let business lines and practitioners create on their own do-it-yourself content-rich solutions. Giving more power to advanced end-users can result in uncontrolled chaos of thousands of small motley sites and spaces, sometimes redundant, often badly tested, mostly unsupported, and certainly hard to maintain. There is a urgent need to provide tools to enforce governance guidelines, and track, inventory, classify, authorize, and monitor the composites, mashups and applications end-users are producing.
Will the user experience studio be the set of tools, which will bring together technologies and people?
What is a successful User Experience Studio?
I) A Composite Content Integrated Development Environment (IDE)
Developers are used to work with IDEs to improve their productivity. As content platforms mature, the differences between a SCM and a CMS tend to diminish. At the end of the day, lines of code, template elements, or XML-based configurations are just another form of content. This naturally favors the native bundling of an IDE on top of your favorite Content Server.
With the ever-growing complexity and increasing functional scope of Composite Content Platforms, there is an increasing need to offer better-integrated development tools to ease the life of developers and integrators. Dynamically updating content schemas, transforming content types, ensuring the consistency of stored data, editing properties, or optimizing content models are tasks you should now be able to do from within your CMS.
a) A Composite Content Builder for Techies
CMS should then better support the software development process by delivering the tools required to easily create, develop, store, version, deploy and share core building blocks. "Content Composites" (e.g. content types with their skins) or "Application Composites" (e.g. gadgets or portlets) will provide these building blocks needed to rapidly assemble and compose dynamic sites and composite content applications.
Composites are similar to modules and can be used either to define new content items, pre-package some business logic or integrate together various UI elements. Composites bundles could for example include:
- Content definitions
- Classes (jar)
- Resources / UI elements
- Rules
- Workflow schemas
- Configurations
Composites aim to be reusable from project to project to facilitate code maintenance, upgrades, and teamwork.
New capabilities offered by more and more feature-rich underlying Composite Content Platforms open the way to various types of composites such as:
-
Data Composites:
Heavily structured SQL, XML, or RDF data
-
Content Composites:
Local or federated low structured content types such as Rich Texts, WebClipplet, or Emailets -
Social Composites:
Content bridges towards social networks or activity streams -
Application Composites:
Case management/BPM-driven modules, dedicated business portlets, OpenSocial gadgets, or any other form of custom-made extensions
Composite Content IDEs should then provide an assembly of different tools including:
- A content repository explorer
- A content definition builder
- A workflow designer
- A form builder
- Some navigation designers
-
A CSS editor
- Etc.
Content-based IDEs will reach the next level of composition when multiple services could be easily stitched together with the processes and content needed to rapidly assemble and compose dynamic sites and content-rich applications.
b) A Mashup Builder for Practitioners
This requirement parallels the need to provide to non-technical end-users the tools to create easily and rapidly on their own, the basic composites, gadgets and mashups they want by reusing existing building blocks, or by providing user-friendly wizards. Most of the time developers and their tools are focused on complex, enterprise-grade applications. Enterprise software editors tend to neglect the advanced users’ needs to rapidly develop more simple composites. Mashing up, repurposing, piping, transforming linked data, unstructured content, or business services must become more straightforward. This second requirement is where a CMS could create significant benefits which are not possible within more traditional IDE.
But despite several attempts such as Oracle Omniportlet, Yahoo Pipe, or Jackbe Presto Wire, mashing up technologies have not lived up to expectations. For enterprise use, such tools have been confined to some specialized industries, mainly biotech and banking. But with the advent of web 2.0 interfaces coupled to native integration within a User Experience Studio should give them a second chance to succeed.
Figure 1: Mashup creation with Yahoo Pipes
We should therefore see the rise of advanced builders and wizards focused on reusing and exploiting simple linked data, easing the creation of queries across federated content repositories, leveraging public and private social networks, and globally fostering the widespread creation of mashups.
Will the future of composite content IDE be about the opening of such tools for non- technical end-users?
II) A compelling User Experience Designer
Rapidly composing rich internet applications and 2.0 sites from existing building blocks (cf: the aforementioned composites and mashups builders) is the next challenge.
Every company needs to create complex sites and composite content applications, faster and faster. IT departments are usually overwhelmed with plethora of user requirements they can not satisfy which create a huge feeling of frustration. This calls for a new generation of tools to help advanced users create the content-rich applications they need through the rapid assembly of dozens of different building blocks with minimum interventions from the IT department. These no-code solutions can encompass a variety of scenarios, from collaborative sites and web publishing to data integration and information dashboards. Built-in native rapid prototyping capabilities should improve collaboration among techies and practitioners.
a) Rapid RIA Composer
Web-based, visual, drag and drop tools will help turn any developer into an E2.0 expert with minimal training.
A RIA Composer is a visual, drag-and-drop designer for building web sites by easily leveraging available composites. It features graphical overlays that facilitate the building of your site's pages, navigation structure, templates, and presentation layout. It provides ready-made UI components, including buttons, form fields, shapes, and dynamic elements that you can edit and format. You should also be able to create your custom widget libraries of icons, design patterns or branded elements. Web components finally snap into your site's pages, through simple drag-and-drop interactions.
Figure 2: Jahia Composite Content Studio
RIA Composers will become the iWeb of the enterprise web, where you can create standard, open, mobile, content-rich applications, boosting developers and end-users productivity without compromising flexibility. It should help eliminate the complexity of developing common 2.0 sites and applications.
b) Collaborative User-Centered Designer
A major benefit from tightly coupling a visual RIA Composer to the back-end composite content platform is that it can favor the emergence of new forms of user-centered design tools and utilities to foster a more collaborative experience among all stakeholders. As noted by Gartner, user-centered design is often an afterthought, at best. Most of the web initiatives are still painfully developed according to a “build once, never improve” paradigm.
CMS tends to focus on the production/delivery tier, or on providing tools for core developers. This results in a functional gap between developers and practitioners during a Content Management project. The lack of a user-centered feedback loop inhibits successful long-term interaction. In my opinions, this is one of the reason why so many new CMS implementations fail.
Figure 3: User Centered Design Steps by David Travis
Of course, you can rely on third party tools that are not tightly integrated with your composite content platform, such as some Sketchy Wireframes Utilities, collaborative-oriented feedback solutions such as Notable or even a mockup application for your iPad. However, wireframed modules, raw components, user annotations, are all composites already present in your CMS. So why shouldn’t a CMS eat its own dog food, using such existing modules to connect the dots and to natively provide a built-in, collaborative user-centered experience studio when creating new projects? Moreover, a tighter integration with the underlying content platform might not only ease the rapid assembly of existing content blocks but also favor the rapid creation of working prototyping.
Figure 4: Improving user feedbacks with Notable.
This is what I call a “Collaborative User Experience Designer,” which would rapidly let the different stakeholders create mockups, wireframes, prototypes, and specifications for content-rich sites and applications, while getting continuous user feedback, the whole from within their CMS. A project could then get the benefits of prototyping without the hassle of dealing with different tools and technologies.
III) The Enterprise App Store
Finally the multiplication of composites, mashups, wireframed prototypes, and rapidly assembled content-rich applications will require proper classification. It should also respect your enterprise governance best practices. An organization probably does not want all its employees to create mashups, composites, and assist to a proliferation of various web spaces in a chaotic and uncontrolled manner. Your IT department, even if it operates in a self-service mode, probably wants to keep control on IT costs, project redundancy, scalability concerns, and maintainability issues. IT Governance should then assure management that IT investments generate business value, and mitigates the risks associated with IT projects.
Dion Hinchcliffe recently wrote, “Current trends involving the mass personalization of services and the consumeration of enterprise IT have come together and resulted in ready-to-use catalogs of IT solutions that are much easier to discover and consume today than from traditional channels.”
Building and maintaining this IT Catalog of Solutions is the main goal of such an Enterprise App Store. There is then a clear need to provide tools to better define rules, keep control, and restrict usage on all these solutions and organizations need a repository from which to deploy, classify, annotate, and discover all these created composites, mashups, sites and applications.

As illustrated by Dion Hinchliffe, we should also assist to a growing interoperability between public and private app stores. Most content application servers start to better support standards such as OpenSocial, and are then indirectly compliant and open to the hundreds of micro-applications already available for example on the Google Gadget Directory.
The development of Enterprise App Store should also gain momentum in some verticals, and especially in the Public Administration industry, which is currently pushing for the creation of mashup applications based on freely-available Open Data.
Last but not least, we should also see a convergence between Development Forges and Enterprise App Stores. Not all mashups, composites, sites or applications are equal and share the same level of stability. Managing all the different enterprise environments, from development, testing, and pre-prod to production, will also be one of the core mission of such Enterprise App Stores.
Summary
The rise of Composite Content Platforms, together with the multiplication of smaller do-it-yourself sites and applications, should favor the emergence and native integration within existing CMS of:
- An integrated Composite Content IDE
- A compelling User Experience Designer
- A built-in Enterprise App Store
This trilogy should form the basic ingredient required to foster the rapid assembly of content-rich applications through an integrated user experience studio.
Next Episode
In the next episode I will go into more detail about:
- Examples of content-rich applications, which can be developed using a content composite platform and a User Experience Studio.
- Tools that let you manage your content assets across all your sites and applications.



