You are on page 1of 6

2.

1 ENTERPRISE INFORMATION SYSTEMS


The most important resource in an enterprise is information. The history ofenter prise information
systems (EISs) is one of providing access to, and supporting processing of, that information. A
standard way of conceptualizing the architecture of an EIS is in three tiers:

1. At theresource tier, the resource management logic provides access to the enterprise asset that
the enterprise information system is organized around. This is typically a database or a legacy
resource, for example Customer Information Control System (CICS) applications for transaction
processing.

2. At the application tier, the business or application logic leverages that resource to support an
enterprise application. For example, this may be an e commerce application that utilizes a back end
database to record transactions.

3. At the client or presentation tier, the presentation logic is the interface between the application
and its clients, where the latter may be users or other applications.

2.1 ENTERPRISE INFORMACIONI SISTEMI

Najvažniji resurs u preduzeću je informacija. Historija enterprise informacionih sistema (EIS-


e) je u pružanju pristup, i podrške procesiranju, tih informacija. Standardni način
konceptualizacije arhitekture EIS-a je u tri sloja:

1. Na izvornom sloju, logika upravljanja resursima omogućava pristup imovini koju enterprise
informacioni sistem organizuje u kompaniji. Ovo je tipično baza podataka ili naslijeđeni
resurs, na primjer aplikacije Sistema za Kontrolu Korisničkih Informacija (CICS) za obradu
transakcija.

2. Na aplikacijskom sloju, poslovna ili aplikacijska logika uravnotežuje da resursi podržavaju


enterprise aplikaciju. Na primjer, to može biti e-commerce aplikacija koja koristi back-end
baze podataka za snimanje transakcija.

3. Na klijentskom ili prezentacijskom sloju, prezentacijska logika je sučelje između aplikacije


i njenih klijenata, gdje potonji mogu biti korisnici ili druge aplikacije.

Early enterprise applications ran on mainframe computers and all three tiers were, to a large extent,
centralized on the mainframe: data in files or databases, application logic written in COBOL or PL/1,
and presentation logic based on 3270 terminals (“green screens”). This is depicted in Fig. 2.1. The
classic exemplar of suchsingle-tier systems is CICS, still the most widely used software system
in the world, with over 20 billion CICS transactions occurring dailyat the time of writing.

Rane enterprise aplikacije pokretale su se mainframe računarima i sva tri sloja su, u velikoj mjeri bila,
centralizovana na mainframe: podaci u datotekama ili bazama podataka, aplikacijska logike napisana
u COBOL-u ili PL/1-u, i prezentacijska logika bazirana na 3270 terminalima ("zeleni ekrani "). Ovo je
prikazano na slici. 2.1. Klasičan primjer za jednoslojne sisteme je CICS, još uvijek najviše korišten
sistemski softver u svijetu, s više od 20 milijardi CICS transakcija nastaje dnevno u vrijeme pisanja.
The continuing ubiquity of CICS underlies the widespread deploy ment of a COBOL code base, with
90% of financial transactions and 70% of transactions generally occurring in the context of COBOL
applications. Figure 2.1 depicts a single-tier system, as exemplified by CICS. CICS is essentially an oper
ating system in its own right, providing facilities for transaction processing that were missing in early
batch operating systems. CICS applications reflect the above three-tier architecture for enterprise
information systems. The presentation logic is defined using the Basic Mapping System (BMS), which
provides a language for specifying how forms are laid out on terminal screens and how form data are
mapped into application language data structures. Business logic is typically writ ten in COBOL or
PL/1 augmented with CICS macros in a “pseudo-conversational” style where software routines are
invoked in response to users submitting completing forms, defining an implicit work flow for
transactional applications. Users of the system log into the CICS system running on the mainframe,
with CICS providing lightweight processes for such end-users within the CICS process, and
navigate through screen-based forms posted by business logic routines. Data storage is typically
based on database-management systems (DBMS), such as the IMS hierarchical DBMS or the DB2
relational DBMS, or record-based file systems, such as Virtual Storage Access System (VSAM). Such
legacy systems represent a significant part of the enterprise resources that modern enterprise
information systems encapsulate.
Single-tier systems are not automatically inferior to other systems. In fact, there are advantages to
keeping all components on one platform: fast and secure access between processes (via in-memory
communication mediated by the operating system kernel rather than over the network), centralized
administration, and efficient power utilization based on being able to shift computing resources from
lightlyloaded to heavily-loaded applications.

