Often technology companies focus on innovators who started with a clean slate. Unfortunately, this is far from reality for most businesses, as most organizations have critical initiatives to become digitally native and agile to meet customer expectations. My employer helps companies with both legacy and modern applications — which is the reality in most enterprises today. New initiatives to modernize still have a reliance on legacy systems which contain critical data and business logic. Although some organizations are proactive in attempting to understand their highly complex systems, most are struggling. The technology to help with this situation is not as widely deployed as necessary. Some application performance monitoring (APM) solutions provide technology to build maps and paths of transactions via tracing, but even fewer work at scale in production. This technology not only provides visibility into systems boundary interactions, but also measurement allowing for the correction of performance and scalability bottlenecks. Adding performance testing (load testing) products and services coupled with APM help immensely.
Many organizations decide to build these new systems and apps using elastic cloud capabilities or services, thinking they will protect them from flash traffic or the need to scale. The oversight is that these elastically scalable applications rely on legacy technology housed in traditional data centers housing without elastic scalability. As these new apps are launched, it may cause cascading failures. Digital transformation, unfortunately, typically requires the interfacing of legacy and new systems of engagement for most organizations.
An example of this: in reality, many enterprises are adding capabilities to take advantage of IoT requirements. Just last week I had one such discussion; the enterprise was adding location awareness in a mobile app. It wanted to present context-relevant app functionality and offers depending on the user’s profile, preferences and history. To meet this new requirement a lot of additional data was being collected and fed into legacy systems to allow these new capabilities to function. In this case, the legacy system was brittle and couldn’t handle the additional transactions and data. The enterprise realized this too late to make the required changes, and the net result was a rather embarrassing launch, which had to be rolled back. The overloaded system affected day-to-day business operations, not just the mobile app users.
The result was that proper end-to-end performance testing and scalability analysis were overlooked, and the business suffered. The organization reactively implemented visibility and did additional testing, but this could have been avoided. Poor planning and the need to quickly address system failures are a challenge for most. Typically our organization gets the frantic phone calls to license software to analyze the scalability bottlenecks in highly complex production systems. The question for me is when will organizations stop being reactive? Will it require a mindset change, software change or infrastructure changes?
Feel free to comment here or via Twitter @jkowall, and thank you for reading!
All IoT Agenda network contributors are responsible for the content and accuracy of their posts. Opinions are of the writers and do not necessarily convey the thoughts of IoT Agenda.