Thursday 13 October 2011

Asi největší novinkou prezentovanou na Oracle Open World 2011 z naší oblasti je Oracle Social Network. Pro ty z vás, kteří již měli příležitost si o tom něco vyslechnout, se jedná o využití nástroje OnTrack pro řadu zajímavých scénářů.

Oracle Social Network byla uvedena skutečně impozantně - ve své keynote ji přestavil Larry Ellison a věnoval ji skoro půl hodiny; dokonce v rámci prezentace předvedl simulované demo na jeden obchodní scénář!

Prezentace je již k dispozici (zde, Social Network je věnována druhá polovina) a pokud vás téma zaujalo, rozhodně doporučuji se na ni podívat - produkt není dále představovat, v podstatě se prodává sám.

Pokud bychom přeci jen chtěli docílit nějakého shrnutí:
  • jakkoli je možnost uchování veškeré komunikace v perzistentní podobě, s možností kontextových komentářů a spoustou dalších "vychytávek" zajímavá, její hlavní hodnota (jedná se o způsob komunikace a cesta zde rozhodně není cíl) je v návaznosti na obchodní proces (v ukázce se jedná o obohacení CRM systému při řízení obchodní příležitosti). Chcete-li, hodnota nasazení Oracle Social Network je rozdíl, o kolik se zlepší proces v dané aplikaci.
Osobně si myslím, že v tom spočívá i hlavní rozdíl mezi tímto nástrojem a jinými sociálními sítěmi (i když takový LinkedIn se může dost dobře stát součástí procesů HR) - zde je počítáno s jeho využitím v rámci jiných obchodních aplikací. Samozřejmostí je integrace do prostředí Oracle Fusion Applications (mimochodem, další zásadní novinka Open Worldu), ale stejným způsobem je možno postupovat i např. u aplikací třetí strany (zejména, jsou-li tyto napsány v technologii, která umí konzumovat portlety).

Novinkou je také to, že Social Network nebude prodáván na CPU a uživatele, ale spíše modelem čerpání služeb cloudu (tj. na jakési bázi měsíčních plateb za skutečně zkonzumované zdroje). Prozatím jsem k tomuto tvrzení nenašel žádné detaily, ale budu pátrat dále.

Friday 7 October 2011

ADF vs. WebCenter Framework

Svět píše o Steve Jobsovi, v Americe probíhá Oracle OpenWorld, ale my se po určité odmlce způsobené svátky a mojí osobní situací podíváme na velmi technické téma, které, jak se zdá, vzbuzuje otázky nejen u nás.

Pro správné pozicování ADF a WebCenter (zde se omezíme jen na základní komponentu, tzv. WebCenter Framework) je třeba nejprve napsat pár slov o ADF.

ADF je jeden z frameworků pro vývoj webových aplikací v jazyce Java. Jak se píše v záhlaví na jeho domovské stránce na oracle.com, usnadňuje vývoj těchto aplikací tím, že poskytuje služby out-of-the-box a aplikace je možné psát vizuálně a deklarativně; tj. místo psaní řádek kódu se do aplikací "přetahují" myší komponenty, které framework nabízí a které se pak konfigurují (buď v GUI vývojového prostředí, nebo editací XML souborů).

Hlavním přínosem však nejsou ani hotové objekty, ze kterých je možné aplikaci rychle poskládat, ani "programování myší", jako důsledné dodržování architektonického patternu Model-View-Controller, zejména pak oddělení business či doménové logiky (Model) od uživatelského rozhraní (View), a to vše provozovatelné v běžném webovém prohlížeči (Controller).

WebCenter Framework je určen pro psaní portálových aplikací -pro popis vlastností portálu viz. tento dřívější článek. Pokud ponecháme stranou personalizaci obsahu za běhu a podporu formálních norem (portletový kontejner či framework pro psaní portletů dle JSR 168 či JSR 286), je možné řadu cílů (např. "spojení lidí, informací a procesů") dosáhnout i jen za pomocí ADF, či jiného podobného frameworku.

Otázkou však je, jak moc je to efektivní. WebCenter Framework samozřejmě přináší další hotové komponenty určené právě pro portálové aplikace. Jeho síla se pak projeví zejména, když se využijí další produkty suite WebCenter Portal, nebo (teoreticky) produkty podobného zaměření třetích stran (např. BPM procesy mohou běžet i na jiném produktu, než je BPEL PM obsažený ve suitě; podmínkou je užití normy BPEL pro procesy). Jedním takovým příkladem budiž Content Presenter, který umí v portálovém prostředí zobrazovat dokumenty uložené v UCM (k dnešnímu dni, pokud je mi známo, to mohou být HTML dokumenty či obrázky, nikoliv "nativní dokumenty" a jejich PDF konverze).

Jinak, WebCenter Framework je postaven nad ADF a budete-li aplikace psát (druhou možností je konfigurovat hotovou aplikaci WebCenter Spaces), bez znalosti ADF se určitě neobejdete.

Wednesday 21 September 2011

Anotace - jak okomentovat dokumenty, které nelze editovat

Při revizi "officovských" dokumentů se často využívá funkce sledování změn (Track Changes), která umožňuje při posílání mezi různými účastníky procesu sledovat, kdo má k jaké části jakí připomínky.

Co však dělat, když je předmětem revize dokument, který se edituje obtížně (PDF), či nejde editovat vůbec (TIFF ze skeneru nebo dokonce zvukový záznam)?

Touto otázkou se zabývají anotace, resp. přesněji anotace v kontextu - resp. anotace v kontextu, protože stejně tak lze vytvořit anotace mimo kontext (př. "Na stránce 5, řádce 16, změňte font na Times, 16pt.").

Kontextové anotace mají tu výhodu, že ukazují, často ve WYSIWYG podobě, na co přesně připomínka reaguje. Navíc nejsou součástí dokumentu - nehrozí tedy, že je omylem pošlete s finální verzí, je možné je dále škálovat (kdo má kterou vidět apod.)

Už poměrně dávno vyšel na tomto blogu článek o AutoVue.

Dnes má Oracle v portfoliu už dvě další technologie, které jsou schopny téhož. Jedna se jmenuje WebCenter Imaging (dříve Imaging and Process Management). Druhá zatím oficiální název nemá - do konce srpna byla známa pod jménem OnTrack.

Imaging pracuje, jak název napovídá, především s naskenovaným obsahem. Anotace umožňují vytvořit textovou poznámku, či highlighting, popř. "sticky notes" (žluté nálepky). Další funkcí je pak možnost vytvoření výstupu (TIFF), který obsahuje anotace viditelné pro daného uživatele.

OnTrack je produkt, který byl uvolněn teprve letos. Jeho schopnosti anotací jdou ještě dál - umí dokonce anotovat i multimediální obsah (zvukový záznam konferenčního hovoru). Tomuto produktu se v blízké budoucnosti určitě ještě budeme věnovat detailněji.

Wednesday 7 September 2011

Změny v ceníku v oblasti WebCenter

Se začátkem nového školního roku se do ceníku začaly promítat první změny související se zavedením marketingové značky WebCenter a akvizicí FatWire (viz dřívější články na tomto blogu).

Asi největší novinkou je vyjasnění, za jakých podmínek budou nabízeny produkty FatWire (jejich přehled najdete zde). V podstatě jsou nabízeny v souhrnné suitě, pod názvem WebCenter Sites. Jedinými produkty, které se nadále prodávají odděleně, jsou WebCenter Sites Satellite Server, což je řešení pro cachování stránek, které je možné dokoupit jako option pro podporu výkonu, a WebCenter Sites Mobility Server pro možnost provozování stránek i na mobilních zařízeních typu iPhone.

Další novou položkou je super suite WebCenter Suite Plus, která (dnes) obsahuje v podstatě kompletní portfolio (WebCenter, ECM Suite, FatWire).

Zajímavé je ale sledovat i to, co ubylo. Produkty pro sociální sítě zatím v přehledu spíše chybí - prý se očekává jejich představení na Oracle Open World. Kromě nich však v přehledu chybí i Oracle UCM (jedinou licencí, která jej obsahuje, je WebCenter Content, což je obsahově licence shodná s dřívější ECM Suite), Oracle UCM Standard Edition, Oracle URM, WebCenter Services a WebLogic Portal. Osobně jsem zvědav, zda se na tomto stavu do budoucna něco změní.

Wednesday 31 August 2011

Webcenter: zaměřeno na Resource Catalog


Resource Catalog (katalog zdrojů) nabízí konsolidovaný pohled na jinak odlišné zdroje informací (databáze, web services, MDS repository).

Jak je vidět z obrázku, je možné jej užívat jak prostřednictvím aplikací, tak z prostředí vývojového IDE JDeveloper (při tvorbě WebCenter aplikací).

Při užití v JDev je pak možné katalog užít dvěma způsoby:
  • při návrhu aplikací
  • za běhu aplikací (tento způsob je shodný s užitím z aplikací - Oracle Composer, viz starší článek na toto téma)
Při návrhu se zdroje z katalogu objevují v paletě nástrojů (podobně jako jiné zdroje z palet frameworku ADF). Při využití za běhu je třeba mít na paměti, že se změny ukládají do MDS repository, která není součástí vyvíjené aplikace - při vývoji WebCenter aplikací se proto doporučuje mít zapnutu volbu, aby se při spuštění aplikace vždy MDS vyprázdnila, aby pak po přesunutí na jiný server nedošlo ke, zdánlivě neočekávané, ztrátě nastavení.

Od verze PS 3 je možné vytvářet i uživatelské katalogy a migrovat katalogy z jednoho serveru na druhý. Uživatelský katalog může pro danou aplikaci či space předefinovat, které zdroje se budou uživatelům nabízet.

Wednesday 24 August 2011

Práce s číselníky, definice vazeb mezi metadaty

Pokud chceme v UCM (WebCenter Content) pracovat s číselníky, tj. omezenými seznamy, ze kterých se vybírá hodnota příslušného metadatového pole, máme několik možností.

Option List
Je-li hodnot jen několik a jsou-li v podstatě neměnné povahy, je možné využít tzv. Option Lists. Jak napovídá název, jedná se o objekt, který v sobě má na jednotlivých řádcích uvedeny hodnoty. Option List je možné vytvořit v Configuration Manageru.

Tree
Speciálním případem Option Listu je tzv. tree, strom, který umožní hodnoty v seznamu seřadit hierarchicky. Na dané úrovni jsou vždy vidět jen předci, přímí sourozenci a přímí potomci daného uzlu (seznam může být přehlednější).

