Developing with Office 365 in Mind
There has been some significant press around Microsoft’s cloud-based Office 365 subscriptions and I have talked with local government’s IT staff who are planning to make the move in the near future. Office 365 has obvious costs, deployment, and support benefits, but what does it offer from an integration stand-point? Office 365 provides a few subtle advantages, from cross-domain document sharing to providing a secure offsite environment for hosting business applications. Though on the surface neither of these are a unique advantage of Office 365 (other than being the brand name solution).
While there might be some ground-up considerations when developing with Office 365 in mind, the core technologies provided and APIs used with Office 365 remain constant from your Servers on the LAN to ones in the cloud. Namely, the big three Office 365 Servers, SharePoint, Exchange, and Lync provide the same Web Service APIs and SDKs, so not much code should have to change from the technology integration side. Arguably, the single most important benefit in leveraging Office 365 is the ability to secure access to these server technologies for a minimal cost.
One of the main restrictions of the Office 365 environment is that the solution is sandboxed. As a developer working within a sandboxed SharePoint solution, a few things to keep in mind are :
access to the hard drive is restricted
assemblies need to be at least at partial trust
web service calls outside the site collection is restricted
be careful of over consuming server resources
Silverlight allows some flexibility with external web service calls, and LINQ and the client-side objects for SharePoint are still great tools for the developer. And yes, Exchange Web Services (EWS) still provides access to user calendars and inboxes. The Lync API allows integration with instant messaging, desktop sharing, and file transfers. For the developer, there are some good resources for recipes and ideas, one of which is the Microsoft Office Developer Center. For more information on our solution offerings, please visit our website or email us.
What advantages do you see in Microsoft Office 365?
Benjamin Davenport, MCSD, MCAD, MCP Software Division Chief