Научная статья на тему 'Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom na primenu u vojnoj organizaciji'

Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom na primenu u vojnoj organizaciji Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
532
64
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
internet tehnologija / distribuirani sistemi / komponentni sistemi / softverske komponente / vojna organizacija / heterogeni sistem / metodološki pristup. / Internet technology / distributed systems / component systems / software components / military organization / heterogenic system / methodological approach

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Pejanović J. Miloš

Razvoj personalnih računara i internet tehnologije uzrokuje neprekidnepromene u metodološkim pristupima i konceptima razvoja informacionih1sistema. Većina postojećih informacionih sistema, zbog heterogenosti,ima problem integrisanja podsistema. Radi prevazilaženjaovog problema proizvođači softvera nude različita rešenja. U ovom raduse istražuju pristupi i predlaže optimalan put, sa posebnim osvrtomna primenu u vojnoj organizaciji.Primenom savremenih pristupa u razvoju informacionih sistemana konceptu distribuiranih komponentnih sistema dolazi se do skupapredloženih rešenja različitih proizvođača. Rešenja se odnose na mehanizmekoji bi trebalo da omoguće da komponente pisane u različitimjezicima međusobno sarađuju u heterogenim sistemima koji se nalazeu različitim čvorovima u mreži računara.U radu je prikazan koncept komponentnih distribuiranih informacionihsistema u internet tehnologiji i njihove mogućnosti. Na kraju se predlaže rešenjesa specifičnostima implementacionog okruženja u vojnoj organizaciji.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

DEVELOPMENT OF INTERNET-BASED INFORMATION SYSTEMS USING SOFTWARE COMPONENTS WITH THE EMPHASIS ON THE APPLICATION IN THE MILITARY ORGANIZATION

The development of personal computers and Internet technology causes continuous changes in methodological approaches and concepts of development of information systems. Most existing information systems, due to their heterogeneity, have a problem of integration of subsystems. In order to overcome this problem, software vendors offer different solutions. In this work we explore different approaches and propose an optimal way, with a special emphasis on its application in the military organization. By applying modern approaches in the development of information systems on the concept of distributed component systems, we come to the set of proposed solutions from different manufacturers. The solutions are related to the mechanisms which should ensure that components written in different languages cooperate with each other in heterogeneous systems that are in different nodes in the computer network. This work describes the concept of component distributed information systems of Internet technology and their capabilities and offers a solution specifying the implementation environment in the military organization.

Текст научной работы на тему «Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom na primenu u vojnoj organizaciji»

RAZVOJ INFORMACIONIH SISTEMA U INTERNET OKRUŽENJU KORIŠĆENJEM SOFTVERSKIH KOMPONENTI SA POSEBNIM OSVRTOM NA PRIMENU U VOJNOJ ORGANIZACIJI

Pejanović J. Miloš, Generalštab Vojske Srbije, Uprava za telekomunikacije i informatiku (J-6), Centar za komandno--informacione sisteme i informatičku podršku, Beograd

UDK: 004.738.5:355.1

Sažetak:

Razvoj personalnih računara i internet tehnologije uzrokuje nepre-kidne promene u metodološkim pristupima i konceptima razvoja infor-macionih1 sistema. Većina postojećih informacionih sistema, zbog he-terogenosti, ima problem integrisanja podsistema. Radi prevazilaženja ovog problema proizvođači softvera nude različita rešenja. U ovom ra-du se istražuju pristupi i predlaže optimalan put, sa posebnim osvrtom na primenu u vojnoj organizaciji.

Primenom savremenih pristupa u razvoju informacionih sistema na konceptu distribuiranih komponentnih sistema dolazi se do skupa predloženih rešenja različitih proizvođača. Rešenja se odnose na me-hanizme koji bi trebalo da omoguće da komponente pisane u različitim jezicima međusobno sarađuju u heterogenim sistemima koji se nalaze u različitim čvorovima u mreži računara.

U radu je prikazan koncept komponentnih distribuiranih informacionih sistema u internet tehnologiji i njihove mogućnosti. Na kraju se predlaže re-šenje sa specifičnostima implementacionog okruženja u vojnoj organizaciji. Ključne reči: internet tehnologija, distribuirani sistemi, komponentni si-stemi, softverske komponente, vojna organizacija, heterogeni sistem, metodološki pristup.

Uvod

Danas je nezamisliv razvoj distribuiranih informacionih sistema bez računarskih mreža i koncepta objektnoorijentisanog razvoja aplikacija. Time se uvode konkretniji standardi u računarskoj tehnologiji,

1 U užem smislu, u ovom radu se misli na poslovne ili bazične informacione sisteme.

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

koji omogućavaju povezivanje udaljenih komponenti distribuiranog har-dvera ili softvera. Prelazak sa strukturnog i modularnog programiranja u objektnoorijentisano programiranje redukuje cenu softvera. Takve soft-verske komponente integrišu se sa aplikacijama, a aplikacije u celoviti si-stem. Zbog toga je razvoj komponentnih models postao popularan po-slednjih godina. Brz tehnološki razvoj, posebno pojava internet tehnologi-je, uzrokuje promene u navedenim metodološkim pristupima. Problem kod većine postojećih informacionih sistema jeste heterogenost i veliki broj neintegrisanih podsistema. Zbog toga se teži definisanju određenih standarda koji umanjuju ove probleme. Oni omogućavaju da se kompo-nente softvera mogu koristiti ako su već jednom napisane ili da se mogu nabaviti od drugih proizvođača. Standard se odnosi na interfejs koji bi trebalo da omogući da distribuirane komponente, pisane u različitim jezi-cima, međusobno sarađuju. To je od velikog značaja za definisanje me-todoloških pristupa u razvoju informacionih sistema kod velikih organiza-cionih sistema, kao što je vojna organizacija.

Posebno su značajna iskustva u primeni metoda i standarda u razvoju informacionih sistema sa primenom internet tehnologije. Pojava različitih proizvođača stvara dileme u opredeljenju za pristup u razvoju kompleksnijih informacionih sistema, posebno kada je reč o primeni u vojnoj organizaciji.

Pristup u razvoju informacionih sistema

Cilj procesa razvoja sistema je izrada kvalitetnog softvera koji će za-dovoljiti potrebe korisnika. Pored toga, razvoj softvera treba da predsta-vlja proces s predvidivim vremenskim trajanjem i budžetom. Postoji više različitih procesa razvoja sistema, a primena određenog procesa zavisi od domena problema, tehnologije koja se može koristiti u implementaciji i sposobnosti i veštini projektnog tima.

U razvoju informacionih sistema važnu ulogu ima izbor odgovaraju-ćih metoda i alata.2 Za velike sisteme, kao što je, na primer, vojna organi-zacija, preporučuju se standardizovani postupci i metodologije za razvoj informacionih sistema. Postoje različiti metodološki pristupi u razvoju informacionih sistema: sistemski integralni pristup razvoju (od projekto-vanja, implementacije do uvođenja i održavanja) i razvoj informacionih sistema kao tehničko-tehnološke strukture (standardna mreža raču-nara i servisa). Kombinacija ova dva pristupa vodi efikasnom rešenju u razvoju informacionih sistema, pri čemu treba imati u vidu koncept „otvorenih sistema“ koji omogućavaju da različiti informatički standardi

2 Metode predstavljaju skup postupaka, dok su alati sredstva u procesu razvoja informacionih sistema (na primer: dijagrami toka podataka, dijagrami objekti - veze, objektni dijagrami - dija-grami klasa, dijagrami promene stanja, Petrijeve mreže, itd.).

i servisi mogu da funkcionišu na tim sistemima (uključujući operativne si-steme, baze podataka, računarske komunikacije i korisničke interfejse).

Osnovni problem u razvoju složenijih informacionih sistema jeste sa-vladavanje njihove složenosti. Pri tome, analiziraju se dva aspekta: po-dela celokupnog razvoja na faze i dekompozicija sistema. Podela razvoja na faze može se posmatrati kroz poznati konvencijalni životni ci-klus informacionih sistema: 1. planiranje razvoja, 2. analiza i specifika-cija zahteva, 3. projektovanje, 4. implementacija (kodiranje i testira-nje), 5. uvođenje, 6. održavanje.