Custom Tables, Views
V případě, že je třeba hodnoty v čase periodicky aktualizovat, je lepší použít tabulky a pohledy (views). Pokud se v Configuration Manageru vytvoří tabulka, znamená to fakticky, že se vytvoří nová tabulka v datovém modelu aplikace a přidá se její záznam mezi tabulky, které je možné v rámci definice metadat využívat.
Pohled umožňuje z tabulky vybrat některá data (sloupce i řádky). Na rozdíl od zvyklostí z databáze, obsahuje pohled, nikoliv tabulka, volbu Edit Values (Změň hodnoty), která umožní měnit hodnoty v tabulce uložené. Dalším důležitým polem je Visible Column, kterým umožní z pohledu vybrat jeden sloupec, jehož hodnoty je pak možné asociovat s vybraným metadatovým polem.

Představme si následující příklad:

Vytvoříme tedy 2 tabulky (Dodavatel, Dodavatel_detail) s příslušnými sloupci. Dále vytvoříme 3 pohledy (jeden nad tabulkou Dodavatel s viditelným sloupcem supplier_name a dva nad tabulkou Dodavatel_detail se sloupci country resp. city).

Pokud jsme tak ještě neučinili, vytvoříme příslušná metadatová pole. Dále pak můžeme asociovat pole s příslušným pohledem (v rámci Add/Edit Metadata Field vybereme Enable Option List a v rámci dalšího dialogu pak příslušný view).

Pokud bychom ponechali konfiguraci v tomto stavu, zobrazovaly by se pro country a city všechny 4 hodnoty z tabulky Dodavatel_detail.

Žádoucí je však, aby se nejprve vybral dodavatel (dle jména) a v detailních hodnotách se pak vybíralo jen mezi hodnotami příslušným tomuto dodavateli.

Relationship
Aby toto bylo možné, je třeba nejprve vytvořit další objekt, tzv. relationship (vztah). V řeči databáze se jedná o odkaz pomocí cizího klíče - opět v Configuration Manageru vytvoříme vztah mezi našimi dvěma tabulkami a sloupcem supplier_id jako cizím klíčem.

Relationship je pak třeba ještě použít v definici závislých metadatových položek (zaškrtne se Dependent Field a pak vybere Depends on Field - supplier_name při využití právě vytvořeného relationship)

Dvě upozornění:
  • pokud smažete tabulku vytvořenou v Configuration Manageru, zmizí ze seznamu, ale nebude odstraněna z databáze (musí se smazat administrátorskými prostředky databáze)
  • pokud v rámci definice tabulky nevyberete primární klíč, bude se automaticky brát jako primární klíč první sloupec

Wednesday 10 August 2011

Webcenter: zaměřeno na Business Mashup

Jakkoli využití termínu mashup není úplně nepřesné, mnohem trefnější nazvání pro to, co business mashupy dělají, by bylo implementace patternu Model-View-Controller, přičemž hlavním přínosem části dodané Web Centerem oproti témuž v "prostém" ADF je možnost změn v runtime režimu.

Vrstvu Model bude měnit administrátor. Zde se nejčastěji využívá SQL pro získání dat z databáze (Pozor! Webcenter využívá databázová spojení definovaná na úrovni Weblogic Serveru - pro jejich vytvoření je tedy třeba spolupracovat i s administrátorem WLS), nebo web services.

Vrstvu View mění uživatel, popř. power-user pro celou skupinu. Jejím úkolem, jak napovídá anglický termín, je zobrazit data v požadované formě uživateli. Uživatel si může vybrat z řady vizuálních komponent (jedná se o ADF Visualization Components), které jsou standardně dodávány - typicky, tabulkové přehledy, grafy apod, popř. z custom komponent vytvořených vývojáři na míru.

Business Mashups jsou mashupy v tom smyslu, že na jedné stránce umožní zobrazit data z více zdrojů. Každý z nich však pracuje s jedním zdrojem.

Wednesday 27 July 2011

eGovernment 2.0

V jednom příspěvku na české Web 2.0 skupině na LinkedIn si kdysi kdosi postěžoval, že o Web 2.0 spousta lidí mluví, ale nikdo nepoužívá. Zkusme se nyní podívat na jeden site, kde by se tyto technologie užívat mohly a k čemu by to vedlo.

Ten site se jmenuje Portál Veřejné Správy České Republiky. Není asi jeho chybou, že na české wikipedii byl pod tímto heslem dlouho obsah související s kauzou Vladimíra Mlynáře (viz též zde).

Jak portál funguje? V zásadě se jedná o rozcestník informací o tzv. životních situacích (např. chci nový občanský průkaz), kdy se dostává stát a občan do vzájemné interakce. Portál má (zřejmě) na pozadí i redakční systém, kdy příslušné sekce smí aktualizovat jen příslušný orgán státní správy.

V čem jsou rezervy? Především, portál je neadresný - při výměně občanky se dozvím, co musí ze zákona udělat všichni, ale už ne kam a kdy mám jít (např. na základě adresy v mém uživatelském profilu), neřku-li, má-li daný úřad nějaké svoje specifika (není asi tajemstvím, že stejný úkon na různých úřadech může mít různý průběh).

Tím, že redakce probíhá výhradně centralizovaně, tvoří se klasické úzké hrdlo - některé úřady jsou aktivní, jiné to berou spíš jako svoji nevítanou povinnost. Navíc, místní úřady ani nemají možnost do procesu vstupovat (pokud by nějaký osvícený starosta nebo vedoucí úřadu chtěl např. umístit na stránky elektronický formulář, abych pro něj nemusel na úřad, nemá možnost).

Z klasických 2.0 vlastností bych uvítal možnost diskuzí - občan by měl možnost vyjádřit názor (vůči úřadu) nebo dát doporučení (vůči dalším užvatelům). Zajímavé by mohly být zejména názory odborné veřejnosti. Pro vyhledávání bych určitě uvítal tagging - portál má sice vyhledávání, ale opět definované shůry, tagging by umožnil upravit vyhledávání dle preference uživatelů.

Poslední oblastí, která by určitě stála za zlepšení, je lokalizace do cizích jazyků. Portál sice nabízí verzi v angličtině, tzv. pro cizince, informací je tam však výrazně méně než v české verzi. Asi není možné chtít po státu, aby sám obstaral překlady do cizích jazyků - zde by však mohl být prostor pro krajanská sdružení. Myslím, že pro řadu cizinců by bylo lepší mít státem neautorizovaný překlad, než státem autorizovanou verzi v češtině.

Toto jsou příklady, které se jistě dají aplikovat na řadu dalších portálů, a to nejen ve státní správě.

Wednesday 20 July 2011

My jsme všichni WebCenter

Minulý týden jsem se účastnil školení na téma WebCenter PS3. Na toto téma jsme si už na blogu psali dříve. Co mě přišlo jako zajímavý údaj, který trochu souvisí i s minulým článkem, tj. akvizicí FatWire, je změna značky celého portfolia v oblasti (dříve) E2.0.


Abych parafrázoval hlášku z oblíbené české komedie Čtyři vraždy stačí, drahoušku, odteď už platí: my jsme všichni WebCenter. Např. UCM se od nynějška bude jmenovat WebCenter Content.

Proč dochází k této změně? Jeden důvod je marketingový - WebCenter představuje značku, pod kterou bude Oracle nabízet všechna řešení na správu elektronického obsahu, budování portálových aplikací, webových stránek, či týmovou spolupráci.

Druhý, méně viditelný, ale o to důležitější důvod je vnitřní restrukturalizace vývojářských týmů, které nyní budou podláhat jednomu vedení, tudíž bude minimalizována šance, že by se některé věci dělaly dvakrát či vícekrát.

Pokud tak nedojde do zveřejnění tohoto článku, měl by se v nejbližší době upravit i ceník. Uvidíme, zda změna názvu bude jedinou, či zda dojde i k jiným změnám.

Wednesday 6 July 2011

Připojení IRM Desktop na IRM 11g

Poslední dobou se několik odvážlivů pokusilo na vlastní pěst zprovoznit demo na IRM 11g. Protože ne všechny potřebné kroky jsou úplně intuitivní, pokusme si v dnešním článku sepsat vše popořádku.

Předpoklad: stále platí, že na klientském počítači musí být nainstalovány Microsoft Internet Explorer (prozatím ve verzi 7 nebo 8) a klientská aplikace IRM Desktop

Krok 1 - konfigurace serveru: tato část se oproti 10g příliš nezměnila. Jediné, na co je třeba si dát pozor, je, že IRM Desktop aplikace vždy po úspěšném spojení se serverem 'přeloží' IP adresu na jméno web serveru, proto je vždy třeba mít dostup k DNS serveru, který zná jméno, nebo si jej explicitně přidat do souboru host na Windows (to se bude týkat zejména situací, kdy server provozujete lokálně ve virtuálním image, tj. při demonstracích)

Krok 2 - instalace certifikátu: IRM 11g je J2EE aplikace provozovaná na Weblogic serveru. Aby nebylo možné odposlouchávat komunikaci se serverem, využívá se protokol HTTPS. Při instalaci serveru je tedy, kromě jiného, potřeba nainstalovat i certifikát pro HTTPS komunikaci. Pokud se objeví tento dialog:


je třeba certifikát nainstalovat (pro testovací účely mezi Trusted Root). Je na Vašem administrátorovi, aby server používal ověřený certifikát.

Krok 3 - deaktivace proxy (v IE): posledním nutným krokem je deaktivace proxy při komunikaci s IRM serverem, pokud je IRM před proxy nebo dokonce na lokálním virtuálním image.

Pokud se přes tyto kroky dostanete, zadejte adresu https://irm_server_URL/irm_desktop do Internet Exploreru. Na zobrazené stránce by se měla objevit záložka Test a v ní obrázek zlatých rybiček.

Ještě jeden tip: v IRM Desktop, na záložce Update Rights najdete volbu Check in. Ta umí odstranit data přihlášeného uživatele (pokud v rámci demonstrace chcete ukazovat práci více uživatelů z jednoho počítače).

Wednesday 29 June 2011

Oracle zakoupil FatWire

Minulý týden se objevila zpráva, že Oracle zakoupil firmu FatWire. Pro vás, kteří tuto firmu neznáte, FatWire dodává řešení v oblasti Web Content (resp. Web Experience) Management. Z tohoto pohledu bude tedy zajímavé sledovat, jak se do budoucna bude vyvíjet produktové portfolio v této oblasti.

Jak rozumět akvizici?
Hlavními důvody pro nákup, aspoň dle komentářů na nezávislých serverech, se zdají být:
  1. korelace s předchozí akvizicí produktu ATG (platforma pro eCommerce) - řada zákazníků ATG již vlastnila i FatWire, zejména pro podporu kampaní přes web
  2. zvýšení market presence v některých segmentech
  3. zkušenosti s provozováním řešení v public cloudu
FatWire bude prozatím fungovat jako nezávislá firma - dokončení akvizice se očekává v průběhu roku 2011. Uvidímě, jak se bude situace dále vyvíjet.

Wednesday 22 June 2011