Nastavak sveprisutnosti CICS-a leži u široko rasprostranjenom COBOL baziranom kodu, sa 90%
financijskih transakcija i 70% transakcija opštenito se javljaju u kontekstu COBOL aplikacija. Slika 2.1
prikazuje jednoslojni sistem, kao što je vidljivo CICS. CICS je u suštini Operativni sistem sam po sebi,
koji pruža objekte za transakcijsko procesiranje, koji su nestali kod ranih batch operativnih
sistemima. CICS aplikacije odražavaju iznad troslojnu arhitekturu za poslovne informacione sisteme.
Prezentacijske logike se definiraju pomoću Basic Mapping Sistema (BMS), koji pruža jezik za
specificiranje kako se forme prikazuju na terminalu ekranima i kakve forme podataka su
mapirane na aplikacijski jezik strukture podataka. Poslovna logika je obično pisana u COBOL-u ili PL/1
proširena sa CICS makroima u "pseudo-konverzacijskom" stilu, gdje se softver rutine pozivaju kao
odgovor na korisniška podnošenja gotovih formi, definiranjem implicitnog toka rada za transakcijske
aplikacije. Korisnici sistemskog loga u CICS sistemu pokrenutom na mainframe, sa CICS-om pružaju
lagane procese za takve krajnje korisnike u CICS procesima, i navigaciju kroz ekran-bazirane forme
postavljene od strane rutina poslovne logike. Pohrana podataka je obično baziran na sistemima
upravljanja baza podataka, (DBMS), kao što je IMS hijerarhijski DBMS ili DB2 relacijski DBMS ili zapis
baziran sistem datoteka, kao što su Virtual Storage Access System (VSAM). Takvi postojeći sistemi
predstavljaju značajan dio enterprise resursa kako bi ih moderni enterprise informacioni sistemi kaše
prihvatili.
Jednoslojni sistemi nisu automatski inferiorni u odnosu na druge sisteme. Ustvari, postoje prednosti
držanja svih komponenti na jednoj platformi: brz i siguran pristup između procesa (preko in-memory
komunikacije posredovano kernelom operativnog sistema, a ne preko mreže), centralizovana
administracija, kao i efikasno korištenje energije bazirano na tome da bude stanju prebaciti
computing resurse sa manje-opterećenih na jako-opterećene aplikacije.
Such factors are driving a move to virtualized server architectures in the world of Windows/Unix
servers, where many of the lessons of the past are being re-learned (as discussed in Sect. 6.9.1).
Modern server platforms bear a remarkable resemblance to the mainframes of the past, particularly
in the virtualization of resources and centralized management. Interfaces are typically Web-based
with rich interactive interfaces, rather than based on 3270 terminals and Virtual Terminal Access
Method (VTAM). Nowadays, mainframes themselves support server operating systems, such as Linux
and OpenSolaris and middleware systems, such as Java EE, leveraging the mainframe support for
highly scalable virtualization and impressive input-output performance. Two-tier systemsorclient-
server systemsemerged in the 1980s with the advent of the personal desktop computer. Desktop
computers and workstations with bitmap graphics provided platforms for much richer user interface
experiences than earlier terminal-based systems as indicated in Fig. 2.2. The adoption of these
interfaces was facilitated by the deployment, out of research laboratories, of LAN and distributed
systems technologies, such as Ethernet and remote procedure call. One of the most important
developments with client server systems, from the point of view of enterprise applications, is that of
theapplication program interface(API). Obviously, APIs were already well known from operating
systems and from systems software, such as DBMSs and transaction processing monitors, with
programmatic interfaces. As we will see, client-server systems crucially rely on explicit interfaces or
service contracts between clients and servers to make clear the relative rights and responsibilities of
the parties in a distributed enterprise application.

Takvi faktori pokreću pomjeranje ka virtualiziranoj server arhitekturi u svijetu Windows/Unix


