Actions

Enterprise Architecture Framework

What is an Enterprise Architecture Framework?

Enterprise Architecture Framework (EA Framework) is a formal definition of the essential elements or components of Enterprise Architecture, and their inter-relationship

  • An Enterprise Architecture Framework is analogous to a mathematical equation or chemical formula in that it specifies the variables or elements, and their relationships required to solve the "practical model of enterprise" puzzle.
  • It differs from equations and formulas in the sense that it pertains to one solution - a particular way of solving the enterprise modeling puzzle - and is not a universally applicable or accepted answer to the Enterprise Architecture problem. There can be many different frameworks for Enterprise Architecture each as applicable and effective as the other.
  • It identifies "essential" elements or components i.e. those that are absolutely necessary, and sufficient to define the concept or solution

An Enterprise Architecture Framework can define enterprise modeling concept(s) in general or relate to a specific Enterprise Architecture Planning solution.

An Enterprise Architecture framework (EA framework) defines how to create and use an Enterprise Architecture. An Architecture Framework provides principles and practices for creating and using the architecture description of a system. It structures architects' thinking by dividing the architecture description into domains, layers, or views, and offers models - typically matrices and diagrams - for documenting each view.[1]

Enterprise architecture frameworks are valuable for planning and visualization. They are especially helpful at the early stages of architectural change to lead the conversation with stakeholders and visualize the outcomes of business and IT alignment. However, they are still just toolkits for people responsible for preparing the roadmap to change

Components of an Enterprise Architecture Framework

Enterprise architecture frameworks provide a structured approach and methodology for developing and implementing enterprise architecture. While there are several frameworks available, the key components that are commonly found in enterprise architecture frameworks include:

  1. Methodology: An enterprise architecture framework typically provides a methodology or set of guidelines for developing and implementing the architecture. It outlines the steps, activities, and best practices to be followed throughout the architecture lifecycle.
  2. Framework Structure: The framework defines the overall structure and organization of the enterprise architecture. It establishes the various domains or perspectives to be considered, such as business, information, application, and technology architectures. It provides a framework for organizing and categorizing architectural artifacts.
  3. Principles: Principles are the foundational guidelines that govern the design and implementation of the architecture. They reflect the organization's values, priorities, and standards. Principles help ensure consistency, interoperability, and adherence to best practices.
  4. Architectural Domains: An enterprise architecture framework identifies and defines the key architectural domains that need to be considered. These domains typically include business architecture, information architecture, application architecture, and technology architecture. The framework provides guidance on how to develop and align these domains.
  5. Viewpoints and Views: Frameworks often define viewpoints and views to provide different perspectives on the architecture. Viewpoints are the stakeholders' specific concerns, while views are the representations or visualizations of the architecture from those viewpoints. These viewpoints and views help communicate and address the needs of different stakeholders.
  6. Artefacts and Deliverables: The framework specifies the artifacts and deliverables that need to be created during the architecture development process. These can include architectural models, diagrams, documentation, standards, guidelines, and other supporting materials. The artifacts provide a structured representation of the architecture and serve as a reference for implementation.
  7. Governance and Compliance: Enterprise architecture frameworks often include provisions for governance and compliance. This involves establishing processes, roles, and responsibilities for managing and governing the architecture. It ensures that the architecture aligns with strategic objectives, complies with standards and regulations, and undergoes periodic reviews and updates.
  8. Tools and Techniques: Frameworks may suggest or recommend tools and techniques that can be used to support the architecture development process. These can include modeling tools, repository systems, analysis techniques, and other software or methodologies that aid in documenting, analyzing, and managing the architecture artifacts.
  9. Reference Architectures and Patterns: Some frameworks provide reference architectures or architectural patterns that offer pre-defined solutions or best practices for common architectural challenges. These can serve as starting points or templates for specific industries, domains, or technology areas.

It's important to note that different enterprise architecture frameworks may have variations in their components and terminology. Organizations can select and adapt the framework that best suits their needs and goals.

Why is an Enterprise Architecture Framework Needed? What are its Benefits?