Java Filter Events - událostmi řízené programování v UCM

V návaznosti na minulý článek se dnes zaměříme na poněkud vyšší školu programování v souvislosti s Oracle UCM - změny chování Java Custom komponent. Jednou z možností je samozřejmě přepis služeb (ať už voláním jiných metod, či změnou kódu volaných standardních metod). Existuje však ještě jiný způsob - využití standardních událostí a dopsání reakce na ně.

Např. extraBeforeCacheLoadInit je událost, která se vyvolá poté, co je z UCM navázáno spojení do databáze, ale před tím, než se data z databáze přenesou do cache. Z tohoto titulu se hodí pro propagaci změn do datového modelu (např. přidání nové tabulky či sloupce z javovské komponenty).

Třída, jejíž metody se tímto způsobem mohou zavolat musí implementovat interface intradoc.shared.FilterImplementor, tj. mít metodu doFilter, která se zavolá.

Výhoda filtrů oproti přepsání je zřejmá - jsou volány v okamžiku, kdy aplikace "předpokládá", že do běhu bude zasahováno - nemění se tedy standardní kód, jako spíše doplňuje, což může výrazně zjednodušit údržbu celé komponenty. Navíc je možné filtry za sebou řetězit.

Pro nasazení je tedy důležité především umět vybrat správnou událost, na kterou se filter "pověsí". Bohužel se mi nikde ve standardní dokumentaci nepodařilo najít jejich popis (celkem jich je ke dvěma stům) - nejlepším zdrojem proto asi bude stále kniha B. Huffa, kapitola Appendix H.

Tip dne: zadejte termín extraBeforeCacheLoadInit do Google. Kdo bude mít trpělivost, možná najde poklad.

Wednesday 15 June 2011

Pár zásad pro psaní UCM komponent

I při psaní komponent pro Oracle UCM je třeba dodržovat základní návyky z programování.

Zásada 1: pište kód na urovni, na kterou patří
Komponenty UCM mají v podstatě několik logických úrovní:
- HTML - v případě, že budete modifikovat GUI, začnete nejspíše na úrovni HTML. Na této úrovni je možné měnit statický obsah stránek nebo jejich layout (pro změnu layoutu se nejčastěji používá HTML tag TABLE).
- IDOCSCRIPT - je pokračováním úrovně HTML. Na úrovni GUI dodává do komponent dynamický charakter - na místo pevných textů umožňuje do layoutu stránky vyplnit proměnlivý text, jako je třeba název položky. IDOCSCRIPT také užívejte, pokud chcete přistupovat ze stránky k datům či službám UCM. IDOCSCRIPT je samozřejmě možné využít nejen pro změny GUI, ale i na dalších místech - např. custom události nativních workflows či podmínky pro aktivaci pravidla (rules) v rámci zobrazovacích profilů jsou také psány v tomto jazyce.
- JavaScript, VBScript - jedná se o jinou úroveň dynamiky - o změnu stránky či jinou činnost (např. validaci, že zadaný obsah je číslo nebo datum), aniž by bylo nutné kontaktovat server.
- SQL - databáze se využívá pro perzistentní uložení dat - minimálně metadat, volitelně též obsahu či pomocných proměnných.
- Java - metody javovských tříd mohou být volány z definice služeb UCM. Proto se využívají pro back-end logiku. Javadoc (bohužel neúplný) najdete v balíčku HowToComponents(v adresáři Documentation)

Zásada 2: používejte komentáře
IDOCSCRIPT není objektový jazyk - není schopen polymorfismu, je však schopen přetížení - jedním ze základních konstruktů jazyka jsou tzv. includes, což jsou v podstatě ekvivalenty procedur a funkcí ze strukturovaného programování. Při definici metody se každému zdroji, který obsahuje includes, přiřazuje parametr loadOrder, který rozhoduje, jaký kód bude při zavolání includes nakonec proveden (vítězí "vyšší" loadOrder). Jazyk ještě obsahuje konstrukt super, který umožňuje (zpravidla v rámci nového include) volání kódu přetíženého include - velmi efektivně jej můžete využít, pokud nový kód něco "předřazuje" nebo naopak "doplňuje za" starý kód. Přesto si myslím, že častěji budete prostě "přepisovat" kód, přičemž původní kód bude sloužit jako základní verze. A protože nemůžete vyloučit možnost, že se někdy v budoucnu tento základní změní (Oracle vydá patch nebo novou verzi), je vhodné psát váš kód tak, aby bylo zřejmé, co jsou vaše změny a co je původní.
Komentáře v IDOCSCRIPTu se vkládájí mezi [[% a %]].
V rámci komponenty je pak slušnost napsat a aktualizovat readme (txt nebo html).

Zásada 3: využívejte jména zdrojů, includes, proměnných pro větší čitelnost a srozumitelnost kódu

Wednesday 8 June 2011

DB Options - vylepšení celého řešení na úrovni databázové vrstvy, část 2.

Dnes dokončíme přehled options a další vlastnosti databáze, které mohou pomoci při práci s dokumenty.

SecureFiles jsou vlastností databáze 11g pro práci s nestrukturovaným obsahem ("dokumenty"). Při jejich užití je možné uložené dokumenty: deduplikovat (v případě vkládání stejného dokumentu se ukládá jen jednou), komprimovat a šifrovat (na rozdíl od Security Option se šifrují jen samotné dokumenty).

Oracle Text dokáže vytvářet fulltextové indexy. Pro jeho využití není nezbytné, aby se dokument ukládal do databáze (indexace probíhá proti souboru na disku). Při jeho využití není potřeba dokupovat index servery třetích stran (v dřívějších verzích Stellent spolupracoval s nástrojem Verity).

Oracle Data Guard je řešení pro synchronizaci mezi primární a záložní lokalitou. V případě ukládání dokumentů do databáze je možné dokumenty i metadata synchronizovat čistě touto technologií. Co zatím není možné, je využít option Active Data Guard, který dokáže záložní lokalitu využívat pro read-only dotazy. V současném nasazení je možné záložní lokalitu využít pro testovací či školicí prostředí (využívá "volný" výkon zbylý po synchronizaci).

Advanced Compression option umožňuje zmenšit obsah, který zabírají na disku - opět se vztahuje jak na dokumenty, tak na metadata. Její využití na dokumenty závisí do značné míry na ukládaném obsahu (MS Office dokumenty se komprimují dobře, PDF už mnoho neušetří), komprimace metadat může mít vliv při opravdu velkých projektech (desítky miliónů záznamů a více). Při těchto objemech už může být zajímavé i nasazení Hybrid Columnar Compression, která je k dispozici v Exadatě.

Co říci závěrem?
Databáze je jednou z vrstev ECM řešení a zejména u velkých řešení je dobré se zamyslet na celkovou architekturou a požadavky a nastavit využití databáze dle potřeb. Jedno ideální řešení určitě neexistuje, ale vždy je možné najít optimum pro konkrétní danou situaci.

Wednesday 1 June 2011

DB Options - vylepšení celého řešení na úrovni databázové vrstvy, část 1.

V návaznosti na článek z minulého týdne, kdy jsme se dotkli tématu databázových options, pojďme si udělat kompletní přehled, které z nich a jiných vlastností databáze Oracle mohou a jakým způsobem přispět k celkovému řešení pro správu dokumentů.

Real Application Clusters (RAC): jedná se o option, který má na starosti škálování (při přidání dalšího databázového uzlu-serveru se výkony všech sčítají) a vysokou dostupnost (při výpadku jednoho uzlu-serveru běží řešení na zbývajících) na úrovni databáze. Její funkce je transparentní pro běh podporovaných aplikací.

Partitioning: partitioning dokáže rozdělit velké tabulky na několik částí (partitions). Tato vlastnost může mít pozitivní vliv na výkon (běží-li dotaz v rámci jediné nebo několika partitions, může běžet rychleji). Z pohledu řešení UCM je však mnohem důležitější, že při využití další vlastnosti databáze, Automatic Storage Management, mohou být jednotlivé partitions uloženy na různých fyzických médiích, což může vést k výrazným úsporám na úložném prostoru. Další využití partitioningu může být při backupu či obnově ze zálohy - při vhodném návrhu kritérií partitioningu je možné urychlit backup (mění se jen 'nejnovější' partitions), či spustit řešení nad ne zcela obnovenou databází (např. se obnoví jen data za poslední měsíc či rok, které jsou pro uživatele nejdůležitější a starší budou do systému dodávány teprve postupně). Zde už je třeba trochu znát, jaký je datový model. V zásadě ale platí, že dokumenty (tabulka FileStorage) či historické záznamy (SCTAccessLog či např. WorkflowHistory) je možné partitionovat hierarchicky, naopak metadata (např. Revisions) je sice možné partitionovat, při obnově však musí být tabulka obnovena celá.

U některých projektů (zejména v oblasti Records Managementu) se někdy zavádí koncept 'životně důležitých dokumentů', kdy jsou takto označené dokumenty obnoveny prioritně - kritérium pro partitioning je tedy řízeno metadaty.

V zásadě platí, že přesáhne-li velikost databáze 1 TB, nejspíš byste měli partitioning v architektuře využít.

Advanced Security (ASO), Database Vault, Label Security: jak napovídá název, tyto options jsou zaměřeny na zabezpečení - v tomto případě se jedná o zabezpečení před útoky "zevnitř" (ze strany administrátorů). ASO umožňuje zašifrování citlivých údajů - ať už ve metadatech, nebo především pak vložené dokumenty, a to buď přímo v databázi, nebo i v dalších užití - v backupech, při posílání po síti apod. Ostatní dvě technologie pak mohou zajistit, že ani administrátor databáze nebude mít možnost dané nastavení měnit - jeho oprávnění budou dána nastavením v systému pro správu identit.

Nasazení těchto komponent je na místě, pokud systém bude spravovat citlivá data. Víceúrovňová správa přístupu pak může být zajímavá i pro hostovaná řešení (správce prostředí se bude starat o chod prostředí, nebude mít však žádný přístup ke spravovaným datům).

(pokračování někdy příště)

Wednesday 25 May 2011

Ukládat, či neukládat (dokumenty do databáze)

Nedávno jsem byl svědkem dvou, poměrně vášnivých, diskuzí na téma zda ukládat dokumenty do databáze, či nikoliv. Osobně se nekloním ani na jednu stranu. Trefně to však vystihl kolega, který prohlásil, že každý preferuje to, co zná. Pojďme se však podívat na věc pokud možno objektivně.

Rychlost (zejména vkládání dokumentu)
Častým argumentem odpůrců vkládání je tvrzení, že vkládání dokumentu na databáze trvá výrazně déle než vkládání na filesystem. Toto (minimálně pro databáze Oracle) byla pravda někdy, dnes již dost dávno. Obecně trvá vkládání do databáze o něco déle, rozdíl je však v jednotkách procent. A pro některé speciální případy (vkládání mnoha krátkých souborů najednou) dokáže být databáze dokonce rychlejší. Stejně tak může být rychlejší, pokud je systém synchronizován (např. z důvodů disaster recovery - databáze synchronizuje celý commit, filesystem každou změnu).

