What is Microsoft Power Apps?

Power Apps, a part of the broader Power Platform, is a suite of apps, services, connectors and data platform that provides a rapid low-code application development environment. Power Apps empowers both individuals with little (to no prior) development experience and professional developers to rapidly build tailored, feature-rich applications that connect to stored business data in any underlying data platform: Microsoft Dataverse (previously known as Common Data Service), or within on-premises and online data sources (i.e., Excel, SharePoint, Office 365, SQL Server, Azure SQL, Dynamics 365 etc.).

Applications built using Power Apps provide rich business logic and workflow capabilities to transform and automate business processes. Power Apps applications have a responsive design and can run seamlessly on desktop (any browser) or on mobile devices (phone or tablet).

This article will cover the advantages and limitations of Microsoft Power Apps including:

Advantages:
Low-Code Solution
Advanced features and reusable components
Use of Industry standard data structures and processes
Integration
Accelerated time-to-market
Platform agnostic
Availability, data location and localization
Security
Low-cost solution

Limitations:
Data Source fetch limit of 500 records
Integrated development environment (IDE)
Designated application layout

Power Apps Advantages

Low-Code solution

Power Apps does not require a purchase or installation of an integrated development environment (IDE) or special licensing to develop. Office 365 Enterprise E1 (or above) subscription gives users access to the Power Apps development environment.

Unlike a traditional development environment, where only pro developers can be involved in the actual application making, Power Apps, empowers everyone to build the applications they need by using advanced functionality previously available only to professional developers. Power Apps “democratizes” the custom business app building experience by enabling users to build feature-rich, custom business apps without writing code.

Advanced features and reusable components

Developers can write code to extend business applications. Code can be used to create data and metadata, apply server-side logic using Azure functions, plug-ins, and workflow extensions, apply client-side logic using JavaScript, integrate with external data using virtual entities and webhooks, build custom connectors, and embed apps into website experiences to create integrated solutions.

Power Apps comes with AI Builder, an optional Add-on that provides two kinds of Power Apps components, depending on the models you want to use:

  • Components that use prebuilt AI models that are ready to use right away (i.e., Business card reader, Receipt processor component, Text recognizer component).
  • Components that use custom AI models that are built and trained by the developer (i.e., Form processor, Object detector)

Any components developed in app can be imported into other applications.

Use of Industry standard data structures and processes

Power Apps works directly with Microsoft Dataverse, a key data platform offering, which includes an extensive base of industry-standard tables that cover typical scenarios. The data structures can be easily customized to fit the organization’s need, with data populated via Power Query. There are numerous additional advantages to using Dataverse:

  • Easy to manage – Both the metadata and data are stored in the cloud.
  • Easy to secure – Data is stored securely, with a granular role-based security in place to control access to tables for different users within organization.
  • Access Dynamics 365 Data – Data from Dynamics 365 applications is also stored within Dataverse, letting organizations quickly build apps that use the Dynamics 365 data and extend the applications with Power Apps.
  • Rich metadata – Data types and relationships are used directly within Power Apps.
  • Logic and validation – Define calculated columns, business rules, workflows, and business process flows to ensure data quality and drive business processes.
  • Productivity tools – Tables are available within the add-ins for Microsoft Excel to increase productivity and ensure data accessibility.

Integration

Power Apps integrates with over 400 connectors (applications/services). For a full list of connectors please see List of all Power Apps connectors.

Of the 400 connectors, the most commonly used are Microsoft ones:

  • Office 365, getting the data into and out of SharePoint, Excel, Access, or any of the other Office 365 applications.
  • SQL Server and Azure SQL, working with custom-built databases.
  • Power BI, a business analytics service that aims to provide interactive visualizations and business intelligence capabilities.
  • Power Automate (Microsoft Flow), a service that helps create automated workflows between applications and services to synchronize files, get notifications, collect data, and more.

Accelerated time-to-market

With the traditional application development approach such as ‘waterfall’, and even modern iterative approaches such as ‘agile’, a significant amount of time can pass before the users are presented with a minimum viable product. Power Apps provides a WYSIWYG (what you see is what you get) development experience, that allows users to experience the actual working app very early in the development process; any new requirements/features can easily be added in the next version.

Platform agnostic

