Pieter van der Westhuizen

Office 2010 as development platform

By the time this blog post is published, the kick-off between South Africa and Mexico officially started the FIFA World Cup 2010! Just as South Africa has come a long way in preparing for the first football World Cup on African soil, so too has Office evolved into a promising and stable platform for developers to deliver ground breaking and exciting solutions for their customers and users.

Since I started writing for Add-in Express, a few of my colleagues and friends, have asked me why they should use Office as a development platform. This made me think about Office's capabilities and I would like to highlight a few reasons why Office is a good choice as a development platform.

Office went through a transition from little more than a word processing application, starting at Office 97 to a platform in Office 2007 and Office 2010, where you have the ability to not only use the core applications in the Office suite but also add new functionality and enhance the existing features.

Office Live

Even though the latest trend is to move application development onto the hosted / internet environment, Office remains one of the most widely used desktop applications today. With the launch of Office Web Applications, users now have the ability to store, edit and view their documents online without the need to install Office enabling them to access it from anywhere, share with others and preserve the original document formatting. Read more about his at Office Live.


Another aspect that comes into play with Office is Azure. Azure is a cloud environment that allows us to store and access information in a remote environment. This could be tied into Office, whereas you use Office as the front end to your backend data stored in the cloud. Using these online services, we as Office developers can give our users the hosted environment capabilities required for today's systems and still keep the rich UI experience that Office provides.

Business Connectivity Services

Business Connectivity Services (BCS) provides read / write access to external data from web services, other databases and Line-of-Business applications from within Office 2010. By using the standardized interfaces provided by BCS, developers do not have to learn programming practices that apply to a specific system or adapters for each external system. If the external system is modelled appropriately, developers can create, read, update and query the external system using Office 2010 applications, providing users with a known and familiar interface. Although I have not personally worked with BCS yet, it does appear to be a nice option especially when working with Sharepoint in conjunction with Office.

The following image provides a high level view of Business Connectivity Services:
Business Connectivity Services

Excel reporting

In Excel we have a powerful reporting and business intelligence (BI) tool. For the last couple of years, I have been using Excel as my primary reporting tool and the result has been very satisfactory. Users appreciate the ability to format or manipulate the report or data they receive exactly the way they want it and without any additional training, as most information workers already have solid Excel skills. Some of the new features in Excel make it an obvious choice to present your users' data to them in a way they have never seen before. One such feature is SparkLines, which enables you to create small charts in a single cell, making it easy to identify data trends with a single glance:

SparkLines - creating small charts in a single cell

Another is the PivotTable tools; The Slicer gives you a rich visualization of your PivotTable, making filtering, searching and analysing data much easier and faster:

Slicer - a rich visualization of your PivotTable

All these services would not necessarily be used in various scenarios, yet Office still provides an attractive solution as a development platform. Outlook is probably one of the best kept secrets when it comes to collaboration tools. I had so many users ask for a solution to schedule meeting rooms, book leave etc. not knowing that they have the solution right there in front of them.

So, next time someone asks you what can be done using Office as a development platform, simply reply by saying, “Use your imagination …”

Thanks for reading, and until next time, keep coding!

Office customization toolkits:

Add-in Express for Office and .net
Add-in Express for Office and VCl

Post a comment

Have any questions? Ask us right now!