As Developers we are immersed in building our product with the utmost quality using the appropriate and latest technology, where possible but are we also aware of the current trends in the industry which will help us to chart a future career path and also keep abreast of the latest trends in the industry.
As Developers working in an agile software development environment, we are aware of Extreme Programming (XP) (an agile software development methodology), but how many of us also know what XC is? We are aware of CD (Continuous Delivery), but how many of us also know what CD++ is? Over the years, it is preferred to develop skills in multiple areas having a diverse individual competency profile as compared to being a specialist in one area having an individual single-competency profile.
Continuous Delivery (CD) can be defined as a software engineering discipline or approach having a set of practices whereby the code is rapidly and safely ready to deploy to production after automated tests have passed as per the business requirement. On the other hand, Continuous Deployment means every code change is automatically deployed to production. However, different organizations in the IT industry may have slightly different interpretations of the term. When we expand on these concepts, we have CD+ (Continuous Delivery Plus) which means focusing on the service itself apart from the continuous delivery mode and CD++ (Continuous Delivery Plus Plus) which means focusing on the entire value chain where the boundary between the internal and the external becomes blurred and the organization is experienced as a single entity by the customer.
I will expound on these concepts with an example from the Banking domain.
In the banking industry, an organization initially focuses on meeting the customer expectations and implements continuous delivery practices in order to meet the expectations of the customer like faster time to market (TTM), improved product quality and related parameters. It implements a set of practices like automated testing, continuous integration and other practices. This is the first step in the evolution of the organization in meeting the needs of the customer completely as per the customer requirements.
Subsequently, when the organization is focusing on implementing CD+, it will focus on the componentization of their service to the customer and which is also known as Banking as a Service. In this case, the bank will focus on integrating the different components before offering the service to the customer where earlier it was offering all the services by itself. Components are now produced by specialists who can process the pieces of the value supply chain more effectively than the vertical integrator.
A typical banking model focuses on the following key areas:
- A retailer that focuses on the customer and the people.
- A processor that focuses on the process and channel.
- A manufacturer of product(s).
The bank in the CD+ phase is now working as an assembler of components that is most effective in meeting the customer expectations. The bank does not need to build and control all the components. It can source it from specialist organizations, which helps the bank to focus on assembling the components and delivering the best possible service experience to the customer.
Thus, the key areas cover the three main areas of business value:
A retailer that has focus on the intimacy with the customer (the mobile app).
A processor that is focused on operational excellence (the API).
A manufacturer of products (Cloud).
Across this whole value chain are components that agile specialists can do far better than the larger and slower generalist organizations. However, the key focus for the bank is that the large but slow generalist organization has the appropriate customer traction and enduring brand legacy that is more important for bringing together the various components and ensuring that the best possible outcome is experienced by the customer.
Now the bank in the CD++ phase focuses on how they can still give additional value to the customer. In this case, the focus is on Complexity Theory and the premise that organizations are considered as living organisms that are fully networked internally and externally, and the high-performance organizations of today are those that are better networked in rapidly connecting entities with opportunities and ensuring rapid response for the problems faced by the customers.
Complexity generally tends to be used to characterize something having many parts in an intricate arrangement. The study of these complex linkages is the main goal of complex systems theory. The organization is considered to be a complex adaptive system (CAS) that is made up of numerous smaller complex adaptive systems and the interaction among these systems and with the overall organization itself leads to an outcome that cannot be predicted earlier and is dependent on a concept called emergence. The interactions among the various CAS entities leads to an emergent outcome that is greater than the sum of its constituent entities.
As per Wikipedia, Complexity Science is defined as "the study of the phenomena which emerge from a collection of interacting entities."
A complex adaptive system has some or all of the following attributes:
Complex systems tend to be high-dimensional, non-linear, and difficult to model. In specific circumstances, they may exhibit low-dimensional behavior. The focus on social networking is because it conforms to the three heuristics of complex systems: finely grained objects, distributed cognition and disintermediation. In a volatile, uncertain, complex and ambiguous world, quick and real time feedbacks are the need of the hour and not linear processes. Messy coherence is the essence of managing complexity. However, the usage of appropriate metaphors for elucidating complexity brings the focus on interconnectedness and networking which ultimately leads to another metaphor for explaining the future state of the organization.
A simple metaphor for explaining the future state of organizations is a Klein bottle. A Klein bottle (hypothetical three dimensional equivalent of a Moebius Strip) is where the outside and inside of the bottle are one and the same. It is an example of a non-orientable surface (two-dimensional space) in which notions of left and right cannot be consistently defined. A Klein bottle has no boundary. The inside is the outside. This is going to be the future state of the organization where the organization that is better networked internally and externally is the one best suited for meeting the rapid changes in the market place and for satisfying the customer.
Some organizations have been very effective at using social media and other tools to engage external communities including their customers. Others have used social software and the tools of Enterprise 2.0 internally to build profound conversations and meaningful collaborations. A small number of organizations have proved to be good at both internal and external connection. These are the organizations that will succeed and move forward in the future.
The challenge is to apply the internal network capabilities of the organization to meet the external demands of the customers and similarly, utilize the experience gained in building the external network capabilities with the customers and apply it to the internal organizational environment. This is also where the opportunity lies for the future organizations.
For the progressive organizations of the future, the inside and outside will be the same and cannot be distinguished. For example, different functions like Marketing, HR, and Sales will mirror and learn from each other’s experiences and competencies because they are all doing the same job. In organizations that have learned to blend this concept well, the different functions may also merge to form one function. Thus, the inside becomes the outside and from the customer perspective, it is one seamless interaction with the organization. This is called Extreme Collaboration (XC) where the boundaries between the internal and external points in an organization gets blurred and for all practical purposes, the customer experiences only one entity when interacting with the organization.
On the contrary, if you can clearly identify the differences between the internal and external aspects of an organization, it will face a major challenge in the future as its response time may not be rapid enough to meet the needs of the customer.
Thus, organizations of the future need to focus on CD++ to meet the expectations of the customer fully.