Pojedinačne metode koriste skup alata, tehnika i aktivnosti za rešavanje problema u razvoju informacionih sistema. U pojedinim fazama životnog ci-klusa informacionih sistema mogu se koristiti različiti alati i metode (tabeli 1).

Tabela 13

Metode i alati za razvoj složenih informacionih sistema

Konvencionalne metode Objektne metode

1. Planiranje razvoja informacionih sistema (nije metoda već služi da razloži sistem na podsisteme)

2. Analiza sistema

Specifikacija

Model procesa (strukturna sistem analiza) Analiza „slučajeva korišćenja“ (Use Case)

Model podataka (model objekti - veze) Objektno modeliranje. Dijagrami „klasa-objekti“

Specifikacija aplikacija (model aplikacionog složenog objekta) Modeliranje dinamike sistema, preko dijagrama prelaza stanja (na primer, Petrijeve mreže)

Modeliranje funkcija (dijagrami toka podataka)

3. Projektovanje

Logičko i fizičko projektovanje Projektovanje sistema, podela na podsisteme, definisanje arhitekture

Projektovanje programa Projektovanje objekata

4. Implementacija (kodiranje i testiranje)

5. Uvođenje

6. Održavanje

Aplikativno najpogodniji je objektni pristup. Kod različitih pristupa postoji problem izbora metoda projektovanja, odnosno stvaranja optimal-nog metodološkog pristupa razvoja informacionih sistema. Takođe, postoji problem razvoja zbog parcijalne automatizacije u uslovima masov-nog uvođenja personalnih računara. U takvim uslovima često se pristupa

3 Izvor: B.Lazarević, S.Nešković, Objektnoorijentisana tansformaciona metoda razvoja informacionih sistema, SYMOPIS 90.

(Ш>

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

razvoju informacionih sistema kao infrastrukture i definisanju standarda, ne čekajući globalni projekat. Nakon izvesnog vremena postoji moguć-nost da dođe do redundancija i haosa, zbog čega je potrebno ostvariti kontrolu i upravljati razvojem. Koordinacija nad lokalnim podsistemima, pored standarda, podrazumeva rečnik podataka, što znači postojanje „informacionog sistema o informacionim sistemima". Ovakav pristup u razvoju informacionih sistema zahteva dosta znanja.

Postoje različite objektnoorijentisane metode koje predlažu različite pristupe objektnoorijentisanoj analizi i projektovanju informacionih sistema. Među njima su najpoznatije OMT metod (Object Modeling Technique), Boochov metod i OOSE metod (Object - Oriented Software Engineering) [4]. U OMT metodu posmatraju se tri različita modela: objektni, dinamički i funkcionalni. Oni predstavljaju različite poglede na sistem i međusobno su komplementarni. Ovaj metod daje prednost pristupu u ko-jem analiza sistema započinje definisanjem entiteta i formiranjem objekt-nog modela. Ovaj pristup naziva se pristup orijentisan podacima (data driven approach). U Boochovom metodu definisani su različiti dijagrami: dijagram klasa, dijagram objekata, dijagram interakcije objekata i dija-gram prelaza stanja. Njima su predstavljene statičke i dinamičke karakte-ristike sistema. U ovom metodu posebno je naglašen onaj deo procesa razvoja sistema koji se odnosi na projektovanje i implementaciju sistema [5]. U OOSE metodu definisane su tri vrste objekata. To su objekti entiteta (entity objects), interfejs objekti (interface objects) i upravljački objekti (control objects). Za opis dinamike sistema uvedeni su slučajevi korišće-nja (use cases). Ovaj metod daje prednost pristupu u kojem definisanje zahteva i analiza sistema započinju definisanjem slučajeva korišćenja i formiranjem modela slučajeva korišćenja. Ovaj pristup naziva se pristup orijentisan slučajevima korišćenja (use case approach) [4]. Uvidom u navedene objektnoorijentisane metode dolazi se do zaključka da sve te metode imaju jedan zajednički skup elemenata koji se koristi u modelira-nju sistema (slika 1).

Slika 1 - Razvoj UML

Objedinjeni jezik modeliranja (Unified Modeling Language - UML) nastao je sredinom 90-ih,4 5 prvenstveno objedinjavanjem tri pomenute metode, OMT metode, Boochove metode i OOSE metode. Analizom koncepata obuhvaćenih u objektnoorijentisanim metodama došlo se do skupa modela i elemenata modela koji se koriste pri analizi, projektova-nju i dokumentovanju elemenata sistema.

Da bi se UML primenio na procese razvoja sistema definisana su proširenja UML-a: UML proširenje za proces razvoja softvera i UML pro-širenje za modeliranje poslovnih sistema. UML je široko primenljiv bez proširenja i uvode se u projekte samo ukoliko su neophodna za uvođenje novih oznaka i terminologije. UML proširenje oslanja se na UML metamodel. UML metamodel definiše koncepte i način njihovog korišćenja u mo-delima UML-a. UML proširenje predstavlja predefinisani skup stereotipo-va, označenih vrednosti i notacija, koji zajedno proširuju i oblikuju UML za primenu u specifičnom domenu ili procesu.

I Analiza | |Projektovan| |Implementa| | Testiranje |

Slika 2 - Zavisnost između elemenata u fazama razvoja softvera5

UML sistem za opis procesa razvoja softvera sadrži više različitih, ali međusobno povezanih modela. Svaki model predstavlja odgovarajuću fazu životnog ciklusa sistema. Definisani su sledeći stereotipovi modela [4]:

- model slučajeva korišćenja,

4 Prva verzija UML data je 1995. godine pod nazivom Unified Method, autora G. Boocha i J. Rumbauhga. Novije verzije prihvatile su i vodeće svetske kompanije u proizvodnji softvera, kao što su ORACLE, IBM, Digital Equipment, Microsoft i drugi.

5 Metode razvoja softvera - Larmanova metoda, prof.dr Vidojko Ćirić, mr Siniša Vlajić, FON.

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

- model analize,

- model projektovanja, i

- model implementacije.

Metode razvoja informacionih sistema koje su prethodno opisane mogu se sistematizovati i opisati na jedinstven način pod nazivom Lar-manova metoda [9], po pravilu kroz nekoliko faza: 1. specifikacija zahte-va, 2. analiza, 3. projektovanje, 4. implementacija i 5. testiranje (slika 2).

Razvoj informacionih sistema u vojnoj organizaciji

Vojni organizacioni sistem je složen i sastoji se od hijerarhijski pove-zanih organizacionih jedinica. Svoje ciljeve i zadatke ostvaruje preko svo-jih upravljačkih funkcija. Delovanje tih funkcija zavisi isključivo od brzine, pouzdanosti u pristupu i obradi potrebnih informacija. U Vojsci6 su do sa-da postojala parcijalna istraživanja iz oblasti razvoja informacionih sistema. Rezultati tih istraživanja poznati su stručnim službama u Vojsci, deli-mično se primenjuju u praksi i mogu se koristiti kao polazna osnova za istraživanja u razvoju vojnih informacionih sistema.

Razmatranjem pristupa u razvoju informacionih sistema u internet okruženju korišćenjem softverskih komponenti nameće se potreba da se u različitim uslovima i ograničenjima obezbedi maksimalna efikasnost orga-nizacijskih sastava Vojske. To zahteva preispitivanje postojećih pristupa i metoda u razvoju informacionih sistema u vojnoj organizaciji i uvođenje novih i savremenih, koje mogu biti prihvaćene kao sopstveni standard. Problem razvoja informacionih sistema u internet okruženju korišćenjem softverskih komponenti svodi se na iznalaženje načina određivanja sku-pa metodoloških postupaka, koncepata i pristupa iz repozitorijuma metoda koje podržavaju distribuirane informacione sisteme u internet tehnologiji. To znači da je potrebno osmisliti metodološki pristup koji će biti adaptivan u skladu sa specifičnostima vojne organizacije.

Većina stranih oružanih snaga u razvoju svojih informacionih sistema koriste standardizovane postupke i metodologije koje se primenjuju u njihovom okruženju. U slučajevima kada to nije posebno definisano teži se korišćenju najsavremenijih metodoloških postupaka u skladu sa teh-ničko-tehnološkim razvojem. Ekonomski najrazvijenije zemlje, a time i nji-hove armije, vodeće su u razvoju i modernizaciji informacionih sistema. U prethodnim decenijama su informacije o njima bile relativno nedostupne, posebno u istočnoevropskim armijama. Danas je veoma izražen uticaj internet tehnologije na utvrđivanju standarda i metodologija u razvoju informacionih sistema. Time dolazi do mogućnosti prevazilaženja problema nastalih zbog razvoja mnoštva parcijalno razvijenih informacionih sistema, tako što se definiše standard koji omogućava komuniciranje različitih komponenti i povezuje ih u jedinstvenu globalnu mrežu.

6 Vojska Srbije.

<526)

