Tech Insights
Kasun Chathuranga Perera
October 19, 2020

What is Microsoft Power Platform?

What is Microsoft Power Platform?

In this digital age, we are extremely reliant on data– and the amount of data companies are creating is continually increasing.While all this data is inevitable, it is useless unless companies gain insightsand meaning from it – to gain tangible value, fast.

Historically, data analysis, app creation orautomation would be achieved by IT/Development teams. This would require staffto outline their requirements and aims, submit these requests to their ITdepartment (or even an external partner) and then see whether it was approvedand subsequently, wait for it to be built. This would be time-consuming andwould use valuable resources internally or incur huge costs if fulfilledexternally. What’s more, those requesting the solution usually tend to have animmediate need and waiting for weeks could cause internal delays.

This is why the Power Platform is so exciting. ThePower Platform enables data democratization – the ability for digitalinformation to be accessible to the typical (non-technical) end user. Itprovides four technologies that allow staff themselves to do more with theirdata without coding knowledge. While it doesn’t allow the flexibility of customcoding, it does provide a simple method for most users to be able to create,automate or analyse their data in ways which have never been possible for theaverage worker.

What is the Microsoft PowerPlatform?

“Power Platform is a low codeplatform provided by Microsoft which spans across Office 365, Azure, Dynamics365 and standalone applications.”

Power Platform combines the robust power of PowerApps,PowerBI, Power Automate and Power Virtual Agents into onepowerful business application platform — providing Act, Automate, Analyze andchat bots’ ability to build business application. The Power Platform ispossible thanks to the Common Data Service for Apps (CDS), which isessentially the underlying data platform that provides a unified and simplifieddata schema so that applications and services can inter-operate.

                                                                    MicrosoftPower Platform

Power Platform Products

The Power Platform enables digital information to be accessibleto the typical (non-technical) end user.

Power Platform is comprised of four key products:

·        Power Apps

·        Power Automate

·        Power BI

·        Power Virtual Agents

Power Apps

It is a rapid low code development environment whichfacilitates building custom apps for business needs. It provides services,connectors, and a scalable data service and app platform (Common Data Service)to allow simple integration and interaction with existing data. Power Apps helpyou build and deploy customised apps that work across web and mobile, embeddedor standalone, on any device. All you have to do is to go to Power Apps andstart building your own app as per the requirements. You need an office 365subscription in order to get the power apps facility free.

Both developers and non-developers can create appswithin PowerApps as it works in a no-code or low code environment. However, moretechnical users are able to extend the capabilities by using Azure functions orcreating custom connectors and integrated solutions.

·        Build scalable and responsiveapps which can run on web, mobile, tablet or any other device with No Code.

·        Connect to and harness datafrom your business applications, such as Dynamics 365 and Office 365 (and alsothird-party apps).

·        Build apps used for internalusers or websites for external facing customers.

·        Build apps from an existingdata set with a predefined template.

                                                                   PowerApps: model driven app

With Power Apps, following types of Apps can be created:

·        Model Driven Apps

·        Canvas Apps

·        Portals Apps

Power Automate

Power Automate was previously known as Microsoft Flow. Thisallows you to create automated workflows between Applications, Services andother third-party applications, which allows to avoid carrying out repetitivetasks and save valuable time.

For an example, imagine you upload a video to YouTube daily andshare that on Twitter and Facebook each time you upload. This process can beautomated using power automate so that once you upload the video, an actionwill be triggered to share it in social media. For another example, imagine youwant to make a purchase for the organisation. Once you make the request, themanager has to accept/reject so that you can proceed through the process. Thisflow of getting approval from the manager once you make the request and theactions taken subsequently can be automated as follows.

                                                                            Power Automate

·        Use pre-built automationtemplates for common business process automations

·        Set up triggers, alerts, automatedemails, push notifications, automating of repetitive tasks like moving datafrom one system to another and much more — with no coding and in minutes.

·        Guiding a user through aprocess so they can complete the different stages

·        Create automations byconnecting various applications and external data sources, such as Outlook,SharePoint, Dynamics 365 or non-Microsoft apps like Twitter, Asana, Gmail,MailChimp etc. via one of the hundreds of connectors or directly via an API.

Power BI

PowerBI is a business analytics service provided by Microsoft.Using data stored in CDS or other databases, users can build informativereports and dashboards to display important data about sales, customer service,and other business functions. These dashboards and reports can be published onwebsites, in SharePoint or Teams, and in Apps.

                                                                                                   Power BI Report

