In our last article in the power apps for business series, we discussed the process of planning work to create an application. Today we come to the specifics – the design phase. Application design is a very important part of the process where we begin to identify the activities that will be created in the production phase based on the information gathered during the planning phase. In this phase, we will discuss how to create specifications and designs for our business application.
Step 1: Conceptual design
The conceptual design plans to design the entire structure of the application using the project. Main questions you should ask yourself:
What are the tasks related to the application? To define the tasks necessary in the application, you should refer to the business process diagram created in the planning phase and add details. When writing tasks, remember to think carefully about the tasks of each person who will be using the screen or application. If you would like to create a photo collector application, you must assume that this application requires the following functionalities: – gallery – single photo view with description editing modes – Buttons in the editing view to cancel, save and upload – the ability to create an album and add new photos.
The second key question is what will the user experience be? The next step is to sketch the screens your application should have. Don’t be afraid of it, you don’t have to be an artist or UX designer. Your drawings should be simple and clear. Don’t focus on details that you can work on later. The sketch can be made with PowerPoint. If you are not sure what the screens should look like, draw a few versions and choose the best one. Look for inspiration in the apps you use every day. Once you create a sketch, consult your project with potential users who will tell you if the concept meets their expectations.
Step 2: Architectural design
Once you’ve finished your conceptual design, it’s time to start your architectural design. Architecture design determines how a user will use Power Apps to automate business processes.
1. Where is the data?
First, you should identify where the data you will need to build the application is. If your application creates data that does not exist yet, we recommend that you store the data in Common Data Service (more information about CDS: https://docs.microsoft.com/en-us/powerapps/maker/common-data-service/data- platform-intro) or in a custom SharePoint list. However, if you have in other systems and the original data can never be modified, you can make a copy of the data, e.g. to Common Data Service and work on the copied database. How to access existing data? Apps built with Power Apps have two ways to use existing data. One is to use a connector which allows you to connect directly to a data source. A connector is a feature in Power Apps that allows you to connect to, and download or save data from, various systems and sources — such as SharePoint, SQL Server, or Office 365 — such as.
The second way is to use a dataflow that copies a snapshot of the data, while Dataflow is a feature in Power Apps that lets you extract, transform, and load data from another system into Common Data Service or Azure Data Lake Storage. Unlike a connector, the program downloads the data in the scheduled batch. Which method you choose depends on your use cases and how your data is handled.
2. Do you need integration with other systems?
Even if you are not in a technical role, read this section to understand some things to consider when integrating with other systems. When integrating with other systems, consider the frequency of integration, which depends on the amount of data and time-related business requirements, e.g. data is to be refreshed every 24 hours.
There are several ways to integrate your solutions with other systems:
- Direct integration with the database
- API integration
- File Integration with other systems via files. This method is used in situations where the data source cannot be accessed directly through the database or APIs.
For more information, visit:
3. Application type selection
At the design stage, you will have to decide what type of application to choose. Power Apps has two ways to build apps: model-driven apps and canvas apps.
Model driven applications require a Common Data Service database. They are built on top of a database modeled in a database environment. Views and detailed screens of the data-dependent applications you have in CDS. Model-driven apps allow you to build apps quickly because you don’t need to build the user interface yourself.
Canvas applications allow you to build an application with or without a Common Data Service database. They use connectors to access data and services. Canvas apps start with a blank screen and the app developer manually determines each screen step by step. Canvas applications allow you to create an intuitive interface and customize the appearance of the application based on the user’s requirements.
If you need to build an application to be used by web clients, you can also create a third type of application: a portal application.
Your application will have business logic such as data validation, calculations, enabling a button when all required fields contain data, and so on. At this point you should where the logic should go in the system. Below are some options:
Using formulas (similar to Excel) you can set logic in canvas applications. All logic is processed on the device running the application. The more complex the logic, the more difficult it is to perform, so be sure to only use this solution for simple logic and avoid complex formulas.
Applications based on the Power Apps model
Model-driven apps allow you to run logic in several ways:
- Business process flows
- Work flows
- Business rules
Power Automate flows
When you need to run complex logic, you need multiple connectors Power Automate flows offer the optimal option to run logic.
Common Data Service
You can also set logic in Common Data Service such that all rules are executed within the service, not devices. This will make the application more efficient and the logic independent of applications and flows.
4. Secure your applications and data
The final step in the design phase is to consider how to secure your data. Consider what data will be available to whom. PowerApps allows you to configure four different security layers in the application:
- Application-level security that restricts access to the application.
- Form-level security secures access to forms.
- Record-level security determines access to individual records
- Field-level security is more granular security within a single record.
Designing different levels of security may seem complex, but can be broken down into five steps:
Step 1: Determine who or what groups of people will have access to the app.
Step 2: Among the users identified in step 1, group them into groups that will have access to a restricted type of information.
Step 3: Determine the requirements of who can see the records.
Step 4: If you are using data sources other than Common Data Service, consider how to allow access to these systems.
Step 5: Depending on the steps above, you may want to consider how to manage these different groups.