Enterprise architecture frameworks are important for several reasons:

  1. Improved Decision-Making: With an EAF in place, organizations can make informed decisions about technology investments, architectural changes, and resource allocation. The framework provides a holistic view of the organization's architecture, enabling stakeholders to understand dependencies, identify risks, and evaluate the potential impact of decisions on different parts of the enterprise.
  2. Alignment of Business and IT: Enterprise architecture frameworks facilitate the alignment of business goals and IT strategies. They provide a structured approach to designing and managing the architecture, ensuring that technology investments and solutions are directly linked to the organization's strategic objectives. This alignment helps drive business value and ensures that IT initiatives are in sync with business priorities.
  3. Holistic View of the Organization: Enterprise architecture frameworks enable organizations to take a holistic view of their operations. By considering various aspects such as business processes, data, applications, and technology infrastructure, frameworks provide a comprehensive understanding of how different components interrelate and impact each other. This broader perspective allows organizations to identify dependencies, optimize resources, and make informed decisions.
  4. Consistency and Standardization: Frameworks promote consistency and standardization in architectural practices. They provide guidelines, principles, and best practices that help ensure uniformity in the design, implementation, and management of the architecture. This consistency enhances interoperability, reduces complexity, and facilitates collaboration across different business units and technology teams.
  5. Agility and Flexibility: An EAF enables organizations to respond quickly and effectively to changes in the business environment. By providing a structured approach to architecture development, the framework allows for agile decision-making, promotes the use of flexible technologies, and supports the implementation of adaptable solutions. This flexibility helps organizations stay ahead in a rapidly evolving market.
  6. Cost Optimization: An EAF supports cost optimization by providing insights into the existing architecture. It helps identify redundancies, inefficiencies, and opportunities for consolidation or rationalization. By streamlining the architecture, organizations can optimize resource utilization, reduce costs, and eliminate duplication of efforts.
  7. Effective Communication: Enterprise architecture frameworks establish a common language and set of artifacts for communication among stakeholders. By providing standardized models, diagrams, and documentation, frameworks facilitate clear and effective communication between business and IT professionals. This common understanding enhances collaboration, improves decision-making, and reduces misunderstandings and conflicts.
  8. Risk Management and Compliance: Frameworks contribute to effective risk management and compliance within an organization. By identifying potential risks, vulnerabilities, and dependencies, frameworks help organizations proactively address security concerns and regulatory requirements. They also support compliance efforts by providing guidelines for adhering to industry standards, regulations, and best practices.
  9. Change Management: Enterprise architecture frameworks enable organizations to manage and adapt to change effectively. By providing a structured approach to architecture development, frameworks assist in assessing the impact of changes and guide the transition to future states. They help organizations embrace new technologies, respond to market shifts, and foster agility in the face of evolving business needs.
  10. Continuous Improvement: An EAF promotes continuous improvement in architecture practices. It establishes feedback loops, governance processes, and review mechanisms that allow organizations to learn from past experiences, incorporate lessons learned, and evolve the architecture over time. This continuous improvement mindset helps organizations stay relevant and responsive to changing business needs.
  11. Efficient Resource Allocation: Frameworks support efficient resource allocation by optimizing technology investments and minimizing duplication of efforts. They provide insights into the existing architecture, allowing organizations to identify redundancies, gaps, and opportunities for consolidation. This optimization leads to cost savings, improved resource utilization, and better return on investment (ROI).

Enterprise architecture frameworks are important because they align business and IT, provide a holistic view of the organization, promote consistency and standardization, enable effective communication, support risk management and compliance, facilitate change management and agility, and drive efficient resource allocation. By adopting and implementing these frameworks, organizations can strategically plan, manage, and transform their architectures to achieve their business objectives.

What are the Disadvantages of Using an Enterprise Architecture Framework?

While Enterprise Architecture Frameworks (EAFs) offer numerous benefits, it's important to consider potential disadvantages and challenges that organizations may encounter when implementing and using them. Here are some potential disadvantages:

  1. Complexity and Overhead: EAFs can introduce complexity, especially in large organizations or complex environments. The process of developing and maintaining the framework itself may require significant resources, including time, effort, and expertise. Organizations need to invest in training, tools, and dedicated staff to effectively manage the framework, which can add overhead and costs.
  2. Adoption and Resistance: Implementing an EAF requires organizational buy-in and cultural change. Some stakeholders may resist the adoption of a structured approach or view it as bureaucratic, leading to resistance and reluctance to embrace the framework. It may take time and effort to communicate the benefits and gain support from stakeholders at all levels.
  3. Customization Challenges: EAFs provide a standardized approach, but organizations may need to customize the framework to align with their specific context, industry, or unique requirements. Balancing standardization with customization can be challenging, as too much customization can lead to inconsistency and difficulty in comparing or integrating architectures across different parts of the organization.
  4. Maintenance and Synchronization: EAFs require ongoing maintenance to remain relevant and up to date. As the business and technology landscape evolves, the framework needs to be reviewed, updated, and synchronized with emerging trends, industry standards, and organizational changes. Failure to do so may result in an outdated framework that hampers its effectiveness.
  5. Resource Intensiveness: Implementing and managing an EAF may require dedicated resources, including skilled architects, tools, and governance processes. Organizations need to allocate sufficient resources to maintain the framework and ensure its continuous improvement. Lack of dedicated resources or insufficient investment can lead to the framework becoming outdated or underutilized.
  6. Adaptability and Agility Trade-offs: EAFs may introduce a level of rigidity or slow down the decision-making process in fast-paced and agile environments. The standardized processes and documentation requirements of the framework may not align seamlessly with agile practices, making it challenging to balance the need for adaptability and agility with the structure provided by the framework.
  7. Potential for Overemphasis: Organizations may become overly focused on the framework itself rather than the ultimate goals of enterprise architecture, such as enabling business transformation or improving IT effectiveness. Overemphasis on compliance with the framework's processes and artifacts can lead to box-ticking exercises without delivering meaningful outcomes.

