0% found this document useful (0 votes)
74 views

Module 6 - Power Platform Application Lifecycle Management

Module 6 - Power Platform Application Lifecycle Management

Uploaded by

ariel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
74 views

Module 6 - Power Platform Application Lifecycle Management

Module 6 - Power Platform Application Lifecycle Management

Uploaded by

ariel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 46

WorkshopPLUS – Power

Platform for
Administrators:
Power Platform Application Lifecycle
Management

Microsoft
Services
Conditions and Terms of Use
Microsoft Confidential
This training package is proprietary and confidential and is intended only for uses described in the training materials. Content and software is
provided to you under a Non-Disclosure Agreement and cannot be distributed. Copying or disclosing all or any portion of the content and/or
software included in such packages is strictly prohibited.
The contents of this package are for informational and training purposes only and are provided "as is" without warranty of any kind, whether
express or implied, including but not limited to the implied warranties of merchantability, fitness for a particular purpose, and non-
infringement.
Training package content, including URLs and other Internet website references, is subject to change without notice. Because Microsoft must
respond to changing market conditions, the content should not be interpreted to be a commitment on the part of Microsoft, and Microsoft
cannot guarantee the accuracy of any information presented after the date of publication. Unless otherwise noted, the companies,
organizations, products, domain names, e-mail addresses, logos, people, places, and events depicted herein are fictitious, and no association
with any real company, organization, product, domain name, e-mail address, logo, person, place, or event is intended or should be inferred.

Copyright and Trademarks


© 2020 Microsoft Corporation. All rights reserved.
Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property rights covering subject matter in this
document. Except as expressly provided in written license agreement from Microsoft, the furnishing of this document does not give you any
license to these patents, trademarks, copyrights, or other intellectual property.
Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights under copyright, no part of this
document may be reproduced, stored in or introduced into a retrieval system, or transmitted in any form or by any means (electronic,
mechanical, photocopying, recording, or otherwise), or for any purpose, without the express written permission of Microsoft Corporation.
For more information, see Use of Microsoft Copyrighted Content at
https://www.microsoft.com/en-us/legal/intellectualproperty/permissions/default.aspx
Microsoft®, Internet Explorer®, Outlook®, SkyDrive®, Windows Vista®, Zune®, Xbox 360®, DirectX®, Windows Server® and Windows® are
either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. Other Microsoft products
mentioned herein may be either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. All
other trademarks are property of their respective owners.
Introduction
In this lesson, you will learn the following:

• Understand Power Platform ALM


• Power Platform Deployment Lifecycle
• Deploy Resources using a Package or a Solution
Understand
Power Platform ALM
Application Lifecycle Management

• The Power Platform administrator role should consider managing


environments’ resources including apps, flows, connections and data sources.
• Building an ALM plan for app makers is very critical to an enterprise to help
manage, maintain and monitor these resources in each environment.
• Let’s look first at things to consider as an administrator to help guide the
application through its lifecycles from new to production and then at ongoing
maintenance and enhancements.
• For purposes of this section, application refers to the whole set of
components from Power Apps canvas or model-driven apps, flows and any
Common Data Service customizations.
New Business Application
Questionnaire
• Who is the application owner, and who is involved in • Is the application dependent on any other existing
maintaining it? applications or external services?
• Who are the users of the apps? Are they already • Are there different security roles for different types
licensed? of users?
• What environment did you build the app in? • Is there any existing data that must be migrated into
the new production system?
• Are there any Power Apps canvas or model-driven
apps as part of the application? • Does the application have reference data that needs
to be in the production environment?
• Are there any flows?
• Who will be testing the application? Will it be in a
• What connectors are the apps using?
separate environment?
• Does anything require an on-premises gateway? • How will users report problems or enhancements?
• Does the application use Common Data Service • How frequently do you plan to do updates?
entities?
Existing Business Application
Questionnaire
• Are any new connectors being used by the application?
• Is there any new reference data to update?
• Are there any new Canvas, Power Automate flows or Common Data Service solutions added in this update?
• Any changes to how users are assigned security roles?
• Any impact on existing Common Data Service data?
• Any changes in the required licenses?
• Potentially any of the considerations from the New Application column, if it was not a consideration at the
time.
Power
Platform
Deployment
Lifecycle
Business Apps and Automation Requests
Central Hub