Power Apps mobile applications execute via the Power Apps application, that can run on Android, iOS and Windows. The Power Apps application takes care of the differences between the operating systems. There is also a web version of Power Apps, that allows for a given Power Apps application to be accessed via any modern web browser instead of the mobile app. For a complete list of supported browsers and browser platforms please see System requirements, limits, and configuration values.

Availability, data location and localization

Power Apps and its parent Power Platform is available globally. With numerous options to pick from:

  • Global cloud: United States, Europe, Asia Pacific
  • Local cloud: Canada, Brazil, United Kingdom, France, Germany, India, Japan, Australia, United Arab Emirates, Switzerland, Republic of South Africa
  • Sovereign cloud: US Government, Germany(retiring), China.

All metadata as well as Dataverse data is localized. The applications and the data (metadata, Dataverse) are mirrored and replicated for redundancy.

For more information, please see International availability of Microsoft Power Platform – Power Platform | Microsoft Docs.

Security

Power Apps inherits the Governance and Security from the Power Platform. Users are authenticated via Office 365 or Azure AD inheriting the organization’s authentication configuration, for example multi-factor authentication (MFA).

Application and its data can be secured across the below levels. Please see Power Apps Security for more information.

  • App-level security – restricts access to the app.
  • Form-level security – sets permissions to allow only specific security groups to access specific forms.
  • Record-level security – sets permissions for each individual row.
  • Field-level security – finer-grained security permission set for a single record.

Governance and environment Administration

Power Apps is easily administrated via the Power Platform admin center, with capabilities to create and manage environments, get real-time, self-help recommendations and support for Power Apps and Power Automate, and view Dataverse analytics. For more information, please see Administer Power Platform.

Low-cost solution

Power Apps general pricing is divided into two subscription plans:

  • Per app plan – monthly cost to run one application per user.
  • Per user plan – monthly cost to run unlimited applications per user.

Power Add-ons, Portals and AI Builder, fall outside of the general pricing. For detailed information, please see Power Apps pricing.

There are deep volume discounts available when looking to license at an enterprise level. For example when acquiring 200+ licenses, the cost of ‘Per app’ plan of $10/month and the ‘Per user’ plan of $40/month is brought down to $3/month and $12/month respectively.

In a typical project, bulk of the cost falls into the Development bucket, which is associated with the IT project staff (i.e., Project Manager, Developers, Engineers etc.). Power Apps greatly limits the IT Development involvement and the associated cost.

  • Professional developers have limited involvement in the making of Power Apps.
  • The need for project management is greatly reduced (since Power Apps projects are typically developed by the business).
  • IT Engineering has limited involvement in setting up the development environment.

The other portion of the cost is associated with hosting. Infrastructure resources (and licensing), whether on-premises or in the Cloud, cost money and there are costs associated with managing and maintaining. Here too, Power Apps greatly reduces the costs by limiting IT (Engineering) involvement and completely removing the cost of hosting.

  • IT Engineering is not involved in application publishing (promoting it through environments, and ultimately releasing it to production).
  • IT Engineering is not involved in the Power Apps maintenance as it is performed on the platform, with no impact to the applications.
  • There are no application hosting costs.

Power Apps Limitations

Every platform has its Limitations, and Power Apps is no exception. Following is a list of the limitations:

Data Source fetch limit of 500 records

In PowerApps every data source (i.e., SharePoint, SQL Server, Common Data Service, OneDrive etc.) is under limitation of 500 items. It means that a given data pull (query) will only return the first 500 items.
Note: there are numerous strategies to overcome the limitation (e.g., using delegation, using static data, using delegation with iterative function – paging, etc.).

Integrated development environment (IDE)

The Power Apps integrated development environment is running on the web. While it eliminates specific hardware and installation, it lacks the developer ‘feel’. Perhaps more important is the limitation of only one user being able to edit a given app at the same time.

Designated application layout

Applications are developed to fit a particular layout, Tablet or Phone (not both).
Note: The Tablet mode can be used to render a Power Apps application on a phone, with the drawback of not having the expected look and feel of a ‘Phone’ application.

Final Thoughts

With very few limitations and the substantial advantages, including ease of development, extensive features and integration capabilities, platform independence, high availability and redundancy, enterprise-level security, all at relatively low-cost, Microsoft Power Apps is a clear winner for a company looking for options to empower its business and improve the bottom line.