Bit Impeks - Preduzeće za informacioni inženjering

Kontakt

Telefon:
+381 (11) 3477-205
Faks:
+381 (11) 3477-217
e-mail:
info + bitimpeks.rs
web:
www.bitimpeks.rs
Adresa:
Bit Impeks d.o.o.
Ljermontova 13
11000 Beograd
Srbija
 

NexTIS - Opis tehnologije

Uvod

Defacto standard na tržištu operativnih sistema opšte namene je Microsoft Windows. Ovaj proizvod svoju popularnost duguje pre svega jednostavnom instalacionom procedurom, intuitivnom grafičkom interfejsu, mnoštvu veoma kvalitetnih aplikacija koje su napisane za njega, sveobuhvatnoj podršci radu u mreži, visokom stepenu pouzdanosti i naročito konkurentnom cenom.

Imajući ovo u vidu, naši projektanti su se opredelili za razvoj poslovnih aplikacija u Microsoft Windows okruženju. Pouzdanost, brzina i jednostavnost korišćenja je zajednički imenitelj svake profesionalne aplikacije, međutim stalni razvoj kompjuterskog hardvera i softvera, te sve češće promene u poslovnom zakonodavstvu, postavljaju sledeće zahteve koji aplikativni softver treba da ispuni:

Kvalitetna realizacija aplikativnog softvera se danas svodi na uspešno tumačenje paradigme klijent/server arhitekture uz primenu raspoloživih razvojnih alata. Teoretska razmatranja ovog problema idu od definicije više slojeva od kojih se sastoji aplikacija do objektno orijentisanog pristupa dizajnu i razvoju programa.

Realne mogućnosti razvojnih alata i sistema za skladištenje podataka i iskustvo naših projektanata u implementaciji i primeni aplikativnih rešenja, opredelili su nas za razvoj dve vrste komponenti:

Odnos ovih komponenti prema sistemima za upravljanje bazama podataka (DBMS) je prikazan na sledećoj slici:

Osnovna ideja ovakve slojevite arhitekture je jasno razgraničenje funkcija pojedinih elemenata aplikacije.

User interface komponente imaju zadatak da upravljaju prikazom podataka na ekranu ili izveštaju i da reaguju na zahteve korisnika koji dolaze preko tastature ili miša. One takođe vrše osnovnu kontrolu podataka koje korisnik unosi i značajno standardizuju eksterni dizajn aplikacije i omogućuju njegovo podešavanje od strane samog korisnika ili administratora sistema.

Bussiness rules komponente se dizajniraju sa ciljem da obezbede primenu poslovnih pravila prilikom manipulacije podacima. One takođe imaju zadatak da ostvare vezu sa skladištem podataka i obezbede razmenu podataka sa drugim aplikacijama.

Pored razvoja gore pomenutih komponenti u Bit Impeksu se permanentno razvija niz informacionih tehnologija i servisa čija je uloga da učauri i učini transparentnim sistemske servise prema modulima aplikativnog softvera. Zajedničko ime za sve naše softverske proizvode je NexT Informacioni sistemi.

NexT tehnologije

Osnovni razvojni alat koji koristimo je Microsoft Visual Basic. Evolucija Basica od jednostavnog komandnog interpretera do moćnog integrisanog i objektno orijentisanog programskog jezika za realizaciju raznih vrsta aplikacija koje funkcionišu u grafičkom režimu je tekla postepeno. Microsoft je uvek osluškivao zahteve projektanata za jednostavnim i brzim načinom implementacije dobro organizovanih poslovnih informacionih sistema. Ovaj alat savršeno podržava RAD (Rapid Application Development) metodologiju razvoja, a istovremeno obezbeđuje pristup raznim informacionim resursima od baza podataka do multimedijalnih informacija. Treba napomenuti da većina modernih CASE alata poseduje generatore koda baš za Visual Basic. Aktuelna verzija je Visual Basic 6.0 koja donosi mnoge novine baš u implementaciji User interface komponenti i pristupu podacima. S druge strane isti dijalekt Visual Basica se sada koristi i u najpopularnijem office paketu – Microsoft Office, što obezbeđuje izvanredne mogućnosti programerima da ponovo koriste source code svojih programa i da formiraju zajedničke biblioteke funkcija za razne potrebe.Aktuelna verzija Visual Basica .NET ide u pravcu razvoja aplikacija koje intenzivno koriste Web tehnologiju.

NexTMT ActiveX kontrola

