Monday, January 21, 2008

Sitecore as a Content Aggregation Engine

Customers often look to Sitecore as an orchestration engine for content aggregation, approval and publishing. Consider the following scenario: A web-based publisher provides information on its site from various sources. News stories are provided from a news bureau; local weather is provided by a web service; selected content is provided from external RSS feeds; some content is authored in-house; finally, product information is provided by an e-commerce engine.

All of this content needs to be presented on the site. Third-party authored content needs to be reviewed and approved prior to publication. The rollout of this content needs to be organized and coordinated either through administrative action or an automated process.

Sitecore dramatically increases developer productivity and business-user control in implementing this kind of a solution. It all starts with careful requirements. A high-level outline for understanding your requirements consists of content discovery, analysis and business rule definition. (An experienced Sitecore partner can help with this process greatly.)

Content discovery refers to identifying all relevant data sources and their attributes such as:

  • Data source – Is the content in a database, an RSS feed a web service? Is it managed in-house or at a 3rd party?
  • Updates – How frequently is the content updated? How are updates triggered? How are updates communicated?
  • Owner – Who is the business owner of the content? Who is the content copyright owner?
  • Administration – How is the content currently administered? Who handles the administration?

The content discovery phase is simply about getting clear on what content needs to flow through Sitecore as part of the orchestration process.

Content analysis involves identifying the existing business rules for each content source and determining what efficiencies can be engineered through content orchestration and automation. At this stage of the process, consider the following:



  • How frequently are content updates received from external sources?
  • Does content need to be approved before appearing on the site?
  • How frequently does content need to be updated on the site?
  • Are there dependencies between content from different sources?

Developing orchestration rules may be the most complicated part of the process, as it involves detailed inputs from both the technical team and business content owners. Apparently minor details or business requirements may shift the entire direction of the implementation or surface opportunities to achieve unforeseen efficiencies.

Defining business rules involves specifying – for each data source – rules for processing, approval and publishing. Processing rules describe how the content should flow through the CMS – Should the content be imported wholesale into the CMS? If so, on what schedule? How should the content be structured in the CMS? Or should only metadata be registered in the CMS, keeping the original content repository as the true content source? How should content duplication and versioning be handled?

Approval rules describe how content should be handled after being registered with Sitecore, but before being published. Should content be reviewed editorially? If so, who are the approvers? Do they need to be notified of pending content? Have content dependencies been identified? How should these dependencies be handled? How should conflicting dependency rules be resolved?

Publishing rules describe how content should be released to the public-facing website. Should content be released on a scheduled basis? Should it be driven by editorial processes? Will it be driven by dependencies on 3rd-party publishing schedules?

With these requirements in hand, Sitecore is ready to step up to the plate. An experienced Sitecore partner will be able to implement a solution that brings automation and ease-of-use to this otherwise complicated business scenario. Sitecore makes content import, metadata registration, workflow review and publishing straightforward tasks. Without question, these will require custom development based on unique business requirements; but Sitecore’s out-of-the-box features and built-in extensibility will mean implementation and deployment times measured in weeks rather than months.

The result is an orchestration system that puts power, flexibility and configurability in the hands of business content owners, marketers and product managers.

Thursday, January 3, 2008

A/B Testing with Sitecore

With A/B testing, marketers optimize their conversion metrics by presenting different marketing messages and testing their results. Wikipedia defines A/B testing as:

A/B testing is a method of advertising testing by which a
baseline control sample is compared to a variety of single-variable test samples. A classic direct mail tactic, this method has been recently adopted within the interactive space to test tactics such as banner ads, emails and landing pages.

Employers of this A/B testing method will distribute multiple samples of a test, including the control, to see which single variable is most effective in increasing a response rate or other desired outcome.

Let's consider the components of A/B testing as they play out in Sitecore. First, we need to define the test. Typically, web tests will consist of at least one of several attributes:

1) Text
2) Graphics
3) Page layout

A text-based test could be testing different marketing messages; a graphical change could include different ad copy, varied product images, etc.; a layout change could place different items on different locations on the page (to determine, for example, whether placement in the center of the page increases sales).

For our purposes, imagine a promotion wherein two different offers are being presented to a customer: 10% off or 20% off. The marketing goal is to determine the price sensitivity of site visitors. Marketers can use different text or graphics to present the offers and then test the effectiveness of each.

There are many approaches to defining tests in Sitecore but the primary driver behind test definition should be usability for marketing authors. You might explore Sitecore's Wizard Framework (requires SDN access) to create a simple wizard for test generation. A simpler approach could be to use content markers to allow authors to create a new test. Consider, for example, the following implementation:



Test variations can be stored as children of a primary content item or can be stored elsewhere in the content tree. Regardless of where the are stored, the implementation should result in a usable experience for test authors.

In addition to determining presentation and content elements to vary with each test, each test will require a duration and a distribution. In other words, how long should the test run for and what percentage of users should get each test (or should the distribution be completely random?). Implementions of distribution rules will vary based on the logic of the rules themselves: Will tests be implemented on separate servers, with distributions handled by the load balancer? Will tests be driven by presentation logic? Will a 3rd-party test engine be integrated with the system?

To evaluate the results of the test you will need to define a conversion event. The conversion will typically involve clicking on a link or a button in a form. You will need to think carefully about what a conversion means for a particular page. Does the conversion occur on this page? Or does it occur on a subsequent page (such as completing a transaction vs. simply adding an item to your shopping cart).

To view conversion metrics, business users can view reports either within the Sitecore Desktop or in a reports module viewable only in WebEdit mode. Conversion metrics should be both clear and actionable. The relevance of conversion metrics will be directly related to the considerations accounted for in the test definition. For help with defining tests, consider working with an experienced Sitecore partner, integrating with a 3rd-party rules engine or reading up on best practices in A/B testing.

Marketing and Publishing with Sitecore CMS

Welcome to my blog on marketing and publising solutions for web content management! This blog focuses on innovative solutions that have been implemented using the Sitecore content management system (CMS).

You may already be familiar with how Sitecore or other CMS's can be used to accomplish basic content editing. Here, we will be keeping an eye out for innovative implementations that help marketers and content publishers broaden their reach and enhance their effectiveness.

If you are not familiar with web content management (WCM), here is a quick definition: Web Content Management systems allow non-technical users to manage content on intranets, extranets and public-facing websites. "Manage content" can mean anything from content authoring and editing, taxonomy management and metadata tagging to controlling security rights, managing workflow processes and publishing. At the end of the day, WCM puts the control of websites in the hands of marketing deparments. Technical resources are often required to maintain the WCM framework, but day-to-day authoring and publishing are entirely controlled by business users.

This blog uses WCM as a starting point for examining innovative implementations that produce unique and effective business results.