• For large organizations users' requests for new business apps and automation
should be managed from a centralized location where operations and solutions
architects should advise whether this solution should fulfill missing business
needs, or an organization already has this feature available.
• This request should run through a predefined process to collect certain approvals
and accepting request terms and conditions defines future responsibilities.
• Power Platform features can be used to build such a central hub.
• Upon requests approval, a concerned user or team can start implementing the
solution at the organization or departmental development environment.
• Consider all points mentioned in a previous slide regarding New Applications.
Managing Power Platform
Environments
Power Platform administrators should define ALM for their resources based
on organization/department level that is based on actual business needs
and available licenses.

It is highly recommended to keep Organization Resources: which will be used across


the entirety of the tenant users.
each resource hosted based on their Departmental Resources: which will target certain
categories as follows: business department users.

This type of classification is helping administrators to define each


environment severity and keep maintenance plans simplified.
Validate and Test Resources
Resource makers and business owners should validate implemented
resources before final deployment to production and before sharing these
resources with business users.

Testing processes could be different based on resource scope and


complexity.

User acceptance testing (UAT) is the common contract between resource


developers and business owners
Managing Deployed Resources
Support
It is highly recommended to consider the Contact Support feature as an
approval criteria for production deployment.

For Power Apps resources, an action button or screen should be created


to contact app the support team using a button or sending an email link.

For Power Automate resources, a report can be created using Power


Apps or Power BI to show flow runs and contact owners directly.
Determine Deployment Method

Power Platform provides multiple methods for deploying resources.

The Power Platform administrator should determine which deployment


method is more suitable to select or use a method for all deployment
scenarios.

Using Packages
Power Platform deployment methods: Using Solutions
Which Resources When you export an app, the dependent resources of the app
will also be included into the package. Initially only a subset of
Can Be Migrated all possible resource types will be supported as outlined in the
Using a Package table below.

Resource type Supported Import options


App Yes, for canvas apps There are two options to import an app into an environment:
Create new: The app will be created as a new app in the environment where the package is imported.
Update: The app already exists in the environment and will be updated when this package is imported.

Power Automate Yes There are two options to import a flow into an environment:
Create new: The flow will be created as a new flow in the environment where the package is imported.
Update: The flow already exists in the environment and will be updated when this package is imported.
Note: All resources that the flow depends on will also be included within the app package that is exported and will need to
be configured when the package is imported.

Custom Connectors No If an app depends on a custom connector, we do not currently support exporting the connector as a part of the package.
If you have an app that relies on a custom connector, your only current option is to manually re-create or update the
connector in your target environment and select that connector when you import the package.

Connections No If an app depends on a connection (such as a SQL connection w/ credentials), we do not currently support exporting the
connection or credentials as a part of the package.
If you have an app that relies on a shared connection like SQL, your only current option is to manually re-create that
connection with the appropriate credentials in your target environment and select that connection when you import the
package.

Common Data Service No Exporting Common Data Service customizations is no longer supported as a part of packaging. This is now supported
Customizations through export and importing the environment solutions.

Gateways No Gateways are only supported in the default (and {tenant name} (from preview) ) environments, so export/migration is not
supported.
Deployment Using Solutions

• In Power Platform, solutions are leveraged to transport apps and components from one environment to
another or to apply a set of customizations to existing apps.
• A solution can contain one or more apps and flows as well as other components such as site maps,
entities, processes, web resources, option sets, and more.
• Some components are nested within other components, for example, an entity contains forms, views,
charts, fields, entity relationships, messages, and business rules.
• Each of those components requires an entity to exist.
• A field can’t exist outside of an entity.
• Solutions need environments with CDS installed to be used – creating environment with CDS will
explained later in this module.
Managed and Unmanaged Solutions
A managed solution is a complete solution that is intended to An unmanaged solution is one that is still under development or
be distributed and installed. isn’t intended to be distributed. When the unmanaged solution
is complete and you want to distribute it, export it and package
• To create a managed solution, you choose the As it as a managed solution.
managed option when you export the solution.
• Solutions created by default as unmanaged are then exported
• You cannot edit the components of a managed solution. as managed or unmanaged.
• You cannot export a managed solution. • While a solution is unmanaged, you can continue to add and
• A managed solution cannot be modified and can be remove components to and from it.
uninstalled after it is imported. • You can export an unmanaged solution to transport
• All the components of that solution are deleted by unmanaged customizations from one environment to
uninstalling the solution. another.
• When an unmanaged solution is deleted, only the solution
• You cannot import a managed solution into the same
container of any customizations included in it is deleted. All
environment that contains the original unmanaged solution.
the unmanaged customizations remain in effect and belong
To test a managed solution, you need a separate to the default solution.
environment to import it into.
• You can’t delete the components by uninstalling the solution.
• When you import an unmanaged solution that contains
components that you have already customized, your
customizations will be overwritten by the customizations in
the imported unmanaged solution and can’t be undone.
La
b:
Exercise 1