NexTMT (NexT MultiText) ActiveX Control pripada User interface kategoriji komponenti. Ona je razvijena u Bit Impeksu za potrebe poslovnih aplikacija. Njena osnovna osobina je da istovremeno može da prikaže podatke u tabelarnoj i/ili pojedinačnoj formi. Takođe obezbeđuje automatsku proveru domena podatka i programabilni interfejs (API) preko koga se kontroliše ponašanje kontrole prilikom pojedinih događaja u toku izvršavanja aplikacije. Ona se veoma lako dizajnira i smešta na formu za prikaz ili evidentiranje podataka. Istovremeno omogućava realizaciju širokog dijapazona izveštaja.

Jednostavnost korišćenja se ogleda u dobro strukturiranoj objektnoj specifikaciji pojedinih funkcija, mnoštvu "event" procedura i mogućnosti predefinisanja ponašanja preko konfiguracione datoteke aplikacije.

Korišćenje ove komponente u našim aplikacijama praktično omogućava veoma brz razvoj kvalitetnih aplikacija kroz realizaciju poslovnih pravila i njihovo povezivanje sa korisničkim interfejsom, korišćenjem API-ja NexTMT ActiveX kontrole.

Principijelno, NexTMT kontrola se koristi kao i svaka druga ActiveX OCX kontrola. U Visual Basic projektu se mora specificirati lokacija na kojoj je kontrola instalirana.

Na sledećoj slici je dat prikaz Components dijaloga na kome je NexTMT kontrola označena za korišćenje u tekućem projektu.

Kontrola ima samo jednu osobinu koja je raspoloživa u dizajn režimu – Ini. U ovu osobinu se upisuje putanja do konfiguracione datoteke u koju se upisuju parametri sistema.

Na sledećoj slici je prikazana NexTMT kontrola na VB formi sa zadatom Ini osobinom.

NexTMT kontrola poseduje sledeće koncepte u radu sa podacima:

Svi parametri kontrole su opisani u konfiguracionoj datoteci. Konfiguraciona datoteka je podeljena na sekcije koje odgovaraju pojedinim konceptima. Ona je u tekstualnom formatu i može se editovati u bilo kom tekst editoru. Međutim i sama kontrola je snabdevena specijalizovanim editorom konfiguracione datoteke. Kada pokrenemo projekat moguće je pokrenuti editor i otpočeti sa razvojem aplikacije. Na sledećoj slici je prikazana pokrenuta aplikacija sa glavnim menijem editora:

Sintaksa opisa blokova, akcija, print blokova i application blokova ima svoje specifičnosti i njen opis prevazilazi domen ovog dokumenta. Ovde ćemo samo napomenuti da je sintaksa veoma slična XML/HTML standardu. Na sledećoj slici je prikazan prozor editora u kome se može videti opis blok sekcije:

Pored gore navedenih koncepata NexTMT kontrola je tesno povezana NexTADM servisom za administraciju korisnika i omogućava definisanje profila korisnika uz pomoć koga administrator sistema može odrediti koja će se polja prikazivati korisniku ili kako će se podaci "filtrirati" za pojedine grupe korisnika.

Osnovna ideja je da se omogući projektantima i programerima brz i efikasan način dizajniranja aplikacija i njihova implementacija, sa što je manje moguće linija source code-a. Istovremeno je obezbeđen visok stepen konfigurabilnosti pojedinih segmenata aplikacije. To znači da i sam korisnik ili administrator sistema može podešavati pojedine elemente korisničkog interfejsa bez intervencije programera – bez izmene source code-a i rekompilacije programa. Programiranje je krajnje jednostavno. Na primer poziv metode kontrole Go koja prikazuje odgovarajući blok podataka na ekranu je:

MT.Go "Dokument", rsDokument, MT.XYScreen

gde je MT objektna promenljiva koja referencira NexTMT kontrolu, "Dokument" naziv bloka koji se želi prikazati (njegov opis se mora nalaziti u konfiguracionoj datoteci), rsDokument objektna promenljiva koja sadrži referencu na ADO Recordset objekt koji sadrži podatke o dokumentima, a MT.XYScreen osobina kontrole koja određuje koordinate gornjeg levog ugla bloka na ekranu.

Slično prethodnom primeru, izveštaj na ekranu se prikazuje korišćenjem NexTPrintPriview metode:

NazivIzvestaja = "STNalog" MT.NextPrintPreview
NazivIzvestaja,,,,,rsShape, Printers(0)

gde je rsShape objektna promenljiva koja sadrži referencu na ADO Recordset objekt koji sadrži podatke koji se žele odštampati, a Printers(0) je referenca na default printer.

