Chapter 5- Eai Part 1
-
Upload
muhammad-aqeel-mohd-nazaran-9367 -
Category
Documents
-
view
225 -
download
0
Transcript of Chapter 5- Eai Part 1
-
8/2/2019 Chapter 5- Eai Part 1
1/36
1
ENTERPRISE APPLICATIONINTEGRATION (PART 1)
ITS580- Introduction to
Enterprise ArchitectureFramework
-
8/2/2019 Chapter 5- Eai Part 1
2/36
2
CHAPTER OUTLINE
Enterprise Applications
Evolution of Enterprise ApplicationsEnterprise Application Integration
Why EAI?
What is EAITypes of EAI
-
8/2/2019 Chapter 5- Eai Part 1
3/36
3
Enterprise Applications (1)
Enterprise applications are the applicationsdeveloped for large organization which will
have many, disparate subsystems.The intention for automation is tointegrate all subsystems and processes inthe systems.
Normally Enterprise Applications havedistributed architecture and huge in size.
-
8/2/2019 Chapter 5- Eai Part 1
4/36
4
Enterprise Applications (2)
Enterprise applications solve businessproblems.
This involves safe storage, retrievaland manipulation of business data.It may have multiple interfaces, like:
Web interface for customersGUI application running on the desktopfor the employees.
-
8/2/2019 Chapter 5- Eai Part 1
5/36
5
Enterprise Applications (3)
Enterprise Applications may communicate withremote systemsIt may have to co-ordinate data in multiple stores.It should follow a set of business rules.If any part of the system fails, the enterprise willstart losing money and if the business grows, theapplication needs to grow with it.
These factors make an enterprise application quitecomplex.
-
8/2/2019 Chapter 5- Eai Part 1
6/36
Enterprise Applications (4)
Enterprise Application Integration, or EAI,encompasses the following areas:
Opening up ways for the information to flowfrom one application to another,
Letting applications to reach other sources ofdata outside themselves, and
Allowing other programs to peer into theinnards of formerly closed programs.
Sharing data between divisions or even betweenseparate corporations
6
-
8/2/2019 Chapter 5- Eai Part 1
7/36
Enterprise Applications (5)
Examples of enterprise programs that canbenefit from EAI include
Enterprise Resource PlanningCustomer Relationship Management
Supply Chain Management
Human Resources Management
7
-
8/2/2019 Chapter 5- Eai Part 1
8/368
Example
-
8/2/2019 Chapter 5- Eai Part 1
9/36
9
Components of Enterprise
ApplicationAn enterprise application will have
Presentation Logic
Processing of instruction or routine
Required to display/print dataExecution of GUI
Business Logic
Perform data processing of the business
Data entry, update, query and report processingFunctional algorithm that handle information exchangebetween database and GUI
Data Access LogicData repository / Database
-
8/2/2019 Chapter 5- Eai Part 1
10/36
10
Evolution of Enterprise
Applications- Single Tier
AdvantagesNo client side management is requiredData consistency is easy to achieve
DisadvantagesDifficult to maintain and reuse
Mainframe
Dumb Terminal
Dumb Terminal
Dumb Terminal
Business logic, Presentation
logic and Data access logic
reside on the single layer
-
8/2/2019 Chapter 5- Eai Part 1
11/36
11
Evolution of Enterprise
Applications- Single TierClients to Single tier EAs have only dumb terminals.Presentation logic, Business logic and Data Access logicresides at single place, mostly on mainframes. All these layersare tightly coupled to each other. Any change in them,
requires NO change at client side.So, NO client side management is required.But as, all these layers are tightly coupled to each other, anychange happening to any of the layers, will affect otherlayers as well.So difficult to maintain and reuse.
Again, for maintenance, we may require people who have skillsets in different areas such as Presentation + DevelopingBusiness Logic + Data Access logic; which is difficult to get.As data is stored at single location, integrity and consistencyof data is easy to achieve.
-
8/2/2019 Chapter 5- Eai Part 1
12/36
12
Example: IBM z10 mainframe
computer
IBM z10 mainframe computer offers the computing power of 1,500 PC-style servers, uses 85 percent less
electricity, and occupies 85% less floor space. The all-new z10 is IBM's first mainframe purposely built to
handle the exploding demand for digital transactions enabled by the Internet, a trend that is creating crowded,
over-burdened corporate data centers -- computer rooms that process everything from consumer banking
transactions to drivers' license forms. (Feature Photo Service/IBM)
-
8/2/2019 Chapter 5- Eai Part 1
13/36
13
Evolution of Enterprise
Applications - Two Tier
DataBase
Data Layer
Business Logic &
Presentation Logic
Advantages
DB product independence
Disadvantages
Difficult to maintain and update
-
8/2/2019 Chapter 5- Eai Part 1
14/36
14
Evolution of EnterpriseApplications - Two Tier
In Two tier EAs, the Data Layer is separated from the Businessand Presentation logic, which give app developers flexibility tomaintain database independently. Changes or migration in this layerwill be independent and can be taken care of efficiently.
But as Business and presentation logic resides together at Clientside, this applications are difficult to maintain and update.Ex: Consider the app is deployed at 50,000 clients. Any change inPresentation (frequent) or business rules (less frequent) will haveto managed/ updated at all 50,000 clients, which is difficult toachieve.And again there would be too much inter-dependence betweenPresentation and Business logic, which leads to poor maintenancecapabilities.
-
8/2/2019 Chapter 5- Eai Part 1
15/36
15
Example: VB Application
-
8/2/2019 Chapter 5- Eai Part 1
16/36
16
Evolution of EnterpriseApplications - Two Tier
Two tier client server architectures issuitable for the following circumstances:
when the number of users is expect to be lessthan 100
for non-real-time information processing in non-complex systems that requires minimal operator
intervention(Content from SEI websitehttp://www.sei.cmu.edu/str/descriptions/threetier.html)
-
8/2/2019 Chapter 5- Eai Part 1
17/36
17
Evolution of EnterpriseApplications - Three Tier
Advantages
Business logic can change more easily - greater degree of flexibility
Increased security, as security can be defined for each service, and at eachlevel
Increased performance, as tasks are shared between servers
DisadvantagesComplexity introduced in middle-tier.
Server
DataBase
Data Layer
Presentation Logic
Business Logic
-
8/2/2019 Chapter 5- Eai Part 1
18/36
18
Evolution of EnterpriseApplications - Three Tier
In 3-tier EAs, Presentation, Business and Data layers are separated andkept at different locations. This will ease maintenance of any of the layerswithout other layers getting affected.
Here, still we need to deploy the presentation logic at each and every client
separately, which will be difficult to achieve, once presentation logicchanges. (Not a scalable model)
Business logic exists at middle-tier also known as application server. Thereare various system-level issues related to the working of the middleware,such as
1.When is this server supposed to create instance of the servlet? At the startup
time or after first request comes in?2.Can it connect to database with single connection object? No. Then, if we have tocreate multiple connections, can we keep it as pool of connections? What should beits size?3.Should it support single thread model or Multi-threading is inherent?4. In that case, how many threads should be created and kept ready in a thread-pool?
So all these issues add up the complexity in the middle tier, which needs tobe answered.
-
8/2/2019 Chapter 5- Eai Part 1
19/36
19
Example: ICRESS System
-
8/2/2019 Chapter 5- Eai Part 1
20/36
20
Evolution of EnterpriseApplications - n Tier
AdvantagesMore loosely coupledMore reusableZero client management
DisadvantagesComplexity in the middle tier
Server Server
DataBase
Data Layer
Presentation Logic Business Logic
Thin Client
-
8/2/2019 Chapter 5- Eai Part 1
21/36
21
Evolution of EnterpriseApplications - n Tier
N-tier EAs, most of the discussed issues are resolvedThe Presentation, business and data layers are separated and arelocated on separate server components.Users access the applications using thin clients. Thin clients are the
clients, which do not have any application logic residing at the localmachine. At client side, no special requirements are needed.Example of thin client : Web browser
Now, even if your web sites presentation logic is changing everyweek (this was happening for yahoo mail sometimes back) , no client
side management is required. You can change it at only one place (i.ein your server where your sites presentation logic resides)!
But as the middle-tier component exists in this architecture, soissues relating to it will still remain in this model, which can bethought as disadvantage!!!
-
8/2/2019 Chapter 5- Eai Part 1
22/36
22
Example: Google Website
-
8/2/2019 Chapter 5- Eai Part 1
23/36
23
Role of Application Servers inEnterprise Application
To reduce complexity in the middle tier,enterprise programmers build their applications ontop of systems called Application Servers.
Application Servers provide the system servicesto address the non-functional requirement likescalability, performance, and reduces thecomplexity of the middle tier
Resource Pooling
MultithreadingApplication developers can concentrate on thefunctional requirements by concentrating on thebusiness logic.
-
8/2/2019 Chapter 5- Eai Part 1
24/36
24
DISCUSSION
Give example (s) of an applicationsystem for each of these categories:
Single Tier
Two Tier
Three Tier
N-Tier
-
8/2/2019 Chapter 5- Eai Part 1
25/36
25
Enterprise ApplicationIntegration - Introduction
Enterprise application integration (EAI) enables anenterprise to integrate its existing applicationsand systems and to add new technologies and
applications to the mix.EAI also helps an enterprise to model andautomate its business processes.Enterprise application integration has always
focused on a company
s IT department integratingnew software modules or applications with itsexisting systems.
-
8/2/2019 Chapter 5- Eai Part 1
26/36
26
Enterprise ApplicationIntegrationIntroduction (2)
Enterprise organizations also must weigh the costof replacing existing systems with new systemswith the cost of merging existing systems with
new systems.Discarding existing systems is never an easychoiceIn addition to retaining the existing systems,
companies can integrate them with newapplications to enhance functionality. The key withthis option is the cost of integrating the separateapplications and systems
-
8/2/2019 Chapter 5- Eai Part 1
27/36
27
-
8/2/2019 Chapter 5- Eai Part 1
28/36
28
http://aurassystems.com/images/eai.jpg -
8/2/2019 Chapter 5- Eai Part 1
29/36
29
http://aurassystems.com/images/eai.jpg -
8/2/2019 Chapter 5- Eai Part 1
30/36
30
Why EAI?
In the past, enterprise systemarchitectures have been poorly planned.Many organizations built systems based onthe cool technology of the day withoutrealizing how these systems wouldsomehow, someday, share information .Another important factor that is driving
enterprises toward the promised land ofEAI is the broad acceptance of packagedapplications, such as Enterprise ResourcePlanning (ERP) application
-
8/2/2019 Chapter 5- Eai Part 1
31/36
31
Why EAI? (2)
As organizations begin to realize the necessity ofinterconnection of disparate systems in order tomeet the needs of the business, the significance
of integration technology is being simultaneouslyfelt.Thus it becomes a very important milestone forevery enterprise to effectively architect, design,an develop systems based on EAI technology.
It needs a steep learning curve to acquire theknowledge and wisdom to identify when to applyEAI technology, selecting appropriate technology,architect a solution, and they applying itsuccessfully to the problem.
-
8/2/2019 Chapter 5- Eai Part 1
32/36
32
What is EAI
EAI is the unrestricted sharing of data andbusiness processes among any connectedapplications and data sources in the
enterprise.The demand of the enterprise is to sharedata and processes without having to makesweeping changes to the applications or
data structures.Only by creating a method ofaccomplishing this integration can EAI beboth functional and cost effective.
-
8/2/2019 Chapter 5- Eai Part 1
33/36
33
What is EAI (2)
EAI is the solution to the unanticipated outcomeof generations of development undertaken withoutcentral vision or strategy.
A number of stovepipe systems are in yourenterprise-for example, inventory control, salesautomation, general ledger, and human resourcesystems.
Packaged applications such as SAP, Baan, andPeopleSoft- which are natural stovepipesthemselves- have only compounded the problem.
-
8/2/2019 Chapter 5- Eai Part 1
34/36
34
Types of EAI
1. Data-level EAI is the process andthe techniques and technology of
transferring data between datastores
2. Application interface level EAI
refers to the leveraging ofinterfaces exposed by custom orpackaged applications
-
8/2/2019 Chapter 5- Eai Part 1
35/36
35
Types of EAI
3. Method level EAI is the sharing of thebusiness logic that may exist within the
enterprise. Applications can accessmethods on any other application
4. User interface level EAI is a moreprimitive approach. Architects and
developers are able to bundle applicationsby using their user interfaces as acommon point of integration
-
8/2/2019 Chapter 5- Eai Part 1
36/36
36
DISCUSS
Concept of EAIwhat do youunderstand?
Prepare for next class