Komprese, deduplikace, šifrování dokumentů
Argumentem zastánců databáze naopak bývá možnost využití databázových options, a to zejména na kompresi vkládaných dokumentů (zmenšení obsahu na disku), deduplikaci (vkládá-li se stejný soubor vícekrát, je uložen fyzicky jen jednou a z dalších míst existuje odkaz) a zašifrování (ani pro db administrátora nebude soubor čitelný, pokud si jej vyhledá prostředky databáze).
Předně, tyto options často bývají k dispozici i na úrovni filesystému (zpravidla taktéž za příplatek). Navíc, jejich přínos je velmi závislý na tom, co se bude do úložiště ukládat (dokumenty MS Office se budou komprimovat dobře, PDF, TIFF či JPEG formátům asi komprese moc neubere), či jak je projekt implementován (přílohy emailů po firmě by se neměly posílat jako soubory, ale jako odkazy do úložiště).

Synchronizace active a stand-by lokality
Podobně je na tom využití technologie DataGuard pro synchronizaci active a stand-by lokality u řešení v rámci disaster recovery. UCM bohužel "odkládá" některá provozní data na filesystem (z těch nejznámějších: stavy položek ve workflows), a tak je podporována jen instalace, kde je synchronizována databáze i filesystem.

Fulltext indexace
Databáze umí (kromě engines třetí strany) indexovat soubory pro fulltextové vyhledávání. Pro využití této vlastnosti však není nezbytně nutné, aby zdrojové soubory byly uloženy v databázi (v databázi je v každém případě výsledný index).

Jednotná správa
Pokud nebudete implementovat model OAIS, který vyžaduje, aby i v případě ukládání dat na "otevřenou platformu" byla data i metadata u sebe, dá se očekávat, že při ukládání na filesystem budou metadata v databázi, tj. při případné ztrátě či chybě, která oba celky od sebe rozpojí, budete mít problémy spojit, co k sobě patří (po pravdě řečeno, i s metadaty rozházenými na disku to nebude o moc snazší). Toto je tedy argument pro databázi. Na druhou stranu, k jeho uplatnění dojde jen v opravdu krizových situacích a v případě správné politiky zálohování lze dopady minimalizovat.

Hierarchical Storage Management
To jest, ukládání starších dat s možnou delší vybavovací dobou na levnější fyzická úložiště lze dosáhnout jak prostředky databáze, tak filesystému - při využití partitioningu bude databáze pracovat s několika málo většími soubory, zatímco na filesystému bude základní jednotkou nejspíš jednotlivý soubor, což opět může být mírný agrument pro databázi.

V souhrnu je tedy vidět, že obě metody jsou srovnatelné s mírnou převahou pro ukládání v databázi. Při výběru metody je tedy třeba zvážit i to, na co jsou zvyklí administrátoři zákazníka či zda zákazník neinvestovat do jedné či druhé metody a očekává zhodnocení svých investic v rámci projektu.

Wednesday 18 May 2011

Přehled vlastností Oracle WebCenter Suite, část 5.

Při hledání informací do dnešního článku jsem našel přehled vlastností WebCentra vytvořený jedním z product managerů. Je k nahlédnutí zde (a pokračování na stránkách přes link v záhlaví hlavního dokumentu).

To, co nám ještě zbylo, jsou vlastnosti schované pod hlavičkou WebCenter Anywhere, což jsou služby, které slouží k propojení WebCentra s "jinými zdroji podobného charakteru" v organizaci.

Pagelet Producer (dřívě též Ensemble)
V předminulém článku jsme psali o portletech. Co když ale má zákazník řešení, které se do portálových technologií transformovat nedá (nebo jen za cenu úplného přepsání) - např. v ČR populární řešení psaná v PHP? Pro tyto zákazníky by mohl být řešením Pagelet Producer.
Ten totiž umí vytvořit pagelet, což je kus html kódu, který je pomocí jednoduchého javascriptu možné přidat do jakékoliv stránky. A protože je jedna ukázka mnohem lepší než tisíc slov, podívejte se na to lépe sami - v ukázce vytvoří jednoduchá ADF aplikace a pak se pomocí (v té době ještě) Ensemble přidá do iGoogle gadgets.

WSRP Producer for .NET
(dříve též .NET Accelerator)
Z podobného světa je WSRP Producer for .NET. Ten, jednoduše řečeno, umožňuje vyvíjet v .NETu (včetně vývojového IDE Visual Studio); výsledný kód je však možné provozovat v prostředí WebCenter.
Výhodou tohoto přístupu je, že organizace zvyklá vyvíjet v .NETu může využívat další vlastnosti a služby WebCenter Suite, aniž by musela měnit vývojovou platformu.
I pro tuto vlastnost máme k dispozici ukázku.

Business Mashup
I k tomuto tématu existuje ukázka. Business Mashups jsou technologií, která umožňuje využít data z aplikací a prezentovat je v uživatelsky přívětivé formě na portálu. Skládají se ze dvou technologií, tzv. Data Controls, které definují datový zdroj, a Mashups či Taskflows, které definují, jak se bude obsah zobrazovat. Samozřejmě, při zobrazení je možné využít více zdrojů a "promixovat" tak různá data do jednoho výstupu. Navíc toto je možné vše vytvářet za běhu (byť definici data controls stejně většinou provádí vývojář).

WebCenter Analytics
Na rozdíl od předchozích vlastností jsou Analytics určeny hlavně k tomu, aby umožňovaly sledovat nejrůznější statistiky (nejčastěji sledovanost či dobu odezvy), které mohou být nezbytnou částí k dosažení úspěšnosti řešení.

REST API
Poslední vlastností z balíku Anywhere je REST API. To zajišťuje přístup k funkcím velmi efektivním způsobem. Jeho ukázkou je pak aplikace pro iPhone dodávaná přímo Oraclem, ale i pro další zařízení (např. Blackberry) dodávané partnery.

Tímto jsme uzavřeli představování vlastností WebCenter. Suite samozřejmě obsahuje i některé další produkty (UCM, SES), které jsou nutnou součástí pro některé specifické úlohy, a jiné (Weblogic Portal, Aqualogic Interaction), které jsou ve suitě pro zákazníky, kteří již mají tento produkt zakoupený, chtějí jej ještě nějakou dobu provozovat, ale licenčně již chtějí přejít na WebCenter.

Wednesday 11 May 2011

Přehled vlastností Oracle WebCenter Suite, část 4.

V dnešním článku se zaměříme na téma, které obvykle posluchače napadne, když slyší o "2.0" tématech - social computing (všimněte si, že až doposud jsme se tomuto tématu věnovali jen okrajově).

WebCenter obsahuje řadu služeb provozovaných v prostředí portálu (samy služby, jak jsme si uvedli minule, jsou často portlety). Pokud zákazníka zajímá výhradně rozšíření možností již existujícího portálu o tyto služby, je možné místo WebCenter Suite pořídit jen produkt zvaný WebCenter Services, který právě tyto služby obsahuje.

Přehled služeb:
  • Wiki & Blog: od PS3 se ukládají članky na Wiki a příspěvky do blogů jako dokumenty (html) v UCM. Byl změněn i front-end (WYSIWYG editor).
  • Diskuze: (též miniblogs) - krátké příspěvky, zpravidla k danému hlavnímu tématu
  • Oznámení (Announcements) - podobná diskuzím - krátké příspěvky; na rozdíl od diskuzních příspěvků však mohou obsahovat datum a čas (např. do kdy jsou aktuální či do kdy je potřeba přečíst)
  • Tagy (štítky) - krátké, zpravidla uživatelem či autorem definované, označení subjektu; obdoba klíčových slov, pomáhají při vyhledávání
  • Odkazy (Links) - propojení mezi dvěma libovolnými subjekty (diskuzní příspěvek - oznámení, uživatel - dokument apod.), které usnadňuje dohledání souvislostí
  • Hlasování - 'Líbí'/'Nelíbí'
  • Ankety - volba otázek, časování-cílení ankety, vyhodnocení výsledků
  • Sociální sítě (Activity Stream, Activity Graph) - sledování dění v sociální síti (co, kdo, kdy)
  • Osobní profil - stránka s nastavením osobních údajů; ty je pak možné využít jako vstup i do aplikací (např. preferovaný jazyk, 'Mám zájem o:', apod.)
  • RSS - publikace z často měněných zdroje na internetu (např. titulky novin)
Kromě těchto služeb obsahuje WebCenter i rozhraní na další často využívané služby:
  • Mail
  • Poznámky (notes)
  • Kalendář
  • Workflow worklist

Wednesday 4 May 2011

Přehled vlastností Oracle WebCenter Suite, část 3.

Práce s portlety

Od patch setu 3 (PS 3) podporuje WebCenter plně standardy JSR 286 a WSRP 2.0 (normy JSR 168 a WSRP 1.0 byly podporovány již dříve). Portlety je možné vytvářet i konzumovat.
V případě konzumace portletů třetích stran - je možné využívat i vzdálené portlety, viz podpora WSRP - je vzájemné propojení (wiring) těchto portletů do prakticky automatické - portlety přebírají kontext, pouze při výměně událostí je třeba někdy specifikovat zdroj a cíl (což je možné při designu v prostředí JDeveloper, nebo za běhu pomocí Oracle Composer).
Kromě výše zmíněných podporuje WebCenter i standardy JSR 301, JSR 329 (JSF Portlet Bridge for Portlet 1.0 resp. 2.0 Apps).
K portletům na závěr ještě jednu poznámku: většina standardních Web 2.0 služeb (Oznámení, Tagging, Profily, Worklisty ad.) jsou fakticky implementovány jako portlety.

WebCenter Spaces
Spaces jsou hotová portálová aplikace, která je zaměřena na dva scénáře:
  • vývojový projekt
  • zájmové komunity
(třetím scénářem je pak 'generický scénář', který je možné 'naklikat' do žádané podoby - nevyžaduje však nutně žádný vývoj).
Jako takové nabízejí Spaces všechny výhody portálové aplikace, jak jsme si je uvedli v minulém článku. Oproti dřívějším verzím se od PS 3 jedná zejména o:
  • hierarchii stránek spaces vč. navigace
  • delegovanou administraci a
  • zabezpečení na úrovni položky (souboru)
V podstatě se jedná o zjemnění úrovně již dříve přístupných funkcí.

Wednesday 27 April 2011

Přehled vlastností Oracle WebCenter Suite, část 2.

