SlideShare a Scribd company logo
1 of 31
Download to read offline
System Integration and Architecture
2.1 Enterprise
Architecture Overview
2.2 Enterprise
Structure
2.3 Value and Risk
2.4 Enterprise
Architecture
Components
 Establishing the architectural vision.
 Understanding portfolio of current and future IT systems and technology.
 Identifying integration strategies and technologies.
 Defining architectural standards.
 Creating a robust but flexible, responsive and trusted technical framework.
 Enterprise architecture is a holistic, hierarchical, and abstract description of
the essential elements of an organization to maximize shareholder value over
time.
 Enterprise Architecture helps business management achieve its strategic goals.
 It supports the company in creating competitive advantage, reduces risks and
enhances cost-efficiency and scalability.
https://www.itforbusiness.org/book/strategy-and-governance/enterprise-architecture/
 Bus/hub
 This is usually implemented by enhancing standard middleware products (application
server, message bus) or implemented as a stand-alone program (i. e., does not use any
middleware), acting as its own middleware.
 Application connectivity
 The bus/hub connects to applications through a set of adapters (also referred to as
connectors).These are programs that know how to interact with an underlying business
application.
 Data format and transformation
 To avoid every adapter having to convert data to/from every other applications' formats,
EAI systems usually stipulate an application-independent (or common) data format.The
EAI system usually provides a data transformation service as well to help convert between
application-specific and common formats.
 Integration modules
 An EAI system could be participating in multiple concurrent integration operations at any
given time, each type of integration being processed by a different integration module.
Integration modules subscribe to events of specific types and process notifications that
they receive when these events occur.
 Support for transactions
 When used for process integration, the EAI system also provides transactional consistency
across applications by executing all integration operations across all applications in a
single overarching distributed transaction (using two-phase commit protocols or
compensating transactions).
 Four components are essential for a modern enterprise application
integration architecture:
 A centralized broker that handles security, access, and communication.
This can be accomplished through integration servers (like the School
Interoperability Framework (SIF) Zone Integration Servers) or through
similar software like the enterprise service bus (ESB) model that acts as
a services manager.
 An independent data model based on a standard data structure, also
known as a canonical data model. It appears that XML and the use of
XML style sheets has become the de facto and in some cases de jure
standard for this uniform business language.
 A connector, or agent model where each vendor, application, or
interface can build a single component that can speak natively to that
application and communicate with the centralized broker.
 A system model that defines the APIs, data flow and rules of
engagement to the system such that components can be built to
interface with it in a standardized way.
 Mediation (intra-communication)
 Here, the EAI system acts as the go-between or broker between multiple
applications.
 Whenever an interesting event occurs in an application (for instance, new
information is created, or a new transaction completed) an integration module in the
EAI system is notified.
 The module then propagates the changes to other relevant applications.
 Federation (inter-communication)
 In this case, the EAI system acts as the overarching facade across multiple
applications.
 All event calls from the 'outside world' to any of the applications are front-ended by
the EAI system.The EAI system is configured to expose only the relevant
information and interfaces of the underlying applications to the outside world and
performs all interactions with the underlying applications on behalf of the requester.
 Both patterns are often used concurrently.The same EAI system could be
keeping multiple applications in sync (mediation), while servicing requests
from external users against these applications (federation).
https://www.enterpriseintegrationpatterns.com/patterns/messaging/Introd
uction.html
 Enterprise application integration is an integration framework composed of a
collection of technologies and services which form a middleware or "middleware
framework" to enable integration of systems and applications across an enterprise.
Set of 65 patterns to describe/design scalable and maintainable
integration solutions
Published 10.10.2003
700 pages
Authors: Gregor Hohpe
/ BobbyWoolf
Provides the means to share data between different
applications without writing custom interfaces.
Example:
 Consider a company that wants to do build an eCommerce portal.
 Has a number of legacy applications (or even an ERP solution in place)
 Need build the web-based eCommerce infrastructure and link with
systems that do functions like process orders, manage inventory, ship
products
 The company decides to use a major courier service for delivery of