It's important to note that these disadvantages can be mitigated through effective planning, stakeholder engagement, proper customization, ongoing governance, and regular reviews and adjustments to the framework. Ultimately, the benefits of an EAF can outweigh the disadvantages, but organizations should be aware of these potential challenges and proactively address them to maximize the value derived from the framework.


History of Enterprise Architecture Frameworks (EAF)[2]

A commonly held tenet is that enterprise architecture frameworks date to the mid-1980s, in accordance with the publication of the Zachman Framework, developed by then-IBMer John Zachman. But deeper historic inquiries indicate that enterprise architecture frameworks actually got their start two decades earlier when IBM produced their business systems planning (BSP), an effort that Zachman helped found.

A researcher of 20th– and 21st-century technology, Svyatoslav Kotusev says that we can look at the history of EAFs in three smaller eras:

  • Pre-EA: Originating with IBM, the BSP formalized a methodology that indicates a theory for information systems architecture. It included both a top-down planning approach and an architecture planning process that was divided into a series of steps for a company to follow. The plan, with diagrams and matrices to illustrate its system, can be traced through all EAFs even today. The Method/1 process by Arthur Andersen as well as other BSP-like methodologies from consulting firms and tech experts also originated in this era. Overall, these approaches focused strictly on technical infrastructure, like how to deploy hardware and servers.
  • Early EA: This begins in the 1980s and runs into the 1990s, and this era codifies the term “enterprise architecture”. The initial wave of EAF theories includes the PRISM, sponsored by IBM among others, released in 1986, the Zachman Framework in 1987, and the NIST EA in 1989. Later entries marked a newer approach in this era including Steven Spewak’s Enterprise Architecture Planning (EAP), which has direct roots in the original BSP, as well as the TAFIM. These later frameworks began including applications and data integration, as systems became more sophisticated.
  • Modern EA: Starting in the late 1990s, this era continues to the present day. Newer frameworks include the FEAF, which is based on Spewak’s EAP, as well as the TOGAF, a well-known version today, with roots in the TAFIM. Today’s frameworks aim to provide tangible solutions beyond only IT, integrating all layers of an enterprise, including overall strategy, business needs, IT infrastructure, and applications. Despite the differences in approaches that these eras indicate, all frameworks are generally based on the original BSP methodology, often advocating similar steps or phases for planning and implementing enterprise IT.


Types of Enterprise Architecture Frameworks[3]

