The world of SharePoint is changing. Companies now have multiple options when it comes to setting up and configuring their SharePoint platforms. As a result it’s important to define early on what your transformation strategy is. They can stick with the On-Premises way of doing things, the way many are used to setting up and running SharePoint. They can move to the Cloud, with SharePoint Online and Office365. Or they can take the third way and adopt a Hybrid approach, something Microsoft seem to be talking about much more this year.
The ways in which SharePoint can be customized are also changing, the approaches and techniques are very different to those from a couple of years ago. Customizing SharePoint 2003 was almost impossible. This changed with the introduction of full trust farm solutions in SharePoint 2007. Whilst powerful, these solutions have some major drawbacks. They can, if they go wrong, bring down an entire farm as the code runs within the SharePoint worker process. Furthermore, farm solutions are not compatible with the Office365 and the Cloud.
The new world is all about the app model. The app model allows customizations to be run outside of the SharePoint processes, and are compatible with the Microsoft Cloud. The app model is the way forward for On-Premises, Cloud or Hybrid solutions.
But, when you have decided on a path to take, what do you do with your existing farm solutions? Indeed is your business ready for a move to the Cloud, or does a Hybrid solution seem better? Even when deciding to stay On-Premises, it’s important to think about how you might want to customize your SharePoint environment in the future.
In this post we will look in more detail at the various options – On-Premises, the Cloud and Hybrid – that are available when deciding your transformation strategy.
On-Premises: Think about the future
When staying completely On-Premises, it’s still possible to use full trust farm solutions and it will remain fully supported in SharePoint 2016 as pointed out by Vesa Juvonen, Microsoft Senior Program Manager and Office365 Dev Patterns and Practices program lead one month ago at SharePoint Saturday Helsinki.
However, these have been advised against by Microsoft, as they cannot be deployed to the Cloud in the future. It will benefit you to think about migrating existing customizations to the app model, and only allow new customizations to use the app model. Our SPCAF Code Migration Assessment is an excellent tool to help you analyze existing farm solutions and the possible problems you might encounter.
Your developers and consultants also have to be trained to think a bit differently, as the app model is quite different from full trust farm solutions. Microsoft has provided excellent training material on how to transition to the app model, for example the virtual course Transform SharePoint customizations to SharePoint App Model.
By making your customizations cloud-ready, even when staying On-Premises, a future transition to the cloud will be much easier.
The Cloud: No more farm solutions
When moving to the Cloud, there is no choice between farm solutions and the app model: Farm solutions are not, and will never be, compatible with the cloud. The app model is the way to go, and it brings with it the security and performance of the Office 365 platform.
By leveraging provider hosted app models, you have different options to provide your customizations. It’s possible to create an app, hosted on a Linux server using PHP, and deploy that as a provider hosted app to Office365 – this is will be groundbreaking for many.
Personally I would recommend you to choose .NET running on Windows Azure Websites anyway as obviously Microsoft is investing a lot to make it as simple and smooth as possible to get started with it (eg. in regards of authentication). Also the Office365 Developer Patterns & Practices target primarily .NET and provide a huge repository of sample implementations and the core helper library (read more in my blogpost here)
To transition to the app model, start by using the SPCAF Code Migration Assessment to get a better feeling of the effort required to migrate to the app model.
Hybrid: The best of two worlds?
A hybrid solution can leverage both an On-Premises farm and Office365. For example, if your customizations need to be integrated with other LOB products hosted in your datacenter, an On-Premises farm would be required. By integrating this On-Premises farm with Office365, a hybrid solution offers the best of both On-Premises and the cloud. This TechNet article describes how to implement a hybrid solution in SharePoint 2013. Also keep an eye out on SharePoint 2016, as Microsoft has made significant investments regarding hybrid solutions in this new SharePoint version. Read more about the evolution of SharePoint in this blog post by Julia White.
When it comes to customizations, it’s still important to think about which type of customizations to allow. Even in the On-Premises farm, it will pay off to only use the app model for the customizations. Provider hosted apps offer great flexibility, and are able to achieve the same outcome compared to full trust farm solutions. It only requires a different way of thinking.
SPCAF can help to enforce hybrid concepts for customizations and prevent any security issues or vulnerabilities occurring on the On Premises side of things.
Planning for the future
Customizations in SharePoint have changed. SharePoint Development has changed. Full trust farm solutions offer great flexibility, are and still will be supported, but are not cloud ready. Microsoft is pushing every SharePoint client to think about moving to the cloud. The new SharePoint version, SharePoint 2016, will also likely offer great capabilities to deploy a hybrid SharePoint environment.
The app model is the future, it is cloud ready, and Microsoft is encouraging everybody to use it instead of full trust farm solutions. There is a lot of documentation, training material, and videos how to transition farm solutions to the app model. It is not an easy exercise, and it requires a different way of thinking about customizations. Tools like our own SPCAF Code Migration Assessment will help you analyze your farm solutions and provide some guidance on how best to transition to the app model.
[UPDATE]: in 2016 we moved the capabilities of SPCAF Code Migration Assessment and included them into our new product SPTransformator. Besides assessing your current state of your farm solutions and customizations, SPTransformator also guides you in moving them to more modern, cloud-ready development approaches, providing you with a comprehensive knowledge base around the new models and even automagically transforming your code into over 10 different new models.
The future around SharePoint is exciting, and now is a good time to think about your customizations and transformation strategy.