products ordered from the web site.
 The company wants an Operational Data Store (ODS) for analysis of
transactions taking place on the site
One solution – custom Interfaces Issues?
E-Commerce
Site
Courier
Shipping
Inventory
Order
System
ODS
E-Commerce
Site
Courier
Shipping
Inventory
Order
System
ODS
EAI
Alternative – employ EAI solution
 Cost effectiveness
 Time to market
 Scalability
 Ability to deal with complex environments
 Model integration as asynchronous messages
 Focus mainly on the communication of the apps and their edge components
 Focus on stateless communication
 Usually one-way communication (not Request-Reply)
 Assumes using Message Broker to deliver messages (but there are some
architectures without MB)
 “Wider bridges, not faster cars.”
 Please make sure you don’t fall into the trap of applying integration patterns to
everything! (Keep things simple!)
• The Splitter from the EIP patterns allows users split a
message into a number of pieces and process them
individually.
Splitter
• The Content-Based Router inspects the content of a message
and routes it to another channel based on the content of the
message.
Content Based
Router
• A Message Filter is a special form of a Content-Based
Router. It examines the message content and passes the
message to another channel if the message content matches
certain criteria. Otherwise, it discards the message.
Message Filter
• Define a channel for each recipient.Then use a Recipient
List to inspect an incoming message, determine the list of
desired recipients, and forward the message to all channels
associated with the recipients in the list.
Recipient List
• to route messages to a separate location while they are
being forwarded to the ultimate destination.
Wire Tap
 Enterprise Integration Patterns are implemented in many open source integration
solutions
 Spring Integration
 Apache Camel
 Red Hat Fuse
 Mule ESB
 Guaraná DSL.
 There are many good reasons for investing in an Enterprise Architecture program.
One possibility by initiating the EA program is to get an overview of strategy,
organization and technology not to forget an insight into business.The focus in
general the enterprise wide (or system wide) approach.
 There are some risks by using or implementing an EA program in an Enterprise:
 The implementation of an EA might become disruptive to the business which means
that the costly and time consuming.
 When the members of the organization (managers and the workers) are taken out of
production to learn and assist in delivering the Enterprise Architecture.
 The value of EA is to enhance the resource – planning capabilities and supports
better decision-making.
 This accomplished through communication improvements in respect to current
and future resources.
 Ideas are conveyed more rapidly while differences in interpretations and
misunderstanding are reduced
 Business Information Systems:
 A Business Information System is a computer-based business information system that is
being managed through the Metabase.
 Database Domains:
 A Database Domain is a hierarchically organized set of noun-intensive descriptions
associated with a mission leaf. Analyzed database domains lead to the identification of
Database Object Classes, enterprise data elements, and property classes. Property
classes, in turn, often become tables in databases.
 Database Object Classes:
 A Database Object Class is a large collection of data and processes that are tied together
for business-based reasons, and when instantiated, proceeds through well defined states.
A database object can exist in two forms: a collection of interrelated database tables, or
the set of a column based nested structures within a table.
 Database Object Information Systems:
 A Database Object Information System is a collection of processes defined within the
domain of the DBMS usually as a stored procedure that transforms one or more rows of a
database object from one valid state to another.
 Management Level:
 Management level is a named and defined level of bureaucratic management within an
organizational setting. Examples could be executive, senior, mid-level, and first-level.
 Missions:
 Missions are hierarchically organized textual descriptions that define the very existence
of the enterprise, and that are the ultimate goals and objectives that measure enterprise
accomplishment from within different business functions and organizations..
 Organizations Performing Missions:
 An Organization Performing Missions, that is, a Mission-Organization is the association of
an organization with a mission.There can be multiple organizations associated with a
mission and an organization can be associated with multiple missions.
 Organizations Accomplishing Functions:
 An organization accomplishing a function in support of a mission, that is, a Mission-
Organization-Function is the association of a mission organization with a function. A
mission-organization can be associated with multiple functions and a function can be
associated with multiple mission-organizations. One or more mission-organization-
functions may be associated with a business information system.When they are, business
events are created.
 Positions:
 A Position is a named and defined collection of work tasks that can be performed by or