Kao što je već rečeno jedna instanca kontrole na formi može sadržati opise više blokova. Međutim jedinstvena osobina kontrole je da se istovremeno može prikazati više blokova podataka na ekranu.

Na sledećoj slici je prikazan ekran koji ilustruje ovu osobinu:

Osnovni razvojni alat koji koristimo je Microsoft Visual Basic. Evolucija Basica od jednostavnog komandnog interpretera do moćnog integrisanog i objektno orijentisanog programskog jezika za realizaciju raznih vrsta aplikacija koje funkcionišu u grafičkom režimu je tekla postepeno. Microsoft je uvek osluškivao zahteve projektanata za jednostavnim i brzim načinom implementacije dobro organizovanih poslovnih informacionih sistema. Ovaj alat savršeno podržava RAD (Rapid Application Development) metodologiju razvoja, a istovremeno obezbeđuje pristup raznim informacionim resursima od baza podataka do multimedijalnih informacija. Treba napomenuti da većina modernih CASE alata poseduje generatore koda baš za Visual Basic. Aktuelna verzija je Visual Basic 6.0 koja donosi mnoge novine baš u implementaciji User interface komponenti i pristupu podacima. S druge strane isti dijalekt Visual Basica se sada koristi i u najpopularnijem office paketu – Microsoft Office, što obezbeđuje izvanredne mogućnosti programerima da ponovo koriste source code svojih programa i da formiraju zajedničke biblioteke funkcija za razne potrebe.Aktuelna verzija Visual Basica .NET ide u pravcu razvoja aplikacija koje intenzivno koriste Web tehnologiju.

Komfor u radu

NexTMT kontrola obezbeđuje jednostavnost korišćenja aplikacija i komfor u radu što se obezbeđuje kroz sledeće osobine:

NexTDA (NexT Data Acess) – Pristup podacima

Visual Basic u potpunosti podržava UDA (Universal Data Access) tehnologiju pristupa podacima. Osnovu ove tehnologije čine OLE DB i ADO.

OLE DB je kolekcija standardnih specifikacija koje skladišta podataka treba da obezbede da bi omogućili aplikacijama univerzalan pristup podacima. Podaci ne moraju biti smešteni u relacionoj bazi podataka, oni se mogu nalaziti u bilo kom obliku, a proizvođač treba da realizuje tzv. OLE DB provajder – komponentu koja s jedne strane direktno manipuliše skladištem podataka, a s druge strane pruža mogućnost aplikaciji da sa njima manipuliše na standardan način korišćenjem kursora (Recordseta). Većina proizvođača sistema za upravljanje bazama podataka je već obezbedila OLE DB provajdere, a sam Microsoft je napisao provajdere za tekstualne datoteke, elektronsku poštu i sl.

ADO (ActiveX Data Objects) je Microsoft-ova komponenta koja obezbeđuje vezu aplikacije i OLE DB provajdera. Ona je veoma složena i poseduje niz objekata, funkcija i osobina koji omogućuju pisanje aplikacije koja je u velikoj meri nezavisna od konkretnog sistema za upravljanje podacima.

Standardizacija pojedinih komponenti UDA tehnologije je ostvarena korišćenjem COM/DCOM interfejsa koji u saradnji sa Microsoft Transaction Serverom obezbeđuje transparentnu realizaciju skalabilnih aplikacija – ista verzija aplikacije može da funkcioniše u jednokorisničkom okruženju na jednom Windows računaru, ili u složenom distribuiranom višekorisničkom okruženju na LAN/WAN mreži računara u kojoj se nalaze “mršavi” Windows klijenti, Windows 2000/2003 aplikacioni serveri i Windows 2000/2003 serveri baza podataka.

Iako UDA tehnologija značajno pojednostavljuje pristup podacima, iskustva mnogih programera je da je ponašanje pojedinih ADO objekata veoma zavisno od tekuće verzije. Na primer, ukoliko se koriste "client-side" kursori, ponašanje ADO Recordset objekta se veoma razlikuje u verziji 2.1 i 2.5 iako su ove verzije binarno kompatibilne. S druge strane "bussines rules" orijentisane komponente najčešće zahtevaju ograničenu funkcionalnost ADO komponenti za pristup podataka.

