📜 ⬆️ ⬇️

Part 1. Office Store for cross-platform productivity from A to Z

Today, we all, starting from school and university, in one way or another use software that allows us to increase the productivity of our work. We hold presentations, write letters, create documents, make calculations, organize online meetings and successfully solve many other tasks using an application package known as Microsoft Office.

The company Microsoft, meeting the requirements of time, makes the package widely available both on its platforms, such as Windows and Windows Phone, and on platforms from other manufacturers that are widespread in the world. Today, you can use Microsoft Office applications and services on your tablet, on a laptop, on a desktop computer, or even on a smartphone.



Yes, I was not mistaken when I wrote “applications and services”, because the new version of Office - Office 365 includes not only traditional applications like Word, Excel, PowerPoint, Outlook and others, but also services - SharePoint, Skype and others. The implemented concept of mobility allows us to use online versions of our favorite tools without losing the quality of the product being created. This is such an attractive picture. But, this is a view from the client, the end user.
')
"And what does Microsoft offer in this question to us, the developers?" - you ask. Let's look at the numbers. I think that they will be able to show us clearly whether we should look in the direction of this market.
So, to begin with - the volume of the market.



In 2014 - 1.3 billion mobile devices, by 2018 - 1.9. And on all these devices, Office can be installed thanks to its cross-platform functionality. Today, over a billion people use office applications. More than 450 petabytes of information stored in cloud storage. An average person spends 2-3 hours a day using Office Apps.

A legitimate question arises: "Can we as developers get access to all these billions?" Of course yes!!! After all, it was precisely this task that was put before the creators of the new Office 365 model - to create an open platform that everyone can expand to which they can connect from their applications.

What are the advantages of this model?
  1. Safety and reliability. Application code can work outside of Office with clear security barriers. Clearly described API on mobile standards.
  2. Device friendly. Applications work on tablets and phones. Released clients for iPad, Android and the web (Office Web Apps).
  3. Modern development. We create applications for Office using modern development tools and technologies. Reliable APIs for Office and Office 365. Flexible tools like HTML5, JavaScript, Xamarin, Azure and Visual Studio.

Microsoft’s current vision of the platform is:



I'll add some lyrics. Today, to maximize customer coverage, developers are forced to write the same applications for different platforms. As a rule, it is Windows, iOS, Android. In the mobile world. But these are different programming languages, different IDEs, different libraries, and so on. To facilitate the life of developers, packages are created for cross-platform development (Xamarin, Apache Cordova etc.). But this is also an additional burden on the developer - to study new packages, follow the changes.

And what about the development for Office? It is cross-platform, because this package is used by users on different platforms, and Microsoft is interested in enabling those who develop on these platforms to develop for Office as well. What is there for this? This is a set of SDK for iOS, Android, Xamarin, Apache Cordova, etc. Why don't we, by creating our own applications and add-ins for Office, become part of this huge ecosystem and, using our knowledge, not share our solutions through office applications. In other words, Microsoft gives a platform, you write smart solutions, customers use them everywhere!
As they say: Write Once, Run Anywhere



What can I develop for Office 365?


This is a question that every person who has decided to take the path of a business application developer is asking himself.

Generally speaking, there are two big approaches:
  1. Write an extension (add-in) for Office products
  2. Harness the power of Office to enhance your applications through Office APIs

In the picture it will look something like this:



Note: I like to use visual agitation, because, as the sages say: "One look is better than a thousand words."

Let's look at each of the approaches in more detail.

OPTION 1. OFFICE ADD-INS
First, some statistics on this category. For June 2015 we have the following numbers:

So much for thinking about prospects ... Now let's look at what options add-ins we can create.
  1. Mail Add-In is a web page that is embedded in the context of the letter, calendar event, contact card in Outlook and Outlook Web Access



    An example is the Package Tracker from FedEx. After receiving a letter, for example, from Amazon, which states that your order has been sent, and indicates the FedEx tracking number, you can first install the add-in from the Office Store, do not open the browser and look for your package on the FedEx website, but simply expand add -in Package Tracker and see right in the body of the letter where your package is and what happens to it (information from the FedEx website).



    Another, perhaps unexpected, example is Team Viewer. Many use it for communication. This add-in can be especially useful for those who support their users or help elderly parents to deal with the complexities of the new operating system. Just open the Team Viewer session from the letter and work.



    Of course, for Outlook we can come up with a lot of new scenarios, because for many of us this is an application with which we work almost half of our working time.
  2. Task Pane Add-In is a panel that occupies part of the workspace of Word, Excel, Excel Online, PowerPoint, Project and has rights to work with the active document.



    Examples of such add-ins include Translator and Wikipedia by Microsoft. At the time of writing this article, I include two specified add-ins, having previously installed them from the Office Store. From now on, I can get information from Wikipedia or translate a selected part of the text without having to leave Word and open the Wikipedia or Bing Translator sites in a browser. Add-ins open in the window on the right side of the Word workspace and provide me with all the necessary information.



    Another example is PayPal for Excel. Having installed this add-in, I will not have to open a PayPal site in order to create a new PayPal invoice, or to see existing ones. All this I can do directly in Excel.
  3. Content Add-In - as the name suggests, the content is immersed in the document. This could be, for example, a map, a chart, a drawing, and anything else that interacts with the rest of the contents of an Excel document, Excel Online, PowerPoint, and gives the user additional functionality.



    This is the most familiar type of add-in. Excel examples that I didn’t have to look for are Bing Maps and People Graph. I install add-ins from the Store, select some data and see their reflection on the map or on the chart:



