Trojvrstvová architektúra
Pri vývoji aplikácie bola zvolená trojvrstvová architektúra, pri ktorej sú používateľské rozhranie, logika funkčných procesov (biznis pravidlá) a úložisko dát vyvíjané a udržiavané ako nezávislé moduly, väčšinou na rozdielnych platformách.
Použité technológie
Veľkou výhodou použitých technológií je, že sú vyvíjané ako open-source. Okrem mnohých iných výhod prinášajú napríklad rýchle odhalenie a opravu prípadných chýb; rýchly vývoj a podporu nových technológií (hranice open-source technológií sú oveľa širšie ako closed-source, ktoré sú obmedzené zdrojmi jednej firmy); principiálne širšia a rýchlejšia podpora a v neposlednom rade cena. Samotný status ‘open-source’ nie je samozrejmou zárukou kvality, podpory a použiteľnosti, avšak pri správnom výbere je jednoznačne lepšia voľba, čo je aj prípad tohto systému.
- Spring 2.5 - Komplexný, vysoko kvalitný framework pre biznis vrstvu spolu s integrovanou bezpečnostnou vrstvou (Acegi). S možnosťou prevádzkovať aplikáciu tak na JEE aplikačnom serveri, ako aj mimo neho so zachovaním „enterprise“ statusu. Podporuje množstvo známych technológií a poskytuje ich výbornú integráciu. Prispieva k výraznému zníženiu syntaktickej chybovosti systému. Ide o absolútnu špičku v oblasti frameworkov pre Java aplikácie.
- Tapestry 4.1 - Moderný, komponentovo orientovaný framework určený pre implementáciu prezentačnej vrstvy. Vďaka HTML šablónam pre stránky je veľmi dobre prispôsobiteľný a to nie len z pohľadu zmien grafického používateľského rozhrania (napr. zmena usporiadania ovládacích prvkov), ale aj z pohľadu samotných zmien obsahu stránok. Komponentový prístup tomu skvele sekunduje – rovnaké prvky/časti obrazoviek môžu byť zastrešené jedným komponentom, čo výrazne zrýchľuje implementáciu generických zmien takýchto častí. Ďalšou výhodou je zjednodušenie a sprehľadnenie vývoja prezentačnej vrstvy a v neposlednom rade zníženie syntaktickej chybovosti.
Použité platformy
Na strane používateľskej stanice nie je výber operačného systému (OS) skoro ničím obmedzený. Jedinou podmienkou je, že zvolený OS musí obsahovať resp. dovoľovať inštaláciu jedného z bežne používaných webových prehliadačov: Internet Explorer 7, Mozilla Firefox 2.0, Opera 9.26, Safari 3.1.
Výber OS pre server je takisto len okrajovo obmedzovaný použitými technológiami. Podmienkou pre správne fungovanie aplikácie je, že pre OS na strane servera existuje funkčná verzia aplikačného a databázového servera.
- JBoss Web server - Ako aplikačný server bol zvolený JBoss Web server, ktorý je postavený na technológii Apache Tomcat a svojou podstatou je určený pre stredne veľké až veľké aplikácie. JBoss Web server poskytuje jednotnú vývojovú platformu pre Java Server Pages (JSP), Java Servlet technologies, PHP a CGI. Jadro JBoss Web servera používa hybridnú technológiu, ktorá zjednocuje mnohé výhody súčasných moderných technológií pre spracovanie veľkého objemu údajov a súčasne dodržiava špecifikáciu jazyka Java. Hybridný procesný model prináša to najlepšie z využívania viacerých vlákien a procesného modelu udalostí. Vďaka tomu je JBoss jedným z najrýchlejších a najlepšie škálovateľných web serverov na trhu.
- Oracle Database 10g - Použitá databáza Oracle Database 10g je prvá databáza pripravená na použitie pre grid computing, najflexibilnejšiu a nákladovo najefektívnejšiu cestu pri riadení podnikových informácií. Tým znižuje náklady na riadenie, zatiaľ čo poskytuje čo najvyššiu možnú mieru kvality služieb. Prináša veľké množstvo kvalitatívnych a aj výkonových vylepšení, zjednodušenú inštaláciu a automatickú diagnostiku výkonu.
Škálovateľnosť riešenia a jeho “customizácia”
Aplikácia je pripravená na škálovateľnosť vo viacerých smeroch. Vďaka použitým technológiám je možné škálovať podľa požiadavok minimálnu odozvu systému, maximálny počet súbežne prihlásených používateľov, ale aj hardvérové vybavenie serverov a podobne.
Z používateľského hľadiska môže byť zaujímavá možnosť výberu aktuálnej jazykovej mutácie (pridanie jazykovej mutácie je vďaka dátovému modelu veľmi jednoduché).
Z pohľadu integrácie aplikácie s externými systémami môže byť zaujímavá škálovateľnosť palety používaných spôsobov integrácie a formátov súborov používaných na export údajov z aplikácie.
Proces implementácie riešenia
Existujúce riešenie je funkčným prototypom, ktorý umožňuje prezentáciu pomerne rozsiahlej škály funkcionality. V prípade rozhodnutia nasadenia aplikácie do produkčného prostredia je nutné došpecifikovať detaily týkajúce sa jednotlivých funkčných oblastí.
V rámci špecifikácie pripomienok budú zozbierané všetky funkčné aj nefunkčné požiadavky na aplikáciu. Tie budú následne zapracované do aplikácie a odovzdané na odobrenie. V prípade kladného hodnotenia úprav bude možné vzniknutý produkt označiť ako finálnu verziu aplikácie vhodnú pre nasadenie do produkčného prostredia.
Podpora a ďalšie poskytované služby
Po nasadení aplikácie do produkčného prostredia poskytujeme plnú podporu prevádzky.
Prvým stupňom podpory je technická podpora, čiže zabezpečenie správneho fungovania nainštalovaného hardvéru na strane serveru, všetkých technologických platforiem a samotnej aplikácie.
Ďalším stupňom podpory je aplikačná podpora, ktorá zabezpečuje jednorazové zásahy do aplikácie resp. údajov podľa špecifikácie klienta.
Poslednou úrovňou podpory je prevádzková podpora, ktorá obsahuje priamu podporu pre používateľov aplikácie.
Samozrejmosťou je aj zabezpečenie prípadných rozšírení aplikácie, či už na základe legislatívnych zmien alebo požiadavok používateľov.
Požiadavky na konfiguráciu používateľských PC a serverov
- Mozilla Firefox 2 – Pentium 233 MHz, 64 MB RAM a 52 MB voľného miesta na pevnom disku
- MS Internet Explorer 7 – Pentium 233 MHz, 64 MB RAM
- Opera 9 – Pentium II, 64 MB RAM a 50 MB voľného miesta na pevnom disku
- Apple Safari 3 – Pentium 500 MHz, 256 MB RAM, Windows XP / Vista
Na strane serverov je predpokladaná minimálna konfigurácia na úrovni dvoch procesorov a 4 GB RAM. Pri ďalšom rozširovaní funkcionality a zvyšovaní objemu evidovaných údajov bude samozrejme nutné adekvátne upraviť aj hardvérovú konfiguráciu serverov.
