Smarter ideas worth writing about.

Planning Advice for Your Sitecore CMS Project

Your company has decided to create a new website for your customers or partners using the Sitecore Content Management System (CMS) and they’ve put you in charge. Great! Now, where do you start?

When preparing to implement any new software based project, whether that involves custom development or utilization of a new platform, it’s always best practice to discuss and plan all features and functionality that will best serve your users before ever coding that first line. Some things to think about are: usability, site data/content, ways to increase engagement, along with many others areas that drive the users experience within your product. Ensuring these basic areas of your project have been addressed not only help the project run smoothly but can save you money! It’s a general rule of thumb that any changes that can be caught and adjusted before they have hit developers’ keyboards are ten times easier (and cheaper) to fix.

Sitecore is an especially interesting product to work with because it truly is a blank canvas that allows the business to “paint” the project vision onto it. This makes it especially important to have a unified vision for your project to keep everyone on track and committed to the same goals.

Many projects fail from an unstable foundation that didn’t keep the end user’s needs in mind. Here is a short list of some of the more common gotcha’s that occur:

  • Project vision and goals were not well thought out or implemented
  • Requirements not detailed enough or addressed in functionality
  • Business requirements or assumed user needs override actual needs of your customers
  • Initial assumptions / requirements not reviewed or defined in enough detail
  • Effort and resources were not well calculated (designers, developers, business users)
  • Business environment or needs changed, causing scope or requirement changes
  • Functionality that support users or business requirements was completely missed

No matter how small or large the project, detailed project planning and design can only benefit the project team by keeping them on track and moving towards success. To ensure that the project vision is implemented well and requirement hiccups are kept to a minimum, a project should strive to follow a few “core tenets” during planning, and throughout the project. These tasks will help keep the business focused on delivering the right solution always with the end user in mind.

  • Identify key stakeholders and business partners
  • Define the vision/goals for the project
  • Define achievable success factors
  • Create personas/user stories
  • Know the data needed, and how it will be used
  • Create a navigation plan for your users with an intuitive Information Architecture
  • Define a Minimum Viable Product (MVP), required functionality and features for initial release
  • Build a realistic implementation plan

Cardinal likes to address these tenets thought a project discovery phase run by those in our User Experience practice. Through workshops with key stakeholders and business partners we work to elicit requirements and end the project phase with a fully defined MVP with requirements to pass off to the Sitecore development team. While a dedicated User Experience team is always a plus, the most important thing to keep in mind is when you’re going through these tenets is to tackle them with a user experience mindset. The definition of user experience (UX), as outlined by the International Organization for Standardization, is a “person’s perceptions and responses resulting from the use of a product, system or service.” This means that akin to interacting with another person, the user will form an opinion of their experience with your application, whether good or bad, depending on what they expect from it. That's why it’s so important to learn what the user's needs truly are to ensure they have the best experience in your product, and share that positive experience with others.

We’ll take a short deep dive into each of the above tenets to help you support your business stakeholders with a UX mindset and help to elicit all requirements effectively.

Identify key stakeholders and business partners

While we are always working towards meeting the end user's needs, we should recognize that the business has a stake in the success of the project and will be the owners of it going forward. Both groups are important in the implementation process to ensure buy-in from all areas of the business.

Stakeholders are the people and/or groups that stand to be directly affected by the new project, either positively or negatively. Something to note is that stakeholders should also include a small subset of users.

Business partners are those in the organization that will need to provide resources, or be notified of upcoming milestones or requests.

Quick tips to remember:

  • Identify all parts of the business that need to be involved, and the key players of those areas
    • Business areas affected or those that need to be involved in the process should be brought in if they have decisions to make, or even to just be part of the process
  • Ensure decisions are made in a timely manner and communications sent as needed
  • Ensure stakeholder availability throughout the project to help answer any outstanding questions the project team may have

Define the vision/goals for the project

This tenet is focused on high level details to be accomplished by your project, not just the information or technology. A good way to get started is to list out what the goals and vision of your company are and then see how this project can best service those goals. For example, a goal of your business could be transparency with your customers. In order to supplement that business goal with your new Sitecore site, your project goal is to provide company status reports to users through the interface. Don’t focus too heavily on the “How” in these discussions (what technology, what programming language), focus more on the “What” (clean interface, ability to contact help desk, etc.).

Quick tips to remember:

  • Understand the goals and needs of the users being served
  • Ensure project goals line up to business and company goals 
  • Don't let assumed user needs override the actual needs of your customers 

Define achievable success factors

This step is so important for an implementation because when a team takes the time to create achievable and measurable critical success factors (CSF’s), since every decision made during the execution of the project is should be validated against the CSF’s. Every scope change, functionality challenge, or new request should be prioritized against the success factors to see if it falls into the MVP. If not, then it should be moved to down into the backlog.