Deploy Resources
Between
Environments Using
In this exercise, you will learn how to deploy
a
Package
different types of resources (Apps – Flows)
between different environments using a package.
Step 1) Create a New
App
1. Create a new app from phone layout
and name it Contoso Operations then
Create.
2. Add the following controls to the app
screen:
• Label: Text property = Send Email To
• Text box
• Button: Text property = Send Email
3. Select the button to register
associated flow to this app to send
emails.
Step 2) Create App Context
Flow (continued)
1. In Power Automate studio, switch to
Contoso Development environment
where created app is hosted.
2. Under Power Automate, select Create.
3. Select Instant flow.
4. Name the flow SendEmailFlow then
search for the PowerApps trigger as
shown in the screen shot.
5. Next to flow trigger, add an action step of
type Send an email (V2).
6. Switch action to Advanced mode
Step 2) Create App Context
Flow
7. Select the Ask in PowerApps button to
create flow variables which will be
passed from the created app.
8. Note: Select See more to view Ask in
PowerApps again to create variables for
“Subject” and “Body” fields.
9. Save and navigate back to the Contoso
Operations app to register the created
flow.
Step 3) Register Created Flow to App

1. Register the created flow by


selecting the created flow name
as shown in the screen shot.
2. Type the flow parameters for
email Id, subject and body as
shown below.
3. Press Ctrl + S to save changes.
Step 4) Export App
Package (continued)
1. Select Publish to start exporting the app with
associated flow to be moved to the production
environment.
2. Once the app is published, select Share this app to
navigate to the app details page.
Note: currently the Export package option is in preview mode
which means that all app makers will be able to use this feature,
in a feature update this might be limited to only certain types of
licensed users.
3. On the app details page, cancel sharing screen
popup then select Export package.
4. Export package with the associated flow by typing
the package title and description, note that this
title does not conflict with the package app name as
it remains the same.
Step 4) Export App Package (continued)
5. In the Package Content section, change the Import Setup options based on which mode you must use.
Step 4) Export App Package (continued)
5. For the first package migration, import setup mode should be new, click on Update then change import setup
to “Create as new”.
6. Repeat the same for “SendEmailFlow” then click ok
7. Click “Export” to save the package to local hard drive (this operation is considered a local backup copy of your
app package as well).
Step 5) Import Package to Production
(continued)
1. In Power Apps studio, select the Home
tab then select to switch environments to
Contoso Production.
2. Select the Apps tab then select the
Import canvas app option.
3. Select Upload, then locate the exported
package to start the import process.
Step 5) Import Package to Production
4.
(continued)
Once the package imports successfully,
note that the app and flow resources
import status is marked in green which
means that created new resources are
available because these resources do not
exist however, outlook connector used in
associated flow shows red error mark as
this connector doesn’t exist in targeted
environment.
5. Next choose the Select during import
option to create this new connector for the
app to be able to use and valid to import
into this environment.
6. Now choose Create new to navigate to the
environment connectors tab.
7. In connection window, select the button for
Create a connection.
Step 5) Import Package to Production
(continued)
8. Add or search for the required connector to be added.
9. Select the Create button.
10. Then pick authenticated account.
11. Now the Connection will be added.
Step 5) Import Package to Production (continued)
1. Navigate back to import package screen to refresh the list and select added connector and Save.
2. Select Import.
3. Once the import process completes, notice all package components were successfully added and are
ready to edit or open the app at Contoso Production environment.
4. Navigate to PowerApps studio then select the Home tab and switch environments to Contoso
Production.
5. Now, update the app from the production environment, then repeat the same process to have it
updated in the production environment to be ready for use.
Step 6) Update Deployed
App
1. In the Power Apps studio, switch to the Contoso
Development environment.
2. Edit the Contoso Operations app to change color
and text for some controls as shown in the screen
shot.
3. Save and publish the app after making the
required changes.
Note: If the app is not published, the exported package will only
include the Live latest published version of the app.
Step 7) Re-deploy App
Modifications
1. Repeat the same export process mentioned
previously. You can keep the same package title
as named before since PowerApps will add a
date/time signature to the package title anyway
to avoid naming conflicts.
2. Keep the import setup options as Update, then
select Export.
3. Once the package has exported, switch to
production to import it again and update the
existing version.
Step 8) Update 1. After importing the package to the production environment, select
each import setup option for each package’s component to select the
Resources update action as shown in screen shot.
(continued) 2. When clicking Update, Power Apps will recognize that a resource with
the same name already exists, select the resource name to overwrite.
3. Repeat the same steps for the rest of the components then select the
Import button.
Step 8) Update
4. Once import has completed, open or play an app to review the
Resources published changes.
5. Note that the new imported app version should be published at new
environment to be available for users.
End of Lab Exercise
La
b:
Exercise 2