Many enterprise architecture frameworks are available, each with different strengths and weaknesses. Some focus on modeling existing architecture, while others focus on finding solutions to business problems. Nowadays there are now countless EA frameworks, many more than in the following listing.

  • Consortia-Developed Frameworks
    • ARCON – A Reference Architecture for Collaborative Networks – not focused on a single enterprise but rather on networks of enterprises
    • Generalised Enterprise Reference Architecture and Methodology (GERAM)
    • RM-ODP – the Reference Model of Open Distributed Processing (ITU-T Rec. X.901-X.904|ISO/IEC 10746) defines an enterprise architecture framework for structuring the specifications of open distributed systems.
    • IDEAS Group – a four-nation effort to develop a common ontology for architecture interoperability
    • ISO 19439 Framework for enterprise modeling
    • TOGAF – The Open Group Architecture Framework – a widely used framework including an architectural Development Method and standards for describing various types of architecture.
  • Defense Industry Frameworks
    • AGATE – the France DGA Architecture Framework
    • DNDAF – the DND/CF Architecture Framework (CAN)
    • DoDAF – the US Department of Defense Architecture Framework
    • MODAF – the UK Ministry of Defence Architecture Framework
    • NAF – the NATO Architecture Framework
  • Government Frameworks
    • European Space Agency Architectural Framework (ESAAF) - a framework for European space-based Systems of Systems
    • FDIC Enterprise Architecture Framework
    • Federal Enterprise Architecture Framework (FEAF) – a framework produced in 1999 by the US Federal CIO Council for use within the US Government (not to be confused with the 2002 Federal Enterprise Architecture (FEA) guidance on categorizing and grouping IT investments, issued by the US Federal Office of Management and Budget)
    • Government Enterprise Architecture (GEA) – a common framework legislated for use by departments of the Queensland Government
    • Nederlandse Overheid Referentie Architectuur (NORA) – a reference framework from the Dutch Government E-overheid NORA
    • NIST Enterprise Architecture Model
    • Treasury Enterprise Architecture Framework (TEAF) – a framework for treasury, published by the US Department of the Treasury in July 2000.
    • Colombian Enterprise Architecture Framework - MRAE - Marco de Referencia de Arquitectura Empresarial a framework for all the Colombian Public Agencies
  • Open-Source Frameworks: Enterprise architecture frameworks that are released as open source:
    • MEGAF is an infrastructure for realizing architecture frameworks that conform to the definition of architecture framework provided in ISO/IEC/IEEE 42010.
    • Praxeme, an open enterprise methodology, contains an enterprise architecture framework called the Enterprise System Topology (EST)
    • TRAK – a general systems-oriented framework based on MODAF 1.2 and released under GPL/GFDL.
    • SABSA is an open framework and methodology for Enterprise Security Architecture and Service Management, that is risk-based and focuses on integrating security into business and IT management.
  • Proprietary Frameworks
    • ASSIMPLER Framework – an architecture framework, based on the work of Mandar Vanarse at Wipro in 2002
    • Avancier Methods (AM) Processes and documentation advice for enterprise and solution architects, supported by training and certification.
    • BRM (Build-Run-Manage) Framework - an architecture framework created by Sanjeev "Sunny" Mishra during his early days at IBM in 2000.
    • Capgemini Integrated Architecture Framework (IAF) – from Capgemini company in 1993
    • Dragon1 - An open Visual Enterprise Architecture Method recently recognized by The Open Group as Architecture Framework
    • DYA framework developed by Sogeti in 2004.
    • Dynamic Enterprise Enterprise architecture concept based on Web 2.0 technology
    • Extended Enterprise Architecture Framework - from Institute For Enterprise Architecture Developments in 2003
    • EACOE Framework – an Enterprise Architecture framework, as an elaboration of the work of John Zachman
    • IBM Information FrameWork (IFW) – conceived by Roger Evernden in 1996
    • Infomet - conceived by Pieter Viljoen in 1990
    • Pragmatic Enterprise Architecture Framework (PEAF) - part of the Pragmatic Family of Frameworks developed by Kevin Lee Smith, Pragmatic EA, from 2008
    • Purdue Enterprise Reference Architecture developed by Theodore J. Williams at Purdue University early 1990s.
    • SAP Enterprise Architecture Framework
    • Service-oriented modeling framework (SOMF), based on the work of Michael Bell
    • Solution Architecting Mechanism (SAM) – A coherent architecture framework consisting of a set of integrated modules.
    • Zachman Framework – an architecture framework, based on the work of John Zachman at IBM in the 1980s


Usage of Enterprise Architecture Framework[4]

An Enterprise Architecture Framework should offer the following:

  • to provide a common vocabulary
  • describe a method for defining an architecture in terms of a set of concepts and a system in terms of building blocks
  • to show how the concepts fit together
  • to contain a set of tools
  • to include a list of recommended standards
  • to include a list of compliant products that can be used to implement the concepts and the building blocks


How to Create an EA Framework?

