When people hear the term “Architecture,” they might think about buildings and physical structures. However, within the enterprise IT world the term is used to describe a variety of activities. But what do we mean when we talk about Architecture in this context? There are lots of definitions available, all subtly different. In this blog post, I’ll outline how we think about Architecture, some of the different flavours of Architecture that you may come across and how they work together to deliver business value.
What is Architecture?
If you look up a definition of software Architecture, you might find various attempts to define it using terminology that can be dry and jargon-heavy. More practically, we can view Architecture as having two main aspects: design and governance.
-
Design: This involves making sure that an organisation makes the right choice at a particular point in time. Often in Enterprise Architecture, this is within the context of software selection and system design.
-
Governance: Once choices are made, governance ensures that these choices are implemented as designed, adhering to best practices and standards, and continue to be appropriate.
So, Architecture can be broadly defined as the practice of making the right choices at the right time and ensuring those choices are implemented correctly and remain fit for purpose.
The Value of Architecture
Why would an organisation care about Architecture? And are there times when it isn’t valuable?
We believe that Architecture can bring a lot of value to organisations of all sizes, and we embed that within Our Approach to Architecture. Some of the main values Architecture brings to an organisation include:
-
Strategic alignment: Ensuring that projects and initiatives align with broader organisational goals. This includes understanding the strategic objectives and making sure that the work being done supports these goals.
-
Risk management: Identifying and mitigating risks. Architects often have a holistic view of the organisation, allowing them to spot potential risks and understand the impact of changes.
-
Efficiency: Reducing costs by fixing issues early and reusing existing solutions. Sometimes, it’s cheaper to fix a mistake on paper than after it’s built. Architecture helps in making these early corrections.
When is Architecture not needed?
Often there are situations where the rigour of an architectural approach is required, however sometimes there are occasions where it’s cheaper or lower risk to just try a change out without doing analysis upfront. To decide when to apply architectural thinking it’s important to understand what ‘architecturally significant’ means in a specific context – that is when a change warrants the additional up-front cost of analysis and architecture, and when the risk or cost is sufficiently low this would slow you down. The role of Architecture is to increase alignment and efficiency – not to get in the way where it isn’t adding value!
Types of Architecture
To support the mapping of business strategy through to implemented technology, people and processes there are many different skills and levels of abstraction required. These typically manifest as several types of Architecture, each with its own focus and scope.
These range from highly strategic and broad across an organisation to highly technical and specific.
Enterprise Architecture
Enterprise Architects are concerned with the whole organisation, setting policies, guidelines, and procedures to align IT with business goals. They translate business strategy into programs of change, ensuring that the IT strategy aligns with the business goals and supports the organisation’s strategic objectives.
Business Architecture
Business Architecture focuses on domain knowledge and defines the business strategy. It involves identifying the capabilities needed to deliver on that strategy, often including process design and organisational structure. They work on defining the business strategy and ensuring the organisation’s operations align with its strategic vision.
Solution Architecture
Solution Architecture deals with broader classes of technology and involves designing solutions that meet business needs.
Solution architects translate business capabilities into technical solutions, understanding business requirements and designing solutions that align with these needs. They break down business capabilities into logical components and decide whether to buy or build solutions, ensuring technical solutions support business goals and are implemented effectively.
Technical Architecture
Technical Architecture focuses on specific technologies and implementations. It involves selecting the right technologies, designing systems, and ensuring they meet required standards.
Technical Architects ensure the chosen technologies are suitable for the organisation’s needs and that systems are designed to perform optimally. They ensure the technical design meets requirements and adheres to organisational policies, providing a solid foundation for the organisation’s IT infrastructure.
Technical Architecture covers a broad range of technologies, each with their own nuances and complexity. Therefore, Technical Architecture tends to be sub-divided into different areas, aligning with major technology domains:
-
Data Architecture: Concerned with how data moves around an organisation, how it is gathered, stored, and distributed. Data Architects design data models, define data flows, and ensure efficient data management.
-
Application Architecture: Focuses on how applications are designed, integrated, and deployed. Application Architects ensure applications are scalable, maintainable, and secure, and that they integrate well with other systems.
-
Network Architecture: Deals with how physical or virtual infrastructure is connected and communicates reliably and safely. Network Architects design network topologies, configure devices, and ensure network performance and security.
-
Cloud Architecture: Focuses on the use, management, and configuration of cloud resources and services. Cloud Architects design cloud-based solutions, manage cloud infrastructure, and ensure scalability, performance, and security.
-
Security Architecture: Concerned with understanding threats and ensuring systems are designed with appropriate security controls. Security Architects identify risks, design security measures, and ensure compliance with security standards.
In summary, Architecture in the IT world is a vital discipline that combines design and governance to ensure that organisations make informed decisions and implement them effectively. Architecture helps businesses to better align their IT strategies with their overall goals, manage risks, and improve efficiency.
There are different types of Architecture required to achieve this goal, from Enterprise Architecture, through to Solution Architecture, and different specialisms of Technical Architecture that must work effectively together to ensure that the value of Architecture is delivered