It’s also a good idea to have some success factors that are truly measurable such as metrics or page visits. An example of a measurable success factor could be ‘Reduce help desk tickets by 15%’, which you can measure by ticket counts. Many of these metrics can be implemented in a Sitecore project using goal tracking or persona management.

Quick tips to remember:

  • Ensure Persona's needs and metrics will be satisfied
  • Ensure that the MVP list of requirements is met
  • Any other markers such as search capabilities, as well as information delivery or request counts are covered 

Create personas/user stories

User stories describe something(s) that a persona (a user type, ex. administrator) wants to accomplish by using the site. A user story is a very short idea, usually about one sentence long. Because these stories are so short and specific, it may take several of them to cover possible use cases. Documenting these stories does more than remind us of functionality, it keeps the vision tied to the user throughout the process, ensuring the site caters the overall user experience.

Ex: As an administrator level user, I should be able to login by entering my username and password. 

Quick tips to remember:

  • Derive personas from the user types that are needed for the project, and how the data that applies to them will be used
  • Use the personas to document needs, goals, and any metrics for each persona
  • Make sure the user story only covers one idea or ‘task’  

Know the data needed, and how it will be used

Many projects struggle during this portion of planning as the business knows that content exists but they may be unsure where it lives, how up to date it is, or even if it will be 'right' for the new site. Migrating content from an existing site to a new one may also cause extra work as the business churns on reviewing content to determine if it's right for the users.

Until now the tenants have been pretty independent of Sitecore, or any other Content Management System (CMS), being used in the project. Ensure for this tenet that there is someone on the team who has understanding of how data needs to be stored and created in Sitecore. Best practices for Sitecore is to template out different types of data to try and keep content management as streamlined and uniformed as possible. As noted above about how much late development changes cost, changes in Sitecore data templates after they’ve been built can cause a ripple of changes throughout the platform.

Quick tips to remember:

  • What information needs to be stored to support the project goals?
  • Is the data readily available, or does it need to be created/modified?
  • Does the information lend itself to being consistently defined as a template (e.g. title, description, etc.), or require one-off templates for each core piece?  

Create a navigation vision for your users with an intuitive Information Architecture

How your users move through a Sitecore site will either enhance or detract from their overall experience. It's recommended to know the content needed on the site first, and then begin work to group similar topics together. Grouping the topics helps to look for redundancies in the data, as well as to help derive a navigation structure that will make the most sense for the end user. Remember to think about what makes the most sense for navigating about, not just the business or perceived end user desire.

Quick tips to remember:

  • Group information or topics together so movement is logical
  • Make sure it's easy to move around and makes sense o It’s a good idea to run possible navigation structures through usability tests with end users to ensure that what makes sense to the business also makes sense to the end user
  • It is consistently implemented across the site 

Create a Minimum Viable Product (MVP)

A minimum viable product is just that, the minimum amount of features and functions from the requirements needed to deliver a usable Sitecore site with content. This is best done by listing all the features requested, having the business prioritize them, then working through each to determine if it can be done in the current timeline or if it needs to be put in the backlog for the next version or phase. This will allow the project to stay on track to delivering a working Sitecore instance for the end user, with the promise of more enhanced functionality in the future.

Quick tips to remember

  • Use requirements to create high-level functionality needs, then drill down to fill out information and design needs to support
  • Make sure features that are part of the MVP align to project or business goals set
  • Create interaction maps to ensure no functionality is missed

Build a realistic implementation plan to the MVP goals

The final tenet here is to create a plan, broken down into manageable chunks of time, that can deliver the core MVP functionality needed to meet the vision in the timeline. Since project timeline is usually the biggest driver, functionality that can be implemented within this limitation is core to delivering on time. Be honest with how long it will take to develop and deploy a feature or function, and include any of the accompanying tasks needed such as documentation and QA / user testing.

Quick tips to remember:

  • Include infrastructure setup times
  • Detail out time to implement MVP requirements
  • Don't forget to add time for testing and documentation!

So now you’re armed with the knowledge to make your Sitecore CMS project a success. Although there's no one single item or strategy to ensure a successful project, incorporating these tenets into your planning and design of your site will keep everyone focused on the end goal. At the end of the day, it's not about that you marked all the planning checkboxes or accounted for every requirement, but that you delivered a fully functional easy to use Sitecore MVP to your end users.

This post was written by Craig Pilkenton, with contributions from Karissa Martindale.



About The Author

Business Productivity Managing Consultant
Craig is a Managing Consultant for Cardinal Solutions Charlotte office.  He leads client initiatives on Microsoft platforms to help solve business problems by envisioning and architecting Office 365, SharePoint, .NET, and JavaScript/jQuery solutions. Craig has worked with Microsoft development and server technology's for the last 15 years, including integrating SharePoint since it was a beta product.