servera, gdje su mnoge od lekcija iz prošlosti ponovo učene (kao što je objašnjeno u Sekciji.
6.9.1). Moderne serverske platforme nose izuzetnu sličnost mainframe-a iz prošlosti, posebno
u virtualizaciju resursa i centraliziranog upravljanja. Sučelja su obično web-bazirana sa
bogatim interaktivnim sučeljima, a ne na bazi 3270 terminala i Virtual Terminal Access
Method (VTAM). Danas, mainframe i sami podržavaju server operativni sisteei, kao što je
Linux i OpenSolaris i middleware sisteme, kao što je Java EE, oslanjajući se na mainframe
podršku za visoko skalabilnu virtualizaciju i impresivne performanse input-output-a. Dvo-
slojni sistemi ili klijent-server sistemi pojavili su se 1980-ih godina s dolaskom personalnih
desktop računara. Desktop računari i radne stanice sa bitmap grafikom nudile su platforme sa
mnogo bogatijim iskustvima korisničkog sučelja od ranijih terminal sistema kao što je
prikazano na slici. 2.2. Usvajanje ovih sučelja je olakšano razvojem, od istraživačkih
laboratorija, LAN i distribuiranih sistema tehnologije, kao što su Ethernet i daljinska
procedura poziva - RPC. Jedan od najvažnijih događaja s klijent server sistemima, sa
stanovišta poslovnih aplikacija, je Aplikacijsko Programsko Sučelje (API). Očito, API-ji su
već bili poznati iz operativnih sistema i iz sistemskog softvera, kao što su DBMS-i
transakcijskog procesiranja monitora, s programskim sučeljima. Kao što ćemo vidjeti, klijent-
server sistemi presudno oslanjaju na eksplicitna sučelja ili servisne ugovore između klijenata i
servera kako bi bila jasna relativna prava i dužnosti strana u distribuiranoj enterprise
aplikaciji.

The importance of such interfaces is demonstrated by the provision in many distributed


programming environments of domain-specific languages—so-called interface description languages
(IDLs) —for describing those contracts. Client-server systems retain some of the advantages of single-
tier systems. They maintain some level of centralized administration and maintenance on the server
while off-loading much of the interface to clients. They are vulnerable to issues that are always
Značaj takvih sučelja pokazuje i odredba u mnogim distribuiranim programskim okruženjima
domenski-specifičnih jezika-tzv. sučelje opisni jezici (IDLs)-za opisivanje tih ugovora.
Klijent-server sistemi zadržavaju neke od prednosti jednoslojnih sistema. Oni održavaju
određeni nivo centralizirane administracije i održavanje na serveru, dok je off-učitavanje veće
na sučelju za klijente. Oni su osjetljivi na pitanja koja su uvijek

present in distributed applications, particularly that of independent failures: unless provision is made
for replicating critical parts of the system, failure in some components may ripple out to affect other
components, leading to a web of vulnerability. This is exacerbated as clients need to interact with
multiple services to achieve their goals. Each service provides its own interface or API to clients and it
is left to the client to correctly combine these separate interfaces. Assuming that the interfaces
include support for fault tolerance over unreliable networks, for example for managing database
transactions and replicated servers, the coordination of these mechanisms becomes a non-trivial
responsibility for clients. This leads to the phenomenon of “fat clients”, which are historically
considered undesirable. We consider fat clients again when we consider domain-driven architecture
in Sect. 5.61.

predstavljajui u distribuiranim aplikacijama, posebno da su nezavisnih od kvarova: osim odredbe da


je napravljen za replikaciju kritičnih dijelova sistema, neuspjeh u nekim komponentama može u
određenoj mjeri da utiče na druge komponente, što dovodi do web ranjivosti. Situacija se pogoršava
kako klijenti treba da vrše interakciju s više servisa da bi ostvarili svoje ciljeve. Svaka usluga pruža
svoje sučelje ili API za klijente i ostavljeno je na klijentu da pravilno kombinuje ova odvojena sučelja.
Pod pretpostavkom da sučelja uključuju podršku za više tolerancije grešaka nepouzdane mreže, na
primjer za upravljanje bazom podataka transakcija i replicira servere, koordinacija ovih mehanizama
postaje ne-trivijalna odgovornost za klijente. To dovodi do fenomena "fat klijenti", koji se historijski
smatraju nepoželjnim. Smatramo da fat klijenti opet kada uzmemo u obzir domain-pokretačku
arhitekturu u Sekta. 5.61.