Na primer, američka vojska je publikovala standard za razvoj svojih teh-ničkih sistema i informacionih sistema pod nazivom Joint Technical Architecture (JTA). Ovaj standard se bavi problemom razvoja tehničkih sistema uopšte. Postoji nekoliko verzija ovog dokumenta, koji se neprekidno usavršava. Osnovni cilj JTA jeste da obezbedi što veću efikasnost u izvršavanju vojnih operacija sa bilo kojim snagama, bilo gde u svetu. Kritična potreba je da se obezbedi takav sistem informacionih tehnologija koji će omogućiti sadejstvo i razmenu informacija. Proučavajući u praksi različita iskustva iz konflikata i operacija, došlo je do nove vizije u američkom ministarstvu za odbranu (DoD). Kao konceptualni obrazac javlja se JV 2010 (Joint Vision 2010), tako da JTA pred-stavlja krucijalni dokument ministarstva za odbranu u ostvarenju JV 2010. Ovaj dokument se stalno usavršava i otvoren je za pristup svim zainteresovanim. JTA obezbeđuje osnovu za neprekidnu i dobro povezanu međuoperatibilnost sistema DoD. JTA definiše područje servisa, interfejse i standarde (JTA ele-mente) primenjive u svim DoD sistemima, pri čemu su primenjivi u upravljanju, razvoju i lociranju novih ili postojećih sistema kroz DoD. JTA sadrži dva glavna dela: JTA jezgro i JTA dodatke. JTA jezgro sadrži minimalni skup JTA eleme-nata primenjivih u svim DoD sistemima za obezbeđenje međuoperatibilnosti. JTA dodatak sadrži dodatne JTA elemente primenjive u specifičnim funkcio-nalnim domenima (familijama sistema). Na primer, verzija 3.1. ovog dokumenta uključuje dodatak za C4ISR7 domene, zatim Combat Support domain, Modeling and Simulation domain i Weapon Systems domain. Može sadržavati i poddomene neke domene [7]. JTA je komplementaran i konzistentan sa dru-gim DoD programima i inicijativama u razvoju „efektiva" i međuoperatibilnih informacionih sistema. JTA je otvoreni dokument koji sadrži razvojne tehnologije i objedinjene bazične standarde i javno je dostupan.

Kada govorimo o standardima u razvoju vojnih informacionih sistema postoji veliki značaj primene TCP/IP protokola u razvoju računarskih mreža, što u suštini predstavlja razvoj telekomunikacione infrastrukture sa multiservisnim sposobnostima [8].

Komponentni distribuirani informacioni sistemi sa objektno-orijentisanim pristupom

u internet okruženju

Informacioni sistemi koji imaju karakteristike distribuiranog hardvera, i/ili distribuiranog upravljanja i/ili distribuiranih podataka, predstavljaju di-stribuirane informacione sisteme. Distribuirani hardver podrazumeva dva ili više međusobno povezanih računara pomoću sistemske magistra-le, lokalne mreže ili komunikacione mreže [1].

7 Command, Control, Communications, Computers, Intellgence, Surveillance, and Reconnaissance

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

ISO/OSI8 referentni model predstavlja polaznu osnovu pri poveziva-nju otvorenih sistema. Arhitektura referentnog modela služi kao osnova svih budućih razvoja standarda za potrebe distribuiranih informacionih sistema. U suštini, to su računarske mreže sa informacionim sistemima ko-ji imaju karakteristike distribuiranih resursa.

Razvoj personalnih računara i komunikacionih tehnologija, pre sve-ga internet tehnologije, uslovio je potrebu za nadogradnjom postojećih sistema i povezivanjem sa korisnicima sistema ili drugim sistemima u okviru i izvan vojne organizacije.

Razvoj globalne računarske mreže bazirane na internet tehnologiji i klijent-server arhitekturi, kao i njena masovna upotreba, bitno utiču na redefinisanje standarda za razvoj objektno orijentisanih distribuiranih in-formacionih sistema.

Pored postojećeg skupa metoda i tehnika za razvoj informacionih si-stema postavlja se pitanje metodološkog pristupa razvoja u internet okru-ženju. Rešenje je nađeno u troslojnim (slika 3) i višeslojnim sistemima.

Na ovaj način ostvaruje se nezavisnost u smislu odvojenog razvoja klijentskih aplikacija, dodavanja novih operacija unutar poslovne logike ili intervencija na samoj bazi. Komponente aplikacije mogu biti distribuirane po različitim računarima: ulazimo u eru arhitekture distribuiranih objekata. Distribuirani objekat definiše se na jednom sistemu, a može se koristiti na drugom. U ovoj komunikaciji može učestvovati jedan ili više kompjute-ra. Cilj je da se obezbedi integracija servisa sa različitih platformi.

"Firejwall"

Klijenti

П

Q-

g-

"Poslovna

logika"

Baze podataka

Importovani podaci iz internih sistema

Importovani podaci iz eksternih sistema

Prezentacija

Servisi sistema

Podaci

Slika 3 - Troslojna arhitektura

8 Referentni model za povezivanje otvorenih sistema zasnovan je na konceptu hijerarhijske organizacije komunikacione arhitekture u sedam diskretnih slojeva.

Primenom distribuiranih objekata mogu se kreirati klijent/server aplika-cije sa troslojnom ili višeslojnom arhitekturom, koje omogućavaju implemen-taciju sinhronih ili asinhronih rešenja za internet i intranet. Novi trendovi u primeni internet tehnologije postavili su nove zahteve pred serverske aplika-cije koje moraju podržati transakcije u novom okruženju. Proširivanje uloge servera vodi stvaranju kompleksnijih aplikativnih servera. Transakcije se mogu izvršavati direktno ili svrstavajući se u red čekanja. U direktnim se us-postavlja sinhronizovana komunikacija između klijenta i servera, čime se do-bija utisak da je uspostavljena direktna veza.9 Noviji pristup koji se oslanja na CORBA model (Common Object Request Broker Architecture) i Object Request Broker (ORB) jeste primer direktnog izvršenja transakcija. S druge strane, pristigle transakcije se ne moraju izvršavati sinhronizovano, već mogu dolaziti u red transakcija na serveru i zatim se izvršavati po pravilima koja važe za taj red (npr. izvršenje po nastanku nekog događaja ili u nekom vre-menskom trenutku i sl.). Isto važi i za poruke o rezultatima transakcija.

Transakcije koje se mogu izvršiti kompletno, na jednom čvoru mreže, nazivaju se lokalnim transakcijama. Priroda distribuiranih sistema uslovila je pojavu distribuiranih transakcija, za čije je izvršenje potrebno više čvoro-va mreže. One su kompleksnije i teže za implementaciju. Implementacija aplikacije zahteva upravljanje deljivim resursima servera (kao što je me-morija ili procesorsko vreme) i upravljanje kontekstom. To je zahtev koji može usporiti razvoj aplikacije, jer bi se svaka transakcija programirala.

Slika 4 - Klijent-server komunikacija kroz ORB

Takve transakcije nazivaju se programirane transakcije (eng. Programmatic transactions). Aplikacije koje ih koriste su teške i skupe za odr-žavanje. To je jedan od razloga zbog kojih je razvoj komponentnih mo-dela postao popularan i doživeo veliki razvoj poslednjih godina. Kompo-nente kojima je implementiran mehanizam izvršavanja transakcija na

9 Tipičan primer ovakvog izvršavanja transakcija uočava se u CGI aplikacijama koje podržava-ju web serveri.

