By Lee Humeniuk
The topic of digital transformation is important for any business to understand what it takes to survive in today’s digital economy, but more importantly how to thrive when satisfying the future demands of your customers.
A thought experiment – manual vs digital business comparison
Imagine you run an up-and-coming movie theatre business. You provide the same core services as your competition: shopping, bookings, payments, event room booking, and food concession. The only difference is that your competition has their services digitized and semi-automated. This inherently gives them an advantage over your share in the market; they can respond more quickly to demand than you will ever be able to, so long as you continue to operate in a non-digital context.
It’s just not possible to compete in today’s markets when you still publish your showtimes in print ads versus theirs, which are all online and accessible by mobile devices. Your in-theatre ticket purchases and phone-in event room bookings provide friction for patrons who are accustomed to purchasing tickets anywhere online. The long lines at the food concession are frustratingly slow compared to the mega-theatre down the street who bundled all of those goodies into the online purchase.
And somewhere, it’s almost guaranteed you have a master spreadsheet for handling ticket sales that are manually updated on a daily basis. Not only slow but this process also leaves room for error and provides less than real-time business insights, as opposed to your competitor who knows instantly how many tickets have been sold.
Examining the contrast between the IT models of your business, or lack thereof, versus your competition, we can see that the future looks bleak for your movie theatre. Enter digital transformation. The concept is pretty straightforward: we digitize all systems and automate certain processes so that we can future-proof the business as much as possible, leaving you in a position of scalability and flexibility. The real question is: how do we accomplish such an ambitious goal without leaving our business operations in disarray?
Which approach is best?
We have a few options at this point. We can create a monolithic, all-in-one application, or we can opt for a microservices architecture.
There are pros and cons to both approaches, but there are a few things to be wary of with a monolithic application in this scenario. The main problem is that monolithic approaches are inherently less adaptable to change. As time goes along markets change, technologies shift, and companies also move in directions that we might not anticipate at the outset. These changes make it less possible to forecast what performance requirements may be needed in the future, meaning that you must build a monolith upon conditions that exist today and it may not be on a solid foundation tomorrow.
When taking your business from paper to computer we find that you can de-risk the process when you mirror individual pieces of the business logic as opposed to attempting to mirror a large consolidated system. This is fundamentally a microservices architecture or API-led approach, and it excels because it’s easier to understand and replicate the relationships between business and technical requirements in smaller, more manageable pieces.
In the context of our movie theatre example, the microservices approach would capture the ability to search online for a movie and all related search functionality in its own application silo. We would call the resulting group of applications “shopping APIs”. In this manner, we would apply the same process logic to the rest of the core business activities and customer experiences.
After some discussion, we’ve been able to identify the shortcomings of your movie theatre business and how we might address them with a digital transformation strategy using microservices.
About the author
Raised in Beaumont, Alberta, Lee grew up playing hockey and struggling with math. Often sarcastic and always a dreamer, you’ll find Lee at the local pub enjoying a Guinness whilst laughing at his own jokes and pitching the next big software project.