Power BI is a business analytics tool which allows you to easilyconnect to data sources, create visuals and gain business intelligence quickly.It allows you to:

·        Click and connect withMicrosoft and third-party cloud services, as well as on-premise data sources

·        Easily manipulate data andcreate visuals, such as charts, dashboards, maps and many more — so you canpresent your data in an easy-to-digest format

Power Virtual Agents

Power Virtual Agents empowers developers to easilycreate powerful bots using a guided, no-code graphical interface without theneed for data scientists or developers. It eliminates the gap between thesubject matter experts and the development teams building the bots. It removesthe complexity of exposing teams to the nuances of conversational AI and theneed to write complex code. And, it minimises the IT effort required to deployand maintain a custom conversational solution.

Using Power Virtual Agents, you can:

·        Empower your teams by allowingthem to easily build bots themselves without the need of intermediaries, codingor AI expertise.

·        Reduce costs by easily automatingcommon inquiries and freeing human agent time to deal with more complex issues.

·        Improve customer satisfactionby allowing customers to self-help and resolve issues quickly 24/7 using richpersonalized bot conversations.

The beauty of power platform is that each of these four keyproducts, power apps, power automate, power BI and virtual agents can be usedinteractively. For an example, you can trigger an automated flow once you pressa button in your power app. Or you can preview a visualization obtained frompower BI in your power app. You can also add a chat bot created from powervirtual agent in your power portal created.

Power Platform Architecture

Power Platform itself is divided into multiple components andlayers where each component is dynamic and scalable by itself, but brilliantand masterful when combined. From a developer or more precisely citizendeveloper’s perspective, Power Platform is split into Power Apps, Power BI,Power Automate and Power Virtual Agents, which is used to map their businessprocess requirements.

This platform is built upon lots of services which powers it andPro Developers can interact with these services in order to perform advancefunctionalities. Common Data Service (Apps) is harnessed from Azure Data serviceslike Azure SQL, Cosmos DB, Blob Storage etc. Similarly Azure API managementservice is involved in integrating all of the products with API management. BotServices powers Power Virtual Agents whereas Analysis Services powers Power BI.

                                                     Microsoft Power Platform: Overall Architecture

Common Data Service (CDS)

The heart of the Microsoft Power Platform is the Common DataService for Apps (CDS). It is a central data repository for business data.

CDS is a secure database hosted in Azure Cloud prebuilt with astandard set of entities and record types. These record types — for example,Accounts, Contacts, and various activity types, are extensible — so you can addadditional data fields. Developers can add new entities to fit their businessneeds. Entities have relationships to each other, and Business Rules can becreated to form required fields, hide fields and set default values.

Common Data Service offers following categories offunctionality:

·        Security Common Data Servicehandles authentication with Azure Active Directory (AAD) to allow conditionalaccess and multi-factor authentication. It supports authorisation down to therow and field level and provides rich auditing capabilities.

·        Logic Common Data Serviceallows you to easily apply business logic at the data level. These rules couldbe related to duplicate detection, business rules, workflows, and more.

·        Data Common Data Serviceoffers you the control to shape your data, allowing you to discover, model,validate, and report on your data. This control ensures your data looks the wayyou want regardless of how it is used.

·        Storage Common Data Servicestores your physical data in the Azure cloud.

·        Integration Common Data Serviceconnects in different ways to support your business needs. APIs, webhooks,eventing, and data exports give you flexibility to get data in and out.

Important things to considerbefore using power platform

·        Power apps you created cannotbe shared with the outside world but within your organisation. They are not forconsumer-consumption

·        Since this is almost a no-codeplatform, developers cannot add any HTML or JavaScript code scripts toadd/change any feature. Simply, if power apps cannot provide a particularfeature, developer can’t too.

·        But if you need any customlogic that power apps platform cannot provide, the best option is to connect itto any custom API. (The platform allows you to connect to any external APIs.)

·        Less interference from thedevelopers has increased the stability and long-term use.

·        Although you don’t requirecoding experience to use the power platform, you must be able to write formulae(In DAX) in order to describe your logic.

·        Any type of data (XML, JSON,Excel, SQL, data from google analytics) can be used within power platform.

·        Visualisation and reports fromPowerBI can be embedded in any external application.

·        Functionality of powerplatform sometimes may not meet your requirements. But Microsoft is regularlyadding new features and updating this, to ease your day-to-day tasks within theorganisation.

References

https://powerplatform.microsoft.com/en-us/

https://docs.microsoft.com/en-us/learn/powerplatform/