Sitecore ROI: How automation can lower the cost of development - Part 2

VP, Technology and Solution Delivery
Valtech

May 06, 2016

In the continuation of our series we now explore opportunities to make the development staff more productive.

This encompasses Sitecore (C#) developers and front-end developers working with HTML/CSS/JavaScript. Building on the foundations of automated environment setup, continuous integration, integration tests we now turn our attention to C#/Sitecore developer productivity.

Team Development for Sitecore (TDS) and code generation

TDS includes many features, but right now we are going to focus on code generation. Almost any Sitecore solution can benefit from code generation to build ORM type classes that can represent your data template structure. Why write code you do not have to.

As your code generation grows you may want to adjust what causes a code generation to run. In large projects this can cause the IDE to pause for a period of time while code generates. In the TDS options (Tools -> Options -> TDS Options) options you can configuration code generation to run automatically at project load and when changes are detected. I personally run with both settings to false to avoid unneeded code generation, but you can decide what is appropriate for your team.

001.png

Time required to setup: 1 days would be a typical starting point including code generation template development, can be even faster if the examples fit your needs.

Worth investing when: Always.

Accelerated development

Code generation helps you avoid routing coding. To take this one step further, most websites share a common set of needs and features. Instead of building all of these features from scratch you can leverage a Sitecore development accelerator like Keystone. The accelerator provides the following features and tools you can simply reuse:

  • Library of templates and components that you can mix and match for
  • A styling engine that allows end users to change the look of components
  • Built in workflow to support page level publishing
  • SEO tools for redirects, meta data, social sharing
  • Enhanced tools for content sharing
  • Better support for multiple sites and multiple languages/regions

Time required to setup: Keystone package installs in a Sitecore environment in minutes (just like a Sitecore module).

Worth investing when: Starting a new site or entering a revamp project of an existing site.

Accelerated custom component development

Keystone includes a vast library of 120+ components; however there will be unique needs that require a customization of an existing component or possible creation of a new component. To speed this process, Keystone includes a component provisioning wizard that allows a developer to quickly create a new component and automates the 40+ manual steps normally required. All the developer will need to do is actually write their code (instead of fussing with the Sitecore interface).

If the developer decides to extend an existing component the wizard walks through 3 major steps.

  • Step 1 is to provide a name and let the tool know if custom markup, fields (data templates) or content storage locations (datasource locations) are needed.

002.png

  • Step 2 is the creation of the custom data template (if required).

003.png

  • Step 3 provides the developers with scaffolding for the component code. In the following example a Sitecore MVC Controller Rendering is being extended.

004.png

005.png

006.png

007.png

Time required to setup: Keystone package installs in a Sitecore environment in minutes (just like a Sitecore module).

Worth investing when: Starting a new site or entering a revamp project of an existing site where new component development is required.

Next steps

TDS and Keystone can reduce the time required for a developer to build new templates and components. By forcing consistency through automation, the effort required of other team members such as quality assurance is also reduced.

Contact us

Let's reinvent the future