(Ш>

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

ovaj način se mogu koristiti u izradi novih aplikacija. Komponentni model omogućava lakše izmene i održavanje, a istovremeno se skraćuje vreme potrebno za implementaciju, jer postoje različite gotove komponente koje se mogu iskoristiti. Ovakav pristup implementaciji transakcija naziva se de-klarativnim pristupom. Programeri su oslobođeni brige o realizaciji mehani-zama za kontrolu izvršenja transakcija. Značajni komponentni modeli reali-zovani su u tehnologijama COM+ (eng. Component Object Model), EJB (eng. Enterprise Java Beans), CORBA (Common Object Request Broker Architecture) i SOA (Service Oriented Architecture) [2].

Tehnologije za implementaciju komponentnih distribuiranih informacionih sistema sa objektnoorijentisanim pristupom u internet okruženju

S obzirom na to da se sistemi zasnovani na distribuiranim objektima razvijaju godinama unazad, na tržištu postoji niz različitih platformi (teh-nologija) za implementaciju višeslojne arhitekture. Pri odabiru distribuira-ne tehnologije treba obratiti pažnju na sledeće parametre:

- prenosivost (portabilnost) klijentske i serverske platforme,

- prenosivost programskog jezika,

- performanse pri izvršavanju,

- jednostavnost razvoja,

- sigurnost.

Rezultati testiranja sa različitim komunikacionim modelima za udalje-no pozivanje komponenata rezultirali su sledećim tehnologijama:

- COM+/DCOML,

- CORBA/IIOP,

- EJB/RMI/IIOP,

- SOAP.

COM+ predstavlja evoluciju starije tehnologije COM (Component Object Model). COM je specifikacija za objekte koja definiše interfejs pre-ko koga različiti objekti mogu da komuniciraju. COM je nezavisan od programskog jezika ukoliko implementira COM interfejs i teoretski može da se implementira na različitim operativnim sistemima. Međutim, ne podr-žava ih niko osim Microsoft Windowsa. Da bi se omogućilo da COM objekti sa različitih sistema međusobno razmenjuju informacije, COM specifikacija je proširena i nastao je DCOM (Distributed COM), koji pose-duje znatno kompleksniji model konfiguracije i sigurnosti.

COM+ /DCOM

CORBA / IIOP

CORBA (Common Object Request Broker Architecture) jeste konku-rentska specifikacija koju je kreirala Object Managment Group, OMG -grupe kompanija (Object Managment Group) koje razvijaju srednji sloj. CORBA je nezavisna od jezika i implementirana na većem broju platformi nego cOm. Međutim, postoje nekompatibilnosti između implementacija različitih proizvođača. CORBA predstavlja magistralu objekata (object bus) koji omogućava klijentu da poziva metode sa objekta na serveru uz nezavisnost programskog jezika i lokacije objekta. Interakcija je omogu-ćena preko ORB (Object Request Brokers) komponenata na klijentu i na serveru, a komunikacija se odvija preko IIOP (Internet Inter-ORB Protocol)^].

EJB / RMI over IIOP

EJB (Enterprise JavaBeans) jeste specifikacija koju je izdao Sun Microsystems za Java Platformu. EJB je nezavisna od platforme, ali ne i od jezika. Svi EJB objekti moraju biti napisani u jeziku java. Za komunika-ciju između različitih sistema eJb koristi varijantu IIOP, nazvanu RMI preko IIOP (Remote Method Invocation over IIOP). RMI je protokol rezervi-san samo za javu.

Operacije (argumenti)

Slika 5- Mogućnosti CORBA objekata definisane su pomoću IDL (Interface Definition language)

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

SOAP

SOAP (Simple Object Access Protocol) jeste kompletno kreiran na postojećim, proverenim i široko prihvaćenim tehnologijama kao što su HTTP i XML za prenos podataka između aplikacija. Pošto je XML univer-zalni standard, sve platforme mogu da pristupe i obrade informaciju. Pri-stup različitim aplikacijama na raznim platformama sa SOAP-om postaje jednostavan, Java aplikacija na Unix-u jednostavno može da poziva me-tode COM objekta na Windows serveru. Klijentska aplikacija na iMac-u pristupa objektu na mainframe računaru. Sve to postaje transparentno i ne zahteva bilo kakvu posebnu administraciju.

Internet tehnologija omogućava korišćenje različitih servisa u komu-nikaciji između elemenata računarske mreže. Osnovna ideja je da se ele-menti informacionog sistema u Vojsci definišu kao komponente različitog softvera koje se mogu koristiti, ako su već napisane i postavljene na raz-ličite čvorove u mreži. Bez obzira na to da li su na istom serveru ili su di-stribuirani kroz mrežu, komponente komuniciraju. Osnovno pitanje u raz-voju ovakvih informacionih sistema je tehnološko opredeljenje. U tabeli 2 predstavljen je uporedni prikaz prethodno opisanih tehnologija.

Tabela 2

Uporedni prikaz tehnologija za implementaciju komponentnih distribuiranih informacionih sistema

DCOM IIOP RMI/IIOP SOAP

Format Binarni Binarni Binarni Unicode

Platforma Windows Unix Nezavisan Nezavisan

Programski jezik Nezavisan Nezavisan Java Nezavisan

Izrada Moderna (RAD) Složen Moderna (RAD) Jednostavna

Sigurnost Win NT Security CORBA security service JAVA security HTTP/SSL, XML signature

Omogućava pristup kroz firewall Ne Ne Ne Da

Lociranje Referenca URL

Obrada grešaka IDL Exception SOAP Fault messages

Događaji COM+ Events CORBA Event service N/A

Otkrivanje servisa CORBA Naming/Traning service RMI registry UDDI

Opis tipova podataka IDL XML Schemas

Glavni problem kod starijih protokola, kao što su DCOM, IIOP i RMI/IIOP, nalazi se u nekompatibilnosti (teško prilagođavanje datih protoko-

la), tako da različite aplikacije međusobno ne mogu da komuniciraju. Druga bitna činjenica jeste da ne funkcionišu u prisustvu firewalls, što znači da aplikacije sa raznih lokacija ne mogu uvek međusobno da komuniciraju. Postavlja se pitanje smisla funkcija CORBA usvajanjem Enterprise Java Beans specifi-kacije, pošto u tom slučaju posedujete java aplikacije i na klijentu i na serveru. Pored toga, Sun je razvio RMI za komunikaciju java-java aplikacija, što je di-rektna konkurencija za CORBA i dovešće do daljih podela u ovom pristupu.

CORBA je specifikacija koju kompanije implementiraju po specifič-nom zahtevu (želji), a pitanje komuniciranja između ORB-ova različitih proizvođača još nije u potpunosti rešeno. Ne postoji administriranje, sve se svodi na programiranje. Kada se želi povećati nivo sigurnosti sopstve-nih komponenti potrebno je instalirati novi API i vršiti programiranje. CORBA je zasnovana na deljenim objektima (shared objects) koji čuvaju svoje podatke između dva poziva i tako zauzimaju memoriju. Broj klijena-ta koji istovremeno mogu da se povežu na server je sigurno mnogo manji nego kod Microsofta, gde se primenjuje princip deljenih podataka (shared data), a objekat između dva poziva oslobađa memoriju.

Web servisi predstavljaju osnovne gradivne blokove budućih informa-cionih sistema, a u suštini su aplikacije koje su raspoložive na mreži i koje mogu da urade ono što je u tom trenutku potrebno. Drugim rečima, to su re-sursi koji se adresiraju primenom URL-a koji vraćaju informaciju korisniku koji želi da ih koristi. Glavni komunikacioni protokol je SOAP, tj. XML preko HTTP-a. Osnovni pokretač ovih promena je XML, koji kroz svoju jednostav-nost omogućuje praktičnu nezavisnost aplikacija i sistema jer je razumljiv i za čoveka i za mašinu. Web servisi objavljuju se na jedinstvenoj lokaciji i nude se kao usluge. Ukoliko se poseduju već napisane aplikacije koje nude stabilna i proverena rešenja, jednostavno je moguće objaviti aplikaciju kao uslugu korisnicima u vojnoj intranet mreži. Zbog te specifičnosti ova tehnolo-gija se brzo raširila i u potpunosti se prihvata za implementaciju kako otvore-nih, tako i zatvorenih informacionih sistema, kao što su vojni.

Odnos SOAP-CORBA i CORBA-SOAP prikazan je u tabeli 3.

Tabela 3

Uporedni prikaz CORBA i SOAP

CORBA SOAP

