5 Dicembre 2023

Accelerate developer productivity with Microsoft Power Platform

Microsoft Power Platform developer tools are enabling professional developers to create more effective business solutions using Power Platform than ever before. Development is faster, applications are more secure, and deployed within managed environments that have guardrails applying organizational policies and promoting best practices.

You can quickly: 

Create low-code web and mobile apps, using Microsoft Power Apps, with complex security requirements, which are cross-platform and easy to deploy. 

Integrate with internal and external systems using more than 1,000 connectors and robotic process automation, using low-code Microsoft Power Automate flows. 

Publish websites, using Microsoft Power Pages, that have complex membership, content management, visual styling, and data access requirements.

Yes, ok, you’re highly likely to have heard all this before, and you may be thinking that all this talk of “low-code” is more hype than reality. With the advent of the age of AI where copilot is being used to build apps using natural language, you may even think that low-code is only for simple, low-usage applications in teams that do not have access to professional developers. Does it really suit large-scale application development that must adhere to a strict set of enterprise architecture requirements? And what about supporting all this low-code as it grows in complexity? Wouldn’t it be better to build using traditional software development tools right from the beginning and prevent any costly rewrites when the demands and complexity becomes too high for low-code. 

Let’s forget about low-code (for a minute)

Do you respond with a resounding yes to the questions above? If so, and you are a professional software developer, then this doesn’t surprise me, and I’m not sure that the term “low-code” is always that helpful when trying to describe Microsoft Power Platform. 

“Wait, what now?” Well, just hear me out!  

There’s no doubt that there’s a huge and growing demand for application development. We’re building new apps, modernizing existing apps, and adding innovations through AI and connectivity with Microsoft 365. Starting a development project requires making tough decisions, such as which technology to use for the data access layer, how security will be managed, and how to scale your app. The level of abstraction we choose often dictates the speed at which the software can be built, and there are tradeoffs between productivity, flexibility, and cost. Using Microsoft Azure services such as Microsoft Azure API Management is a good example of where the benefits, such as easy deployment and subscription access control features, outweigh the licensing and implementation constraints. With this in mind, following are some of the ever-growing features of Microsoft Power Platform, looked at through the lens of the software development tooling you may already be familiar with. 

Building business applications fast 

Business applications can be complex to develop due to the high number of factors that need to be considered, such as user interface design, storage requirements, security, compliance, and scalability. Microsoft Power Platform makes building business applications easier. 

Responsive and accessible applications can be developed once and then used across multiple platforms on desktop or mobile devices. 

Reusable UI components are built using React that can be assembled using a drag-and-drop interface. 

React components can be developed and deployed using Microsoft Visual Studio Code for single application use or shared between multiple projects via a centralized repository. 

Apps can be easily deployed as packages that include both metadata components, compiled code, and data import files. If required, canvas apps can be distributed as native mobile apps to end users through Microsoft Intune, Visual Studio App Center, Google Play store, and Apple Business Manager. 

Native offline support uses a local MySQL database, and automatically stores data operations to be automatically replayed once reconnected to the network. 

Test Engine uses Playwright to execute user interface tests as part of automatic testing pipelines. 

Microsoft Power Platform CLI can be used to automate all parts of solution development, deployment and environment management using Azure PowerShell, Microsoft Azure Pipelines, or GitHub actions. 

Public facing websites can be quickly created using Power Pages, and then edited using Visual Studio Code. These sites that use Azure-deployed ASP.NET as the backend, have automatic content delivery network (CDN) and caching support. Sites can use the built-in Web API with a configurable security provider to create complex single or multi page applications. 

Everything connected 

With data stored in so many places within your organization—and external services often being vital to business processes—integration and connectivity are crucial for successful business solutions. Microsoft Power Platform makes integration easier.  

A library of more than 1,000 connectors can be used to create event-driven orchestrations that are built on top of Microsoft Azure Logic Apps and OpenAPI, but without the need for Azure subscription setup and deployment. 

Microsoft Visual Studio can be used to create ASP.NET Web APIs that can easily be deployed as custom connectors. Debugging using dev tunnels is easy when using the Visual Studio Microsoft Power Platform Connected Services configuration. 

Dataverse Synapse Link and Dataverse Link to Microsoft Fabric data can be used for real-time analytics within OneLake. 

Dataflows in Microsoft Power Platform use Power Query to import or synchronize data from diverse data sources. 

Data platform as a service 

Storing data in a secure, performant, and scalable way is vital to every business application’s success. Microsoft Power Platform makes this easier using Microsoft Dataverse to underpin all its tools. 

Dataverse is a highly available, cloud-based data platform that is built upon Azure, providing all the robustness, scalability, compliance, and security that you’re used to with Microsoft Azure SQL, Microsoft Azure Cosmos DB, Azure Data Lake, and Microsoft Azure Blob Storage. 

Data can be relational, blob, or unstructured, and is metadata-driven so that it can be accessed in a highly contextual way. Fully functional apps can automatically be built using this metadata, and AI can be used to query using natural language. 

Uptime guarantees and monitoring tools give you complete visibility of your data without the need for building additional logging and monitoring solutions. 

An Open Data Protocol (OData) Web API and connector is available to interact with your data and expose it to other applications that can be built using traditional software tools. 