Three-tier systemsfactor out some, or all, of the business logic in enterprise information systems into
an explicit middle tier; the software layer that supports this is often referred to asmiddleware(see
Fig. 2.3). A middleware system is intended to provide the “glue” that binds together disparate clients
and resources in a distributed EIS. As with client-server systems, APIs are critical for describing and
communicating data; such systems provide an IDL for specifying interfaces. Middleware systems
provide discovery services for locating services for clients and a “wire protocol” that all users of the
middleware system can use to exchange data. Middleware systems also provide critical
infrastructure for coordinating applications in a reliable manner, particularly via reliable message
queues and the coordination of distributed database transactions.

Tri-slojni sistemi čine da neki faktori, ili svi, poslovne logike u enterprise informacionim sistemima u
eksplicitni srednji sloj, softverski sloj koji podržava ovo često se naziva kao middleware (vidi sliku
2.3.). Middleware sistem je namijenjen da pruži "ljepilo" koje povezuje zajedničke različite klijente i
resursa u distribuiranom EIS. Kao i kod klijent-server sistema, API-ji su od ključne važnosti za
opisivanje i komunikaciju podataka; takvi sistemi pružaju IDL za specifikaciju sučelja. Middleware
sistemi pružaju otkrivanje servisa za lociranje servisa za klijente i "žičani protokol" da svi korisnici
middleware sistema mogu koristiti za razmjenu podataka. Middleware sistemi također pružaju
kritičnu infrastrukturu za koordinaciju aplikacija na pouzdan način, posebno preko pouzdanih redova
poruka i koordinaciju distribuirane baze podataka transakcija.

Modern middleware systems may also support load balancing, directing client requests to the least
heavily loaded in a pool of server instances, and transparent rollover of clients from failed resource
managers and server to backup servers. There are many examples of middleware systems such as
CICS, Encina, Tuxedo, CORBA, Java EE, and WCF. Middleware systems provide support for integrating
local business logic into the global logic of the system itself. For example, Java EE allows business
logic to be expressed as method code inEnterprise Java Beans(EJBs), and the latter are then deployed
as server objects in the Java EE application server. Middleware systems connect disparate forms of
clients and resources and allow the logic for managing such connections to be defined as part of the
application logic in the middleware, rather than making it the responsibility of the clients. Some of
these back-end resources may themselves be two-tier systems for whom the application logic in the
middleware is itself now a client. This may happen, for example, if the resource manager is a DBMS
where application logic is defined usingstored procedures in the DBMS. Another example is a legacy
CICS application that has been modified to support access via HTTP or message queuing, rather than
terminal-based forms. N-tier systemsrefer to three-tier systems where the back-end resources may
themselves be three-tier systems, or where the presentation logic is split with some on the server
(via a Web server) and some on the client (via a Web browser, possibly supporting rich Internet
applications).

Moderni middleware sistemi također mogu podržati balansiranje opterećenja, usmjeravanje klijent
zahtijeva do najmanje opterećenih u grupi server instanci i transparentno vraćanje klijenata sa
neuspjelih menadžiranih resursa i servera za backup servera. Postoje mnogi primjeri middleware
sistema kao što su CICS, Encina, Tuxedo, CORBA, Java EE i WCF. Middleware sistemi pružaju podršku
za integrisanje lokalne poslovne logike u globalnu logiku samog sistema. Na primjer, Java EE
omogućava poslovnom logici da bude izražena kao metodski kod u Enterprise Java Beans (EJB-a), a
kasnije su raspoređeni kao server objekti u Java EE aplikacijskom serveru. Middleware sistemi
povezuju različite frome klijenata i resursa i omogućujui logiku za upravljanje takvih veza da se
definiraju kao dio aplikacijske logike u middleware, a ne što je u nadležnosti klijenata. Neki od ovih
back-end resursia mogu sami biti dvoslojni sistemi za koje je logika aplikacije u middleware sama
sada klijent. Ovo se može dogoditi, na primjer, ako je menadžer resursa DBMS gdje je aplikacijska
logiku definirana koristeći stored procedure u DBMS. Drugi primjer je zaostavština CICS aplikacija koja
je modificirana da podržava pristup preko HTTP ili poruke čekanja, umjesto terminal-bazirane forme.
N-slojni sistemi trosljnim sistemima gdje back-end resursi mogu i sami biti troslojni sistemi, ili gdje se
prezentaciska logika se dijeli sa nekim na serveru (preko Web servera), a neke na klijentu (preko Web
pretraživača, moguće podržavaju bogate Internet aplikacije).