V dnešním článku se konečně dostaneme k detailům. Konkrétně výstavbě portálů či aplikací s prvky portálu.
  • Tvorba a úprava vzhledu stránek - stránku je možné vytvářet buď v IDE prostředí (JDeveloper aj.) nebo v runtime módu (této vlastnosti se říká Oracle Composer); přičemž v runtime módu je pak možné specifikovat role či skupiny uživatelů, kteří mohou obsah měnit předem definovaným způsobem. Při designu stránek je možné používat tyto komponenty:
    • šablony stránek, skins a navigace
    • tzv. resources - zdroji může být statický obsah (dokumenty, obrázky, videa - proto je součástí suity ECM úložiště), ale také výstupy či interface aplikací (portlety, vyvíjené aplikace, mashups apod.); portál sám obsahuje také řadu standardních resources, jako je náhled do mailové schránky, workflow task list apod.

  • Resource Manager - vzhledem k výše uvedenému je klíčovou komponentou pro dotváření konečného vzhledu zdrojů (a tedy i stránek a celého portálu) manažerská konzole, která umožňuje správci portálu rozhodnout které zdroje a kterým uživatelům dá k dispozici, stejně tak se ale využívá pro podporu iterativního vývoje zdrojů (tj. je možné "poslat zdroj zpět do vývoje").

  • Delegovaná administrace - umožňuje rozdělit administraci tak, aby za konkrétní části byly zodpovědní různí lidé - to odpovídá konceptu, že portál představuje tvář celé organizace, je dán jednotný branding, za svoji část jsou však zodpovědná jednotlivá oddělení

  • Zobrazení portletů - portál je schopen konzumovat portlety dle standardů JSR 168, JSR 286, WSRP 1.0, WSRP 2.0 a dokonce "portletizovat" zdroje, které neodpovídají žádné specifikaci WSRP (o tomto více v některém z přístích článků)

  • Analýzy (návštěvnosti apod.) - pro úspěšný provoz portálu je také nezbytné neustále sledovat, zda je portál navštěvován, popř. které stránky jsou oblíbené a o které naopak není zájem. Za tímto účelem je obsažen modul pro sledování událostí a tvorbu reportů (jedná se o původní modul AquaLogic Analytics, který byl převzat a patřičně upraven).

Wednesday 20 April 2011

Přehled vlastností Oracle WebCenter Suite, část 1.

Představme si nejprve high-level přehled, co všechno obsahuje WebCenter Suite:

1. moduly rodiny WebCenter
  • WebCenter Portal & WebCenter Framework - tento modul umožňuje
    • vytvářet portály (web aplikace s portálovými vlastnostmi, jak bylo uvedeno minule)
    • vytvářet portlety (funkční celky, Java aplikace odpovídající specifikaci JSR 168, resp. JSR 286, které je možné provozovat v portálových prostředí - i třetí strany)
  • WebCenter Spaces - hotová portálová aplikace, která ihned po nainstalování umožňuje provozovat portál pro účely zájmových komunit či project development stránky
  • WebCenter Services - hotové služby, které umožňují
    • Social Computing (WIKI, blogy, diskuze atp.)
    • integraci s ostatními aplikacemi v rámci organizace

2. ostatní aktuální produkty
  • omezená licence na Oracle UCM - omezení je specifikováno ve smyslu:
    • "správa dokumentů, WCM, DAM a dalších UCM komponent pro dodávání obsahu v rámci portálu či portálových aplikací" (tj. v podstatě vše kromě URM; URM adaptér je však součástí licence) - zdroj ESup.pdf
    • "veškeré interakce musí být prostřednictvím rozhraní WebCenter Suite, custom aplikace, Desktop integration nebo UCM GUI, včetně administrátorských úloh" (tj. do UCM by se nemělo přistupovat napřímo přes jeho services či API rozhraní) - zdroj FAQs

  • omezená licence na Secure Enterprise Search - omezení specifikováno ve smyslu prohledávání a indexace veškerého obsahu dodávaného v rámci portálu či portálových aplikací

  • omezená licence na BPEL Process Manager - omezení ve smyslu podpory workflows-procesů v rámci WebCenter
3. ostatní produkty, které byly z licenčních důvodů přidány do suite

  • AquaLogic Interaction
  • AquaLogic Interaction Collaboration
  • AquaLogic .NET Application Accelerator (též WSRP Producer for .NET - bude zmíněno v rámci WebCenter Services)
  • AquaLogic Interaction SharePoint Console
  • WebLogic Portal

Upozornění: součástí licence není licence na aplikační server!

Z přehledu je jasné, že WebCenter je opravdu suita modulů a produktů. Navíc, zmíněné moduly jsou opravdu high-level (v dalších článcích se na ně podíváme detailně). Síla WebCentra spočívá zejména v kompletnosti nabídky - toto je věta, která si určitě zaslouží vysvětlení.
Na druhé straně, produkt není postaven tak, aby bylo nezbytné implementovat všechny jeho vlastnosti, aby fungoval. Byť takovou položku v ceníku nemáme, umím si dobře představit někoho, kdo bude mít zájem např. jen o vytváření portletů. I pro takové zájemce určitě dokážeme najít řešení.

Wednesday 13 April 2011

WebCenter Suite - produkt Oracle pro portálová řešení

Po završení seriálu představujícím vlastnosti Oracle UCM, přejdeme volně na druhý klíčový produkt Oracle v oblasti E2.0 - WebCenter Suite. Přiznám se, že na rozdíl od UCM, kdy jsem v podstatě vycházel z materiálů již připravených v angličtině, protentokrát budu muset v mnohem větší míře zapojit vlastní invenci.

Jako úvod do problematiky bych však zopakoval, jak vůbec rozumět pojmu "portál", který se u nás využívá poměrně velmi volným způsobem.

Nejlepší definici na toto téma jsem našel na anglické wikipedii u pojmu Enterprise portal:
  • framework pro integraci informací, lidí a procesů napříč organizací (či dokonce i za jejími hranicemi),
  • poskytuje unifikovaný a zabezpečený přístup, často prostřednictvím tenkého klienta,
  • je určen pro agregaci a personalizaci informací
(agregací se zde míní zobrazování informací z různých zdrojů na jednom místě, často dokonce "promíchaných" mezi sebou - koncept mashup)

Pokud bychom se zaměřili na zvýrazněné body, hlavním úkolem portálu tedy je něco (informace) někomu (lidem) zobrazovat. A to ne jen tak samovolně, ale v rámci nějakého "procesu" - i když procesem někdy může být i ad hoc požadavek "potřebuji tuto informaci".
Pointou portálových řešení (oproti webovým aplikacím či websites) je to, že zdroje informací mohou být značné heterogenní (kromě dokumentů, obrázků a videí, které nalezneme na "běžných" websites, se může jednat o nejrůznější reporty, grafy, ale i např. výstupy z aplikací či dokonce o přístup k funkcionalitě těchto aplikací) a že portál sám o sobě (na rozdíl od webové aplikace) neobsahuje;resp. nemusí obsahovat, abychom byli přesní; ani business logiku, ani data potřebná pro zobrazení informace. Osobně pro toto používám termín integrace na prezentační úrovni.
Posledním bodem, u kterého se zastavíme, je důraz na uživatele. Portály velmi často zobrazují nejen personalizované (tj. upravené pro potřeby uživatele, a to uživatelem samým nebo někým jiným, kdo je k tomu oprávněn), ale i personální data - smlouvy, fotografie, platby, atp. Proto je velmi často nezbytnou součástí řešení i dostatečné zabezpečení, přičemž vzhledem k charakteru portálu se může jednat nejen o prevence prolomení zabezpečení, ale i ochrana proti útokům typu denial of service (DoS).

Wednesday 6 April 2011

Přehled vlastností Oracle UCM, část 8.

V dnešním článku zvolna dokončíme přehled vlastností Oracle UCM. Posledním modulem, kterým jsme se doposud nezabývali, je modul Digital Asset Management (DAM), jehož úkolem je správa multimediálních souborů (obrázků a videí. Modul sám má dvě vlastnosti:
  • Image Manager
  • Video Manager)
Při práci s těmito formáty (k nimž by bylo možné přidat ještě zvukové záznamy) existuje jeden specifický problém: jak správně poskytnout obsah koncovému uživateli.

Tento problém souvisí s velikostí multimediálních souborů a jejich využíváním - v poslední době si např. marketingová oddělení oblíbila možnost tvorby krátkých videí, které představují produkty společnosti. Tato videa jsou nabízena na internetových stránkách a aby si je návštěvník stránek chtěl prohlédnout, musí se stáhnout dostatečně rychle. Na druhou stranu, má-li návštěvník dostatečně rychlé připojení, bylo by škoda mu poskytovat video či obrázky v menších rozlišeních. Zejména u společností nabízející luxusní produkty (nejznámější evropskou referencí na DAM je firma Rolex) musí řešení poskytovat nejvyšší možnou kvalitu, protože nic jiného zákazníci neočekávají.

Oba moduly nabízejí možnost vytvářet ke zdrojovému souboru více rozlišení (např. k fotce ve vysokém rozlišení může existovat menší rozlišení pro web či prezentace, černobílé rozlišení pro tisk na černobílých tiskárnách a thumbnail pro rychlý náhled). Videa je pak možné streamovat.

UCM, ani žádný z jeho modulů, nenabízí konverzi multimédií ani streaming. Dokáže spravovat obsah a při žádosti o jeho poskytnutí jej poskytovat (např.) prostřednictvím streamingového serveru. Tuto funkcionalitu je možné zajistit pomocí komerčních či bezplatných produktů třetích stran (Image Alchemy či ImageMagick pro konverze obrázků, Telestream Flip Factory Index Manager a Flip Factory Publish pro videa).

Wednesday 30 March 2011

SES, "firemní Google" je součástí licence UCM

Jakkoli se jedná o zcela novou informaci, budeme vlastně pokračovat ve výčtu vlastností Oracle UCM. Product management vydal prohlášení, ze kterého vyplývá, že nadále bude Secure Enterprise Search (SES) součástí licence Oracle UCM, a to v omezené licenci.

Omezení licence spočívá v tom, že SES musí být nainstalován i běžet na stejném hardware jako UCM a SES může prohledávat jen UCM.

K čemu se hodí SES?

Asi nejlepší přirovnání je, že se jedná o "firemní Google". (Ve své neomezené verzi) SES umí prohledávat nejrůznější úložiště obsahu:
  • web content,
  • databáze,
  • souborové systémy,
  • IMAP-email schránky,
  • ECM úložiště (jako je UCM ad.),
  • aplikace,
  • portály,
indexovat tento obsah a poskytovat rozhraní pro zadání vyhledávacího dotazu a zobrazení výsledku. Pro získávání obsahu využívá SES techniku "crawlingu", tj. opakovaného postupného "prolézání" zdrojových úložišť. Na rozdíl od "googlu" dokáže SES zachovat vazby mezi prohledávanými zdroji, které navíc mohou mít značně heterogenní charakter (jak vyplývá z přehledu).

