Skip to main content

The iPhora Journey - Part 13 - Automating the Automate

This post was to be the final post of our "The iPhora Journey" series and summarize our entire journey and what we created.  However, as I was preparing the final post I realize there was one item that I hadn't discussed. That is the experience of purchasing a product and installing it onto a Domino server. So, Part 14 will be the final post of this series.


Whether you are purchasing a product that you really want or paying bills online, purchasing services or products online has become the norm.  For a new product launch we wanted this easy-to-buy and deploy experience.


Depending on the version of our product, different features are enabled. If a customer wants to upgrade the product to a more advanced version, the experience should be as easy as signing up for the upgrade, paying and the new features should available in the customer's installation. This is expected for most public cloud-based solutions. However, not so easy for private cloud/on-premises solutions.


Normally, it requires new downloads, configuration by the administrator, maybe installing new software and more configuring and testing.  This can create a significant barrier to entry especially for SMEs whom may not have the resources.


So, our goal was to create this easy-to-buy experience for our private cloud/on-premises solutions.


You can breakdown the experience into three areas:

  • Registration and payment
  • Licensing
  • Distribution and deployment


The original plan was to create a custom solution or license a technology that is already available to make this work. But why, we already have an extremely powerful automation platform that we created, iPhora Automate.

It was time to Eat Your Own Dog Food.

In creating these processes, we discovered more gems that are available within Domino with some capabilities we never knew existed. But that is a discussion for a future blog post.

Each of the above processes involve a series of steps and approval processes.  For example, during the registration process, a user fills out and submits a form with their information. This triggers an email notification to the user with a verification code that they enter into the verification form to confirm that they are who they claim. Upon verification, a number of asynchronous and synchronous processes are triggered. Some of these processes launch ActionStreams that create entries into the CRM App that we created and some create a user account into the customer portal where a user will get their license key and download the product.

The license key is then used during the installation process to determine what features are available to the customer. There are many other processes that are launched during installation to provide this smooth easy-to-buy customer experience that we all come to expect.

We are far from done. There are many aspects of the buying process that we are still designing and working on like connecting internal and external services in order to provide customers the best experience in purchasing and deploying our products.

Finally, next time the final post of "The iPhora Journey".


The iPhora Journey - Part 11 - Integration to Cloud-based Services for Business Users Made Simple
The iPhora Journey - Part 10 - ActionStream - the Heart of iPhora
The iPhora Journey - Part 9 - Flow-based Programming for Your User Interface
The iPhora Journey - Part 8 - Flow-based Programming
The iPhora Journey - Part 7 - Transforming Domino with Microservices
The iPhora Journey - Part 6 - An Application, Rethinking and Redefining
The iPhora Journey - Part 5 - Dammit Jim, I'm a LotusScripter not a JavaScripter
The iPhora Journey - Part 4 - JSON is King - The How
The iPhora Journey - Part 4 - JSON is King - The Why
The iPhora Journey - Part 3 - Creating an Integrated UI Framework
The iPhora Journey - Part 2 - Domino, the Little Engine that Could
The iPhora Journey - Part 1 - Reimagining Domino


Comments

Popular posts from this blog

The iPhora Journey - Part 8 - Flow-based Programming

After my last post in this series -- way back in September 2022, several things happened that prevented any further installments. First came CollabSphere 2022 and then CollabSphere 2023, and organizing international conferences can easily consume all of one's spare time. Throughout this same time period, our product development efforts continued at full speed and are just now coming to fruition, which means it is finally time to continue our blog series. So let's get started... As developers, most of us create applications through the conscious act of programming, either procedural, as many of us old-timers grew up with, or object-oriented, which we grudgingly had to admit was better. This is true whether we are using Java, LotusScript, C++ or Rust on Domino. (By the way, does anyone remember Pascal? When I was in school, I remember being told it was the language of the future, but for some reason it didn't seem to survive past the MTV era).  But in the last decade, there a

Creating Twitter Bootstrap Widgets - Part II - Let's Assemble

Creating Twitter Bootstrap Widgets - Part I - Anatomy of a Widget Creating Twitter Bootstrap Widgets - Part II - Let's Assemble Creating Twitter Bootstrap Widgets - Part IIIA - Using Dojo To Bring It Together This is two part of my five part series "Creating Twitter Bootstrap Widgets".   As I mentioned in part one of this series, Twitter Bootstrap widgets are built from a collection standard HTML elements, styled, and programmed to function as a single unit. The goal of this series is to teach you how to create a Bootstrap widget that utilizes the Bootstrap CSS and Dojo. The use of Dojo with Bootstrap is very limited with the exception of Kevin Armstrong who did an incredible job with his Dojo Bootstrap, http://dojobootstrap.com. Our example is a combo box that we are building to replace the standard Bootstrap combo box. In part one, we built a widget that looks like a combo box but did not have a drop down menu associated with it to allow the user to make a select

The iPhora Journey - Part 3 - Creating an Integrated UI Framework

The iPhora Journey - Part 1 - Reimagining Domino The iPhora Journey - Part 2 - Domino, the Little Engine that Could The iPhora Journey - Part 3 - Creating an Integrated UI Framework There are many ways to create the user interface (UI) for a web application. The HTML page could be created on the server and then pushed out. It could be static with the data generated on the page by the server with JavaScript, providing a more dynamic experience, or the server could generate new HTML content to update portions of the web page. XPages or PHP are good examples of this. Another method is to have the web page partially generated by the server and have JavaScript build the rest of the HTML by pulling data from the server via an API. This is the approach used in the Single Page Application (SPA) model. In all cases, it is still dependent on the web server technology being using.  As mentioned previously in this blog, XPages is dependent on complete integration between form and document, which e