blogs & Things

Canvas Apps Vs Model-Driven Apps

blogs & Things
wooden toy

What Are They & Which Are Better?

Helping choose between Canvas and Model Driven apps on the PowerPlatform

 

PowerPlatform… PowerApps… Model-Driven Apps… Canvas Apps. Every industry likes their jargon and Microsoft PowerApp developers are no different..

If you’ve come across one or any of these phrases recently, either through your own research or from hearing them as part of your Digital Transformation with a third-party partner then you may be scratching your head and wondering what they all are…

What Are PowerApps?

Put simply, Microsoft PowerApps were developed to democratise software development, reducing both the difficulty and complexity of launching a new application for use by an organisation.

Using PowerApp’s a citizen developer (someone with little or no coding/design experience) can rapidly create a custom app for use by their organisation, either internally or externally.

PowerApps do this by using a low code/no code approach that lets users create apps using a simple click, drag and drop system.

Low code/No code development has been massively gaining in popularity over the last few years and the COVID pandemic has only seen that interest increase, with many organisations needing to pivot to a new way of working, thus speeding up their digital transformation plans ahead of original schedules.

 

Using PowerApps, a citizen developer can create either a canvas app or a model driven app… which obviously leads on nicely to the next questions, being… what are they, which is best and when should you use them?

What Are Model-Driven Apps?

Again, putting it as simply as we can, Model-Driven Apps aren’t ‘stand-alone’.

They’re based on sets of underlying data, or being more precise, underlying data held in the Microsoft Dataverse (apologies for throwing more jargon at you! The Dataverse, what used to be the Common Data Model, is a cloud-based storage environment that organisations can use to store their business application data safely and securely).

All Model-Driven Apps will be integrated in some way with the Microsoft Dataverse. In fact, most Microsoft Apps are Model Driven Apps themselves as, on some level, they’ll be integrated with the Dataverse (up to and including the entire Dynamics 365 platform).

 

That level of integration with the Dataverse means Model-Driven Apps can be described as ‘data-first’.

They’re far more rigid in their functionality than a Canvas App will be, with the UI (User Interface) components likely being selected from pre-made choices (although some customisation is still possible). That premade element makes Model-Driven Apps incredibly simple and easy to design and build, with absolutely no coding ability needed.

The flip side to all that rigidity however is that a Model-Driven App will always be a lot more sophisticated than a Canvas App, making them much better solutions for anything requiring complex busines logic to function efficiently.

The other plus to those premade User Interfaces is that they’re Responsive-by-Design, so will always look great, no matter what kind of device they’re accessed from.

What Are Canvas-Apps?

A Canvas-App does exactly what it says on the tin… they provide you with a completely blank canvas to create with.

You’re not left completely on your own though, as Canvas Apps are still designed for citizen developers, so there’s still a click, drag and drop format powering the interface.

Once you’ve got a setup you’re happy with though, you can make further adjustments to a Canvas App to change the size, shape and formatting of all the disparate elements.

Then, once you’re happy with that, you can connect it up to either a single or multiple data source(s) using nothing more than simple excel-style formulas.

 

And therein lies the main appeal of a Canvas App over a Model-Driven App; since there’s no need to worry about how your data is structured as there is with a Model-Driven App, you get a much more intuitive design experience.

Sounds complicated?

 

Don’t worry. If you can use PowerPoint and have an entry-level understanding of excel formulas, then you’ll be able to whip up a Canvas App with no problems.

Building a Canvas App is a lot of fun as it really lets you flex your creative side as no two Canvas Apps will ever be exactly the same, plus, as a bit of an added bonus, Canvas Apps are capable of pulling data from over two hundred unique data integration sources as an Out-of-the-Box feature, making them infinitely more flexible than a Model-Driven App could ever hope to be.

 

The downside to that however is that Canvas Apps aren’t responsive by design. The two basic layout functions are portrait and landscape but depending on the amount of customisation that’s happened, some work is often required to make them fit across a range of devices by adjusting the size and positions of the various elements in relation to the screen size.

To do that you’ll need hard-coded values that will have to be repeated for every individual control that’s been created within your app… so whilst a Canvas App is endlessly customisable, making it then responsive can be a long-winded process.

When To Use A Canvas App Vs When To Use A Model-Driven App

In case you hadn’t guessed already, the title of this article is a little misleading as it isn’t really a case of Canvas Apps vs Model-Driven Apps or which is better.

Instead, there’s appropriate use cases for both; complementing rather than competing with each other.

 

A Canvas App is perfect for creating a task/roles-based application such as a ticket system for an IT team. As this task is focussed solely on one issue, it really doesn’t require the full use of the entire Microsoft Suite… that would literally be the definition of over-engineered (or in simpler terms overkill), potentially impacting on the functionality of the app by making it too complicated.

 

Model-Driven Apps then, are much more suited to creating a complete end-to-end solution.

Going back to the IT ticket system use case, A Model-Driven App would be useful after the ticket has been created to route it to the right place with the right location address, allow it to be updated so both sides can track its progress and mark it as complete.

In the above use case, it’s almost certain there’ll be multiple stakeholders wishing to view, update and document the ticket so for a well-rounded app capable of tracking the whole cycle, a Model-Driven app would be best suited.

More blogs & Things

More blogs & Things


James Crossland in NonProfit

AI + Automation: Reducing Donor Churn & Maintaining Sponsor Interest

Churn management is a vital element of any marketing strategy, and the NonProfit sector is no exception. Knowing what to track and having a joined up view of all your donations data is vital for getting this right, and also opens the door to building innovative data-driven campaigns.   At our recent DataScience and Transformation in Charities […]


James Crossland in NonProfit

Dynamics 365 In NonProfit’s

Charities have unique funding concerns, and an obligation to spend as much as possible on their chosen cause. However, an investment in technology can offer ROI in the form of more than just improved fundraising. Dynamics 365 can help rework complex business processes, ensure compliance with stringent safeguarding and financial regulations, as well as consolidate […]


James Crossland in Tech

8 Ways Your Business Can Increase Turnover With Big Data

Understand how Big Data and Data Science can transform your business…   Big Data is the phrase that’s used to categorise any data that’s too large, complex, cumbersome or complicated to be managed and processed by conventional technology. To put that into a relatable context; being able to recommend your customers content, products or offers based […]


James Crossland in NonProfit

How To Reduce Donor Churn In NonProfits

Reducing Donor Churn doesn’t have to be a big task but does need to be a fundamental part of a NonProfit’s day to day processes   What Is Donor Churn? Donor Churn is the likelihood of an individual stopping their donations to a charitable cause for a variety of different reasons resulting in the non-profit organisation […]


James Crossland in Tech

Agile: Cutting Costs, Improving Quality & Accessing Talent

After using Agile to develop software products for several years, we thought we’d share the challenges we encountered at the start, what we did to change and the results we saw (which were ultimately uplifts in quality and efficiency)…   My development team has been using Agile to develop software product since 2007. Personally, I’ve seen many […]


James Crossland in Tech

UI VS UX

What’s the difference between UI and UX?   Simply put UI (or User Interface) are the pages, screens, buttons, icons and any other visual aspects of a website or App that let you interact with it… or to expand on that into the non-virtual world… UI is how you experience using something – For instance in opening a fridge, […]


Send us a Message






    Call cloudThing
    0121 393 4700
    DEVELOP • DYNAMICS • DEVOPS • DATA
    By pressing send you agree to our Terms & Conditions