A Praise for Self-Service in IT Value Streams
It's a new day for the IT department.
Join the DZone community and get the full member experience.Join For Free
The Changing Role of IT in Business
For as long as businesses have relied on the use of technology, IT departments have been responsible for handling essential elements, such as ERP, HR, e-mail, and networking in support of the business' operations. A great deal of what IT departments were made responsible for was related to infrastructure and software provisioning, acting as proxies between technology providers and the business, wrapping technical components and making them available to the business in a governed and maintainable way.
Although technology has, for a long time now, been seen as essential to the success of most businesses, technology departments have generally been perceived as necessary expenses (cost center) to enable them to operate. In this context, the advent of public cloud providers and all its on-demand and self-service offerings, making technology resources only one click away from the business, didn't make things easier; in reality, this fact alone put a lot of pressure on IT departments with a need to establish a deeper connection with the business strategy, understand its objectives, and play a role that is a lot more sophisticated than the old and traditional technology proxy.
In this context, several IT departments, throughout the years, have decided that to better serve the business they also would need to embrace the cloud model. Such transformation is much more profound than simply replacing some technical building blocks or creating new job roles within the organization. It requires real change in the way those organizations operate and represent a long term commitment to every stakeholder in the organization to succeed.
The Core, Chronic Problem Modern IT Organizations Face
For the sake of context and to better understand the roots of the problem IT departments need to tackle, we relied on the body of knowledge that describes the core, chronic conflict that affected manufacturing in the 1980s. Back then, every plant manager had two valid business goals: protect sales and reduce costs. To fix this problem, Lean principles, many inherited from the Toyota Production System, such as reducing in batch sizes, making work visible, reducing work in process and amplifying feedback loops, were largely used in the industry, and generally produced substantial and sustainable reduces in cost, with increases in quality and productivity.
Today, in the context of IT organizations, regardless of their size and complexity, the same conundrum can be observed if we apply, the most commonly used tool of the theory of constraints, the Evaporating Cloud technique:
Source: By Trevithj, Wikimedia
In this exercise, to achieve the IT Organization's objectives, they need to respond to urgent business needs and, at the same time, provide a stable and predictable IT production environment. Also, to succeed, organizations want to complete work/changes quickly and at the same time ensure they are conducted carefully, not taking unnecessary risks to obtain the anticipated outcomes.
Source: The DevOps Handbook
Business expectations have become higher than ever. Users expect continuous product innovation through faster and more engaging user experience. Cloud providers, on one hand, become the platform of choice as they reliably deliver the tools and technology to help the business thrive; on the other, they may increase the risks associated with security, regulation for data privacy, and operational risk it the appropriate governance measures are not carefully considered.
IT organizations need to understand their role in this new landscape, what value they are expected to deliver to the business and how they can become enables rather than inhibitors.
Lean Principles Applied to IT Value Streams
The body of knowledge behind DevOps not only encompasses the same principles that addressed the manufacturing problem in the 1980s but are also the most tested practices to help IT organizations to succeed in today's landscape. In essence, the practices behind DevOps support 3 complementary aspects:
- Enable fast flow of activities from Development to Operations, or as many might describe, from concept to cash. The practices around this aspect support the steady fast transformation of an idea or concept into a product that delivers value to customers and generates the anticipated return on investment to the business.
- Enable fast feedback cycles. This aspect represents the organizational structure that will allow improved communication, aka the famous two-pizza team rule that limits the size of a team to the number of people that could be fed by two pizzas.
Source: The Science Behind Why Jeff Bezos’s Two-Pizza Team Rule Works
"The issue with larger teams isn’t quite the team size itself. As organizational psychologist and expert on team dynamics J. Richard Hackman would point out, it’s the number of links between people that is the problem." (Choi, Janet, The Science Behind Why Jeff Bezos's Two-Pizza Team Rule Works)
3. Transform the culture and enable structures that create a safe environment where people can learn through hypothesis-driven experimentation and improve existing practices and business outcomes in the process.
Source: The Improvement Kata, Part II – Scientific Method & Shingo Principles
Why Self-Service Is the Single Most Important Foundation to Build
First and foremost it is important to establish what role IT should play in most modern organizations. IT is in the business of providing information and technology services directly to customers or to lines of business that provide services and products to customers.
"You should either be serving the customer or serving who's serving the customer...It's as simple as that."
As many other service providers, that have a value stream to fulfill their purpose of serving somebody or something, IT value streams are way too complex, with ramifications that depend on people as well as on elements that change too fast and too often.
IT organizations would be like any other services business if they were on steroids. For IT, in general, there isn't enough time to learn from past experience and plan and test our hypothesis before they go into production. Disruptive technology and business models are at every doorstep and the cost of opportunity for not taking advantage of them rather sooner than later will, for sure, be collected in the near future. In such a dynamic environment, success can be measured by the ability to adapt and respond, effectively to market and technical change.
"... it is not the most intellectual of the species that survives; it is not the strongest that survives; but the species that survives is the one that is able best to adapt and adjust to the changing environment in which it finds itself." (Megginson, ‘Lessons from Europe for American Business’, Southwestern Social Science Quarterly (1963) 44(1): 3-13, at p. 4.)
A Praise for Self-Service in IT
The most effective way to make an otherwise bullet-proof process fail is to rely on a human's ability to execute it over time. This is especially true if it's through a complex value stream where there's a need to wait for other people to perform their work or to provide a necessary piece of information before the work can flow from one step to the next. As in the Chinese Whispers or telephone game, the message passing down the lane will be less than complete or accurate and the original message will, in the end, have a completely different meaning than originally intended.
Source: Identify bottlenecks with value-stream mapping
A few years after NIST's definition of cloud computing was published, all its essential characteristics became industry standards in and out of most enterprises. In general, the cloud model seems to be the perfect answer to allow enterprises to move faster as it can provide easy access to infrastructure to enable fast flow through the creation, on-demand, of environments as well as providing access to tools that will enable the creation of build and deployment pipelines, platforms for observability and several services that can be combined to deliver faster value to the money invested in technology. If we carefully inspect what most lead cloud providers did, it was to offer on-demand and self-service access to almost their entire portfolio of products and services. A portfolio that can be easily integrated together and deliver faster value to its customers. This model had successfully enabled new business models and services that wouldn't exist otherwise ( ie. Netflix, Uber, Airbnb, Spotify, etc...).
IT organizations aiming to succeed in their objective to contribute to the business goals need to leverage the self-service model to fulfill their purpose of providing the means the business needs to create value and go above and beyond the standard role of infrastructure providers.
Cloud is all about self-service access to the means of production. IT organizations willing to become "cloud-like" providers should focus on that. Everything else is just very expensive for hosting. Changing the tools and services available to developers, as well as the means to easily leverage their use, changes the dynamics of IT and as a consequence, drives better business performance.
About the author:
Ricardo is a CTO at IBM, specialized in technology transformation in banking and financial services through the adoption of Lean, Agile, Cloud, DevOps, SRE and Microservices. He has 25 years of experience and is currently engaged in helping customers understand that to take advantage of the Cloud, they need to embrace a new way of work. A way that leverages new engineering practices and is focused on collaboration and continuous learning. Connect with him on https://www.linkedin.com/in/rcsousa1/ and https://twitter.com/ricardo_c_sousa
Published at DZone with permission of Ricardo Coelho de Sousa. See the original article here.
Opinions expressed by DZone contributors are their own.
RBAC With API Gateway and Open Policy Agent (OPA)
What ChatGPT Needs Is Context
Competing Consumers With Spring Boot and Hazelcast
Extending Java APIs: Add Missing Features Without the Hassle