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.

Chapter 2 - Enterprise Application Integration.pdf

  • 1.
  • 2.
    2.1 Enterprise Architecture Overview 2.2Enterprise Structure 2.3 Value and Risk 2.4 Enterprise Architecture Components
  • 4.
     Establishing thearchitectural 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 architectureis 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.
  • 6.
  • 8.
     Bus/hub  Thisis 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 componentsare 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).
  • 11.
  • 12.
     Enterprise applicationintegration 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 65patterns to describe/design scalable and maintainable integration solutions Published 10.10.2003 700 pages Authors: Gregor Hohpe / BobbyWoolf
  • 14.
    Provides the meansto 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
  • 16.
  • 17.
     Cost effectiveness Time to market  Scalability  Ability to deal with complex environments
  • 18.
     Model integrationas 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 Splitterfrom 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 IntegrationPatterns are implemented in many open source integration solutions  Spring Integration  Apache Camel  Red Hat Fuse  Mule ESB  Guaraná DSL.
  • 22.
     There aremany 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 aresome 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 valueof 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
  • 26.
     Business InformationSystems:  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 ObjectClasses:  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 PerformingMissions:  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:  APosition 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 LifeCycle 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.