Bo is a Principal Consultant for ThreeWill. He has 18 years of full lifecycle software development experience.
I recently worked on an on-boarding solution for a customer that was built as a cloud based application using Microsoft Azure and Office 365. It’s what Microsoft refers to as a provider-hosted app for SharePoint, and it is all the rage these days. Being a Microsoft developer for about 15 years, I’ve learned to be a little cautious of the newest things being pushed out by the Microsoft marketing machine. However, after working on very real world challenges using Office 365 and Azure, I think all hubbub is well deserved.
In the on-boarding application, our customer had some very typical requirements that most companies might have including:
- Public facing internet site where anyone can register and apply for a job
- Highly complex and very business specific onboarding process
- Simple and familiar UI for managing applicants from hiring through termination
- Routing to different queues based on an applicant’s current state
- Need to support user based events and time based events
- Need to integrate with external third-party systems during onboarding
In addition to the typical requirements, our customer had some more unique but not uncommon challenges to deal with:
- Very small IT staff responsible for supporting many users and technologies
- Seasonal hiring model with large peaks and then periods of low activity
- Need to manage seasonal employees individually or in batches
- Desire to very easily change the workflow process over time
Obviously there are some “off the shelf” products that can handle some of these requirements, but many times they are not as customizable as desired. Other times they can cost more than a custom solution due to licensing costs over time. Finally, they may not integrate out of the box with Office 365 where many employees are already doing work.
Since our customer was already using Office 365 for collaboration and Azure for other applications, a provider hosted app was a natural fit for them. It allowed for the flexibility to satisfy all their requirements, provided the services to be an enabler for their IT Staff and the UI familiarity for their internal stuff. In the white paper The New Business Operating System: Combining Office 365 and the Microsoft Cloud Ecosystem to Create Business Value I think Pete Skelly summarized it best in the sentence “The New Business Operating System (NBOS) enables businesses to leverage commodity based IT Services and enables customizations to enhance business value.”
That sentence really says so much; I thought I would break it down into some specific reasons and examples on how the New Business Operating System helped our customer with their solution and made me a fan.
Five Reasons Office 365 Added Value to Our Solution
- Do More with Less – With a small IT staff, using Office 365 is really a no brainer. The Software as a Service (SaaS) model means no infrastructure to manage and no software to install/maintain.
- Familiar User Interface – For internal users, Office 365 made sense as the UI since it is already familiar from other activities such as document management and collaboration.
- Ease of Management – Built-in support for things like user management, security, lists and views means the small IT staff can easily manage the user experience for internal users just like they do for other functionality in Office 365.
- Workflow Engine – With a workflow engine available in Office 365, time based events like status changes and notifications after a specific period of time is easy.
- Ease of Customization – UI elements such as pages and the ribbon in Office 365 can be easily customized to integrate custom functionality while still looking like it’s built into the platform.
Five Reasons Microsoft Azure Added Value to Our Solution
- Enterprise Level Management and Support – Again, with a small IT staff, using a Platform as a Service (PaaS) makes a lot of sense from a management standpoint. In Azure, backup and recovery, monitoring and scalability are easily managed without needing extra tools or software.
- Flexible Compute Power – The nature of a seasonal hiring solution is also a perfect fit for Azure because you can easily deal with “Predictable Bursting” (The New Business Operating System: Combining Office 365 and the Microsoft Cloud Ecosystem to Create Business Value) by increasing resources during peak periods and reducing during low periods. If you had to deal with this on your own infrastructure, it would likely mean lots of idle hardware much of the time.
- Ease of Deployment – In Azure, it is also extremely easy to package and deploy the application. This means developers can spend their time on business functionality and creating business value. Our application could be deployed to an environment like QA and UAT in just a few clicks.
- Robust Platform – Azure isn’t just for web apps and databases either. It’s a much larger platform that supports things like a service bus where an application can use queues and messages to make the application more robust, scalable and responsive even during unexpected peaks.
As you can probably tell, I’ve become a fan of creating solutions using Microsoft Azure and Office 365 as the platform and services to build upon. I look at how our customer’s resources are now enhancing the application and managing thousands of applicants with just 2 people working on the application only part of the time. In a traditional on premise application, there is no way I can imagine it would be possible for just 2 people to support the same application and be able to continue to add business functionality.
SharePoint is a web application platform in the Microsoft Office server suite. Launched in 2001, SharePoint combines various functions which are traditionally separate applications: intranet, extranet, content management, document management, personal cloud, enterprise social networking, enterprise search, business intelligence, workflow management, web content management, and an enterprise application store. SharePoint servers have traditionally been deployed for internal use in mid-size businesses and large departments alongside Microsoft Exchange, Skype for Business, and Office Web Apps; but Microsoft’s ‘Office 365’ software as a service offering (which includes a version of SharePoint) has led to increased usage of SharePoint in smaller organizations.
While Office 365 provides SharePoint as a service, installing SharePoint on premises typically requires multiple virtual machines, at least two separate physical servers, and is a somewhat significant installation and configuration effort. The software is based on an n-tier service oriented architecture. Enterprise application software (for example, email servers, ERP, BI and CRM products) often either requires or integrates with elements of SharePoint. As an application platform, SharePoint provides central management, governance, and security controls. The SharePoint platform manages Internet Information Services (IIS) via form-based management tooling.
Since the release of SharePoint 2013, Microsoft’s primary channel for distribution of SharePoint has been Office 365, where the product is continuously being upgraded. New versions are released every few years, and represent a supported snapshot of the cloud software. Microsoft currently has three tiers of pricing for SharePoint 2013, including a free version (whose future is currently uncertain). SharePoint 2013 is also resold through a cloud model by many third-party vendors. The next on-premises release is SharePoint 2016, expected to have increased hybrid cloud integration.
Office 365 is the brand name used by Microsoft for a group of software plus services subscriptions that provides productivity software and related services to its subscribers. For consumers, the service allows the use of Microsoft Office apps on Windows and OS X, provides storage space on Microsoft’s cloud storage service OneDrive, and grants 60 Skype minutes per month. For business and enterprise users, Office 365 offers plans including e-mail and social networking services through hosted versions of Exchange Server, Skype for Business Server, SharePoint and Office Online, integration with Yammer, as well as access to the Office software.
After a beta test that began in October 2010, Office 365 was launched on June 28, 2011, as a successor to Microsoft Business Productivity Online Suite (MSBPOS), originally aimed at corporate users. With the release of Microsoft Office 2013, Office 365 was expanded to include new plans aimed at different types of businesses, along with new plans aimed at general consumers wanting to use the Office desktop software on a subscription basis—with an emphasis on the rolling release model.