U jednom od prošlih brojeva našeg FYI-a mogli ste pročitati članak o jednom specifičnom portalskom rješenju. Kao dio tog članka dan je opširan uvod u povijesni razvoj portala kao koncepta i pregled najvažnijih predstavnika portalskih rješenja te su objašnjene glavne namjene istih.
Da štovani čitatelji ne bi doživjeli preveliki déjà vu, ovdje ćemo se koncentrirati isključivo na jedan dio porodice portalskih rješenja, a to su enterprise portalska rješenja, odnosno portali. Takva su rješenja temelj izrade korporativnih portala koji velikim organizacijama i tvrtkama s kompleksnim poslovnim i specifičnim tehničkim potrebama pružaju lakši, konzistentniji put do ostvarenja njihovih zahtjeva. Srce je svakog enterprise portala programski okvir za integraciju informacija, poslovnih procesa i ljudi. Svoje integracijske mogućnosti portali pružaju kroz jedinstvenu, sigurnu, mogućnostima bogatu točku pristupa informacijama, dokumentima, aplikacijama i ostalim resursima putem logičkih organizacijskih jedinica – portleta. Tipični zadaci koji se obavljaju kroz sučelja portala uključuju sakupljanje, objavu i održavanje informacija i dokumentacije te izradu i objavljivanje specifičnih poslovnih aplikacija koje pomažu u svakodnevnom životu organizacije ili tvrtke. Tako nabrojane zadatke i slučajeve uporabe pokrivaju sva ili gotovo sva moderna portalska rješenja, no kako u fokusu i portfelju tvrtke CROZ dva rješenja čine glavninu implementacijskih iskustava, koncentrirat ćemo se na prikaz mogućnosti i usporedbu baš tih rješenja. Riječ je o open source rješenju imena Liferay Portal te rješenju koje nudi IBM pod nazivom WebSphere Portal. Oba spomenuta rješenja bit će predstavljena kroz najbitnije zadatke koji se pred njih stavljaju u svakodnevnom radu, s isticanjem sličnosti i razlika. Također, bit će prezentirane prednosti i mane svakog od njih s ciljem da potencijalni korisnici mogu lakše zaključiti koje rješenje bolje odgovara njihovim potrebama. Tipični zadaci koji će poslužiti kao ogledalo mogućnosti obje platforme bit će upravljanje i objava sadržaja te razvoj i objava specifičnih poslovnih aplikacija. Time ne zaboravljamo ključne točke zbog kojih su enterprise portali to što jesu:
· Single Sign-On (SSO)
· Personalizacija i prilagodba
· Upravljanje pravima pristupa
Te ključne stvari svako portalsko rješenje dovodi gotovo do savršenstva i ne postoje bitne razlike u pristupu različitih rješenja. Stoga je bitno naglasiti već spomenuta područja na kojima se rješenja bar minimalno razlikuju, makar krajnjom izvedbom i dojmom.
Sesame Street Liferay Portal – vesela primjena ozbiljnog portalskog rješenja
Pogled iz sistemske sobe
Prije nego što krenemo pričati o upravljanju dokumentima ili razvoju specifičnih poslovnih funkcionalnosti, osvrnimo se samo ukratko na sistemske temelje potrebne da se Liferay Portal i WebSphere Portal postave u produkcijski rad. Razmjerna je potreba za resursima i u ostalim okolinama, počevši od razvojne, no za ilustraciju potreba poslužit će produkcijski uvjeti. S obzirom na to da su oba rješenja zapravo JEE aplikacije čije pokretanje ovisi o postojanju JEE aplikativnog poslužitelja, očito je da se mogu izvoditi gotovo na bilo kojoj dostupnoj platformi, počevši od Microsoft Windows platforme, bilo koje UNIX bazirane platforme pa čak i z/OS platforme. S time na umu potrebno je naglasiti da su oba rješenja poprilični potrošači resursa. Diskovni će podsustav već samom instalacijom WebSphere Portal rješenja biti na udaru s obzirom na to da je potrebno minimalno 4 GB diskovnog prostora samo za instalaciju. Liferay Portal puno je “nježniji” što se toga tiče – do 500 MB prostora na disku sasvim je dovoljno za instalaciju. Kako počne rasti količina podataka koji se održavaju i pohranjuju korištenjem jednog ili drugog rješenja, rast će dakako potrošnja diskovnog prostora kojeg koriste baze podataka i repozitoriji dokumenata u koje se podaci i dokumenti pohranjuju. Što se radne memorije tiče, oba će rješenja u produkcijskim uvjetima biti sretna ako im osigurate 4 GB radne memorije po procesoru te izdvojite njihove poslužitelje baze podataka na zasebni hardver.
Liferay i WebSphere u svijetu upravljanja dokumentima
Ključni procesi u životu (bilo svakodnevnom, bilo dugoročnom) svake ozbiljne organizacije i tvrtke uključuju rad s velikim količinama raznih dokumenata, odnosno, bolje rečeno, velikim količinama raznih informacija. Dakako da portalska rješenja nisu “izmislila” procese upravljanja dokumentima uz pomoć programske podrške, no kao centralno integracijsko mjesto cijele organizacije portalsko je rješenje idealno za osiguravanje konzistentnog upravljanja važnim (ili svim) dokumentima. Što je tipično potrebno za upravljanje dokumentima? Upravljanje dokumentima se, bio Portal uključen ili ne, temelji na repozitoriju dokumenata, kreiranju procesa za upravljanje dokumentima (document workflow) te sučelju za upravljanje dokumentima i procesima. Kako bismo usporedili dva portalska rješenja, pogledat ćemo tri upravo navedena temelja upravljanja dokumentima. Odmah moram napomenuti da će možda neka od zapažanja vezana uz sučelje za upravljanje dokumentima biti osobna, no to je gotovo uvijek slučaj kada se bavimo sučeljima aplikacija.
Repozitorij dokumenata
Bilo koje iole ozbiljnije rješenje za upravljanje dokumentima izgrađeno je oko kvalitetnog repozitorija. Isto tako, ako je rješenje temeljeno na JEE platformi, tada će taj repozitorij biti izgrađen na temeljima specifikacije JSR-170, odnosno imat će obilježja Java Content Repository specifikacije. Ovdje se oba rješenja ne razlikuju mnogo – Liferay Portal koristi Apache Jackrabbit JCR implementaciju, dok WebSphere Portal koristi vlastitu implementaciju istog standarda. Potrebno je napomenuti da je implementacija koju koristi Liferay Portal bolje dokumentirana te tako omogućava lakše dodavanje specifičnih funkcionalnosti ukoliko su potrebne.
Procesi upravljanja dokumentima
Oba rješenja donose mogućnosti prilagodbe procesa upravljanja dokumentima (document workflow) koja će zadovoljiti većinu poslovnih potreba. Doduše, Liferay Portal ima čak i malo fleksibilniji model procesa, no razlike su gotovo nevidljive. Oba rješenja već definiraju standardne role koje sudjeluju u procesu upravljanja dokumentima te se posao prilagodbe svodi na ispravno definiranje koraka procesa kroz koji dokumenti prolaze od njihova kreiranja pa do objave i održavanja.
Portalsko sučelje za upravljanje dokumentima
Sličnosti Liferay i WebSphere Portala ogledaju se i u sučelju, no samo zbog činjenice da oba rješenja nude istu funkcionalnost – upravljanje dokumentima. Sučelje (u cjelini, ne samo dio za upravljanje dokumentima) jest dio gdje Liferay briljira. Odlikuju ga intuitivnost, lakoća korištenja, jasno naglašavanje i isticanje bitnih informacija i dostupnih akcija. Jednom riječju, usability je na izrazito visokoj razini. Razvojni tim koji stoji iza Liferay Portal rješenja napravio je dinamično i bogato, ali u isto vrijeme i jednostavno sučelje. WebSphere Portal tu ponešto zaostaje, iako je sučelje mnogo bolje nego u prošlim verzijama. Napomenuo sam da će ovdje zapažanja biti vjerojatno osobna, pa tako treba istaknuti da WebSphere Portal ima vrlo funkcionalno sučelje za upravljanje dokumentima koje je u skladu sa sučeljem ostatka portala i omogućit će korisniku da izvede željeni niz akcija, no završni dojam nije toliko dobar i pozitivan. Možda bi dojam bio bolji kada drugo rješenje ne bi ostavljalo fantastičan dojam.
Mogućnost proširenja
U ovoj usporedbi svakako treba imati na umu proširivost IBM-ova rješenja koje se lako može “nasloniti” na trenutno najbolji sustav upravljanja dokumentima na tržištu, IBM Filenet. U slučaju takve simbioze WebSphere Portal postaje zapravo samo sučelje kroz koje se otvara pogled u Filenet, koji nudi bezbroj mogućnosti i funkcionalnosti u prilagodbi procesa upravljanja dokumentima. I Liferay Portal može se po želji proširiti samostalnim rješenjem za upravljanje dokumentima u vidu izvrsnog open source Alfresco rješenja, no IBM Filenet trenutno je vrh ponude i uparivanje WebSphere Portal rješenja s Filenet rješenjem nudi maksimalne mogućnosti u svijetu upravljanja i objave sadržaja i dokumenata.
Opći dojam
Upravljanje je dokumentima, iskreno priznajmo, jednoličan i pomalo dosadan zadatak koji se stavlja pred informacijske sustave, odnosno njihove komponente. Kakav zadatak, takva i rješenja. Nikakvih iznenađenja nema ni kad su u pitanju WebSphere Portal i Liferay Portal. Postavite repozitorij dokumenata, prilagodite proces upravljanja dokumentima, dodijelite ljudima prava sudjelovanja u tom procesu i koristite ugrađeno sučelje za izradu i objavljivanje dokumenata. Sve ćete to nekako malo jednostavnije i brže izvesti s Liferay Portal rješenjem, te je ono za tipične upotrebe iskoristivije, no ako vam se količina dokumenata ili kompleksnost procesa upravljanja znatno poveća, tada WebSphere Portal proširen s IBM Filenet rješenjem postaje bolji izbor.
Samo još jedan portlet, molim
Ako imate potrebu dodatno osnažiti već ionako snažnu platformu (što i Liferay i WebSphere jesu) određenom specifičnom poslovnom funkcionalnošću, najlakše ćete to načiniti razvojem portleta prema funkcijskoj (i nefunkcijskoj) specifikaciji koja je stavljena pred implementacijski tim. Obje portalske platforme nude cijeli niz različitih mogućnosti koje će vam olakšati posao te podržavaju gotovo istovjetnu paletu razvojnih tehnologija. No, postoji jedna bitna razlika. WebSphere Portal sistemski je dosta zahtjevniji te postavlja pred razvojni tim zadatak uspostave razvojne okoline u kojoj će razvoj portleta biti brz i jednostavan. To može uključivati razvoj na nekom drugom portalskom okruženju (Apache Pluto ili JetSpeed, Oracle OpenPortal, pa čak i Liferay Portal) ili podizanju WebSphere Portala kao razvojnog okruženja, što podrazumijeva nabavu zaista snažnih razvojnih računala. Liferay, s druge strane, ne postavlja tako visoke sistemske zahtjeve pa se bez pretjerane prilagodbe može koristiti i kao razvojno okruženje. Pogledajmo sada najbitnije razvojne tehnologije (čije detalje možete pogledati u okviru uz tekst) za razvoj vlastitih portleta te pružaju li WebSphere Portal i Liferay podršku za njih.
JSR-286
Najnoviju portlet specifikaciju podržavaju oba portala, što je vrlo bitno za razvoj modernih portleta nove generacije.
JSR-186
Naravno, za jednostavne portlete i dalje je dostupna stara portlet specifikacija koja se preporuča za manje “zahvate” te portlete koji nemaju potrebe za AJAX funkcionalnostima.
JSR-314
JSF postaje sve popularnija tehnologija, i to s razlogom. Otklonjeni su performansni problemi JSF implementacija, a izašla je i nova specifikacija, JSF2. Obećane su prednosti, između ostalog, brži, jednostavniji i standardniji razvoj sučelja, performansna poboljšanja, bolja podrška od strane razvojnih alata. Ovdje WebSphere Portal ne briljira – ne nudi podršku za JSF2 “iz kutije”, no uz male prilagodbe mogu se razvijati i JSF2 portleti. Liferay, s druge strane, već nudi podršku za JSF2 portlete.
Nagrada za najbolji portal ide u ruke…
Pobjednika u ovoj usporedbi nema i ne može biti. Zašto je tome tako? Tvrdnja s početka ove kratke priče i dalje stoji, ova su dva rješenja vrlo slična u svakom pogledu. Korisničko je sučelje Liferay Portal rješenja za nijansu bolje, ljepše, intuitivnije za rad. WebSphere Portal je proširivija platforma, donosi šire područje uporabe, pogotovo ako ga se kombinira s nekim od specijaliziranih rješenja za upravljanje dokumentima (Filenet) ili procesima (Process Server) koja nudi IBM. Ako vam zahtjevi nisu enterprise tipa, tada je Liferay Portal besplatan te nema podršku izvan Liferay foruma i širokih prostranstava interneta. No takva upotreba Liferay rješenja ima smisla u edukativnim, istraživačkim, osobnim svrhama. Ako imate iole ozbiljniji slučaj uporabe, tada ćete sigurno krenuti u implementaciju Liferay Portal rješenja s plaćenom i visoko dostupnom stručnom podrškom kakvu WebSphere Portal rješenje ima odmah dostupnu. U svojim trenutnim verzijama (Liferay Portal 5.2, WebSphere Portal 6.1.5.1) oba su rješenja dostigla zavidan stupanj zrelosti te se problemi pojavljuju rijetko, no uvijek su mogući, tako da je rad bez stručne podrške gotovo pa nemoguć. Iskustva CROZ-ovih timova u implementaciji rješenja temeljenih na obje platforme mahom su vrlo dobra, i bez većeg čupanja ono malo kose što nam je ostalo. Naša se preporuka u odabiru konkretne platforme uvijek temelji na intenzivnoj suradnji s korisnikom kako bismo pokušali definirati njihove zahtjeve te im pomoći da krajnje rješenje temeljeno na jednom od Portala bude točno ono što oni žele i trebaju te da ga, na kraju, mogu koristiti što duže, jednostavnije i sa zadovoljstvom.