Podrška raznim platformama CORBA 1.0 teško je radila sa fire-wallovima, dok CORBA 2.0 radi preko TCP/IP protokola i teži uključivanju web-a. Zasniva se na internet specifikacijama, te se lako nadograđuje na postojeće web okruženje koje je podržano na svakoj platformi.

Format podatak za prenos Pošiljalac i primalac moraju da poseduju puno značenje kontek-sta poruke u prenosu, jer koristi binarno kodovanje podatka bez podataka o podacima (metadata) Koristi XML koji omogućava jednostavnu obradu poruka u svakom koraku proce-sa. Jednostavno debagovanje i kompri-movanje (zbog svoje ponovljivosti).

Interopera- bilnost Postoji više različitih implementa-cija CORBA, koje poseduju problem interoperabilnosti Pošto je zasnovan na HTTP i XML omogućava jednostavnu interoperabil-nost između različitih SOAP sistema.

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

CORBA SOAP

Skalabil- nost U CORBA postoji jednostavan mehanizam koji omogućuje ORB zahtev bez pamćenja stanja. HTTP protokol ne pamti stanja između dva poziva.

Izbor između mehanizma za pam-ćenje (stateful) ili bez pamćenja (stateless) zavisi od sistemske izvedbe. SOAP server može da upravlja sta-njem, korišćenjem klijentskih kolačića (cookies) ili specijalnih identifikacionih objekata sa SOAP pozivima.

SOAP će posedovati mehanizam sesije kako bi se omogućili transakcioni zahtevi.

Životni ciklus Određena instanca CORBA objekta identifikuje se referencom objekta instance. SOAP indentifikuje objekte samo pomoću URL-a.

CORBA se koristi za transparetnu komunikaciju između objekata aplikacije. Životni vek SOAP objekta na serveru određen je vremenskim intervalom upravljanja stanjem.

Transportni protokoli CORBA2 implementacija koristi Internet Inter-ORB protokol (IIOP), koji spada u GIOP (General Inter-ORB Protocol) preko TCP/IP. HTTP protokol je definisan za prenos poziva metoda, a mogu se koristiti i SMTP, FTP.

Dodatni portokol se zove DCE CIOP (DCE Common Inter-ORB Protocol) koji takođe podržan u CORBA2. Drugi transportni protokoli kao što je SMTP nisu široko prihvaćeni pošto do-puštaju pozive u jednom smeru.

Sigurnost Corba Security Service obezbe-đuje sigurnosnu arhitekturu koja podržava veliki broj sigurnosnih politika kako bi se izašlo u susret različitim potrebama. Na najnižem nivou SOAP poruke se mogu transportovati preko HTTPS kako bi se sprečilo prisluškivanje (snooping) i obezbedila identifikacija klijenta i servera.

Servis specificira autentifikaciju, autorizaciju i enkripciju poruka. Standard XML Key Management Specification (XKMS) obezbeđuje kvalitet-niju sigurnost koja je neophodna za autentifikaciju korisnika određenog web servisa.

Upotreba Programiranje CORBA sistema je kompleksno. HTTP i XML olakšavaju implementira-nje i debagovanje.

Vreme kompilacije Kompilacija CORBA „Hello World" traje više od minuta na 400 mhz/128 Mb. SOAP ekvivalentu je potrebno manje od sekunde.

Prvi koraci Sa CORBA je potrebno opsežno zananje, dugotrajno programiranje. Sa SOAP-om je moguće uraditi nešto korisno za manje od 30 minuta.

Web pristup servisima izgrađenim u CORBA može se realizovati po-moću gatawaya koji automatski vrši konverziju između SOAP i CORBA IIOP poruka. Pošto su SOAP poruke čisti tekstualni dokumenti, tj. XML, konverzija se, u stvari, vrši između XML (slika 6).

UDDI

Slika 6 - Šema (XML Schemas) i/ili DTDs (Document Type Definitions) prema odgovarajućem IDL elementima.

Set protokola web servisa stalno se razvija i koristi se da definiše, otkriva i implementira web servise. Osnova ovih protokola leži u sledeća četiri nivoa:

Service Transport: Ovaj nivo je odgovoran za prenos poruka između aplikacija i u njega su trenutno uključeni HTTP, SMTP, FTP, i novi proto-koli kao što je BEEP - Blocks Extensible Exchange Protocol.

XML Messaging: Ovaj nivo je odgovoran za razumevanje poruka za razmenjivanje koje se implementiraju u XML formatu i trenutno se koristi XML-RPC (XML - Remote Procedure Call) i SOAP (Simple Object Access Protocol).

Service Description: Ovaj nivo definiše javni interfejs za određeni Web servis, i trenutno se opisuje kroz WSDL (Web Service Description Language).

Service Discovery. Ovaj nivo je odgovoran za centralizovanje servisa u zajednički i jedinstveni registar koji obezbeđuje jednostavno objavlji-vanje i pronalaženje servisa. Otkrivanje servisa trenutno se obrađuje kroz UDDI (Universal Description, Discovery, and Integration).

Pored pomenutih, set sadrži nove protokole koji se još razvijaju, uključujući WSFL (Web Services Flow Language), SOAP-DSIG (SOAP Security Extensions: Digital Signature) i USML (UDDI Search Markup Language).

Nije potrebno razumevanje kompletnog seta protokola da bi se radi-lo sa Web servisima. Ukoliko se poznaju osnove HTTP-a, dovoljno je za-početi sa XML Messaging nivoom.

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

Web servisi mogu se kreirati od već gotovih aplikacija ili od počet-ka, pri čemu se programski jezici, gotove komponente i platforme mogu koristiti po svom izboru.

Nakon što se se usluga osmisli i kreira potrebno je (slika 7):

UDDI

Web Klijent Web Servis

Slika 7 - Kreiranje web servisa

1. Opisati servis pomoću WSDL jezika.

WSDL je zasnovan na XML i predstavlja opis interfejsa web servisa koji treba da sadrži:

- opis interakcije koju servis nudi,

- opis argumenata i rezultata koji su uključeni u interakciju,

- adresu za lociranje servisa,

- komunikacioni protokol,

- format podataka koji se koristi u porukama.

Definisanje interfejsa je, u stvari, ugovor između servera i klijenta.

2. Registrovati servis na UDDI registru, internet lokaciji predviđenoj za objave servisa i time omogućiti i svom softveru da koristi tuđe usluge i zainteresovanim korisnicima da pronađu vaš servis.

UDDI predstavlja central izovanu lokaciju koja obezbeđuje mehani-zam za registrovanje i pronalaženje servisa. Koristi SOAP za komunika-ciju i omogućuje klijentima da pronađu servis i serveru da ga objavi.

3. Omogućiti pristup svom web servisu posredstvom SOAP-a, koji koristi XML jezik za specificiranje pozivnih parametara i rezultata rada servisa.

SOAP predstavlja okruženje za razmenu poruka zasnovanih na XML-u u mreži, a služi se aplikativnim HTTP protokolom koji koriste web serveri.

<536)

Implementacija komponentnih distribuiranih informacionih sistema sa objektnoorijentisanim

pristupom u internet okruženju

Brzina razvoja interneta dovela je do pojave mnogih tehnologija i standarda koji su istom tom brzinom i nestali. Sa aspekta istraživanja u ovom radu može se zaključiti da se izdvajaju dva pristupa i to kroz: J2EE (Java 2 Platform Enterprise Edition) okruženje i Microsoftov. NET skup tehnologija.

J2EE

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

J2EE je skup industrijskih standarda sa zadatkom da podrži i pojed-nostavi projektovanje, dizajn i implementaciju višeslojnih složenih web aplikacija u otvorenom distribuiranom okruženju koje predstavlja internet (Firma Sun Microsystems predvodi udruženje koje radi na daljem razvoju J2EE standarda, kao pogleda na distribuirane informacione sisteme za-snovane na korišćenju web servisa) [6].

Osnova svakog J2EE rešenja je programski jezik java, koji predstavlja platformski neutralan jezik, što znači da svaka platforma predstavlja njeno prirodno okruženje.