U cilju pojednostavljenja source koda poslovnih komponenti razvijena je NexTDA (Next Data Access) komponenta. Pored standardnih metoda (čitaj, dodaj, promeni, obriši), ova komponenta poseduje kompleksnu logiku za prilagođavanje ADO interfejsa aplikativnim potrebama. To se pre svega odnosi na rukovanje greškama, NULL vrednostima, standardnim tipovima podataka, zaključavanju podataka i procesa itd. Takođe, zadatak NexTDA je da ujednači rad sa raznim OLE DB provajderima.

Arhitektura NexT aplikacija

Konkretna realizacija NexT poslovnih aplikacija se bazira na dve ADO biblioteke:

Na sledećoj slici je prikazana slojevita arhitektura NexT IS aplikacija:

NexTIS softver podržava sledeće RDBMS sisteme za upravljanje bazama podataka:

NexTADM – Zaštita i administriranje aplikacija

NexTADM servis je standardna komponenta svih aplikacija koje se zasnivaju na NexT IS Tehnologijama. O okviru ove komponente sadržane su sledeće funkcije:

NexTIE - Integracija sa okruženjem

U okviru NexTIE komponente razvijene su funkcije za razmenu podataka sa okruženjem. Podaci iz baze podataka se mogu uvoziti ili izvoziti u ASCII ili XML formatu i njihov dalji prenos internim komunikacijama (Intranet-om) ili elektronskom poštom (Internetom).

Pored toga omogućen je eksport podataka sa bilo kog bloka koji korisnik vidi na ekranu u prazan ili predefinisani Microsoft Excel dokument.

Kada se radi o razmeni skupova podataka koji su specifični za neko okruženje (na primer distribuirane baze podataka) obezbeđena je kontrola slanja samo promena i kontrola koje se promene prihvataju u odredišnu bazu podataka.

NexT SAĆE tehnologija

Ova tehnologija je razvijena da omogući kreiranje specifičnih izveštaja. Najčešće se radi o plansko-analitičkim izveštajima definisanim od strane rukovodstva poslovnog sistema.

Ovaj alat raspolaže interfejsom koji omogućava korisniku da sam kreira pojedine redove i kolone izveštaja. Obezbeđena je specifikacija formula – definisanje računskih operacija nad podacima koji pripadaju istom ili nekom drugom redu.

Na sledećoj slici je prikazan jedan izveštaj dobijen ovom tehnologijom:

Implemetacija i sistemski zahtevi

NexT Informacioni sistemi se mogu implementirati na razne načine. U zavisnosti od informacionih potreba, organizacije i tehnologije rada, rasporeda lokacija gde se poslovi obavljaju i veza prema eksternim izvorima informacija, moguće su sledeće konfiguracije tehničko-tehnološke osnove sistema:

Jednokorisnički sistem – ova varijanta implementacije je najjednostavnija. Za njenu implementaciju dovoljan je jedan računar koji funkcioniše pod bilo kojim 32-bitnim Microsoft Windows operativnim sistemom.

Preporučena konfiguracija računara je Intel Pentium IV ili Celeron procesor, 256 MB RAM, (DBMS je Microsoft Access), 800x600 SVGA podsistem, sa 5GB slobodnog prostora na disku.

Višekorisnički sistem sa "debelim" klijentima – ova varijanta je namenjena korisnicima koji imaju snažne radne stanice i brzu lokalnu mrežu. Server u lokalnoj mreži ima funkciju samo opsluživanja baze podataka koja može biti Microsoft Access/SQL Server ili Oracle baza podataka. Na radnim stanicama se instalira kompletan NexT klijentski softver, tako da se aplikacije učitavaju i izvršavaju na njima. Konfiguracija Servera zavisi od broja korisnika, obima podataka i sistema za upravljanje bazom podataka. Preporučena konfiguracija za 20 korisnika za SQL Server varijatnu je Intel Pentium IV procesor, 2GB MB RAM, SCSI diskovi, sa minimum 10 GB slobodnog prostora na disku. Preporučena konfiguracija radnih stanica je Intel Pentium IV, 256 MB RAM, 800x600 SVGA podsistem, sa 1GB slobodnog prostora na disku.

Server u lokalnoj mreži ima funkciju samo opsluživanja baze podataka koja može biti Microsoft Access ili Microsoft SQL Server baza podataka. Na radnim stanicama se instalira kompletan NexT klijentski softver, tako da se aplikacije učitavaju i izvršavaju na njima. Preporučena minimalna konfiguracija Servera je Intel Pentium III procesor, 128 (Access) ili 256 (SQL Server) MB RAM, 5 GB slobodnog prostora na disku. Preporučena minimalna konfiguracija radnih stanica je Intel Pentium II ili Celeron procesor, 64 MB RAM, 800x600 SVGA podsistem, sa 1GB slobodnog prostora na disku. Lokalna mreža treba da bude izvedena po Fast Ethernet 10/100 Mb/s standardu.