more persons. Positions are often assigned to one or more organizations.
 Positions performing missions:
 A Mission Organization Function Position Role is the assignment of a position to a
particular function within an organization as it accomplishes a mission. Once a position is
assigned, its role can be described.
 Resource Life Cycle Analysis Node:
 A Resource Life Cycle Node is a life cycle state within the resource. If the resource is
employee, the life cycle node may be employee requisition, employee candidate,
employee new hire, assigned employee, reviewed employee, and separated employee.
 Resources:
 A Resource is an enduring asset of value to the enterprise. Included for example are
facilities, assets, staffs, money, even abstract concepts like reputation. If a resource is
missing then the enterprise is incomplete.

More Related Content

Similar to Chapter 2 - Enterprise Application Integration.pdf

The New Enterprise Alphabet - .Net, XML And XBRL
The New Enterprise Alphabet - .Net, XML And XBRLThe New Enterprise Alphabet - .Net, XML And XBRL
The New Enterprise Alphabet - .Net, XML And XBRLJorgen Thelin
 
Enterprise Service Bus
Enterprise Service BusEnterprise Service Bus
Enterprise Service BusHamed Hatami
 
Documentum introduction
Documentum introductionDocumentum introduction
Documentum introductionotnawrup
 
UNIT - 1 Part 2: Data Warehousing and Data Mining
UNIT - 1 Part 2: Data Warehousing and Data MiningUNIT - 1 Part 2: Data Warehousing and Data Mining
UNIT - 1 Part 2: Data Warehousing and Data MiningNandakumar P
 
International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...ijcseit
 
CONFIGURATION INERPSAAS MULTI-TENANCY
CONFIGURATION INERPSAAS MULTI-TENANCYCONFIGURATION INERPSAAS MULTI-TENANCY
CONFIGURATION INERPSAAS MULTI-TENANCYijcseit
 
Configuration inerpsaas multi tenancy
Configuration inerpsaas multi tenancyConfiguration inerpsaas multi tenancy
Configuration inerpsaas multi tenancyijcseit
 
Microsoft Mimarisi
Microsoft MimarisiMicrosoft Mimarisi
Microsoft MimarisiNuri Cankaya
 
Enterprise Application integration (middleware) concepts
Enterprise Application integration (middleware) conceptsEnterprise Application integration (middleware) concepts
Enterprise Application integration (middleware) conceptsShantanu Thakre
 
White paper gathering tools
White paper gathering toolsWhite paper gathering tools
White paper gathering toolsCalame Software
 
TYBSC CS 2018 WEB SERVICES NOTES
TYBSC CS 2018 WEB SERVICES NOTESTYBSC CS 2018 WEB SERVICES NOTES
TYBSC CS 2018 WEB SERVICES NOTESWE-IT TUTORIALS
 
Software Infrastructure Design, Integration, & Migration Roadmap
Software Infrastructure Design, Integration, & Migration RoadmapSoftware Infrastructure Design, Integration, & Migration Roadmap
Software Infrastructure Design, Integration, & Migration RoadmapInnovate Vancouver
 
Application Of A New Database Management System
Application Of A New Database Management SystemApplication Of A New Database Management System
Application Of A New Database Management SystemPamela Wright
 
Agility by Design - Building Software to Last
Agility by Design - Building Software to LastAgility by Design - Building Software to Last
Agility by Design - Building Software to Lasteprentise
 
E-Services course Chapter 3 ISI by Ettaieb Abdessattar
E-Services course Chapter 3 ISI by Ettaieb AbdessattarE-Services course Chapter 3 ISI by Ettaieb Abdessattar
E-Services course Chapter 3 ISI by Ettaieb AbdessattarAbdessattar Ettaieb
 
Introduction to Java Enterprise Edition
Introduction to Java Enterprise EditionIntroduction to Java Enterprise Edition
Introduction to Java Enterprise EditionAbdalla Mahmoud
 

