Field Notes: Architectural Principles and Design Notes

This Field Notes series chronicles my experiences with a major transformation project I’ve been involved in for the past eighteen months. I have worked on almost every aspect of this project, from application rationalization to portfolio management to reconstructing business processes and aligning and synchronizing IT with the business.

For the past nine years, I’ve been writing and working with organizations to address the architectural principles of modularity, integration, standardization, and simplification. Why are these principles so important, particularly in today’s cloud world? They are important because they serve as actionable guidelines for designing and implementing an architecture. These four principles offer high-level approaches to making an enterprise more adaptive.

  • Modularity: One of the most troublesome aspects of change is the ripple effect: one change leads to another, and everyday events send cascades of change throughout the organization and the IT functions that support it. Modularization groups design parameters that are likely to be highly interdependent behind a stable interface, so that users and providers of a module can innovate independently. The fundamental module is the service. The theory behind modular services builds upon the principles inherent in object-oriented and component-based development. Modularization breaks down monolithic structures and creates reusable components and layered, abstracted functionality to improve sharing and reuse. One of the key technologies, virtualization, is closely related to modularity. As we all know, virtualization is an abstraction that hides physical characteristics, including location, inside a service module or virtual operating environment. It organizes components into uniform, logical services, making the components interchangeable (substitutable) and shareable. When a resource is needed, virtualization can cause the resource to be created or allocated using available lower-level resources with similar characteristics. Benefits of virtualization include elimination of stranded capacity, simplified multisourcing, reduced costs, and increased speed of implementation.
  • Integration: By integrating within and across execution and management environments, enterprises can leverage best-in-class, third-party components to achieve a competitive advantage and improve agility. The fundamental approach to integration is the use of a service-oriented architecture to define a loosely coupled, federated system of services. Technologies such as web services promote the use of encapsulation to hide implementation details of modules behind interfaces. This, in turn, allows the plug-and-play of modules to enhance flexibility and the seamless evolution of systems.
  • Standardization: Standardization is the method used to handle heterogeneity within IT. It allows systems to interoperate and also allows the creation of interchangeable components and processes. Standardizing interfaces, tools, service templates, and processes simplifies the environment and provides economies of scale in purchasing, usage, and management. It also reduces cost and time to implement and integrate, and it lowers spending on professional skills. Examples of standardization include: (1) Establishing enterprise-wide standards as part of the enterprise architecture and then using business/IT governance processes to enforce the standards. For instance, standard configurations can be defined and tested to ensure that all components in an IT infrastructure service delivery stack interoperate correctly. Application assemblers/integrators can then reuse these standard configurations without having to incur the time and costs of integrating the infrastructure. (2) Use of industry-standard operational reference models for business processes. Enterprises can exploit the best practices inherent in the models and use them to integrate their operations with their trading partners. They can use the KPIs included in the models to monitor business processes across organizational boundaries. They can orchestrate the workflow of the business processes by making the model executable. The executable model further provides a basis for instrumentation of process execution and for monitoring through automated dashboards. Enterprises can also use the business process model to drive application consolidation.
  • Simplification: Simplification is the primary remedy for dealing with IT complexity. Approaches to simplification include the following: (1) Using models to automate service delivery and management, focusing on processes that are repetitive and prone to human error, and working toward applying closed-loop control to allow self-managed, self-healing, and self-optimizing systems. These will save time and money, reduce human errors and risks, and increase quality. (2) Consolidation of applications and infrastructure by reducing the number of types, versions, and instances. Enterprises can then focus resources on a smaller set of components and allow economies of scale and management.

This customer is a long way from having its BU-specific IT organizations transformed. It’s a challenge every day for it to manage the evolution from its current state to that of a truly adaptive enterprise. We started this journey from an established baseline and are beginning to move through what I see as three stages—stable, efficient, and adaptive—with each stage providing more value to the business.

In my last article, about managing change, I stated that change is especially difficult for organizations. We have been working hard on it with this customer. IT governance and change management, properly implemented, are the vehicles that can ensure that people, processes, and technology are aligned for superior execution. For example, they help align the IT team and business organizations; define processes, policies, and the environment; map IT functions to business priorities; and enable a phased approach to adaptiveness, one solution at a time.

The journey toward this new IT organization requires the integration of people, processes, and technology. While some of these require long-term change, this customer is starting to build that adaptive enterprise today. Here are some of the steps we have followed that the customer is currently engaged with:

  1. Agree at the senior management level that business and IT must be synchronized to achieve a competitive advantage. This implies that agility and quality improvements, as well as cost and risk reductions, are all critical competencies for the organization. Request executive sponsorship for a formal initiative within the enterprise to improve the synchronization of business and IT.  –CHECK
  2. Assess how agile the enterprise is today. Assess the time, range, and ease with which changes can be made to the existing IT environment, thereby determining where in the journey the enterprise is and what the most important gaps are that need addressing, including training and resource needs. Outline the business case for filling those gaps, balancing with cost, quality, and risk considerations. Identify high-priority project areas that will bear fruit quickly based upon the assessment. –ALMOST CHECKED
  3. Update the organization’s enterprise architecture with adaptive concepts. Use adaptive structures, design principles, and rules to determine target results. Include use cases or scenarios that are critical to the enterprise so that everyone is focused on solving the same problems. –STILL A WORK IN PROGRESS
  4. Break the planned implementation into manageable phases. Begin by addressing at least one of the most important gaps identified in step 2. Hold cross-functional workshops to establish an overall architecture for the solution.
  5. Review the plans, including success metrics, with the executive sponsors to ensure that business and IT initiatives are evolving the enterprise toward their goals.
  6. Be sure business and IT investment strategies reflect agility competency development.
  7. Execute the initial phase, and go on to additional phases when reviewed by the sponsors.

As I have stated before, change is the only constant. In today’s ever-changing business climate, successful companies are those that create this adaptive enterprise and can effectively synchronize business and IT. We are working hard to match evolving business needs with their IT environments and, where we can, to strike a balance across managing costs and risks, increasing value and quality, and enhancing business agility. The customer is putting forth a Herculean effort to transform its respective IT organizations into fundamental enablers for the enterprise. Through this transformation, we are watching the legacy enterprise shift from a series of disjointed business units with isolated, manually connected applications to one that has distributed, integrated business processes that connect with trading partners and is supported by a common, shared infrastructure. This transformation will completely eliminate stranded capacity and introduce a new flexibility that enables the customer to respond quickly to change.