Deploy Resources
Between
Environments Using
In this exercise, you will learn how to deploy
a
Solution
different types of resources (Apps – Flows)
between different environments using a solution.
Step 1) Setup CDS

1. Navigate to the Power Apps studio using the


environment admin or Office 365 global admin.
2. Select the Solutions tab to start creating the CDS
database.
3. On the New database screen, select currency and
language as shown in the screen shot then Create
my database.
4. Wait for the database installation process for
awhile or refresh the page.
5. After refreshing the solutions page, note the
added default solutions to the environment.
Step 2) Create a
Development Solution
After refreshing the solutions page, note the added default solutions to
the environment.
1. Select New solution and then complete the required fields for the
solution:
• Display Name: The name shown in the list of solutions. You
can change this later.
• Name: The unique name of the solution. This is generated
using the value you enter in the Display Name field. You can
edit this before you save the solution, but after you save the
solution, you can’t change it.
• Publisher: You can select the default publisher or create a new
publisher. Unless you plan to distribute your solution, you
should just use the default publisher for your organization.
• Version: Enter a number for the version of your solution. This
is only important if you export your solution. The version
number will be included in the file name when you export the
solution. Note: The version format is x.x.x.x
2. Click Create
Step 3) Add Solution
Components
1. Select the created solution name.
2. The solution displayed is blank with no
components found.
3. You can start creating new or add from
existing solutions or outside solutions.
4. Choose New  App  Canvas app  Phone
form factor.
Step 4) Create an
App in a Solution

1. Create an app as mentioned before and keep


it simple, then name it Solution App, and
Save and Publish it.
2. Create a second app with the same solution
and name it, Solution App Sample and Save
and Publish that one.
3. Navigate back to the created solution to
notice both apps have been added.
Step 5) Export
Solution Package

1. Navigate back to the main solutions


page, then select Contoso Operations
Solution.
2. Then Export
3. Select Next
4. Before Exporting the solution, review
version number: major or minor.
5. Export solution as Managed.
6. Export
Step 5) Export Solution
Package
Step 6) Import Solution
to Production
(continued)
1. At the Power Apps studio, switch to
the Contoso Production
environment.
2. Select Solutions tab.
3. Create a CDS database following the
same process mentioned in step 1
4. Once the database is built, Import it.
5. Choose file to locate previous
exported solution, then Next.
6. Select the Import button.
Step 6) Import
Solution to Production
7. Click close
8. Note imported solution is
marked as managed, which
can’t be modified on
production environment.
9. All solution components can’t
be directly edited.
Step 7) Modify
Development Solution
1. Switch to the Contoso Development
environment.
2. Select the Solutions tab.
3. Open the Contoso Operations Solution.
4. Select the Solution App then Edit.
5. Apply some modifications then Save and
Publish these changes.
6. Return to the Solutions tab to export the
modified solution.
Step 8) Export Solution
Package
1. Repeat step 5 to export a solution with a new version.
2. After completing the export process, switch back to the
Contoso Production environment.
3. Select the Solutions tab
4. Repeat import steps.
5. Note: Once Importing the same solution name, the
solution status will be marked as a solution update.
6. Select Next.
7. Keep Solution Actions as the default (recommended)
8. Select Import.
9. Test the imported solution’s components.
End of Lab Exercise
© 2020 Microsoft Corporation. All rights reserved.

You might also like