A typical picture of a modern enterprise information system then, as depicted in Fig. 2.4, is a cluster
of Web servers, accessible through the enterprise firewall, that are connected via the internal
enterprise network to a cluster of application servers that implement application logic. With n-tier
systems, these Web servers may be deployed in Web containers on the application servers. The Web
servers may be
outside the enterprise firewall, in a so-called perimeter network, ordemilitarized zone(DMZ), defined
by a second firewall between the Web server cluster and the internal network. The inner firewall
Tipična slika modernog enterprise informacionog sistem onda, kao što je prikazano na slici. 2.4, je
skup Web servera, dostupan kroz Enterprise firewall, koji su povezani preko interne enterprise mreže
klaster aplikacijskih servera koji implementiraju aplikacijsku logiku. Sa n-slojnim sistemima, ovi Web
serveri mogu biti raspoređeni u Web kontejnere na aplikacijskim serverima. Web serveri mogu biti
izvan kompanijskog firewalla, u tzv. perimetar mreže, ili u demilitariziranoj zoni (DMZ), definisana sa
drugim firewall-omvatrozidom između Web server klastera i interne mreže. Unutrašnji zaštitni zid

only allows communication to the internal network from the external cluster, so any attack on the
network requires compromising the latter machines. The application servers are connected via
gateways and inner firewalls to internal resource managers, such as database servers, file servers,
and wrapped two-tier systems. Although this appears to assume physical distribution of the
resources, it is well to note that much, or all, of this arrangement can be virtualized in mainframe
architectures (by which term we include modern virtualized servers). Communication within the
enterprise is made more secure and more efficient by performing it between the memories of virtual
machines running on the same physical machine, communicating over virtual, rather than physical,
LANs. It may still be desirable to have the point of the entry, the Web cluster, in the DMZ.
Furthermore, the hypervisor on the mainframe now becomes a critical component for maintaining
the integrity of the system.

dopušta samo komunikaciju na internoj mreži sa vanjskih klastera, tako da bilo koji napad na
mrežu zahtijeva kompromitovanje ovog drugog reda mašina. Aplikacijski serveri su povezani
preko gateway-a i unutrašnjih firewall-a na interne menadžere resursa, kao što su serveri baza
podataka, file serveri, i gradirani u dvo-slojne sistema. Iako ovo izgleda kao fizička
distribucija resursa, dobro je napomenuti da puno, ili sve, od ovog aranžmana može se
virtualizovati na mainframe arhitekturi (čime smo ovaj termin uključili u moderni
virtuelizovani server). Komunikacije unutar poduzeća je napravljena sigurnije i efikasnije
obavljanjem komunikacije između memorija virtualnih mašina pokrenutih na istoj fizičkoj
mašini, komuniciraju preko virtualnog, a ne fizičkog, LAN-a. Možda neće biti poželjno imati
tačke ulaska, Web klaster, u DMZ. Nadalje, Hipervizor na mainframe sada postaje ključna
komponenta za održavanje integriteta sistema.

2.2 COMMUNICATION
As we have seen, components of an enterprise information system are typically distributed over
networks, be the distribution physical or virtual. Portions of this distribution will always be physical,
for example for clients or resources that are

2.2 KOMUNIKACIJA
Kao što smo vidjeli, komponente enterprise informacionog sistema obično su distribuirane preko
mreže, bila distribucija fizička ili virtualna. Dijelovi ove distribucije će uvijek biti fizički, na primjer za
klijente ili resurse koji su

You might also like