V čem je přínos SES pro UCM?
Hlavní přínos vidím v tom, že přestože musí SES běžet na stejném hardware, jedná se vlastně o nezávislý systém, který může asynchronizovat některé operace (např. vytvoření vyhledávacího indexu po aktualizaci položky).

SES běží nad databází Oracle DB Enterprise Edition, jejíž omezená licence je zase pro změnu součástí licence na SES.

Thursday 24 March 2011

HowToComponents pro UCM 11g

Tento týden si dáme jako bonus jeden krátký článek navíc. Bex Huff, autor knihy The Definitive Guide to Stellent, spoluautor řady dalších knih na téma ECM a dlouholetý konzultant v oblasti ECM či produktu Stellent, zveřejnil na svých stránkách HowToComponents pro release 11g.

Zejména pro ty z vás, kteří se chystají upravovat GUI, to může být velmi cenný zdroj informací (v ostatních částech "starší" komponenty moc měnit třeba nebylo).

Wednesday 23 March 2011

Přehled vlastností Oracle UCM, část 7., pár slov k URM

Dnes budeme pokračovat tam, kde jsme minule skončili. Máme již tedy hotovo:
  • odlišení 'records' a 'non-records'
  • přiřazení dispozičních pravidel
Samozřejmě, jelikož z každého pravidla existují výjimky, nabízí modul records management (RM) způsob, jak se s nimi vyrovnat - takovou výjimkou může být např. vedení soudního procesu, které může být značně nezávislé na skartačních lhůtách a jistě by zákazníka nepotěšilo, kdyby systém uprostřed procesu smazal důležité svědecké důkazy. Tyto výjimky (angl. disposition holds, nebo 'freezes') umožňují vytvořit nad každou položkou jakýsi 'zámek', který ji vyloučí z provedení dispozičních pravidel.

Poslední vlastností, o které se z modulu RM zmíním detailně je audit. Vzhledem k tom, že records management reaguje často na požadavky dané zákonem, nezřídka musí pro případný audit doložit nejen položku a obsah, ale také to, kdo s položkou jak pracoval - včetně seznamu uživatelů, kteří na položku nahlíželi. Samozřejmě, audit v RM je rozšířením standardní funkcionality nabízené Content Trackerem. Jedná se hlavně o tvorbu reportů zaměřených na úlohy spojené s modulem RM.

UCM RM vs URM?
Nyní uděláme malou odbočku na Universal Records Management (URM) - máme-li modul RM v UCM, k čemu ještě potřebujeme produkt Universal Records Management?

1. federovaný records management
URM je schopno provádět centrální nastavení RM politik a díky technologii adaptérů (které je třeba každý zalicencovat!) vynucovat tyto politiky nad řadou úložišť. K dnešnímu dni existují adaptéry pro:
  • UCM
  • filesystem
  • SharePoint
  • Documentum
  • FileNet
  • Symantec Enterprise Vault
  • a pak generický adaptér pro .NET a Java umožňující napojení na další úložiště
2. správa fyzického obsahu
URM má také modul pro správu fyzického obsahu. Při práci s fyzickým obsahem (listinné dokumenty či jejich celky jako šanony, ale také fyzická média jako CD-DVD obsahující elektronický obsah, atd.) je třeba podporovat některé další scénáře: obsah je buď 'někde uložen' nebo si jej 'někdo vypůjčil', bylo by vhodné, aby systém uměl sledovat naplněnost skladovacích prostor, atd. Základní myšlenkou je však to, aby hlavní vlastnosti RM, tj. dodržování skartačních lhůt a audit bylo možné nastavit a monitorovat na jediném místě, a to bez ohledu na typ položky.

3. licenční omezení
Aby vše nebylo tak jednoduché, připravil nám product management URM ještě jeden rébus - UCM RM je totiž možné použít v konfiguraci RM modulu 'Minimal' nebo 'Typical'. Bohužel však není nikde specifikováno, které features jsou součástí těchto konfigurací a které nejsou. Věřím, že se jedná zejména o speciální vlastnosti nutné pro DoD certifikace (např. tzv. "klasifikace", což je rozšíření standardních bezpečnostních mechanismů).

V zásadě bych se proto při výběru zda na records management použít URM či jen UCM RM držel hlavně prvních dvou výše zmínených kritérií.

Wednesday 16 March 2011

Přehled vlastností Oracle UCM, část 6.

V dnešním článku budeme pokračovat popisem vlastností Oracle UCM a tentokrát se podíváme na oblast, ve které (a asi právem) vládnou určité nejasnosti kolem funkcionality i licencování - records management.

Sám výčet 'vlastností' modulu records management je poměrně strohý:
  • records management; to si zaslouží další míru detailu
  • URM content server adapter; tzn. pokud byste se rozhodli implementovat UCM i URM (k důvodům se také dostaneme - pravděpodobně ve speciálním článku o URM), adaptér, jehož úkolem je napojení URM do UCM a vynucování politik nastavených v URM na úrovni UCM, je součástí licence UCM
Jen pro připomenutí, hlavní požadavky na jakýkoliv ERMS systém jsou dva:
  1. zaručit, že položky (na toto téma viz. zde), u kterých je k tomu nějaký důvod (zpravidla zákonný), se nesmažou
  2. zaručit, že položky, u kterých k tomu důvod naopak je, se smažou, a to kontrolovaným způsobem dle významu položky
Příkladem z první kategorie mohou být došlé či vydané faktury, které mají skartační lhůtu 10 let; příkladem z druhé kategorie mohou být některé záznamy o zaměstancích, které ze zákona o ochraně osobnosti smí firma držet maximálně 2 roky po rozvázání pracovného poměru; jiným příkladem může být snaha smazat nepotřebný obsah (např. emaily).

V systému, ale vlastně i v metodice, se o splnění těchto požadavků stará spisový plán (angl. file plan či retention schedule), což je hierarchická struktura, zpravidla má podobu stromu, kde je možné uzlům přiřadit různé vlastnosti; zejména pak
  • jedná-li se o položky, které nesmí uživatel ad-hoc smazat (viz faktury z našeho příkladu); v UCM/URM je tento požadavek implementován pomocí 3 metadatových 'flagů': isDeletable, isEditable, isRevisionable; mimochodem,všimnětě si, že s 'non-records' položkami je možné pracovat dále jako s živými, tj. vytvářet nové verze, měnit je, dokonce i mazat (v rámci bezpečnostních pravidel), ale přesto je možné na ně aplikovat pravidla jako na 'records'
  • jaký je životní cyklus položky, resp. jaká dispoziční pravidla se na položku vztahují
Pozn. dispoziční pravidlo je vlastně definicí události a reakce na ni (např. na konci měsíce, v němž vyprší k ukončení pracovní smlouvy se zaměstnancem, počkej 2 roky a pak smaž obsah, včetně metadat). Událostí i možných reakcí je celá řada - události mohou být dané jak časem (př. 10 let po ukončení fiskálního roku), tak nějakou stavovou logikou závislou na vnějších faktorech (př. po dobu 1 roku nikdo položku nepřečetl); reakce pak kromě základních dvou, tj. 'smaž položku i metadata' nebo 'smaž položku, ale ponech metadata', umí pracovat s položkou na mnohem jemnější úrovni metadat či stavů - stavy jako 'Expired', 'Archived', 'Canceled' apod., což se velmi často používá pro přesun položky v rámci fyzického úložiště (s rychlého na pomalý disk či na pásku - samozřejmě, o přesun se stará HSM fyzického úložiště nebo databáze Oracle, nikoliv ERMS). V neposlední řadě je pak třeba zmínit, že jak události, tak reakce mohou být customizovány a že dispozičních pravidel může být přiřazeno hned několik (samozřejmě, každé z nich bude mít trochu jiný úkol - jedno může zaručovat přesun v úložišti, druhé zákonné povinnosti a třetí třeba migraci formátu).

(pokračování příště)

Wednesday 9 March 2011

Přehled vlastností Oracle UCM, část 5.

Vyzbrojeni obecnými informacemi na téma Web Content Management se nyní můžeme podívat detailně na vlastnosti WCM modulu v UCM.

  • Site Studio - nejdůležitější prvek modulu WCM. Ve skutečnosti se jedná minimálně o 4 různé přístupy:
    • přístup Čtenáře (neuatorizovaného nebo autorizovaného, který toho může vidět víc - zde se využívají principy Zabezpečení)
    • přístup Contributora (autor, redaktor apod.), který může modifikovat předem definovaným způsobem obsah stránky
    • přístup Managera Site, který může měnit strukturu site (navigaci apod.)
    • přístup Designera/Vývojáře, který vytváří šablony, resp. layout stránek

    Pokud jde o konkrétní nástroje, pak první tři role pracují přímo v internet browseru (využívá se hodně javascript, proto si zkontrolujte, jaký typ browseru a v jaké verzi je podporován). Poslední role pak pracuje s vývojovým IDE. Od verze 10gR4 je možné vybrat si ze dvou způsobů:

    • Site Studio Designer, což je dřívější způsob, kdy šablony vznikají především jako .hcsp soubory a vývojářským jazykem pro vývoj atomických fragmentů je iDocScript. Designer je Windows desktop aplikace.
    • Site Studio for External Application (SSXA), což je nový způsob, kdy šablony vznikají jako .jsp(x) a vývojářským jazykem je Java. IDE pro tento způsob je JDeveloper.

  • Site Studio Publishing Utility, což je utilita umožňující vypublikovat site navrženou pomocí Site Studia na obyčejný web server (samozřejmě, jen pro čtenáře bez možnosti se autorizovat)
  • Content Publisher, technologie umožňující tvorbu site na základě šablon při využítí obsahu jako jsou MS Office ad. formáty (předchůdce Site Studia)
  • Connection Server, technologie pro synchronizaci více prostředí. Podporuje tři základní scénáře:
    • synchronizaci produkčního a staging prostředí (staging může být vnitřní systém, do kterého píší autoři svoje změny, na kterém probíhá schvalování apod.)
    • podpora push či pull modelu pro synchronizaci mezi Oracle Content Serverem a systémy třetí strany (např. SSXA sites mohou bežet na aplikačním serveru s několika knihovnami pro přístup k obsahu)
    • agregaci obsahu ze starších systémů do Oracle Content Serveru, pokud mají tyto běžet souběžně

  • Content Portlet Suite - přístup k funkcím Content Serveru (check-in, vyhledávání, zobrazení obsahu) z portálových prostředí.
