41
Enterprise Systems

Enterprise Systems. Anatomy of enterprise applications Enterprise Applications keep track of information related to the operations of the enterprise e.g

Embed Size (px)

Citation preview

Enterprise Systems

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

Enterprise Application Integration

An architecture for integration

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.

Cultural readiness

Corporate culture embraces the importance of well-defined business processes.

Staff accustomed to adaptation of new roles, responsibilities, processes, and knowledge … to business change.

Individuals and departments willing to change the way the applications and data is defined.