Upload
rosanna-philomena-carson
View
228
Download
0
Tags:
Embed Size (px)
Citation preview
Anatomy of enterprise applications
Enterprise Applications keep track of information related to the operations of the enterprise e.g. Inventory, sales ledger
And execute the core processes that create and manipulate this information Process from order to cash received
Enterprise data
Data in the organisation is captured in a number of data models Data models describe the way data is defined in databases or
exchanged between applications 3
Purchases
Shipments
Inventory
Orders Customers
Service
Billing
Accounting HR
Marketing
Planning
AssetsProject
management
4
An example of a business process: Purchase-to-Pay
1. Determine requirements, complete purchase requisition.
Automatically generate the purchase requisition based on quantity on-hand, quantity-on-order, and expected demand.
© L. Gray, CNU
5
Purchase-to-Pay
2. Prepare and record purchase order.
Assists the buyer in identifying sources of supply for the requested item, preparing RFQs to vendors, analyzing vendor quotes,comparing vendor prices, terms, and past performance
6
Purchase-to-Pay
3. Receive and record goods.Compare quantity ordered to quantity received.
Routes goods to the function that requested them or directs them the warehouse for immediate sale. It also records vendor performance data.
7
Purchase-to-Pay
4. Receive vendor invoice, match with PO and receiving report; record payable.
If the three-way match fails, the enterprise system notifies the proper personnel to ensure timely reconciliation of differences.
8
Purchase-to-Pay
5. Prepare and record cash disbursement and update accounts.
Uses vendor and AP data to schedule payments in accordance with vendor terms and to receive discounts.
Enterprise process models
Each process model captures the series of steps and interactions required to complete a specific business process
The execution of the process will impact on the enterprise data across one or more applications
A process may be executed within a single application or more often through collaboration between several applications
9
Mapped to functional systems
Originally, the process and data models were implemented in a wide variety of functional system (related to organisational departments)
Each system consisting of a database, application logic and user interface 10
Purchases
Shipments
Inventory
Orders Customers
Service
Billing
AccountingHR
Marketing
Planning
Assets Project managementFinance
dept
Warehouse
Logistics
Sales Marketing
HR
Call centre
11
Recall: Problems with function based application
Sharing of data between systems Data duplication Data inconsistency
Applications that don’t talk to one another Limited or lack of integrated information
Isolated decisions lead to overall inefficiencies Increased expenses
Therefore, there is a general requirement for integration to support organisational system capabilities For instance Customer Relationship Management
– tracking all information about a customer across the enterprise
Stovepipe systems
HR Sales
Manufacturing
12
Enterprise integration requirement
Unrestricted sharing of data and business processes across an organization Extend to customers, suppliers and regulators
The linking of data, business processes and applications to automate business processes While ensuring that there are consistent qualities of service
(security, reliability etc)
Reduce the on-going cost of maintenance and reduce the cost of rolling out new systems.
Two architectural solutions
Integration Leave existing applications in place
Minimises risk of disruption and change in data models/process models
Link existing applications with integration systems which map between existing data and process models and add ‘missing’ process models where required
Effective when most of the functionality is already implemented in systems and the integration is primarily creating linkages and processes between these applications
13
Two architectural solutions
Consolidation Replace existing applications
Redesign data and process models to best solve the complete set of requirements and then implement these models in a new system Results in consistent data and process models across enterprise
Effective when significant additional functionality is required beyond what is already in the applications, there is a requirement for business process improvement or integration between the applications is too complex/expensive
14In most cases both consolidation and integration occurs within an organisation
Introduction EAI was an approach to integration of applications first developed in
the late 1990s. Pre-dated widespread use of JEE, XML and Web Services.
EAI currently has become subsumed into Service Oriented Architecture software stacks However, the need for the underlying capabilities have not changed.
16
17
InterBankNetworks
ClearingHouse
CentralBank
InformationProvider
CardProcessor
BankNetwork
Consumer
Commercial
CorporateOtherBank
Mu
lti-
Ch
ann
el
CustomerRelationshipManagement
Pay
men
t S
yste
ms Accounts
DepositsLoansMortgagesPaymentsCustomer .... Call
Centre
SelfService
Branch
MobileSalesforce
Direct Banking
Internet
ExternalSystems
CoreSystems
InformationWarehouse
DeliverySystems
Customers
Internet
Diverse systems and channels
Example of a banking environment
18
Purchased Application Package(s) – ERP etc.
New Web-based
application(s)
Legacy Application System(s)
ProgramProgram
Program
ProgramProgram
Program
ProgramProgram
Program
IT reality – Islands of Computing
Enterprise IT reflects the structure and history of each enterprise not the business processes required today Departments have their own IT systems Legacy systems are left in place and new systems built
separately.
19
ProgramProgram
Program
ProgramProgram
Program
ProgramProgram
Program
LoadProgram
ExtractProgram
ExtractProgram
LoadProgram
ExtractProgram Load
ProgramScreenScrape
Database Replicator
DownloadFile
DownloadFile
TransactionFile
MessageQueue
DownloadFile
TransactionFile
MessageQueue
ApplicationSystem B
ApplicationSystem A
ApplicationSystem C
Tactical approach to integrating the Business
Each requirement is addressed with a point to point solution Typically consisting of a data transfer mechanism and a
format converter. Increasing levels of supplier/client integration points further
complicates the situation.
20
Strengths Focused on getting the job done Each individual solution can be created quickly
Technical Weaknesses Numerous Point-to-Point Interfaces Inconsistent Business Processes Inconsistent Qualities of Service
Business Weaknesses Cost of maintenance Requirement to retain knowledge of the solution in-house. Potential security or loss of service/process failure due to
inconsistencies.
Strengths and weaknesses of tactical approach
21
Enterprise integration requirement
Unrestricted sharing of data and business processes throughout the networked applications or data sources in an organization Extend to customers, suppliers and regulators
The Linking of Data, Business Processes, Applications to automate business processes While ensuring that there are consistent qualities of service
(security, reliability etc)
Reduce the on-going cost of maintenance and reduce the cost of rolling out new systems.
22
Solution: Enterprise Application Integration (EAI)
Devised ways to efficiently reuse legacy and existing apps and add new ones
EAI products are built on combination of technologies JEE XML (eXtensible Markup Language) for enterprise-wide content
and data distribution using common DBs and Data Standards Message queuing Business Process Orchestration engine Sometimes Web Services
23
Layers of an EAI Stack
EAIEAI
Data TransformationData Transformation
Business Activity MonitoringBusiness Activity Monitoring
Message Storage & RoutingMessage Storage & Routing
Business ProcessOrchestrationBusiness ProcessOrchestration
AdapterAdapterAdapterAdapter
Provides real-time and historical data on performanceof processes and assists in making decisions. Provides real-time and historical data on performanceof processes and assists in making decisions.
Manages and tracks business transactions that mightspan multiple systems and last minutes to days. Manages and tracks business transactions that mightspan multiple systems and last minutes to days.
Ensures the data is the correct format for delivery to The next system. Ensures the data is the correct format for delivery to The next system.
Provides “open” connectivity into data sources whileallowing filtering and transformations of data. Provides “open” connectivity into data sources whileallowing filtering and transformations of data.
Ensures the reliability of data delivery across the Enterprise or between systems. Ensures the reliability of data delivery across the Enterprise or between systems.
24
Adapters
EAIEAI
Data TransformationData Transformation
Message Storage & RoutingMessage Storage & Routing
Business ProcessOrchestrationBusiness ProcessOrchestration
Also known as “Connectors”, “Translators”, “Wrappers” or “Bridges”
Provide seamless connectivity to the underlying application or data
Convert information and events into data that can be utilized by the infrastructure Two way translation between the
proprietary format and the common format Many adapters available off the shelf
From EAI Software vendors such as Tibco, or application software vendors such as SAP.
JEE architecture provides JCA
AdapterAdapterAdapterAdapter
Business Activity MonitoringBusiness Activity Monitoring
25
Reliable messaging Products that connect applications running
on different systems by sending and receiving application data as messages
JEE architecture provides JMS interface Message storage
Central repository for temporary storage of transactions until they can be delivered
Also called “Message Warehousing” Message queuing and routing
Asynchronous communications style / Publish Subscribe
Set of tools that route messages between sources and consumers based on pre-defined business rules
Message storage and routing
EAIEAI
Data TransformationData Transformation
Business ProcessOrchestrationBusiness ProcessOrchestration
AdapterAdapterAdapterAdapter
Message Storage & RoutingMessage Storage & Routing
Business Activity MonitoringBusiness Activity Monitoring
26
Data Transformation Transformation to and from formats used by
Different Systems Handling simple or complex data structures Typically representing data using XML
standards such as XQuery and XSLT
GUI Configuration tools to help define the transformations
Data Transformation
EAIEAI
Data TransformationData Transformation
Business ProcessOrchestrationBusiness ProcessOrchestration
AdapterAdapterAdapterAdapter
Message Storage & RoutingMessage Storage & Routing
Business Activity MonitoringBusiness Activity Monitoring
27
Data Transformation
EAI typically converts the source data into an intermediate format and then convert it into the target format Intermediate format is called the canonical format.
Source Target
F. name: RonanL. name: BradleyAffiliation: DIT, Dublin,Ireland
Name: Ronan BradleyCompany: DITCity: DublinCountry: Ireland
Intermediate or canonical
format
Intermediate or canonical
format
28
Issues in data transformation
Challenge 1: Coping with software from different vendors A mostly solved problem (Oracle vs. DB2 vs. SQL Server)
Challenge 2: Coping with different formats A solved problem: Relational vs. XML vs. ISAM
Challenge 3: Coping with different data models Solvable for the smaller scale cases
one person understands all the schemas As the complexity and scale of the data models increases
becomes harder and harder Theoretically possible but lots of practical problems
Challenge 4: Coping with data from new sources such as new systems, suppliers, customers Lots of unsolved problems
29
EAI: Building a canonical data model
Create a common data model including a set of terms for the concepts in the domain of the data sources being integrated e.g., Employee, Customer, Patient, weight, height,
bodyTemperature, … EAI solutions do this within their own domain (canonical format) XML Ontologies attempt to do it for any domain required in a self-
contained way but are very hard to build Mappings relate data items in data sources to terms in data
model Background knowledge about terms essential for
transformations e.g., Employee subClassOf Person, 2 people with the same last
name, first name and street address are likely to be the same,
30
Mapping the formats
Using the canonical data model, each message format can be mapped into and out of that format.
Requires many potentially complex mapping definitions.
31
Process Modeling Often GUI based Describing the flow of information in the
context of business processes Using the input/output of processes as the
Integration points between diverse business processes
Process Brokering Execution of discrete steps within a
business process Ability to recover from failed steps Workflow engine
Process Management Monitor business processes Correlate metrics to specific business
process steps
Business Process Orchestration
EAIEAI
Data TransformationData Transformation
Business ProcessOrchestrationBusiness ProcessOrchestration
AdapterAdapterAdapterAdapter
Message Storage & RoutingMessage Storage & Routing
Business Activity MonitoringBusiness Activity Monitoring
32
Business Activity Monitoring
EAIEAI
Data TransformationData Transformation
Business ProcessOrchestrationBusiness ProcessOrchestration
AdapterAdapterAdapterAdapter
Message Storage & RoutingMessage Storage & Routing
Business Activity Monitoring is using your data assets to make better decisions
BAM is used to gather information about what is occurring in the EAI deployment Status of current processes Identification of problem areas
E.g. Spotting applications that are not responding
Monitoring of unusual activity E.g. Unusually large orders
The collected information is displayed for operators or managers to diagnose and determine the solution
Business Activity MonitoringBusiness Activity Monitoring
Example of a BAM dashboard Shows current activity,
future load, historical trends and alerts These can relate to the
business process level events or infrastructure events
33
34
Potential EAI benefits
Lower development costs Overtime, each additional integration requirement can more
easily be addressed
Lower opportunity costs Integration is done more quickly corresponding cost savings reachieved sooner
Lower maintenance effort adapters extract the interaction with external systems significant advantage from the software engineering point of view
35
Potential EAI Challenges
Hub and spoke architecture concentrates all of the processing into a single server/cluster. Often became hard to maintain and evolve efficiently Hard to extend to integrate 3rd parties on other technology platforms
The canonical data model introduces an intermediary step Added complexity and additional processing effort
EAI products typified by Heavy customisation required to implement the solution Lock-In: Often built using proprietary technology and required specialist
skills Lack of flexibility: Hard to extend or to integrate with other EAI products!
Requires organisation to be EAI ready
What is EAI readiness? Much of the challenge associated with adopting EAI is not
related to the technology. EAI readiness is a state of business maturity in which its
systems, processes, employees, structure, and culture are prepared for the successful introduction of both EAI technology and the business disciplines that drive its introduction.
All five of these factors must be properly situated and aligned before an EAI implementation can succeed.
ProcessesProcessesProcessesProcesses
TechnologyTechnologyTechnologyTechnology EmployeesEmployeesEmployeesEmployees
CultureCulture
StructureStructure
©2001, IT Catalysts, Inc.
Process readiness Business strategic goals for project (i.e. process efficiency,
customer satisfaction, supply-chain optimization) clearly defined and agreed upon by company executive leadership.
Company makes use of mature methodologies that design integrated business change.
Desired business processes designed, documented, and valuated.
Gap between current and desired business processes well understood.
Employee readiness Staff accustomed to using information technology in
performance of day-to-day work.
Staff accustomed to adaptation of new roles, responsibilities, processes, and knowledge … to business change.
Staff have broad understanding of the business and their contribution to it.
Executives understand the role of business sponsorship, and the nature of investing time, staff and budget into the business infrastructure in order to reap future returns.
Technology readiness No systems to be integrated using EAI tools have critical
business logic not in the application itself This can happen if the logic required is in a batch programs or
reports which are not part of the actual application and hence cannot be integrated with.
No systems to be integrated using EAI tools will be retired/ decommissioning soon. There is no point integrating with a system which will soon be
removed
Most of the business functionality required in process designs exists in one or more legacy systems.
Applications portfolio has been evaluated for semantic compatibility. Check it is possible to transform from 1 data model to the other
Implementation of EAI not defined as the purpose of the effort. The project should be about the business objective, not about the
technology
Structural readiness
Keep it simple by ensuring that the EAI system involves as few departments/organisations as possible. Each organisation involved adds to the complexity of the
project as more people have to be engaged with and there are potentially greater variety of technologies and architectures.
Stakeholder analysis performed to determine overall potential for business resistance to the planned change. EAI projects change the way that each
department/organisation works. Therefore, EAI projects need the cooperation of each department/organisation.
Business sponsor established and ready to provide leadership to the business change.