Pokud bychom vzali gartnerovký výčet požadavků na WCM (viz minulý článek) a doplnili výše uvedený seznam o funkce Content Serveru a možná Content Tracker, pak na pokrytí celého seznamu zbývá zmínit toto:
  1. v rámci definice šablony stránek je možné vytvořit tzv. placeholdery, což jsou části stránky, ve kterých je zobrazován další obsah. Tím mohou být buď webové datové soubory (což jsou specifická XML editovatelná přes WYSIWYG editor), nebo konvertované nativní soubory (MS Office, ale i obrázky či např. flashe). Autor šablony či manažer site pak může omezit takové parametry jako, ze kterých souborů může contributor pro konkrétní placeholder vybírat (kriteria jsou dána přes metadata) či jaký stylesheet je možné užít při finální konverzi (barva nadpisů, velikosti písem apod.)
  2. kromě placeholderů mohou být na stránce zobrazeny i statické a dynamické seznamy (seznamem je přehled položek z úložiště podobný seznamu, který se objeví při vyhledávání; statický seznam je dán přesně výčtem, dynamický vzniká jako dotaz na úložiště)
  3. WCM také podporuje tvorbu stránek typu formulář, tj. možnost zadat několik vstupních údajů a odeslat je na server (metodou POST); výsledkem je XML obsahující vstupní údaje
  4. externí aplikace je možné zobrazovat pomocí iframe
  5. všechen obsah, tj. texty, obrázky, videa, ale i šablony stránek, či atomické snippety a pagelety užité v šablonách jsou uloženy jako položky obsahu v úložišti - je na ně tedy možné aplikovat metadata, zabezpečení, workflows, atd.
  6. kromě jiného však tento přístup podporuje správu více site či více jazykových verzí (zejména scénář typu: změní-li se obsah na jedné site, propaguj změny do dalších)

Wednesday 2 March 2011

Pozice Web Content Managementu v dnešní době

Před dalším dílem našeho seriálu o vlastnostech UCM, konkrétně modulu WCM, by možná stálo za to se nejprve zamyslet, jaká je vlastně pozice disciplíny Web Content Management v dnešní době.

Už někdy kolem roku 2000, kdy sdružení AIIM přišlo s termínem Enterprise Content Management (ECM), dochází ke sdružení několika do té doby nezávislých disciplín pod jeden souhrnný termín (za chvíli si uvedeme požadavky na WCM, z nichž bude evidentní, že překryv s jinými disciplínami, konkrétně pak Document Management Systems, DMS, je skutečně poměrně značný). Přesto dodnes vychází např. magický kvadrant pro WCM - poslední najdete např. zde.

V tomtéž reportu najdeme výčet požadavků toho, co by WCM řešení mělo umět:
  • základní služby jako check-in/out, verzování
  • autentikace uživatelů (autor - redaktor) a přiřazení práv
  • tvorba obsahu webových stránek prostřednictvím šablon nebo konverzí textových dokumentů
  • workflow pro review a schvalování
  • konverze do HTML či XML a podpora šablon pro zobrazení na webu
  • řízená publikace obsahu na webové servery nebo jiné systémy pro správu site
  • schopnosti pro správu více site a více jazykových verzí
  • web analytika a reporting (např. návštěvnost)
  • schopnosti WYSIWYG designu a oddělení formy a obsahu stránek
  • podpora různých rolí (design, administrator, editor, marketer, autor apod.)
  • podpora agregace či syndikace obsahu (REST, RSS)
  • podpora rich media (např. flashů)
  • schopnost zobrazit obsah na různých (např. mobilních) zařízeních
V dnešní době dochází hlavně k překryvu s další oblastí, kterou Gartner nazývá "horizontální portály" (magický kvardant na rok 2010 najdete zde), které jsou definovány mnohem střídměji jako "infrastruktura webového software, která nabízí interakci mezi informačními zdroji (webový obsah, aplikace a obchodní procesy), znalostními zdroji a lidskými zdroji pomocí tím, že cíleně zaměřuje nabídku (obsahu) dle audience, a to vysoce personalizovaným způsobem". Trochu krkolomný překlad krkolomné definice, ale v zásadě to znamená, že se obsah stránky přizpůsobuje čtenáři, a to buď podle záměrů organizace, nebo podle záměrů čtenáře (či obojí najednou). Troufnu si poznamenat, že se u "portálů" někdy zapomíná na zkušenosti z "WCM" a znovu vymýšlí kolo (neřku-li, že by se náhodou někdo odvážil využít to, co už je ve WCM hotovo - v tom je Oracle poměrně unikátní, ale i nám trvalo skoro rok a půl, než jsme dokázali propojit "portálové" řešení s "WCM").

Hlavní ale je, že zákazníka toto škatulkování nejspíš zajímat vůbec nebude. Firmy řeší problém "online presence", a to ve všech komunikačních kanálech - B2B, B2C, B2E, čímž (kromě B2E) se zabývá zpravidla oddělení marketingu. Vlastně si myslím, že úspěšnost těchto řešení nebude ani tak dána technologickými vlastnostmi, jako spíš tím, jak se podaří naplnit marketingovou vizi.

Wednesday 23 February 2011

Přehled vlastností Oracle UCM, část 4.

V dnešním článku se vrátíme k výčtu vlastnosti UCM, tentokrát modulu DocumentManagement:
  • Content Integration Suite: integrační knihovny pro Java API přístup k funkcím UCM.
  • Desktop Integration Suite: klientská aplikace (pro MS Windows), která umožňuje (přes WebDAV protokol) přímou integraci desktop aplikací (Word, Excel, Outlook, Windows Explorer, PowerPoint, Lotus Notes, Word Perfect) s UCM. UCM se jeví jako virtuální síťový disk (vyžaduje implementaci Folders)
  • Dynamic Converter: ad-hoc konverze nativních souborů do HTML či wireless formátů (WAP apod.). Umí konvertovat 225 souborových formátů - pozor! neplést s perzistentními konverzemi pomocí Conversion Serveru. Dynamic Converter slouží pro jednorázové zobrazení nativního obsahu přes web. Využívá se hojně i při WCM (na různých sites je možné užít různé styly).
  • Kofax Release Script - integrace se skenovacími produkty Kofax (integrace se skenovacími produkty Oracle je součástí těchto produktů)
  • Content Tracker: komponenta pro sledování přístupu k obsahu - data jsou kumulována v databázové tabulce, nad kterou je možné pouštět standardní či custom reporty
  • Content Categorizer: vytěžování metadat z textového obsahu. Content Categorizer umí pracovat buď s exaktními pravidly (prefixy či označení jako style ve Wordu), či heuristikou (dostatečný výskyt klíčových slov v dokumentu). Velmi často se rovněž využívají kategorizační stroje třetích stran, zde je možné kategorizovat i netextové informace. Jak je zřejmé, kategorizace je poměrně výkonostně náročné řešení.
  • Report Parser: řešení pro konverzi reportů (myšleno: textových, XML, HTML, či PDF výstupů produktů třetích stran) do web-prohližitelných formátů
  • PDF Watermark: přidání watermarků do PDF (buď perzistetních nebo on-the-fly generovaných)
  • Web parts for SharePoint: umožňují převézt dokumenty z MSSO do UCM a na úrovni MSSO přistupovat přes portlety ke službám jako je vyhledávání, workflow, apod.

Wednesday 16 February 2011

Jak vydělává Facebook peníze?

Abychom si na chvíli odpočinuli od suchého výčtu vlastností UCM, podívejme se dnes na téma, které souvisí s problematikou Enterprise 2.0 a ke kterému mě inspirovalo shlédnutí filmu Sociální síť, konkrétně, jak je možné, že firma, která nabízí svým uživatelům zadarmo, bylo předloni schopná vydělat miliardu dolarů (viz tento článek).

Podle výše uvedeného článku, má Facebook příjmy hlavně ze tří různých zdrojů:
  • reklama, cca 700 miliónů
  • dárkové předměty (i virtuální, jako např. elektronická přání), cca 150 miliónů
  • poskytováním dat ze své zákaznické báze Facebook Credits ostatním společnostem (původně určeno pro nákup dárkových předmětů), opět cca 150 miliónů; díky 'alternativním platebním metodám' (Facebook kredity může platit i ten, kdo nemá kreditní kartu) se očekává, že jen tato oblast sama o sobě naroste na 1 miliardu dolarů zisku
Co si z toho může vzít běžná česká firma budující portál, od kterého očekává, že jí bude vydělávat?

1. základem úspěchu je dostat uživatele na váš portál a udržet je tam
Většina firem asi nemůže spoléhat na příjmy z reklamy (myšleno: reklamy zboží třetí strany), přesto i pro ně je důležité, aby portál nabrat kritické množství konzumentů jeho služeb.
Výhodu mají ti, kde z podstaty platí, že se uživatel bude pravidelně přihlašovat na portál (např. pravidelné měsíční platby v bance). Ostatní musí být více kreativní (např. v rozumných intervalech připravit adresnou nabídku, o které bude uživatel portálu informován třeba SMSkou nebo emailem a která pro něj bude natolik lákavá, že ho donutí se na ni na portálu podívat).
Když už jsme u Facebooku, ten nabízí 'menším' reklamním partnerům (to jsou ti, kteří utratí na Facebooku za reklamu méně než 10 000 dolarů denně) tzv. Facebook Self-Serve Advertising, kde si můžete sami zadat vlastní reklamní kampaň, která se bude zobrazovat uživatelům dle místa, věku, vzdělání, pohlaví atd. Kromě pomoci s rekruitementem kritické masy pro váš portál můžete Facebook využít i pro 'vyladění kampaně' - uživatelé vám hlasováním 'Thumbs-up' - 'Thumbs-down' jasně dají najevo, o co mají zájem.

2. uživatel je na vašem portálu pán
K pochopení nabídky vašich služeb či produktů nesmí být předpokladem IT vzdělání. Neustále sledujte, jak se chovají vaši uživatelé - důležité jsou zejména ty momenty, kdy je 'ztrácíte' (načítala se stránka příliš dlouho? je příliš složitá? musí uživatel udělat něco, co ho odrazuje od pokračování?) - a odstraňujte jim z cesty možné překážky.

Jeden bod přímo z filmu:
3. Vaše řešení musí fungovat vždy, kdy si to uživatel přeje - a já bych dodat, se zabezpečením přiměřeným účelu portálu
Portály mohou firmě poskytnout komparativní výhodu. Pokud se však ukážou jako dostatečně úspěšné, dá se očekávat, že pokud usnete na vavřínech, konkurence vás brzy dohoní.

Jednu věc bychom však oproti Facebooku neměli zapomínat: portály jako Facebook vlastně nic nenabízejí (maximálně tak možná zábavu), zatímco váš portál bude v nějaké míře vždy nabízet vaše produkty či služby. Klíčovým bodem je proto také vědět,
4. k jakému účelu má váš portál sloužit, což může vést jak k cílům uspořit, i k cílům vydělat více.

Wednesday 9 February 2011