Similar to Chapter 2 - Enterprise Application Integration.pdf (20)

The New Enterprise Alphabet - .Net, XML And XBRL
The New Enterprise Alphabet - .Net, XML And XBRLThe New Enterprise Alphabet - .Net, XML And XBRL
The New Enterprise Alphabet - .Net, XML And XBRL
 
Enterprise Service Bus
Enterprise Service BusEnterprise Service Bus
Enterprise Service Bus
 
Documentum introduction
Documentum introductionDocumentum introduction
Documentum introduction
 
UNIT - 1 Part 2: Data Warehousing and Data Mining
UNIT - 1 Part 2: Data Warehousing and Data MiningUNIT - 1 Part 2: Data Warehousing and Data Mining
UNIT - 1 Part 2: Data Warehousing and Data Mining
 
Middleware – Its Types, Architecture, and Benefits.docx
Middleware – Its Types, Architecture, and Benefits.docxMiddleware – Its Types, Architecture, and Benefits.docx
Middleware – Its Types, Architecture, and Benefits.docx
 
International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...International Journal of Computer Science, Engineering and Information Techno...
International Journal of Computer Science, Engineering and Information Techno...
 
CONFIGURATION INERPSAAS MULTI-TENANCY
CONFIGURATION INERPSAAS MULTI-TENANCYCONFIGURATION INERPSAAS MULTI-TENANCY
CONFIGURATION INERPSAAS MULTI-TENANCY
 
Configuration inerpsaas multi tenancy
Configuration inerpsaas multi tenancyConfiguration inerpsaas multi tenancy
Configuration inerpsaas multi tenancy
 
Microsoft Mimarisi
Microsoft MimarisiMicrosoft Mimarisi
Microsoft Mimarisi
 
Software and Information Technology Glossary of Terms
Software and Information Technology Glossary of TermsSoftware and Information Technology Glossary of Terms
Software and Information Technology Glossary of Terms
 
Enterprise Application integration (middleware) concepts
Enterprise Application integration (middleware) conceptsEnterprise Application integration (middleware) concepts
Enterprise Application integration (middleware) concepts
 
10.1.1.107.2618
10.1.1.107.261810.1.1.107.2618
10.1.1.107.2618
 
White paper gathering tools
White paper gathering toolsWhite paper gathering tools
White paper gathering tools
 
TYBSC CS 2018 WEB SERVICES NOTES
TYBSC CS 2018 WEB SERVICES NOTESTYBSC CS 2018 WEB SERVICES NOTES
TYBSC CS 2018 WEB SERVICES NOTES
 
Software Infrastructure Design, Integration, & Migration Roadmap
Software Infrastructure Design, Integration, & Migration RoadmapSoftware Infrastructure Design, Integration, & Migration Roadmap
Software Infrastructure Design, Integration, & Migration Roadmap
 
Application Of A New Database Management System
Application Of A New Database Management SystemApplication Of A New Database Management System
Application Of A New Database Management System
 
Agility by Design - Building Software to Last
Agility by Design - Building Software to LastAgility by Design - Building Software to Last
Agility by Design - Building Software to Last
 
ESB Overview
ESB OverviewESB Overview
ESB Overview
 
E-Services course Chapter 3 ISI by Ettaieb Abdessattar
E-Services course Chapter 3 ISI by Ettaieb AbdessattarE-Services course Chapter 3 ISI by Ettaieb Abdessattar
E-Services course Chapter 3 ISI by Ettaieb Abdessattar
 
Introduction to Java Enterprise Edition
Introduction to Java Enterprise EditionIntroduction to Java Enterprise Edition
Introduction to Java Enterprise Edition
 

Recently uploaded

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 

Recently uploaded (20)

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 