Implementing an Enterprise Architecture (EA) framework requires careful planning, stakeholder engagement, and a systematic approach. Here are some steps to guide you in implementing an EA framework:

  1. Define Objectives and Scope: Clearly define the objectives of implementing an EA framework and the scope of its application within your organization. Identify the specific goals you want to achieve, such as improving business-IT alignment, optimizing technology investments, or enhancing organizational agility.
  2. Secure Executive Support: Gain support from senior executives and key stakeholders who can champion the implementation of the EA framework. Clearly communicate the benefits of the framework and how it aligns with the organization's strategic objectives. Their support is crucial in obtaining the necessary resources, authority, and participation from across the organization.
  3. Establish Governance: Establish a governance structure to oversee the implementation and ongoing management of the EA framework. Define roles, responsibilities, decision-making processes, and communication channels for the governance body. This ensures that the framework is effectively governed, reviewed, and aligned with organizational goals.
  4. Conduct Current State Assessment: Assess the current state of your organization's architecture, including business processes, technology systems, data assets, and organizational structure. Identify strengths, weaknesses, and areas for improvement. This assessment provides a baseline and informs the development of the target architecture.
  5. Select an EA Framework: Select an EA framework that aligns with your organization's needs, goals, and industry best practices. Consider frameworks such as TOGAF, Zachman, or other recognized frameworks. Evaluate the framework's suitability, adaptability, and compatibility with your organization's culture and context.
  6. Customize the Framework: Tailor the selected framework to meet your organization's specific requirements. Customize the framework to align with your organization's terminology, processes, and industry-specific considerations. Ensure that the framework accommodates your organization's unique characteristics and needs while maintaining the core principles and concepts of the chosen framework.
  7. Develop Architecture Artifacts: Develop the necessary architecture artifacts based on the framework. This may include business models, process diagrams, data models, application inventories, technology landscapes, and integration architectures. Document these artifacts according to the framework's guidelines and templates.
  8. Promote Awareness and Training: Create awareness and provide training on the EA framework across the organization. Educate stakeholders, including business leaders, IT professionals, and architects, on the benefits, principles, and practices of the framework. Encourage their participation and involvement in architecture-related activities.
  9. Pilot and Refine: Start with a pilot project or a smaller scope to validate the effectiveness of the EA framework. Use feedback from the pilot to refine and improve the framework and associated processes. Incorporate lessons learned into the subsequent stages of implementation.
  10. Evolve and Sustain: Implementing an EA framework is an ongoing process. Continuously review and evolve the framework to ensure its relevance, alignment with business goals, and responsiveness to changing needs. Regularly assess the impact and effectiveness of the framework and make necessary adjustments.
  11. Communicate and Demonstrate Value: Continuously communicate the value and benefits of the EA framework to stakeholders. Demonstrate how the framework improves decision-making, drives business value, and enables organizational agility. Highlight success stories and measurable outcomes to reinforce the value of the framework.

Remember, implementing an EA framework is a journey that requires organizational commitment, collaboration, and continuous improvement. It is essential to adapt the implementation approach to fit the unique context and needs of your organization while leveraging industry best practices and the guidance provided by the chosen EA framework.

Creating a Custom EA Framework using Unified Modeling Language (UML)[5]

Most enterprise architecture frameworks offer a limited number of viewpoints and aspects, so it’s reasonable and common to use them in combination. None of the proposed models can include all measures and meet every organization’s needs. However, this allows enterprise architects to customize documentation and create an independent overview of a system.

Unified Modeling Language (UML) is a descriptive visual language providing scalable diagrams used for standardizing software development. It’s easily expandable and customizable for different business domains using an extension mechanism – UML Profile. Enterprise architects use stereotypes, tagged values, and constraints to tailor the language to specific environments thus ensuring that the finished model will address corporate-specific requirements.

Some generic UML diagrams include the Deployment Diagram, visualizing a system’s execution architecture; the Activity Diagram, which models behaviors of the system and how these behaviors are related; and the Sequence Diagram, representing workflows and cooperation.


Example of Activity Diagram
source: Sparx Systems


UML models allow businesses to develop a set of processes and use cases to visualize an enterprise architecture overall and each system within it. It’s a complicated tool that requires training to operate and adjust to a company’s needs, but the benefits of this approach are correlated with the enterprise architect’s effort.


The Problems with EA Frameworks[6]

Almost 30 years after the creation of the Zachman Framework – the oldest of the currently used EA tools – a question has arisen: Do frameworks bring any value or do they cause harm? Here are the main concerns surrounding the use of enterprise architecture frameworks today.

  • Documentation is not Comprehensive: Despite numerous updates to the most popular frameworks created in the 80s and 90s, their modern versions are still considered impractical and outdated. Moreover, creating and maintaining EA documentation requires resources that are not always available in the agile environments of many innovative companies.
  • They are Time-Consuming and Lack Flexibility: Most EA frameworks are less dynamic than modern business toolkits such as Business Model Canvas. They take time to plan out, are not change-friendly, and require training to develop and present. Being more about documentation than real action toward innovation, they tend to slow down the process with excessive use.
  • Complete Integration is Impossible: The limitations of each framework don’t provide an opportunity for seamless integration with a company’s new and existing systems and call for notable adjustments that require additional resources.

These concerns don’t necessarily mean that three decades of practice have led to EA frameworks becoming obsolete. Just like any formalized approach, Zachman or SABSA are criticized and augmented, introduced at the beginning and throughout the process, and used by enterprise architects in different ways. Be sure to take the most advantageous elements of a framework and work around the constraints.


See Also


References


Further Reading