Přehled vlastností Oracle UCM, část 3.

Vlastnosti modulu Content Server (pokračování):
  • Automatické notifikace: umožňuje uživateli resp. administrátorovi zadat kritéria na položky, o jejichž nových verzích chce být uživatel informován. Tento mechanismus je zcela nezávislý na workflows (k zaslání notifikace typicky dochází až po ukončení workflow)
  • Folia: folia nabízejí logické groupování ostatních položek. Pokud se někdy pracuje s rozsáhlým objektem (kniha s více autory), mohou folia pomoci s problémem, kdy má jeden z autorů 'zamknut' celý dokument a ostatní nemohou ukládat svoje změny. Obdobně, jindy bývá žádoucí, aby schválením prošlo najednou hned několik položek, které spolu tvoří logický celek (např. dokumentace pro výběrové řízení). Folia také umožňují pohled na celé fólio pomocí tzv. renderers - standardně se dodává ZIPRenderer, PDFRenderer a MSWordRenderer.
  • Link Management: Link je vazba mezi dvěma položkami, jejíž interpretace muže být různá. UCM v zásadě nabízí dva typy vazeb: volné (peer-peer, parent-child) nebo těsné (attachments - položka v příloze nemůže existovat bez své 'hlavní' položky). Link management se používá kromě jiného jako prevence HTTP 404 (File Not Found Error)
  • Folders: umožňují logické uspořádání (části) do hierarchické struktury připomínající rozvržení dokumentu na disku (zejména, jsou-li na to tak uživatelé zvyklí). Na rozdíl od jiných DMS je toto členění v UCM zcela dobrovolné a pro zákazníky, kteří vyžadují různý pohled na své úložiště je možné použít spíše logické členění pomocí metadat.
  • WebDAV: v případě užití Folders, je možné využít k přístupu do úložiště přímo z Office (Lotus Notes či Windows Exploreru) aplikací WebDAV protokol. Podmínkou je nainstalování klientské aplikace Desktop Integration Suite na pracovní stanici koncového uživatele
  • Workflows: kolem workflows v UCM panuje spousta nedorozumnění. Workflow představuje obchodní proces (typicky: schvalování, tvorba či zpracování dokumentu), při němž dokument obíhá po organizaci mezi pro daný krok relevantními uživateli. Workflow také podporují stavovou logiku, která zaručí, že položka či verze obíhající ve workflows není k dispozici uživatelům vně workflow. UCM podporuje 2 typy workflow: tzv. nativní, které umí pracovat s jednou položkou, nemají grafické rozhraní, za to však podporují stavovou logiku a možnost 'dopsat si' workflows dle potřeby pomocí jazyka iDocScript. Kromě toho obsahuje licence UCM omezenou licenci na produkt BPEL Process Manager, který umí vytvářet workflows podle standardu BPEL, v grafické prostředí (JDeveloper), za to však bez spolupráce s nativními workflows nedokáže podporovat stavovou logiku.
  • Administrace: umožňuje z webového rozhraní administrovat řadu úloh jako: archivace položek do offline archivu, migrace konfigurace, nahlížení do auditních logů, systémové reporty, backup/recovery ad.
  • Konfigurace: umožňuje z webového rozhraní nastavovat chování systému, metadatový model, vzhled některých stránek ad.
  • Komponenty na míru: toto je jedna z velmi silných vlastností UCM - možnost dotvořit chování systému přesně dle požadavků zákazníka, a to v prostředí, které je na to připraveno.
  • User Interface: k službám UCM je možné napřímo přistupovat buď přes webové rozhraní, WebDAV, web sites vytvořených pomocí Site Studia (viz část Web Content Management někdy v budoucnu) nebo z portálových prostředí přes portlety
  • Integrace: možnost přistupovat ke službám UCM na pozadí přes: web services (protokol SOAP), Java API (RIDC či CIS/CPS), adaptéry (existují pro integraci se Siebelem, EBS, URM, SES, SAP, ad.), JCR adaptér či REST-like http/s requesty
  • Škálování: i při využití clusterování Weblogicu nabídnout zákazníkovi optimální poměr cena/výkon
Tímto jsme zakončili výčet vlastností základního modulu UCM, tzv. Content Serveru. Někdy v budoucnu se budeme věnovat vlastnostem dalších modulů, jako jsou DMS, WCM, DAM, RM.

Wednesday 2 February 2011

Přehled vlastností Oracle UCM, část 2.

Vlastnosti modulu Content Server:
  • Check-in/Check-out: Check-in (vkládání) je událost, při níž dochází k vložení nového dokumentu či nové verze dokumentu. Jejími vstupními parametry je sám soubor a jeho metadata. Operace vkládání je podřízena bezpečnostnímu modelu (jen uživatel s patřičnými oprávněními smí vkládat nové položky určitého typu). Událost vkládání představuje možnost provádět další kontroly (zpravidla pomocí vlastních komponent) a může vyvolat další operace (indexování, konverze, spustit workflow apod.)

    Nejčastěji se vkládá jediný soubor. Je však možné i vkládat několik souborů najednou (UCM z nich vytvoří .zip) a nebo mít "hlavní položku" a "přílohy".

    Check-out (rezervace) je událost, při které si uživatel (dočasně) rezervuje položku proto, aby mohl vložit novou verzi. Rezervace je zrušena vložením nové verze, na žádost uživatele nebo zásahem administrátora.

  • Verzování: verze je instance položky v čase (metadat i obsahu). Číslo verze je povinným metadatovým atributem položky, který je možné využít v nejrůznějších systémových operacích (např. "uchovávej jen X posledních verzí", "odmigruj starší verze do offline archívu", ale i např. "nedovol více verzí tohoto typu dokumentu"). Velmi často se využívá jen poslední verze - systém však uchovává i ostatní (minulé i budoucí), a to včetně historie.

  • Aktualizuj metadata: umožňuje aktualizovat či doplňovat hodnoty metadatových atributů; často se děje v rámci workflows

  • Diskuze: které umožňují připisovat k položkám perzistentní komentáře, ve kterých je možné vyhledávat, ale nevytvářejí nové verze

  • Zveřejnění/Stažení (Expirace) obsahu: stavově orientovaná logika, která je základním nástrojem pro implementaci životního cyklu položky ("v přípravě" - "aktuální" - "expirovaná" - "smazaná")

  • Indexování: správa fulltextových a metadatových indexů pro rychlejší a funkčně bohatší vyhledávání

  • Zabezpečení: na toto téma seriál příspěvků začínající zde

  • Vyhledávání: schopnost systému přijmout vyhledávací kritéria a vrátit správně naformátovaný seznam položek nebo samu položku (buď tzv. nativní soubor, nebo jeho webově prohližitelnou podobu - vizte Dynamic Convertor, konverze nebo i Digital Asset Management)
(pokračování někdy příště)

Wednesday 26 January 2011

UCM - Patch Set 3

Podobně jako u Webcentra (viz tento článek; už je též k dispozici) byl pro UCM v nedávných dnech uvolněn ke stažení na OTN Patch Set 3. UCM PS 3 je zaměřen především na opravy chyb v releasu 11g, obsahuje však také některé novinky či drobná vylepšení:
  • v komunitě vznikl drobný zmatek, kam se poděla komponenta Collaboration Manager, která je kromě jiného odpovědná za bezpečnostní seznamy přístupů (či ACL, detaily zde). Část funkcionality (collaboration spaces) již nebude dále rozvíjena (je převzato právě WebCentrem), další část (zmíněné ACL) je plně převedena do základní komponenty Content Server
  • dalším drobným vylepšením je úprava administrativních interface pro komponentu File Store Provider (které se využívají především při ukládání souborů obsahu do databáze), které nyní při definici tzv. storage rules (definujících přesné umístění v rámci storage) nabízí je relevantní pole
  • jednou z největších uživatelských novinek v 11g byly úpravy v aplikaci Desktop Integration Suite; ve starší verzi tato aplikace nefungovala pro 64bitové systémy Windows a MS Office 2010 - nová verze je s nimi již plně kompatibilní
  • poslední funkční novinkou PS3 je pak Site Studio Manager, který doplňuje Site Studio for External Applications (SSXA, tj. web content management založený na JSP) o možnost provádět některé úkony (zejména definovat navigaci a rozvržení stránek) přímo z webové prohlížeče
  • nakonec je jistě zajímavé zmínit i to, že v blízké budoucnosti vznikne na OTN sada příkladů pro SSXA, na kterých si bude možné zjistit, jak podobnou funkcionalitu dodat do vlastních sites

Wednesday 19 January 2011

Přehled vlastností Oracle UCM, část 1.

Předmětem tohoto seriálu článků bude téma, které se objevuje v požadavcích poměrně často: tak nám řekněte, co to vaše řešení vlastně všechno umí. Osobně mám s tímto požadavkem "výčtu fíčurek" docela problém - jednak asi neexistuje člověk, který by dokázal vyjmenovat všechno; hlavně mám ale zkušenost, že otázka je velmi často účelově zneužívána, aby si adresát našel něco, na čem nás nakonec potopí (bez ohledu na to, že to nejspíš jen nebylo zmíněno, nebo se to dá udělat zpravidla jinak a nebo to vůbec nebude potřeba).

V poslední době jsem však našel jeden důvod, který vytvoření takovéhoto seznamu přinejmenším ospravedlňuje: řada našich partnerů, zejména z oblasti spisových služeb, má produkty, jejichž funkcionalita se částečně překrývá s UCM. Seznam vlastností, např. při implementaci konceptu spisová služba s UCM jako úložištěm, by jim umožnil vybrat si co chtějí z UCM využít.

Jak seznam číst? Rozhodně nikoliv jako kompletní přehled - jedná se spíše o přehled na úrovni modulů a jejich nejdůležitějších vlastností, který má sloužit k základní orientaci.

Seznam vznikl s velkou pomocí dokumentu vytvořeného Consulting Services (kupodivu, nikoliv, Project Managementem) a do značné míry kopíruje dřívější členění dokumentace (např. zde); rovněž vám může pomoci pochopit některé body z licenčních dokumentů (jako např. eSupplement). Základní členění obsahu licence Universal Content Management je toto:

  • produkt Universal Content Management obsahuje
    • modul Content Server
    • modul Document Management
    • modul Web Content Management
    • modul Digital Asset Management
    • modul Records Management
  • produkt JRockit - což je "celosvětově nejrychlejší Java Virtual Machine (UCM je Java aplikace) dle benchmarků jako např. SPECjbb2005"
  • produkt Content Conversion Server
  • omezená licence na produkt BPEL Process Manager - detaily na toto téma vizte v tomto článku
  • omezená licence na produkt Weblogic Enterprise Edition - více zde
Modulům UCM a krátce i Content Conversion Serveru se budeme věnovat v dalších dílech detailněji.