Razvojni inženjeri pišu izvorni kod na javi, koji se zatim prevodi u tzv. bytecode, koji predstavlja intermedijalni jezik koji mora biti inter-pretiran na svakoj platformi specifično pomoću JRE (Java Runtime Enviroment) da bi bio izvršen. Aplikacija mora biti pisana na javi da bi bila po J2EE standardu. Komponente koje sačinjavaju aplikaciju pre-vode se u bytecode i u vremenu izvršavanja interpretiraju pomoću JRE-a.

Sama J2EE aplikacija je zatvorena pomoću komponente kontej-ner koja pruža gotove odgovarajuće servise telu aplikacije, kao što su transakcioni servis, servis zaštite u transportu i servis trajnog skladiš-tenja.

Poslovni sloj vrši obradu specificiranu logikom posla nad datim po-slovnim podacima. Za veće J2EE aplikacije ima smisla koristiti EJB komponente, koje realizuju logiku posla i rad sa poslovnim podacima. Veza prema bazi podataka ostvaruje se preko JDBC (Java Database Connectivity), preko SQL/J ili zatečenih mehanizama korišćenjem JCA (Java Connector Architecture). Sa slike se vidi da se veza sa poslovnim partne-rima ostvaruje i korišćenjem web servisa (SOAP, UDDI, WSDL, ebXML) preko java API-ja za XML (JAX API).

(ш>

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

Drugi sistemi mogu se povezati na J2EE aplikaciju preko web servis tehnologija. Poslužilac (Servlet), kao specifičnost java okruženja, može prihvatiti zahtev drugog sistema za web servisom. Poslužilac koristi JAX API da bi obradio i izvršio zahtev web servisa.

Sa slike 8 se vidi da J2EE model podržava i rad sa tzv.„debelim" (thick) klijentima, na primer, preko EJB komponente sa apletima ili dru-gim aplikacijama korišćenjem internet inter-ORB protokolom (IIOP). Web čitači i uređaji mobilne telefonije povezuju se na J2EE aplikaciju preko JavaServer Pages (JSP), koja ima zadatak da pripremi HTML ili WML stranicu, koja se zatim šalje čitaču [6].

Klijentski sloj

Web

Repozitorijum

Baza podataka

Slika 8 - Koncept Java 2 Platform Enterprise Edition

<538)

.NET

.NET (dot-net) predstavlja Microsoftov pogled na arhitekturu i tehno-logiju rada informacionih sistema zasnovanih na korišćenju web servisa. Za razliku od J2EE pristupa, .NET nije samo skup standarda već, pre svega, skup komercijalnih tehnologija koje omogućavaju razvoj aplikacija orijentisanih na web servise. Možda je najpreciznije reći da. NET platfor-ma polazi od nadgradnje zatečenih tehnologija kompanije Microsoft, od-nosno, do same arhitekture. NET informacionog sistema došlo se po-stupkom reinženjeringa. U slučaju J2EE arhitektura je rezultat dogovora grupacije firmi okupljenih oko Sun Microsystems, a tek zatim se razvijaju odgovarajuće tehnologije za podršku razvoja sistema.

Dok je J2EE oslonjen na koncept jednog univerzalno prihvaćenog jezika - jave, raspoloživog na svakoj konkretnoj platformi, kao gradivnog elementa J2EE aplikacije, .NET dozvoljava da gradivni elementi. NET aplikacije budu sastavljeni od programa napisanih na različitim program-skim jezicima, ali istog proizvođača.

Kao i u slučaju J2EE aplikacije, sama aplikacija je zatvorena u kon-tejner koji aplikaciji pruža važne servise, kao što su transakcioni i sigur-nosni. Telo. NET aplikacije gradi se od. NET poslovnih komponenti koje sarađuju sa komponentama mehanizma za rad sa bazom podataka, ADO. NET. Za vezu sa softverskim nasleđem postoji MS Host Integration Server 2000 sa svojim skupom servisa.

Veza sa drugim sistemima ostvaruje se uz pomoć web servis tehnologija, kao što su SOAP, UDDI i WSDL. Poslovni partneri se na. NET aplikaciju takođe povezuju korišćenjem ovih protokola, a Microsoft pose-duje i sopstvenu tehnologiju za podršku zahtevnim poslovnim aplikacija-ma, BizTalk, koja, nažalost, nije kompatibilna sa ebXML-om. Raniji „de-beli" klijenti, web čitači i mobilni uređaji povezuju se na. NET aplikaciju posredstvom unapređene ASP tehnologije, ASP. NET, koja generiše po-treban HTML ili WML kod. Obezbeđena je i podrška za tradicionalne Windows aplikacije.