As you probably noticed, these Add-ins work on both desktop and web versions of Word, Excel, Power Point and others.
The beauty of the modern approach to the development of Office Add-ins is that you can use your ready-made solutions (if they work on the Web) to create Add-ins for Office. No need to relearn and become an office developer! It is enough to know how to create web applications, add a little specific to Office - and now you are creating something new for your employees or clients.

OPTION 2. SHAREPOINT ADD-INS
We give a few numbers for this category. For June 2015:

SharePoint users can install add-ins from both the Office Store and their corporate directory.
For SharePoint, you will most likely be making full-page applications. After all, they give the maximum opportunity to our customers.
Also, you can create and publish parts of the pages (Parts) and UI Command Extentions - new commands in the ribbon and in the menu.
The picture below is an example of a full-page Teacher Dashboard application running under SharePoint in Office 365.



OPTION 3. OFFICE APIs
This is a very interesting option that allows us to integrate the capabilities of Office 365 into our applications. Our clients can use a variety of applications, each of which works either autonomously or uses its own background. When we talk about business applications, it would be very nice if we could combine them and provide the user with uniform information in different “perspectives”. Through the use of Office APIs, we can do this.

If traditionally, for example, in an enterprise, there are such barriers in the circulation of data:



So we can change the situation, thanks to the use of O365 APIs, for example, such (User-centric):



For this today you can use the following Office 365 APIs:

We at Microsoft implemented this approach, for example, in the Delve application. What you create - we will see soon. The main thing is that for all applications, on whatever platform they are created, a single point of access to user information appears - O365 APIs.



I would like to say again about the use of web applications in Office. If you have an existing web application, if you are connected to Azure Active Directory - you can use SSO (Single-Sign-On), integrate with the App Launcher and have the ability to invoke Office APIs.

As an example, I will cite the Do application, which you will also find in the Office Store, and if you choose, you can run it from the list of your applications on the Office 365 portal.





How do customers get access to my application?


Of course, the question is how to deliver the created applications to the end users. No need to reinvent the wheel! After all, Microsoft offers to use the Office Store to publish applications and deliver them to millions of users. It works in the same way as existing mobile and cloud app stores. Also, the existing model of application delivery to corporate customers through the application catalogs remains valid. But this is a slightly different story.

So, some facts and figures about the Office Store:



As early as January 2015, the Store worked in 60 markets and supported 41 languages.
But, the question is, how will Office users be able to see the applications we have created for them and published in the Store? Do they, the users, need to open any special application or page in the browser in order to find the necessary Add-in that expands the capabilities of Office?

There are several answers, since there are several options.
  1. Option number one is unexpected. We all at least once used templates. In Word, Excel, PowerPoint and more. Know how many office templates are loaded per month? 27 million !!! Applications and templates can be linked. By downloading the template, the user can also get your application.


  2. Option number two is traditional. Again, we all use ribbons of tools, or ribbons, when we work on office projects. Now there is a Store or Office application button in the tapes, by clicking on which, the user will plunge into the world of our creations.



  3. Option number three is mobile. Finally, the user can open his browser and through him get to the portal, called the Office application store.



There is another interesting option - Office App Launcher. It is available to users from the Office 365 portal panel. After selecting it, the user goes to the My Apps page, which contains links to all of his applications. App Launcher is easily customizable. You can attach applications to it, you can detach, you can add your own, corporate applications.



In the second part, we will explain in detail how to publish your app in the Office Store.




about the author


Andreyev Andrey - Technical Evangelist at Microsoft.
The permanent place of deployment is the Microsoft office in Kazakhstan, Almaty. The unchangeable speaker, and often the organizer, of various events related to mobile development, IoT, cloud and web technologies in Kazakhstan and Uzbekistan. Several times he performed in Russia, Kyrgyzstan, Armenia, Azerbaijan, Georgia.

Source: https://habr.com/ru/post/269149/


All Articles