Chapter 2 - Enterprise Application Integration.pdf

  • 1. System Integration and Architecture
  • 2. 2.1 Enterprise Architecture Overview 2.2 Enterprise Structure 2.3 Value and Risk 2.4 Enterprise Architecture Components
  • 3.
  • 4.  Establishing the architectural vision.  Understanding portfolio of current and future IT systems and technology.  Identifying integration strategies and technologies.  Defining architectural standards.  Creating a robust but flexible, responsive and trusted technical framework.
  • 5.  Enterprise architecture is a holistic, hierarchical, and abstract description of the essential elements of an organization to maximize shareholder value over time.  Enterprise Architecture helps business management achieve its strategic goals.  It supports the company in creating competitive advantage, reduces risks and enhances cost-efficiency and scalability.
  • 7.
  • 8.  Bus/hub  This is usually implemented by enhancing standard middleware products (application server, message bus) or implemented as a stand-alone program (i. e., does not use any middleware), acting as its own middleware.  Application connectivity  The bus/hub connects to applications through a set of adapters (also referred to as connectors).These are programs that know how to interact with an underlying business application.  Data format and transformation  To avoid every adapter having to convert data to/from every other applications' formats, EAI systems usually stipulate an application-independent (or common) data format.The EAI system usually provides a data transformation service as well to help convert between application-specific and common formats.  Integration modules  An EAI system could be participating in multiple concurrent integration operations at any given time, each type of integration being processed by a different integration module. Integration modules subscribe to events of specific types and process notifications that they receive when these events occur.  Support for transactions  When used for process integration, the EAI system also provides transactional consistency across applications by executing all integration operations across all applications in a single overarching distributed transaction (using two-phase commit protocols or compensating transactions).
  • 9.  Four components are essential for a modern enterprise application integration architecture:  A centralized broker that handles security, access, and communication. This can be accomplished through integration servers (like the School Interoperability Framework (SIF) Zone Integration Servers) or through similar software like the enterprise service bus (ESB) model that acts as a services manager.  An independent data model based on a standard data structure, also known as a canonical data model. It appears that XML and the use of XML style sheets has become the de facto and in some cases de jure standard for this uniform business language.  A connector, or agent model where each vendor, application, or interface can build a single component that can speak natively to that application and communicate with the centralized broker.  A system model that defines the APIs, data flow and rules of engagement to the system such that components can be built to interface with it in a standardized way.
  • 10.  Mediation (intra-communication)  Here, the EAI system acts as the go-between or broker between multiple applications.  Whenever an interesting event occurs in an application (for instance, new information is created, or a new transaction completed) an integration module in the EAI system is notified.  The module then propagates the changes to other relevant applications.  Federation (inter-communication)  In this case, the EAI system acts as the overarching facade across multiple applications.  All event calls from the 'outside world' to any of the applications are front-ended by the EAI system.The EAI system is configured to expose only the relevant information and interfaces of the underlying applications to the outside world and performs all interactions with the underlying applications on behalf of the requester.  Both patterns are often used concurrently.The same EAI system could be keeping multiple applications in sync (mediation), while servicing requests from external users against these applications (federation).
  • 12.  Enterprise application integration is an integration framework composed of a collection of technologies and services which form a middleware or "middleware framework" to enable integration of systems and applications across an enterprise.
  • 13. Set of 65 patterns to describe/design scalable and maintainable integration solutions Published 10.10.2003 700 pages Authors: Gregor Hohpe / BobbyWoolf
  • 14. Provides the means to share data between different applications without writing custom interfaces. Example:  Consider a company that wants to do build an eCommerce portal.  Has a number of legacy applications (or even an ERP solution in place)  Need build the web-based eCommerce infrastructure and link with systems that do functions like process orders, manage inventory, ship products  The company decides to use a major courier service for delivery of products ordered from the web site.  The company wants an Operational Data Store (ODS) for analysis of transactions taking place on the site
  • 15. One solution – custom Interfaces Issues? E-Commerce Site Courier Shipping Inventory Order System ODS
  • 17.  Cost effectiveness  Time to market  Scalability  Ability to deal with complex environments
  • 18.  Model integration as asynchronous messages  Focus mainly on the communication of the apps and their edge components  Focus on stateless communication  Usually one-way communication (not Request-Reply)  Assumes using Message Broker to deliver messages (but there are some architectures without MB)  “Wider bridges, not faster cars.”  Please make sure you don’t fall into the trap of applying integration patterns to everything! (Keep things simple!)
  • 19. • The Splitter from the EIP patterns allows users split a message into a number of pieces and process them individually. Splitter • The Content-Based Router inspects the content of a message and routes it to another channel based on the content of the message. Content Based Router • A Message Filter is a special form of a Content-Based Router. It examines the message content and passes the message to another channel if the message content matches certain criteria. Otherwise, it discards the message. Message Filter • Define a channel for each recipient.Then use a Recipient List to inspect an incoming message, determine the list of desired recipients, and forward the message to all channels associated with the recipients in the list. Recipient List • to route messages to a separate location while they are being forwarded to the ultimate destination. Wire Tap
  • 20.  Enterprise Integration Patterns are implemented in many open source integration solutions  Spring Integration  Apache Camel  Red Hat Fuse  Mule ESB  Guaraná DSL.
  • 21.
  • 22.  There are many good reasons for investing in an Enterprise Architecture program. One possibility by initiating the EA program is to get an overview of strategy, organization and technology not to forget an insight into business.The focus in general the enterprise wide (or system wide) approach.
  • 23.  There are some risks by using or implementing an EA program in an Enterprise:  The implementation of an EA might become disruptive to the business which means that the costly and time consuming.  When the members of the organization (managers and the workers) are taken out of production to learn and assist in delivering the Enterprise Architecture.
  • 24.  The value of EA is to enhance the resource – planning capabilities and supports better decision-making.  This accomplished through communication improvements in respect to current and future resources.  Ideas are conveyed more rapidly while differences in interpretations and misunderstanding are reduced
  • 25.
  • 26.  Business Information Systems:  A Business Information System is a computer-based business information system that is being managed through the Metabase.  Database Domains:  A Database Domain is a hierarchically organized set of noun-intensive descriptions associated with a mission leaf. Analyzed database domains lead to the identification of Database Object Classes, enterprise data elements, and property classes. Property classes, in turn, often become tables in databases.
  • 27.  Database Object Classes:  A Database Object Class is a large collection of data and processes that are tied together for business-based reasons, and when instantiated, proceeds through well defined states. A database object can exist in two forms: a collection of interrelated database tables, or the set of a column based nested structures within a table.  Database Object Information Systems:  A Database Object Information System is a collection of processes defined within the domain of the DBMS usually as a stored procedure that transforms one or more rows of a database object from one valid state to another.
  • 28.  Management Level:  Management level is a named and defined level of bureaucratic management within an organizational setting. Examples could be executive, senior, mid-level, and first-level.  Missions:  Missions are hierarchically organized textual descriptions that define the very existence of the enterprise, and that are the ultimate goals and objectives that measure enterprise accomplishment from within different business functions and organizations..
  • 29.  Organizations Performing Missions:  An Organization Performing Missions, that is, a Mission-Organization is the association of an organization with a mission.There can be multiple organizations associated with a mission and an organization can be associated with multiple missions.  Organizations Accomplishing Functions:  An organization accomplishing a function in support of a mission, that is, a Mission- Organization-Function is the association of a mission organization with a function. A mission-organization can be associated with multiple functions and a function can be associated with multiple mission-organizations. One or more mission-organization- functions may be associated with a business information system.When they are, business events are created.
  • 30.  Positions:  A Position is a named and defined collection of work tasks that can be performed by or more persons. Positions are often assigned to one or more organizations.  Positions performing missions:  A Mission Organization Function Position Role is the assignment of a position to a particular function within an organization as it accomplishes a mission. Once a position is assigned, its role can be described.
  • 31.  Resource Life Cycle Analysis Node:  A Resource Life Cycle Node is a life cycle state within the resource. If the resource is employee, the life cycle node may be employee requisition, employee candidate, employee new hire, assigned employee, reviewed employee, and separated employee.  Resources:  A Resource is an enduring asset of value to the enterprise. Included for example are facilities, assets, staffs, money, even abstract concepts like reputation. If a resource is missing then the enterprise is incomplete.