Zahvaljujući pristupu reinženjeringa postojećih MS tehnologija, Microsoft nudi kao elemente. NET-a SQL Server 2000 kao server baza podataka, Exchange 2000 Server kao kolaboracionu platformu i server uni-ficiranih poruka, Commerce Server 2000 za elektronsku trgovinu, Application Center Server 2000 za rad klastera servera (serverskih „farmi"), Host Integration Server 2000 za integraciju aplikacije sa softverskim na-sleđem, Internet Security and Accelaration (ISA) Server 2000 kao osnov-ni mehanizam zaštite (firewall - sigurnosni zid i proxy), BizTalk Server 2000 za podršku integraciji složenih poslovnih procesa, bilo unutar orga-nizacione jedinice ili sa drugim sistemima, posredstvom interneta.

(Т39>

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

Klijentski

Web pretraž.

ASP.NET

Web

Service

I

.NET Managed Components

Host Integration Server 2000

Tehnologije web servisa (SOAP, UDDI, WSDL, BizTalk)

Back-End

Systems

1

SQL

I

Pripadajući prot.

I

Mainframe

System

Tehnologije web servisa

(SOAP, UDDI, WSDL, BizTalk)

Drugi sistem

Passport.NET

SQL Server 2000

Slika 9 - Razvojno okruženje. NET aplikacije

Microsoft je razvio Visual Studio. NET i snažno integrisano razvojno okruženje za. NET aplikacije. C# je programski jezik veoma sličan javi, koji je posebno pogodan za razvoj. NET aplikacija, koji je Microsoft razvio kao konkurenciju javi. Za podršku pri razvoju i radu sa već razvijenim web servisima Microsoft je razvio i Hailstorm, servis čiji su predmet rada drugi servisi.

Odnos J2EE - .NET

Obe platforme su korisne i vode ka istom cilju. Odluka o izboru izme-đu ove dve tehnologije (razvojna alata) zavisi od već postojeće baze inži-njerskog znanja u organizaciji, postojećih informacionih sistema i veza sa drugim sistemima. Odluka zavisi od odgovora na ova pitanja, a ne od mi-norne razlike u funkcionalnosti.

Karakteristike za obe platforme:

- za obe platforme potrebno je edukovanje razvojnog tima (java podučavanje za J2EE, objektnoorijentisano podučavanje za. NET),

- servise je moguće kreirati koristeći obe platforme,

- skalabilnost obe platforme teoretski je neograničena.

Uporedni prikaz funkcionalnosti obe platforme dat je u tabeli 4.

Tabela 4

Uporedni prikaz funkcionalnosti Microsoft. NET i java 2 platforme

Service or Feature Microsoft. NET Platform Java 2 Platform EE

Language VB, C++, C#, Java, Jscript, Perl... Java

OS Platform & Runtime Windows - CLR Any - JRE, JVM

Mobile Platform .NET Compact Framework Java 2 Micro Edition

GUI/In-proc Component .NET class JavaBeans

Server-side Component .NET, sa COM+ services EJB

Persistent Objects ADO. NET DataSet EJB Entity Beans

Web Page Generation ASP. NET JSP

„Code Behind11 ASP. NET Java Servlet

Relational Data Access ADO. NET JDBC, SQL/J

Hierarchical Data Access ADO. NET

Queuing System. Messaging JMS

Asynchronous Invocation COM+ Queued Components Message Beans (EJB 2.0)

Eventing COM+ Events

Remoting SOAP/HTTP/DCOM RMI-over-IIOP

Naming ADSI JNDI

HTTP Engine IIS Apache

XML System. XML JAXP, JAXM, JAXB, JAXR...

Web Services (.NET) XML Web Services Sun ONE, IBM, BEA, Oracle Legacy Integration HIS (COMTI), BizTalk, MSMQ, WS JCA, JMS, WS, CORBA, JNI

Shared Context Passport The Liberty Alliance, JXTA

Security API System. Security JAAS

Istraživanjem u ovoj oblasti dolazi se do sledećih rezultata:

- SOAP je novi pristup u profesionalnom razvoju distribuiranih apli-kacija. Rešava glavne probleme kod platformske zavisnosti i jezičke zavi-snosti. Može da radi preko interneta i predstavlja otvoreni standard, koji se održava od strane W3C (The World Wide Web Consortium);

- nedostatak SOAP je što interoperabilnost sa CORBA nije uvek 100% izvodiva, odnosno postojeće implementacije ne zadovoljavaju uvek

(мГ>

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

traženu pouzdanost. S tim u vezi, OMG ima zadatak unapređivanja CORBA u smislu kompatibilnosti sa navedenim komunikacionim protoko-lom. To može biti jedan od uzroka nedovoljnog broja dostupnih web ser-visa na internetu;

- problem kod SOAP je i postojanje verovatnoće obilaženja firewal-la, koji obezbeđuju sigurnost autorizovanja ili blokiranja poziva na odre-đenim portovima. Time bi praćenje HTTP protoka informacija moglo po-stati još složenije;

- implementacija SOAP moguća je u skoro svakom programskom jeziku, na svim popularnim platformama. Postojeća distribuirana okruže-nja proširuju se za podršku SOAP-u;

- Microsoft je, izdavši. NET Visual Studio, zajedno sa konceptom. NET runtime-a, napravio ozbiljan korak ka usvajanju SOAP-a za standard u razvoju distribuiranih aplikacija. Sun10 je najavio nešto slično u vi-du svoje ONE (Open Network Environment) platofrme. IBM (WebSphere) i ostali industrijski giganti na ovom polju takođe najavljuju opsežnu SOAP podršku;

- SOAP poseduje potencijale da kreira transparentni web za servise i aplikacije kojima se može pristupiti na zahtev svakoga sa svake tačke, što će dovesti do eksplozivnog rasta novih servisa i prihoda od njih;

- SOAP ne pokušava da zameni CORBA ili bilo koji drugi distribuira-ni sistem. U poređenju sa CORBA SOAP je manje moćan, ali je impresi-van u svojoj jednostavnosti i proširivosti, što je veoma korisno s aspekta potrebe da ga kompanije i programeri što više prihvate. Jednostavne stvari se mnogo brže usvajaju i prihvataju;

- CORBA i web servisi kreirani su iz različitih razloga, korišćenjem različitih tehnologija, iako su po prirodi komplementarni. CORBA omogu-ćava razvijanje infrastrukture srednjeg sloja, sa snažnim i skalabilnim funkcionalnostima i servisima za kreiranje kritičnih sistema;

- platforme za razvoj web servisa mogu da obezbede neophodnu tehnologiju za iskorišćavanje postojećeg CORBA razvoja;

- kreiranje novog koda po CORBA arhitekturi dovedeno je u pitanje, s obzirom na to da je to arhitektura 90-tih i većina CORBA snadbevača ne nastavlja investiranje u ovu tehnologiju;

- velika prednost za SOAP i web servise jeste što imaju podršku ve-likih kompanija, kao što su IBM i Microsoft, kao i već postojeću veliku strukturu koja je izgrađena za WEB i HTTP;

- SOAP se i dalje razvija, pa će se pojaviti čitav niz novih protokola koji će pojednostaviti i olakšati primenu web servisa u svim sferama po-slovanja, uključujući i vojne informacione sisteme.

10 Sun Application Server, kasnije prerastao u Glassfish server (v1 do v3), već godinama sadr-ži kompletnu podršku za gotovo sve tipove standardnih web servisa. Takođe, Apache Jakarta projekat daje web servis podršku za Tomcat apl.server kroz biblioteke klasa, za PHP.

Zaključak

Ubrzani razvoj informacionih tehnologija i porast protoka informacija utiče na metodološke pristupe i koncepte u razvoju informacionih siste-ma. U poslednjem nizu godina došlo je do razvoja računarskih mreža i internet tehnologije, što je od velikog značaja i za pristup u razvoju vojnih informacionih sistema.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Za velike organizacione sisteme, kao što je vojna organizacija, poželj-no je da u razvoju informacionih sistema postoje standardizovane metode i alati. Analizom poznatih metoda može se zaključiti da većina ima zajednič-ki skup elemenata koji se koristi u modeliranju sistema. Zato je u radu predloženo korišćenje objedinjenog jezika modeliranja - UML, kao stan-darda za dokumentovanje, projektovanje i razvoj informacionih sistema.

Međunarodna organizacija za standardizaciju ISO je, kao osnovu razvoja distribuiranih informacionih sistema, definisala referentni model za po-vezivanje otvorenih sistema. On je zasnovan na konceptu hijerarhijske orga-nizacije komunikacione arhitekture u sedam diskretnih slojeva. Zaključuje se da je potrebno obratiti pažnju na značaj TCP/IP u okviru telekomunikacione infrastrukture sa multiservisnim sposobnostima, koji predstavljaju jezgro pro-jektovanih distribuiranih informacionih sistema. Zbog postojanja sopstvene (interne) telekomunikacione infrastrukture može se preporučiti da se i vojni informaciono-komunikacioni sistemi zasnivaju na navedenim standardima.

Pri određivanju strategije razvoja informacionih sistema u Vojsci, kao i za većinu kompleksnih organizacionih sistema koji sadrže heterogene hardverske i softverske platforme, od velikog je značaja mogućnost po-vezivanja postojećih rešenja.

Istraživanjem i analizom primene navedenih standardizovanih konce-pata, tehnologija i razvojnih platformi, uključujući iskustva iz stranih oružanih snaga, zaključuje se da je koncept razvoja informacionih sistema u internet okruženju korišćenjem softverskih komponenti preporuka za strategijsko opredeljenje u prevazilaženju nekompatibilnih i nepovezanih postojećih par-cijalnih softverskih rešenja. Osnovna ideja zasniva se na web servisima, koji se mogu kreirati od već gotovih aplikacija ili od početka, pri čemu se pro-gramski jezici, gotove komponente i platforme mogu koristiti po svom izboru.

Ranije su aplikacije za međusobnu udaljenu komunikaciju koristile pozive udaljenih procedura (Remote Procedure Calls - RPC) poput DCOM i CORBA ili su bile potpuno nepovezane. SOAP protokol omogu-ćava komunikaciju između aplikacija na različitim operativnim sistemima, na različitih platformama, pisanih u različitim programskim jezicima. Ina-če, svetska organizacija W3C11 objavila je kao preporuku SOAP verzije 1.1. i nastavlja s razvojem preporuke SOAP verzije 1.2.

11 http://www.w3.org/TR/soap/

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

Aplikacije razmenjuju poruke dogovorenog formata. Poruke su for-matirane kao XML dokumenti, pa je njihova obrada i provera jednostavna i može ih realizovati bilo koji program namenjen za rad sa XML doku-mentima. SOAP klijent kreira XML dokument koji sadrži odgovarajući zahtev. Taj dokument formatiran je u skladu sa SOAP specifikacijom. Do-kument dolazi do SOAP protokola koji obrađuje pristigle zahteve i na osnovu pristiglih zahteva pokreće odgovarajuću aplikaciju. Po završenoj obradi SOAP protokol vraća poruku odgovora SOAP klijentu. Dakle, za-ključuje se da se transformacija podataka odnosi jednostavno na korišće-nje XML formata.

Web servisi predstavljaju osnovne gradivne blokove budućih in-formacionih sistema, odnosno, u suštini, to mogu biti aplikacije ras-položive na vojnoj mreži. Pri opredeljenju za vrstu servisa zaključuje se da nije odlučujuće da li će biti implementiran standardni web ser-vis ili specifični, posebno razvijen, na primer za vojnu primenu. Dru-gim rečima, to su resursi koji se adresiraju primenom URL-a i koji vraćaju informaciju korisniku. Analize opredeljuju komunikacioni protokol SOAP, tj. XML preko HTTP-a. Takođe, zaključuje se da je osnovni pokretač ovih promena XML, koji kroz svoju jednostavnost omogućuje praktičnu nezavisnost aplikacija i sistema, jer je razumljiv i za čoveka i za mašinu.

Literatura

[1] Sloman, M. and Kramer, J.: Distributed Systems and Computer Networks, Prentice - Hall, 1987.

[2] Siegel, J., CORBA 3, Object Management Group, COMPUTER, str. 114, May 1999.

[3] OMG, Common Object Request Broker Architecture: Core Spenfication, Nov. 2002, Version 3.0.

[4] Booch, G., Rumbaugh, J., Jacobson. J., Unified Modelling Language. Version J.3, Rational Software Corporation, 1999.

[5] Booch, G., Object-Oriented Analysis and Design with Application, 2. edition, Benjamin/Cummings, 1994.

[6] Java, Communications of the ACM vol. 41 No 6, June 1998.

[7] Department of Defense USA, Joint Technical Architecture, 2001.

[8] VJINFO2001 zbornik radova sa seminara o primeni informatike u Vojsci, Beograd, april 2001.

[9] Craig, L., Applying UML and Patterns, Prentice Hall, PTR, New Jersy.

DEVELOPMENT OF INTERNET-BASED INFORMATION SYSTEMS USING SOFTWARE COMPONENTS WITH THE EMPHASIS ON THE APPLICATION IN THE MILITARY ORGANIZATION

Summary:

The development of personal computers and Internet technology causes continuous changes in methodological approaches and concepts of development of information systems. Most existing information systems, due to their heterogeneity, have a problem of integration of subsystems. In order to overcome this problem, software vendors offer different solutions. In this work we explore different approaches and propose an optimal way, with a special emphasis on its application in the military organization.

By applying modern approaches in the development of information systems on the concept of distributed component systems, we come to the set of proposed solutions from different manufacturers. The solutions are related to the mechanisms which should ensure that components written in different languages cooperate with each other in heterogeneous systems that are in different nodes in the computer network.

This work describes the concept of component distributed information systems of Internet technology and their capabilities and offers a solution specifying the implementation environment in the military organization.

Access to the development of information systems

In the development of information systems, an important role is given to the choice of appropriate methods and tools. For large systems such as military organizations, standardized procedures and methodologies for the development of information systems are recommended. There are different methodological approaches in the development of information systems: a systematic integrated approach to development (from design, implementation to implementation and maintenance) and development of information systems as technical - technological structures (standard computer and network service). The combination of these two approaches leads to the concept of „open systems“ that allow different standards and IT services to operate on these systems. The UML system description of the process of software development has many different but interconnected models: use case model, analysis model, design model and implementation model. The previously mentioned methods of development of information systems can be systematized and described in a unique way called the Lar-manova method, usually through several stages: 1.Specification request 2.Analysis, 3. Design, 4.Implementation and 5. Testing.

Development of information systems in a military organization

The problem of development of information systems in the Internet environment by using software components is reduced to finding ways of determining a set of methodological procedures, concepts and approaches from the repositories of methods that support distribu-

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

ted information systems in Internet technology. Therefore, it is necessary to design a methodological approach that will be adaptive in accordance with the specific characteristics of military organizations.

While developing their information systems, most foreign armed forces use standardized procedures and methodologies applied in their environment. In cases where it is not specifically defined, there is a tendency to use modern methodological procedures in accordance with technical and technological development.

Component distributed information systems with an object-oriented approach in the Internet environment

The usage of distributed objects can create client/server applications with a three-layer or multi-layer architecture which enables the implementation of synchronous or asynchronous solutions for the Internet and intranet. An example of a direct execution of transactions is an approach that relies on the CORBA model (Common Object Request Broker Architecture) and the Object Request Broker (ORB). However, the applications that use them are difficult and expensive to maintain. It is one of the reasons why the development of component models has become popular and experienced great development in recent years. Components with the implemented mechanism for performing transactions can be thus used in developing new applications. The component model allows easier changes and maintenance, and also shortens the time required for implementation, because there are various ready-made components that can be used. This approach to the implementation of transactions is called the declarative approach. Developers are free of care for the realization of mechanisms for controlling the execution of transactions. Important component models are implemented in COM + technologies (Component Object Model), EJB (Enterprise Java Beans), CORBA (Common Object Request Broker Architecture) and SOA (Service Oriented Architecture).

Technologies for the implementation of component distributed information systems with an object-oriented approach in the Internet environment

The results of testing with different communication models for remote component calls resulted in the following technologies: COM + / DCOML, CORBA / IIOP, EJB / RMI / IIOP and SOAP. Web Services represent the basic building blocks of future information systems, and in fact are applications available on the network and suitable for executing what is necessary at that moment. The main communication protocol is SOAP, ie. XML over HTTP. They can be created from the already made applications or from the start, while programming languages, finished components and platforms can be used by the user’s choice. SOAP represents the environment for message exchange based on XML in the network and it uses the HTTP protocol application used by Web servers.

Implementation of component distributed information systems with an object-oriented approach in the Internet environment

From the aspect of this study, it can be concluded that there are two approaches through the J2EE (Java 2 Platform Enterprise Edition) environment and the Microsoft. NET set of technologies. SOAP is a new approach to professional development of distributed applications. It solves major problems with the platform and language dependences. It is able to work over the Internet and represents an open standard maintained by the W3C (the World Wide Web Consortium). The drawback of SOAP is interoperability which is not always 100% practicable with CORBA, ie. the existing implementation does not always meet the required reliability. This may be one of the causes of an insufficient number of available Web services on the Internet. The implementation of SOAP is possible in almost any programming language, on all popular platforms, so it has the potential to create a transparent web of services and applications that can be accessed on demand by everyone from every point, which will lead to the explosive growth of new services and therefore profits. SOAP does not try to replace CORBA or any other distributed system. Compared to CORBA, SOAP is less powerful, but it is impressive in its simplicity and scalability, which is very useful from the aspect of need for a wider acceptance by companies and by developers. SOAP is still developing, and a number of new protocols will appear, simplifying and facilitating the implementation of Web services in all business areas, including military information systems.

Conclusion

The possibility to connect the existing solutions is of great importance in determining the development strategy of information systems in the Army as well as in other complex organizational systems that contain heterogeneous hardware and software platforms. The research and analysis of the application of these standardized concepts, technologies and development platforms, including the experience of foreign armed forces lead to the conclusion that the concept of development of information systems in the Internet environment by using software components is a recommendation for strategic determination to overcome incompatible and unrelated existing partial software solutions. The basic idea is based on Web services which can be created from finished applications or from the start, while programming languages, finished components and platforms can be used by the user’s choice.

The applications for mutual remote communication used to use Remote Procedure Calls - RPC such as DCOM and CORBA, or they used to be completely unrelated. The SOAP protocol allows communication between applications on different operating systems, on different platforms, written in different programming languages. The world organization W3C12 has already published the SOAP version 1.1 as re-

12 http://www.w3.org/TR/soap/

(M7>

Pejanović, M., Razvoj informacionih sistema u internet okruženju korišćenjem softverskih komponenti sa posebnim osvrtom ..., str. 121-148

VOJNOTEHNIČKI GLASNIK 1 / 11

commendation. and it continues with the development of the recommendation of the SOAP version 1.2.

The applications exchange messages of the agreed format. Since the messages are formatted as XML documents, their processing and testing is simple and can be realized by any program designed to work with XML documents. The SOAP client creates an XML document that contains the corresponding request. This document is formatted in accordance with the SOAP specification. The document comes to the SOAP protocol which processes incoming requests and based on the received requests launches the appropriate application. Upon completion of processing, the SOAP protocol returns a response message to the SOAP client. It is, therefore, concluded that the data transformation relates to the use of the XML format.

Web Services represent the basic building blocks of future information systems, ie. in fact they may be available applications on the military network. When the decision on a type of service is concerned, it is not decisive whether the standard Web service will be implemented or a specific, particularly developed one, for example for military use. In other words, these are resources which are addressable using a URL and which return the information to the user. Analyses determine the SOAP communication protocol ie. XML over HTTP. It also concluded that the main initiator of these changes is XML which through its simplicity allows the practical independence of applications and systems because it is understandable both for a man and a machine. Key words: Internet technology, distributed systems, component systems, software components, military organization, heterogenic system, methodological approach.

Datum prijema članka: 25. 11.2009.

Datum dostavljanja ispravki rukopisa: 08. 02. 2010.

Datum konačnog prihvatanja članka za objavljivanje: 09. 02. 2010.

<m8)

i Надоели баннеры? Вы всегда можете отключить рекламу.