My aspirations at commercializing “externally” facing, manually executed workflows using the MS Flow SDK are at an impasse. There are several key changes required to move forward, listed below.
In addition to removing my “Blockers” for leveraging the MS Flow SDK, I have a “wish list” below that contains features that would enhance the overall Power Automate solution.
“My Flows” Folder and Tag Hierarchy
I asked for this feature from Day #1 when MS Flow was released. Organizing your Flows within a flat, hierarchical structure is difficult. Users cannot create folders and organize their content.
Organizing Flows
The user should be able to create folders and put Flows in them.
Attach “Tags” to each of the Flows created. implement another view of “My Flows,” and group Flows based on Tags with the ability to show a single Flow within multiple Tag views.
Version Control
The user should have the ability to iterate saving workflows, compare versions of workflows, and revert to a previous workflow version.
Security Model Enhancements – Sharing Workflows
Implement execution permissions without the ability to manage or read any other workflow information. Introduce the concept of a two-tiered security model:
Admin user, the current view for all Power Automate users
Introduce a user profile/security group, execute only specific workflows where explicitly granted permissions to a Flow.
Eliminate the need for another Power Automate account only being used for shared workflows to execute.
You should only need one account with a Premium Connector $ license if only using the secondary account for execution.
When I first started looking at Microsoft Flow, the previous name of Microsoft Power Automate, I recognized the high value and potential uses within my organization. Almost innumerable Connectors to 3rd party applications, “sensing” / triggers for many of the applications participating. Huge potential, and won’t “break the bank” with a 15 USD price per user/month which contains all of the “Premium Connectors.”
I started automating processes for both personal and business. I upped my social media game, for example, sending a mobile notification to myself when there was a potentially interesting tweet. Or, if there was an RSS feed containing keywords I was monitoring, I sent myself an email with the news article. My client had needs around Microsoft Azure DevOps (ADO) that it was not capable of doing “out of the box,” so I took on those automated workflows with ease.
Venture using New Business Model with msflowsdk
Then I thought it would be great to commercialize some of these workflows. However, there were several technical limitations I came to realize. First, to execute one of these workflows manually, you would have to execute it from within the MS Power Automate web or mobile application. The user must be logged in with your Power Automate credentials to execute “your” workflow manually. As a Power Automate user, you could “Share” Power Automate flows with other Power Automate users. Unfortunately, that would require your web app customers to have Power Automate accounts paying as much as 15 USD per month. We would have to think in terms of a generic “Production” application user, potentially shared with all external, commercial users.
Providing Custom Interface using HTML and JavaScript
Then I realized there was one way to present the Power Automate Flows without the Power Automate Web UI or the Power Automate iPhone app, and that would be to use the MS Flow SDK to build HTML and JavaScript Web applications. Unfortunately, you would still have to log in with your Power Automate user, that has access to the flow, but the User Interface was highly customizable by using MS Flow SDK.
Using “Generic” Test User for MS Power Automate
Limit the user’s access who does have access to your Microsoft Power Automate workflows. As micro as possible to granularize the permissions, such as execute XYZ Power Automate Flow without permission to read/see ALL the Power Automate Workflows, At the moment, that doesn’t seem possible (TBD). I need to recheck in Azure Portal and client app registration.
Does my approach to commercializing MS Power Automate apps even supported from a Microsoft business perspective? I don’t know yet. I read the article: Types of Power Automate licenses and need to reread this document.
Need the ability to grant “Execute” access to specific MS Power Automate workflow users without the ability to create or read any workflows of their own, limited Power Automate, User License?
Create an Azure AD User For Each Customer
Technical seamless implementation would be required to add Azure AD users who have paid a commercial fee for the Web app powered by Power Automate, or I embed advertisements into the Azure, Power Automate, Custom Web App.
The Experiment – SMS Delay
Wouldn’t it be fun to send a text message with a delay, enter a text message, and parameterize the delay in N minutes? How fast could I write the app across multiple platforms, desktop, and mobile? The backend and mid-tier would probably be the longest aspect of the development of this app. You probably need to put it in a responsive Web App to resize it to fit the platform. But the N tiers of the stack, how fast can I develop that? Less than an hour using Power Automate.
Power Automate Workflow
This Power Automate Workflow has three steps in the workflow: the “Manual Trigger,” the “Delay,” and leveraging the Twilio Action – Send Text Message (SMS), which happens not to be a “Premium” connector.
Front End Code to Integrate
With a combination of HTML, JavaScript, and the MS Flow SDK, I was able to put the SMS-Delay app together rather swiftly, including everything from Azure Authentication to my app to execution.
Give SMS-Delay a Try
Would you like to try out this Power Automate manual workflow? Please provide ANY login you would like to use for Azure AD authentication, and the user must have access to Microsoft Power Automate FREE license. Once you provide the user name to me, I will update Azure AD to include your permissions to the app and then send you a note to give the app a try: SMS Delay Application (rosemansolutions.com)
To Be Continued
For the next steps, I’d like to…
Publish the project HTML and JavaScript code I used to create this app
Solve the riddle of the Power Automate authentication
Create this and many other applications using the MS Flow SDK
Anonymous Authentication or Limited Authentication
Limiting the authentication, using very granular controls of Power Automate which may or may not yet be implemented. Have a limited Power Automate user with grant permissions ONLY to execute a specific workflow.
Is it possible to execute a Power Automate workflow with anonymous credentials and not necessarily have a Power Automate user account?
Project Managers, Scrum Masters and Agents of Change
If you’re working on any type of project as a Project Manager, Scrum Master, or are part of any change management process, these tools should be in your technology toolkit. Over the years I’ve adopted the tools listed here. Some of these products were already part of the corporate environment, so I was required to use them, sometimes to my chagrin. In other corporate environments, I had the freedom to identify, select, and adopt one or more of these tools for teams I led. I hope this article introduces you to the next tool in your toolkit.
Project and Product Management Tools
Regardless of project implementation methodologies, as an agent of change, tracking requests for change, and approved changes for implementation should be quantified for effort and costs associated with the changes. Categorizing, classifying, prioritizing changes are all possible if changes are captured, tracked and opportunities compared.
Automation / Workflow
Project management automation? You bet!
Collaboration
Anyone not interested in a collaborative environment for dynamic projects doesn’t know the statement “Share the Blame, Pass the Credit.”
Communication
“There are no words to express…” so say it in a beautiful, graphical presentation that will get your message across.
Documentation
Meeting Minutes, Standard Operating Procedures (SOP), Functional Specifications, random notes, images of error messages, etc.
Financials / Project Reporting
I once had to track a project “THIS BIG“, and it came with a few accountants in tow.
This list is to highlight the most recent tools I’ve used “in the field”. Just because I’ve omitted a product or service, it doesn’t mean I don’t advocate their use. Please see the archive file below on additional tools I’ve used prior to my most recent engagements.
If you’re interested in a product review of your software targeting Project Managers or Scrum Masters, please contact me with your product information, and I will follow up.
Smart Solutions
Definition: Product Owner (PO)
The Product Owner (PO) is a member of the Agile Team responsible for defining Stories and prioritizing the Team Backlog to streamline the execution of program priorities while maintaining the conceptual and technical integrity of the Features or components for the team.