The Dataverse SQL endpoint is used to automatically create compelling and visually appealing Microsoft Power BI dashboards and reports. 

C# can be used to extend Dataverse with custom business logic and create custom APIs that run inside the Dataverse platform. 

Native integration with Microsoft Azure Service Bus makes it easy to extend using Microsoft Azure Functions, Microsoft Azure Event Hubs, and Microsoft Azure Event Grid. 

Virtual tables allow non-Dataverse data sources to be surfaced, queried, and linked to standard Dataverse tables. Out-of-the-box support for Azure SQL, SharePoint, and C# custom providers makes it extremely easy to build apps upon multiple data sources in a unified way.

Built-in audit log capabilities and long-term data retention features allow you to track changes and retain unlimited data long term in a cost-efficient way, without the need for any added development or management. 

Dataverse search gives users a fast, AI-powered way of finding data and documents within Dataverse.  

Native AI support 

Conversational bots that use Azure Bot Service can be quickly configured, trained, and deployed to be used inside Microsoft 365 or external facing websites. 

Complex AI models can be trained in document, image, and sentiment recognition and then easily deployed and used in business applications. 

Microsoft Copilot Studio supports building natural language conversational AI copilots that can be built using a graphical UI and trained on data for internal or external scenarios.  

Copilot plugins can be built using OpenAPI connectors in combination with prompt engineering. 

Copilots can be automatically added to business applications to give a natural language interface to data and information that is most relevant to the user.  

Performance and scale 

Microsoft Power Platform is built on Azure and is already tried and proven so that you don’t need to build your own platform. With automatic elastic scale, it can manage thousands of users and terabytes of data. Where performance cannot be met due to the tradeoffs that come from a higher level of abstraction, Microsoft Power Platform can be extended using lower-level tools and technologies, and connected through the many extension-points such as custom connectors, custom controls, Service Bus integration, and C# plugins. Many of these extensions can be deployed using Microsoft Power Platform solutions to make versioning and dependency management easier. 

Consumption and licensing 

It can often be extremely difficult to calculate the cost of Azure resources required by an application that you’re building once it is deployed. With Microsoft Power Platform comes a higher degree of predictability of cost through seat-based licensing, with consumption-based licensing being applied to services such as AI Builder and Copilot Studio copilots.  

The pay-as-you-go plan for Power Apps and Power Automate does give you the flexibility to use an Azure subscription if you prefer a pure consumption-based model. 

So, what about low-code? 

A common challenge in software development is that there are simply not enough hours in the day. It is generally accepted that adding more developers to a team does not always mean higher productivity. Adoption of new tools or technologies is usually driven by the desire to write less code to make the development process faster, less prone to bugs, and to make it easier to meet standards—especially around security. This is exactly what Microsoft Power Platform does for professional software development. Yes, there are tradeoffs, but as with all technology choices, the benefits are balanced against the drawbacks. Microsoft Power Platform provides a huge degree of functionality with minimal coding—making development much easier and faster. Where needed, it can be extended using traditional languages such as C# and TypeScript, deployed to cloud or even on-premises servers. So low-code is more about less code, and the less code we write, the easier it is to maintain, support, and upgrade—leaving more time for innovation on new features. Any software libraries that we might have used to speed up development before always need to be kept up to date to avoid deprecations and security vulnerabilities. An often-overlooked benefit of writing less code is that Microsoft Power Platform always keeps up-to-date with security patching, and very infrequently removes a feature. Multiple years notice is given before it is. 

But should everyone really develop apps? 

In addition to reducing the time and effort needed to build software, Microsoft Power Platform can also lower the barrier to entry, enabling those without traditional software development skills to build low-code solutions. 

As a professional developer, you may think that giving everyone access to build apps would cause software to be created that does not follow your organization’s IT policies and standards. With Microsoft Power Platform’s focus on governance, management, and monitoring, it creates an ecosystem that is safe and controlled for both low-code and pro-code developers to build applications within. This gives one set of standards for everyone, where administrators create clear boundaries and policies without restricting innovation.  

These managed environments foster collaboration and innovation, so that you can easily share and co-author your solutions with other developers, business users, and stakeholders. Inevitably, this will result in applications being built that are more likely to meet requirements and delight your users. When Microsoft Power Platform is available to all, there is also a lowered risk of teams procuring their own Shadow IT solutions. 

Write less code with Microsoft Power Platform

The term “low-code” is used to describe the next level of abstraction in software development and empowering everyone to build applications. However, Microsoft Power Platform is also a set of tools that is built upon the technologies you may already be using in Azure. It can coexist, augment existing solutions, and be extended by using traditional software development techniques. So next time you hear “low-code”, think about writing less of that tedious boilerplate code, to give you more time to create more robust, exciting, and innovative solutions. 

Get started as a developer

Sign up for a free developer plan, discover self-paced learning paths, and read the full Microsoft Power Platform developer documentation. 

Register here to attend the DEVintersection Conference and the Microsoft Azure + AI Conference. 

See the full list of sessions at DEVintersection. 

Interested in learning more about how Microsoft Power Platform accelerates productivity for professional developers? Sign up for our monthly newsletter to get the latest updates! 
The post Accelerate developer productivity with Microsoft Power Platform appeared first on Microsoft Power Platform Blog.
Source: Microsoft Power Platform