In-Depth

SharePoint Is Now Ripe for App Modernization

Now that Microsoft Azure has become a robust PaaS platform by offering a lot of additional services, using the provider-hosted add-in approach, not app transformation, is the way to go.

When Microsoft released the first version of SharePoint (named Portal Server 2001 at the time), it quickly became one of Microsoft's most successful server platforms and has offered a popular way for many organizations to share information. SharePoint is now the foundation for many corporate intranets integrated with organizations' essential business applications. But the rise of SharePoint Online, offered with premium Office 365 subscriptions, has created demand to extend those server-based SharePoint intranet apps accessible to the cloud-based service. Likewise, customers want their employees to have access to those apps and data over a wider variety of client devices. The best way to accomplish that, I believe, is by app modernization.

App modernization is now possible thanks to the fact that Microsoft Azure has become a powerful platform by offering a lot of additional services. As anyone in the SharePoint community will attest, moving from a traditional SharePoint Server environment to Office 365 has never been simple. That's because SharePoint Server and business applications are executed on the same server and shared resources. This approach implied that the business applications had to be built following strict coding guidelines to minimize performance impacts and security issues. A closer look at current business applications running on SharePoint Server revealed customers couldn't just simply migrate those business applications to SharePoint Online because it didn't support that custom server-side code.

Long aware of this problem, Microsoft has offered various options to overcome that restriction. One is to transform existing on-premises business applications into provider-hosted apps. In a nutshell, this means that the user interface (utilizing client-side code only) remains an add-in on the SharePoint Server, whereas the business logic is moved to a separate application server somewhere in the cloud. Although this is a viable technical solution, many companies were reluctant to go down this path because of the associated costs. It's also not an ideal solution.

Beyond App Transformation
With the continuing evolution of Microsoft Azure, things changed again. Now that Microsoft Azure has become a robust PaaS platform by offering a lot of additional services, the provider-hosted add-in approach comes back into play. When this approach was first introduced, the only benefit it offered was the ability to use existing business applications with SharePoint Online. When utilizing Microsoft Azure as a provider, the cost benefit analysis returns lower costs for more benefits. Or in other words: I'm not talking "app transformation" anymore, but "app modernization." When the limited benefits of transforming a business application into a provider-hosted app do not justify the costs, "app modernization" might be a suitable alternative.

What exactly is app modernization and what are the benefits? To answer this question, let's have a look at the additional services Microsoft Azure is offering.

[Click on image for larger view.] Figure 1. A chart showcasing many of the services offered through Microsoft Azure.

In essence, app modernization lets you bring your on-premises business application to the cloud while taking advantage of the latest capabilities offered. Microsoft Azure is offering App Service and Service Fabric services to assist developers in transforming on-premises applications. Once converted into an Azure cloud application successfully, the next stage is where the cloud app gets modernized. Usually, the following steps need to be taken to modernize an existing application.

Step one is to enhance or improve existing functionality by using appropriate Azure services. One example is to replace the SQL Server data store with Azure Data Services such as Azure Tables or Azure SQL, which will likely improve performance and reliability. If you look at the vast number of Azure services available, you will find more services that can potentially improve the way your business app is working.

Step two is to add new functionality (like Voice recognition or an Internet-of-Things interface or a mobile user interface) based on services offered by Microsoft Azure. To determine what kind of functionality is missing in your business application, it can be helpful to conduct a survey of the users.

After applying these modifications, the previous on-premises business application has been transformed into a modern, feature-rich and user friendly cloud application hosted in Microsoft Azure.

In order use the new cloud application within SharePoint Online (or even on-premises SharePoint), you'll want a common user interface to interact with the business logic. If this user interface is designed appropriately, it can be reused for a mobile app accessing the new cloud application as well with the just-released SharePoint Framework or other open platforms such as JavaScript.

Improving Usability
When assessing the benefits of app modernization, there are two areas that need to be considered. First, consider the technical improvements (such as using the Azure Storage service or Azure Hosting services). They usually pay off rather quickly and cloud-hosted applications often benefit from improved reliability, scalability improved mobile access and reduced costs for maintenance. Next, consider the user benefits. Improvements regarding the UI/UX don't have a direct monetary benefit. Instead they usually pay off with improved efficiency, increased user satisfaction, increased usability or enhanced integration within established business processes.

If you want to continue using your existing on-premises business application after you've migrated your SharePoint content to SharePoint Online, there aren't many viable alternatives to moving that business application to the cloud. But don't forget to evaluate all your options for modernizing your application. The additional effort needed to modernize your business application might be minimal compared to the effort you already spent in migrating your application to the cloud. Modern and smart apps are undoubtedly the future of business applications. With this approach, you can kill two birds with one stone just by using Azure services that are already available to you. Do you really want to miss out on this unique opportunity?

About the Author

Oliver Wirkus is a Microsoft MVP for Office 365 Servers and Services and Senior Consultant with 2toLead, based in Toronto, Canada. An experienced SharePoint expert and software architect, he has consulted for a variety of different industries and specializes in consulting for international projects and is an international speaker, former moderator of SharePoint User Group Stuttgart (Germany), member of the board of the Vancouver Office 365 User Group and has been voted one of the Top 25 SharePoint Community Influencers several times. 


Featured

comments powered by Disqus

Subscribe on YouTube