Višekorisnički sistem sa "tankim" klijentima – u slučaju da korisnik već poseduje određeni broj radnih stanica starije konfiguracije, preporučuje se instalacija snažnog servera, (Microsoft Windows 2000 Server + Terminal Server) na kome se izvršava aplikacija. Sve komponente sistema se instaliraju na serveru, a na radnim stanicama se instalira samo Windows terminal klijentski softver. Kapaciteti radnih stanica nisu važni za performanse sistema, dovoljno je da se na njih može instalirati bilo koji 32-bitni Microsoft Windows operativni sistem. Preporučene konfiguracija za server koji treba da podrži 20 korisnika koji koriste Microsoft Access bazu podataka je Intel Pentium IV, 1 GB RAM, 10 GB slobodnog prostora na disku.Ovakva instalacija omogućava priključenje i izvršenje svih aplikacija i udaljenih korisnika (preko sporih komunikacionih kanala).

Sve komponente sistema se instaliraju na serveru, a na radnim stanicama se instalira samo Terminal Server klijentski softver. Kapaciteti radnih stanica nisu važni za performanse sistema, dovoljno je da se na njih može instalirati bilo koji 32-bitni Microsoft Windows operativni sistem. Preporučene minimalna konfiguracija za server koji treba da podrži 20 korisnika je Intel Pentium III, 512 MB RAM, 15 GB slobodnog prostora na disku.

Moguća je i kombinacija prethodne dve varijante.

Srednje veliki višekorisnički sistemi – za lokalne mreže koji imaju više od 20 korisnika i koji rade sa Microsoft SQL Server ili Oracle bazama podataka, preporučuje se instalacija prikazana na sledećoj slici:

U ovoj varijanti se preporučuje instalacija namenskih servera za upravljanje bazama podataka (Microsoft Windows 2000/2003 Advanced Server & Microsoft SQL Server Enterprise ili Unix/Oracle), aplikacionih servera (Microsoft Windows 2000/2003 Advanced Server & Terminal Services). Poželjno je da ovi serveri budu povezani odvojeno od ostatka računarske mreže. Na aplikacioni server se instalira NexT klijentski softver, a na radnim stanicama samo Windows terminal klijentski softver. Ova instalacija se preporučuje zbog jednostavnog održavanja i administriranja sistema, lakog proširenja (pogledati sledeću varijantu).

Kapaciteti servera zavise od broja radnih stanica i obima podataka. Tako na primer za NexTBIZ poslovni sistem sa 100 korisnika i bazom podataka sa nekoliko miliona promena na godišnjem nivou minimalne konfiguracije su:

Database Server (Microsoft Windows 2000/2003 Server & SQL Server 2000)

Application Server (Microsoft Windows 2000/2003 Server & Terminal Services)

Veliki sistemi – u kategoriji korisnika koji imaju veliki broj radnih mesta, koji imaju distribuirani sistem po udaljenim organizacionim jedinicama, NexT IS se može konfigurisati tako da podržava razne modalitete korišćenja.

Ovde se preporučuje instalacija namenskih servera za upravljanje bazama podataka (Microsoft Windows 2000/2003 Datacenter Server & Microsoft SQL Server Enterprise), aplikacionih servera (Microsoft Windows 2000/2003 Advanced Server & Terminal Services) i internet servera (Microsoft Windows 2000/2003 Advanced Server & Internet Information Server & Microsoft Exchange Server). Za svaku od ovih funkcija se u cilju obezbeđenja pouzdanosti i skalabilnosti, mogu formirati load-balancing ili backup klasteri – farme servera. Administracija sistema je podržana Microsoft Active Directory Servisima. Na radnim stanicama se instalira Windows terminal klijent softver i Web browser. Centralna lokalna mreža je povezana na internet iznajmljenom linijom do ISP (Internet Service Provider) koji obezbeđuje javnu statičku TCP/IP adresu. Ovakva infrastuktura omogućava formiranje VPN (Virtual Private Network), što je najjeftivnija varijanta formiranja WAN mreže organizacije. Mobilni korisnici se veoma jednostavno povezuju na sistem i mogu koristi sve servise kao da se nalaze na centralnoj lokaciji. Takođe je omogućena replikacija (razmena) podataka sa udaljenim lokalnim mrežama i eksternim informacionim sistemima.

Početak strane

© 2013 Bit Impeks d.o.o.