<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Alles Over EIM &#187; alfresco</title>
	<atom:link href="http://www.allesovereim.nl/tag/alfresco/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.allesovereim.nl</link>
	<description>Enterprise Information Management</description>
	<lastBuildDate>Mon, 16 Jan 2012 14:40:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Open Source scanning met Ephesoft en Alfresco</title>
		<link>http://www.allesovereim.nl/2011/01/open-source-scanning-met-ephesoft-en-alfresco/</link>
		<comments>http://www.allesovereim.nl/2011/01/open-source-scanning-met-ephesoft-en-alfresco/#comments</comments>
		<pubDate>Thu, 06 Jan 2011 09:07:43 +0000</pubDate>
		<dc:creator>tjarda.peelen</dc:creator>
				<category><![CDATA[Techniek]]></category>
		<category><![CDATA[alfresco]]></category>
		<category><![CDATA[document management]]></category>
		<category><![CDATA[Enterprise Content Management]]></category>
		<category><![CDATA[Ephesoft]]></category>
		<category><![CDATA[Mailroom Automation]]></category>
		<category><![CDATA[OCR]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://www.allesovereim.nl/?p=428</guid>
		<description><![CDATA[Een Document Management oplossing is goed in het beheren van &#8216;content&#8217;, procesondersteuning, het geven van inzich, overzicht en controle. Maar hoe komt de content het systeem binnen? Een kanaal kan &#8216;volledig digitaal&#8217; zijn, gevoed vanuit andere applicaties, email, office. Er is echter nog steeds een papieren stroom die ook in het DMS behoort te landen. Kortom, [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Een Document Management oplossing is goed in het beheren van &#8216;content&#8217;, procesondersteuning, het geven van inzich, overzicht en controle. Maar hoe komt de content het systeem binnen? Een kanaal kan &#8216;volledig digitaal&#8217; zijn, gevoed vanuit andere applicaties, email, office. Er is echter nog steeds een papieren stroom die ook in het DMS behoort te landen. Kortom, er is behoefte op aansluiting met scanning.</p>
<p>Zou het niet fantastisch zijn als het proces van validatie en indexering, overdracht naar een DMS waar content kan worden beheerd tot het kan worden vernietigd, volledig web based en op een Open Source stack zou kunnen draaien? Dat kan! En <a href="http://ephesoft.com" target="_blank">Ephesoft</a> is de toegang!</p>
<p>Ephesoft is een  Open Source &#8216;Mailroom Automation&#8217; oplossing die precies dat doet. En meer.<br />
[[<a title="Open Source scanning with Ephesoft and Alfresco" href="http://tpeelen.wordpress.com/2010/12/23/alfresco-and-ephesoft-overview/" target="_blank">This article</a> exists in English as well.]]</p>
<p><span id="more-428"></span></p>
<p>Het bedrijf Ephesoft is opgestart en wordt geleid door voorheen Kofax medewerkers; er is dus behoorlijk wat domeinkennis aan boord. Het bedrijf heeft de capaciteit om dit product in hoog tempo uit te bouwen en op een niveau te brengen dat het voorziet in de behoefte (voor zover het dat nog niet doet dan). Net als bij Alfresco is het product van de grond af opnieuw opgebouwd en zijn de leermomenten van fouten uit het verleden toegepast, en het product weer verder verbeterd.</p>
<p><strong>Hoe het werkt</strong><br />
De scanner levert batches van tiff bestanden aan Ephesoft (de applicatie). Via een webbrowser kunnen medewerkers de scans valideren en herkende metadata eventueel corrigeren. Het systeem is dus in staat om naast het weer tekst maken van de gescande afbeelding, ook herkenning van metadata te realiseren. Denk aan NAW gegevens, documentnummers, barcodes, line items&#8230; Deze metadata kan vervolgens verderop in het proces worden meegegeven aan het DMS. Zoals gemeld kunnen medewerkers de metadata controleren en verbeteren waarna Ephesoft de gescande bestanden tesamen met de metadata via de <a title="CMIS 1.0 approved by OASIS" href="http://tpeelen.wordpress.com/2010/05/07/cmis-1-0-approved-by-oasis/" target="_blank">CMIS</a> standaard kan doorgeven aan het DMS. (Mits CMIS compliant natuurlijk.) Voor mij is het DMS <a href="http://alfresco.com" target="_blank">Alfresco</a>.</p>
<p>Dat zowel DMS als scan applicatie zowel web based als open source zijn, geeft enorme vrijheid om deze te implementeren in de organisatie en architectuur. Qua eventueel maatwerk bestaan veel voorbeelden (want: open source), en qua architectuur bestaal allerlei keuzen om bepaalde (of alle delen) &#8216;in de cloud&#8217; of bij een derde partij te hosten, terwijl de medewerkers volledig plaats en tijd onafhankelijk kunnen werken met slechts een webbrowser! Dit kan Het ultieme Nieuwe Werken!</p>
<p><strong>Ephesoft functionaliteit</strong></p>
<p>Ephesoft is de applicatie voor &#8216;intelligent document capture&#8217;. Het bestaat uit het volgende &#8216;modulaire&#8217; proces:<br />
<a href="http://www.allesovereim.nl/wp-content/uploads/2011/01/ephesoft-modules.png"><img class="alignnone size-full wp-image-441" title="ephesoft-modules" src="http://www.allesovereim.nl/wp-content/uploads/2011/01/ephesoft-modules.png" alt="" width="655" height="276" /></a></p>
<p><strong>Document Ingestion<br />
</strong>Ephesoft ontvangt content/documenten uit een bron. Dit kunnen natuurlijk gescande batches tiff documenten zijn (elke folder met tiff bestanden wordt als batch gezien). Het systeem kan echter ook gevoed worden door elk ander systeem, denk aan email (bericht met bijlagen) of content uit een DMS wat up uniforme wijze geclassificeerd kan worden en aan een DMS kan worden aangeboden ter archivering of opslag. De huidige 1.9 versie van de software maakt van email en bijlage PDF documenten die full-text indexeerbaar zijn en via het Ephesoft proces classificeerbaar zijn en waar metadata uit geëxtraheerd kan worden. Een open source tool om email te archiveren en van metadata te voorzien!</p>
<p><strong>OCR &amp; Barcode</strong><br />
De volgende stap in het proces is om de feitelijke tekst van de afbeelding of het document te verkrijgen. Als het gaat over een scan, komt dot neer op OCR (Optical Character Recognition). Ephesoft maakt gebruik van een modulair stysteem, en er is keuze welke OCR engine hiervoor te gebruiken. De community versie komt geconfigurered met  <a href="http://code.google.com/p/tesseract-ocr/" target="_blank">Tesseract</a> als OCR engine, de Enterprise versie met <a href="http://www.captaris-dt.com/product/recostar-professional/en/" target="_blank">Recostar Professional</a>, een closed source OCR tool. Overigens zou ook  <a href="http://code.google.com/p/ocropus/" target="_blank">ORCopus</a> kunnen worden ingezet als open source ORC engine, als deze nog niet standaard configureerbaar.</p>
<p>Documenten die oorspronkelijk uit een gecontroleerde omgeving komen zoals een DMS,  zouden voorzien kunnen zijn van enige vorm van barcodes. Ephesoft wordt standaard geleverd met de mogelijkheid om <a href="http://nl.wikipedia.org/wiki/Code_39" target="_blank">Code39</a> barcodes (de &#8216;normale&#8217; 1 dimensionale barcodes, zoals bekend uit de supermarkt), <a href="http://nl.wikipedia.org/wiki/QR-code" target="_blank">QR codes</a> (2 dimensionale codes) , and <a href="http://nl.wikipedia.org/wiki/Data_matrix" target="_blank">datamatrix</a> codes (ook 2 dimensional). De 1-dimensionale barcode kan typisch gebruikt worden voor iets als een document/klant/briefnumer, en de 2 dimensional versie kan veel meer informatie bevatten. (QR codes wordne ondermeer gebruikt om de link naar (intranet/DMS?) webpagina&#8217;s te bevatten.</p>
<p><strong>Classification (and Separation)<br />
</strong>Ephesoft kan leren hoe de eerste en laatste pagina&#8217;s van een document er uitzien. Met deze informatie kan een stapen documenten ineens gescand worden, en is het niet meer nodig om scheidingsvellen tussen de te scannen documenten op te nemen. De gescande velletjes worden vanaf dat moment als een document beschouwd. Het systeem kan verschillende document types herkennen, met verschillende begin/eindpagina&#8217;s, op basis van de layout en het voorkomen van zaken als keywords, barcodes en andere herkenbare &#8216;landmarks&#8217;.</p>
<p>Voordeel is dat men zich in de scanstraat niet meer druk hoeft te maken over scheidingspagina&#8217;s, er kan gewoon een stapel originelen worden gescand en het systeem kan herkennen welke pgina&#8217;s een document vormen. Dit kan veel tijd en moeite schelen.</p>
<p><strong>Extraction</strong><br />
Een van de mooie functies van Ephesoft is dat het entiteiten kan herkennen binnen een document. Zaken als namen, adressen, postcodes, klantnummers etc. kan worden herkend en opgeslagen als metadataveld. Dit is van enorme meerwaarde als het document aan een DMS wordt toegevoegd. Een DMS kan vervolgens op basis van deze aanvullende/beschrijvende metadata routering bepalen, of rapportages en overzichten genereren.</p>
<p><strong>Distribution<br />
</strong>Als de documenten gescand, van tekstlaag en metadata (extractie) zijn voorzien, en naar pdf zijn geconverteerd, moet Ephesoft ze &#8216;ergens laten&#8217;.  Ephesoft community wordt geleverd met twee eindpunten voor deze pdf&#8217;s. De meest basale is dat de bestanden naar een (netwerk)schijf worden weggeschreven. Een nadeel is dat een bestand op de netwerkschijf vaak niet alle metadata kan bevatten die eerder herkend is. Wel behoud het de voordelen vna een volledig geindexeerd en doorzoekbaar pdf document. Er zijn natuurlijk toepassingen waar dit ongewenst is.</p>
<p>Het andere alternatief is dat het pdf bestand via de CMIS standaard aan een ander systeem wordt overgedragen. <a href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cmis" target="_blank">CMIS is een open standaard</a> onderhouden door het OASIS consortium. CMIS staat voor Content Management Interoperability Standard, wat ik al eerder heb <a title="CMIS 1.0 approved by OASIS" href="http://tpeelen.wordpress.com/2010/05/07/cmis-1-0-approved-by-oasis/" target="_blank">beschreven</a>. CMIS heeft de fantastische mogelijkheid dat zowel het document als de metadata kan worden uitgewisseld. Ephesoft kan vervolgens dit CMIS &#8216;end point&#8217; configureren dat de pdf versie (of desgewenst (ook) de tiff) van de scans met metadata naar Alfresco kan worden overgezet.  (Lees verder in &#8220;<a title="Configuring Ephesoft and Alfresco for CMIS integration" href="http://tpeelen.wordpress.com/2010/12/23/configuring-ephesoft-and-alfresco-for-cmis-integration/" target="_blank">Configuring Ephesoft and Alfresco for CMIS integration</a>&#8220;; in English).</p>
<p><strong>User interface om Batches te verwerken</strong><br />
De Ephesoft applicatie heeft twee types web-based interface. De eerste is bedoeld voor de gebruikers die de kwaliteit van de scans en de metadata in de gaten houden of verbeteren. De Ephesoft engine doet zijn best om de metadata te herkennen, maar dit zal waarschijnlijk nooit 100% zijn. In deze interface krijgen gebruikers overzicht over de gescande batches in termen van prioriteit en status. Per batch kunnen de documenten gevalideerd worden, pagina&#8217;s worden verplaatst, geroteerd (of verwijderd) en de metadata die niet correct is herkend kan worden verbeterd of aangevuld, zoals in de afbeelding hieronder. Hoewel Ephesoft een web-applicatie is, kan de gebruiker gebruik maken van een groot aantal keyboard shortcuts om de effectiviteit te verhogen.  (Voor verdere details, zie de <a href="http://www.ephesoft.com/wiki/index.php?title=User_Manual" target="_blank">User Manual</a>)</p>
<p><a href="http://tpeelen.files.wordpress.com/2010/12/user-validation.png"><img class="aligncenter size-full wp-image-226" title="Validation" src="http://tpeelen.files.wordpress.com/2010/12/user-validation.png" alt="" width="500" height="325" /></a></p>
<p><strong>User inferface om het systeem te beheren (e.g. admin interface)<br />
</strong>Het Ephesoft systeem moet natuurlijk ook beheerd worden. Met de administratie interface kan men de Batches configureren. Per batch klasse kunnen Modules worden geactiveerd en geconfigureerd.  Zo kan de ene Batch klasse een CMIS endpointhebben naar  systeem A, de documenten in een andere Batch klasse worden afgeleverd in systeem B, en de documenten uit een derde klasse worden opgeslagen op een folder op een netwerkschijf.  (Voor meer details, zie de <a href="http://www.ephesoft.com/wiki/index.php?title=Admin_Manual" target="_blank">Admin Manual</a>).</p>
<p><a href="http://tpeelen.files.wordpress.com/2010/12/admin.png"><img class="aligncenter size-full wp-image-214" title="admin" src="http://tpeelen.files.wordpress.com/2010/12/admin.png" alt="" width="500" height="399" /></a></p>
<p>In dit screenshot kunnen de modules van de huidige Batch klasse worden geselecteerd om te configureren.</p>
<p>Het is een beetje jammer dat het beheer van gebruikers is gedelegeerd naar een applicatieserver. Vanuit een business standpunt is dit geen ramp, het is gebruikelijk dat een applicatieserver koppelt met een systeem als Active Directory. De community versie wordt geleverd met Tomcat als applicatieserver, waarbij de gebruikers terug te vinden zijn in de user.xml file van Tomcat.</p>
<p><strong>Ephesoft vanuit technisch perspectief<br />
</strong>Ephesoft is een Java gebaseerde web-applicatie die draait op een server. Dit betekent dat de gebruikers alleen maar een webbrowser nodig hebben! De server gebruikt JBPM als basis voor het modulaire proces. Elke module kan worden geconfigureerd, en eenvoudig worden aan- of uitgezet, of worden vervangen door een module met gelijksoortige functionaliteit.</p>
<p>De server is ontworpen om te kunnen functioneren in een cluster (om single-point-of-failure te vermijden en een hoge erg beschikbaarheid te kunnen garanderen) en tevens voor gebruik &#8216;in de cloud&#8217;. Door deze ontwerp-beslissingen zijn robuuste en hedendaagse architecturen te realiseren. Waarom de server in eigen beheer draaien en niet in de cloud? Parameters zoals scan volume, beschikbare bandbreedte, de spreiding van de organisatie over het land/continent/wereld beinvloeden mede hoe een ideale architectuur er uit kan zien. Ephesoft kan zich aanpassen aan vele architecturen, en zal niet gauw in de weg zitten.</p>
<p style="text-align: center;"><a href="http://www.allesovereim.nl/wp-content/uploads/2011/01/ephesoft-tech-schema.png"><img class="size-full wp-image-442 aligncenter" title="ephesoft-tech-schema" src="http://www.allesovereim.nl/wp-content/uploads/2011/01/ephesoft-tech-schema.png" alt="" width="273" height="165" /></a></p>
<p><a href="http://tpeelen.files.wordpress.com/2010/12/technial-architecture1.png"></a></p>
<p>De Ephesoft applicatie is een Java application die draait in een Applicatie Server. De community versie wordt geleverd met Tomcat, maar specifieke versies van  JBoss, Weblogic en Websphere worden ook ondersteund. De applicatie gebruikt ImageMagick voor de grafische transformaties (schalen, van tiff naar png). De OCR module binnen Ephesoft kan worden vervangen. De Enterprise versie wordt geleverd met  Recostar Processional, Community komt met Tesseract. In mijn beleving zou Tesseract ook nog vervangen kunnen worden door ORCopus.</p>
<p>hOCR staat voor de tool die de tiff&#8217;s kan combineren met de tekst laag (in de .hocr files) tot een pdf file (evt. met meerdere pagina&#8217;s per document). Deze .horc files bevatten zowel de text die herkend is van de afbeelding, alsook de locatie van de woorden/letters op de pagina. Net zoals Tesseract, is ook deze tool is beschikbaar voor zowel Windows als Linux. Op moment van schrijven was MySQL de enige ondersteunde database, maar op de korte termijn worden ook MSSQL, oracle, Postgress en DB2 ondersteund. De actuele technische details kunnen <a href="http://www.ephesoft.com/services/subscription/supported-platforms" target="_blank">online</a> worden teruggevonden.</p>
<p><strong>Het business model</strong><br />
Ephesoft kent een vergelijkbaar subscription model als Alfresco. De Community Edition komt onder de  GPL v2 license, en is dus gratis te gebruiken, zonder ondersteuning van Ephesoft, zonder garanties. U bent dan aangewezen op de wiki, fora, internet etc. De Enterprise Edition is verder getest en wordt geleverd met een commerciele (kwalitatief betere)  OCR oplossing. De subscription is gebaseerd op het aantal CPU&#8217;s die in gebruik zijn op de server, <em>niet </em>door het aantal gebruikers, aantal scans of andere beperkingen. Er bestaan een aantal nivo&#8217;s van ondersteuning, van het inschieten van issues tot 24/7 ondersteuning. Zie de Ephesoft <a href="http://www.ephesoft.com/services/subscription/support" target="_blank">website</a> voor meer details.</p>
<p><strong>Het &#8216;bewijs&#8217;<br />
</strong>Ik heb flink met Ephesoft gestoeid om het (op mijn manier) technisch werkend te krijgen. Naast wat technische details waar ik tegenaangelopen ben, leer ik ook graag grenzen (en verkrijg ik inzcht) door over deze grenzen heen te gaan. Ik had mij een aantal doelen gesteld:</p>
<ol>
<li>Configureer Ephesoft zodanig dat de resulterende pdf&#8217;s in Alfresco worden opgeslagen middels CMIS. Dit is gelukt, maar niet met de mate van detail die ik had verwacht. Zie &#8220;<a title="Configuring Ephesoft and Alfresco for CMIS integration" href="http://tpeelen.wordpress.com/2010/12/23/configuring-ephesoft-and-alfresco-for-cmis-integration/">Configuring </a><span style="color: #000000;"><a title="Configuring Ephesoft and Alfresco for CMIS integration" href="http://tpeelen.wordpress.com/2010/12/23/configuring-ephesoft-and-alfresco-for-cmis-integration/">Ephesoft and Alfresco using CMIS integration</a></span>&#8221; voor de details (in English). De eindconclusie is: ja het werkt.  Vooral voor de &#8216;simpelere&#8217; attribuut types. In de inmiddels vorige  community version (1.8.1.6) ging het CMIS transportmis voor data types als Long and Double (CMIS kent alleen Integer en Decimal). Dit blijkt mede te zijn opgelost door als String de waarden over te dragen.</li>
<li>installeer Ephesoft en Alfresco in een enkele  Tomcat instance. Dit is geen real-life scenario, in een productie omgeving zullen deze juist gescheiden zijn. Het geeft echter wel een idee welke componenten, libraries en omgevingsvariabelen nodig zijn, en hoe e.e.a. geconfigureerd is, en hoe dit te tweaken is. Bovendien is het aantrekkelijker een enkele VMware op te starten voor demo doeleinden. Ik heb dit uitgeprobeerd op het Windows platform, en de conclusie is: &#8216;Bijna klaar&#8217;. Ik heb beide applicaties in een enkele Tomcat geinstalleerd, en uiteindelijk liep de stap van het samenvoegen van tiff en hocr tot pdf bestand mis. Zie &#8220;<span style="color: #ff0000;"><span style="color: #0000ff;">Ephesoft and Alfresco into one Tomcat instance</span></span>&#8221; voor meer details (gestaakt, wekens wisselen van versies, installaties, en beperkte vrije tijd).</li>
<li>Als Open Source adept draait een server &#8216;natuurlijk&#8217; Linux. &#8216;Helaas&#8217; blijken de huidige klanten van Ephesoft allemaal Windows te draaien, dus het lijkt vooral mijn probleem <img src='http://www.allesovereim.nl/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> . Aangezien het om een Java applicatie gaat, zou dit niet al te complex zijn. De crux zal zitten in de helperapplicaties als Tesseract, ImageMagick en hOCR. mijn eerste stap is om Tesseract op Linux werkend te krijgen (Bij de Ephesoft Windows distributie wordt dit werkend meegeleverd). Dat was eenvoudig, zie &#8220;<a title="Alfresco using Tesseract OCR on Ubuntu Linux" href="http://tpeelen.wordpress.com/2010/12/17/alfresco-using-tesseract-ocr-on-ubuntu-linux/">Alfresco using Tesseract OCR on Ubuntu Linux</a>&#8221; (English). De volgende stap is om de verdere applicatie werkend te krijgen op Linux (zie &#8220;<a title="DRAFT: Install Ephesoft on Ubuntu Linux" href="http://tpeelen.wordpress.com/2011/01/16/draft-ephesoft-on-ubuntu-linux/" target="_blank">DRAFT: <span style="color: #0000ff;">Install Ephesoft on Ubuntu Linux</span></a>&#8221; voor de details &#8211; English, en nadrukkelijk &#8216;draft&#8217;). Dit is uiteindelijk nog niet afgerond. Enerzijds door tijdgebrek (het is hobby-project voor mij), anderzijds (b)lijken er een aantal paden hardcoded te zijn voor Windows. Het systeem wil perse de windows TesseractConsole.exe aanroepen, en die bestaat niet in Linux wereld. Ik wacht nog op wat vrije tijd om de broncode door te nemen en aan te passen, maar aangezien dit een project is in eigen tijd&#8230;</li>
</ol>
<p><strong>The near future<br />
</strong>De Nederlandse versie van deze blog is ingehaald door de realiteit. Inmiddels is de 1.9 versie van Ephesoft vrijgegeven. Deze maakt van Ephesoft een krachtige email-classificatie tool. In de Document ingestion fase kan naast de gescande tiff ook email worden &#8216;ingevoerd&#8217;. Email met bijlage worden naar pdf geconverteerd, en alle features zoals entity extractie kunnen hierop worden uitgevoerd! Daarnaast worden binnenkort verwacht:</p>
<ul>
<li>Form processing, zone OCR/ICR/OMRPDF/</li>
<li>Multi page tiff import</li>
<li>Table extraction</li>
<li>veel meer&#8230;</li>
</ul>
<p>Daarnaast worden &#8216;groepen&#8217; geintroduceerd, zodat batch classes aan bepaalde groepen kunnen worden gekoppeld.  Ik kijk erg uit naar hands-on tijd met de nieuwe 1.9 release&#8230;</p>
<p><strong>Mijn conclusie</strong></p>
<p>Allereerst: Wat een fantastisch product. En een pluim voor de respons van de mensen van Ephesoft, men reageert heel snel en uitgebreid op vragen en foutrapporten.</p>
<p>Vanuit een architectuur standpunt vind ik de 100% server/web-based oplossing interessant. Gebruikers hebben alleen een webbrowser nodig. Ideaal voor HetNieuweWerken! De mogelijkheden zijn krachtig, ik kan het wel zien werken&#8230;</p>
<p>Ik ben erg fan van de Document Ingestion fase. Natuurlijk zijn scans slechts een van de vele stromen informatie die geclassificeerd en van metadata voorzien dient te worden. Het ligt erg voor de hand dat het ongeacht de stroom, door dezelfde logica heen gaat! Of de documenten nou vanuit scan, email of een DMS komen, de extractie logica is op deze wijze eenduidig.</p>
<p>Downside is dat het product relatief nieuw is. In het licht van open source betekent dit dat nog geen levendige community bestaat, maar nog  in opbouw is. Zo ontdekte ik dat de Issue Management oplossing nog in ontwikkeling is, maar aan de andere kant, het product moet ook ontwikkeld worden en er moeten klanten gevonden worden, ook Ephesoft kan de tijd maar eenmaal besteden. De wiki is in opbouw, evenals de discussie fora. er is wel degelijk aandacht voor de documentatie, in de wiki zijn recentelijk weer mooie tutorials toegevoegd. De website communiceert helder wat er in een volgende release verwacht kan worden, en wanneer deze release gescheduled staat. Tot op heden wordt er prima naar planning geleverd!</p>
<p>Het beheer van gebruikers is een punt van aandacht. Aan de ene kant hoeft niet elke applicatie zelf aan gebruikersbeheer doen. Aan de andere kant, als er geen fatsoenlijke applicatieserver is (liefst met koppeling naar AD) zou het verdomd handig zijn als er wel een kaal minimum is, wat iets meer kan bieden dan de users.xml in Tomcat&#8230;</p>
<p>Ik was licht teleurgesteld door de CMIS integratie. Het mappen van de pdf output op de standaard cmis:document ging prima. Het werd spannend toen ik de datatypes in Alfresco gelijk trok aan de datatypes in Ephesoft. CMIS voorziet niet in alle data types, en het bleek dat sommige types als String werden aangeboden. Dat moet de ontvangende Alfresco kant natuurlijk ook weten&#8230;</p>
<p>Ik vind het een mooie tool, ben blij verrast door de breedte van de oplossing, en ik heb een warm gevoel bij de Ephesoft organisatie.</p>
<p><strong>Mijn to-do lijst</strong></p>
<ul>
<li>Ik wil een onderzoek doen om de kwaliteit van OCR te kunnen vergelijken tussen de open source en de closed source OCR oplossingen.</li>
<li>Ik wil graag de code bekijken en bezien waar deze kan worden aangepast om de helper tools voor de verschillende platform te kunnen configureren. Daarna kan ik verder met mijn alles-op-Linux experiment.</li>
</ul>
<p>[update 16 jan 2011: toegevoegd link naar "DRAFT: install Ephesoft on Ubuntu Linux"]</p>
<div class="shr-publisher-428"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.allesovereim.nl/2011/01/open-source-scanning-met-ephesoft-en-alfresco/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tjarda Peelen over aanbesteden van Open Source</title>
		<link>http://www.allesovereim.nl/2010/12/tjarda-peelen-over-aanbesteden-van-open-source/</link>
		<comments>http://www.allesovereim.nl/2010/12/tjarda-peelen-over-aanbesteden-van-open-source/#comments</comments>
		<pubDate>Mon, 27 Dec 2010 21:55:58 +0000</pubDate>
		<dc:creator>Paul Baan</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[aanbesteden]]></category>
		<category><![CDATA[aanbesteding]]></category>
		<category><![CDATA[aanbestedingsrecht]]></category>
		<category><![CDATA[alfresco]]></category>
		<category><![CDATA[document management]]></category>
		<category><![CDATA[Enterprise Content Management]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://www.allesovereim.nl/?p=421</guid>
		<description><![CDATA[Video met uitleg van Tjarda Peelen over het aanbesteden van Open Source ]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Recent heeft de Europese ombudsman een uitspraak gedaan over wanneer Open Source moet worden aanbesteed en wanneer niet. Deze uitspraak heeft nogal gevolgen voor Open Source oplossingen met een gesupporteerde versie. Tjarda Peelen legt uit.</p>
<p><a href='http://www.youtube.com/watch?v=z_C3LPpcr1c&#038;feature=player_embedded'>Tjarda Peelen over Open Source aanbestedingen</a></p>
<div class="shr-publisher-421"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.allesovereim.nl/2010/12/tjarda-peelen-over-aanbesteden-van-open-source/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Activiti, the enterprise grade open source BPM promise</title>
		<link>http://www.allesovereim.nl/2010/11/activiti-the-enterprise-grade-open-source-bpm-promise/</link>
		<comments>http://www.allesovereim.nl/2010/11/activiti-the-enterprise-grade-open-source-bpm-promise/#comments</comments>
		<pubDate>Tue, 02 Nov 2010 21:56:49 +0000</pubDate>
		<dc:creator>tjarda.peelen</dc:creator>
				<category><![CDATA[Techniek]]></category>
		<category><![CDATA[alfresco]]></category>
		<category><![CDATA[Business Process Management]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://www.allesovereim.nl/?p=330</guid>
		<description><![CDATA[(Find the Dutch version in this article) (Find the Spanish version in this article) Some time ago, Alfresco, Signavio and Camunda started Activiti, an open source alternative for enterprise BPM. The first question that crossed my mind was &#8220;why a new BPM engine”? Basically, there are some reservations about the jBPM Alfresco implementation in the [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>(Find the Dutch version in <a href="http://www.allesovereim.nl/2010/11/activiti-de-enterprisewaardige-open-source-bpm-belofte/" target="_self">this article</a>)<br />
(Find the Spanish version in <a href="http://blyx.com/2010/11/03/activiti-bpm-la-promesa-del-software-libre-empresarial/" target="_blank">this article</a>)</p>
<p><span id="more-330"></span></p>
<p>Some time ago, <a href="http://www.alfresco.com/" target="_blank">Alfresco</a>, <a href="http://signavio.com/" target="_blank">Signavio</a> and <a href="http://www.camunda.com/" target="_blank">Camunda</a> started <a href="http://activiti.org" target="_blank">Activiti</a>, an open source alternative for enterprise BPM. The</p>
<p>first question that crossed my mind was &#8220;why a new BPM engine”? Basically, there are some reservations about the jBPM Alfresco implementation in the areas of developing and controlling processes. Alfresco had more reasons to reconsider an (embedded) BPM engine. There are customer considerations against limitations to the <a href="http://www.gnu.org/copyleft/lesser.txt" target="_blank">LGPL</a> license (or the perception thereof) which is why the Activiti project is developed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache 2</a> license.</p>
<p><strong>Vision</strong></p>
<p><strong> </strong>JBPM is a ‘technically oriented&#8217; BPM engine. The Activiti project’s vision is that it should be a lightweight engine, easy to use (for Java developers) and that ‘workflow’ <em>could </em>also <em>be </em>social. Remind the <em>could be</em>. The Activiti project does not prescribe how an organization should use BPM, but  it wants to facilitate collaborating around the business process.<br />
Traditionally, the development of (business) processes is the &#8216;analysts&#8217; domain. This role develops process diagrams, defines the flow of jobs, defines to what role a job is assigned, and what automated steps take place. Next in line, the ‘developers’ create &#8220;executable code&#8221; of it. Activiti has a number of elements in it which can facilitate collaboration among the roles involved like analysts, managers and developers.</p>
<p>First, Activi utilizes BPNM2.0, the now widely accepted open standard for process modeling. The beauty of this 2.0 version of the standard is that next to the schema language, the underlying defining XML standardized as well. Activiti can directly execute this XML. This has the advantage that the analyst and the developer work on the same process scheme and therefore underlying XML. They can read each other&#8217;s work, and actually work on the same schema’s. That will do a lot for the effectiveness of communication. Activiti also provides an additional module where all roles involved are facilitated to collaborate in a ‘2.0’ style, and improve the process of developing business processes, and improve existing ‘running’ process definitions. I will elaborate on this later in this article.</p>
<p>For Alfresco the Activiti path is a well thought out decision. Two of the founding fathers of jBPM actually joined</p>
<p>Alfresco in order to achieve this open source BPM engine. Alfresco already had the experience of running an open source project because it is open source itself. Next to that they have run the Apache Foundation-route before when they created the OpenCMIS project, now included in the Apache Chemistry project. (Did I mention SpringSurf Alfresco developed and donated to SpringSource? Quite some open source activity here…)</p>
<p><strong>The concept</strong></p>
<p><strong> </strong>For ease of explaining, let’s assume that in the development and operation of BPM processes the following four roles are involved:</p>
<ul>
<li>The analyst has understanding of the business domain and defines processes and tasks.</li>
<li>The developer creates the executable code, to fill in the automated tasks and lookups as resulted from the analysts work.</li>
<li>The process participant is any person in the organization that gets a task assigned in running business processes.</li>
<li>The administrator is the role that ensures that the BPM system will operate. Tasks that ‘get stuck’ or processes that fail can be restarted, removed or reassigned. This role is understanding why processes function as they do in terms of errors, performance etc.</li>
</ul>
<p>I will explain the modules of Activiti using the chart below.</p>
<p><a href="http://www.allesovereim.nl/wp-content/uploads/2010/11/activitycontext-en2.png"><img class="aligncenter size-full wp-image-365" title="Activity Context" src="http://www.allesovereim.nl/wp-content/uploads/2010/11/activitycontext-en2.png" alt="" width="616" height="266" /></a></p>
<p><strong>Activiti Engine</strong></p>
<p>The heart of the system is the Activiti Engine. This is the work horse where BPNM2.0 XML format is &#8216;imported&#8217; and depending on the logic the described process steps are created and dispatched. This advanced engine has an extremely low overhead in terms of memory usage and database storage/manipulation. The engine generates jobs that can get assigned to individuals / groups / roles. There may also be &#8220;system tasks&#8221; defined that can do all kind of automated tasks. Think of document manipulations in a DMS (using CMIS?), communication with other systems using web services for example, changes in (external) databases, etc. Processes that are no longer active are moved to an archive, to improve on execution speed.</p>
<p>Activiti comes with many types of activities / tasks. Next to that a simple Java API exists that enables organizations to define their own tasks. If a basic set of functionality is implemented these tasks can be graphically modeled and the engine can execute. This way, the custom activity can be reused and configured by the analyst using the graphical user interface.</p>
<p>The Activiti Engine is as open as possible. Besides extensive access through the Java API, you can access a <a href="http://en.wikipedia.org/wiki/Representational_State_Transfer" target="_blank">REST</a> interface to query and control the application. This means that the applications which make use of the Activiti Engine not necessarily have to be programmed in Java. This allows presentation of the task list in applications build in languages like PHP or .NET. The Activiti Engine can be queried in many ways to generate work lists, metrics,  ongoing processes etc. etc. Think of searching running processes, using the numerical value of an attribute is greater than x, sorted by start date.</p>
<p>Activiti is designed as an enterprise grade BPM engine, thus is also scalable. It is prepared to function in the cloud, instances of the engine can run in parallel if desired, and it integrates seamlessly into an existing application for example using the Spring framework.</p>
<p>The last feature I want to be mentioned is the ability to automate the testing process. There are facilities built to test using JUnit (version 3 and 4) to test the process. This is great news because it saves a lot of clicking to the many paths of a process to go through. This is a process facilitated by the engine deploy, run and undeploy the process definition. All steps can be executed, where automated tasks like sending email can be (temporarily) switched off. Using the JUnit results it can be determined whether the business logic in the process is working as intended.</p>
<p><strong>Activiti Explorer</strong></p>
<p>The Activiti Explorer is the user interface for the process participants. Here the personal and group task lists can be found. Group tasks can be claimed, and tasks can be completed. This means that data in a form can be completed or process choices can be made. Tasks can be reassigned to other users, and ad-hoc tasks can be created and assigned to anyone on the spot. Similarly, a user can ad-hoc create sub-tasks to divide a task into a number of smaller assignments.</p>
<p><a href="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti-explorer-mytasks.png"><img class="aligncenter size-full wp-image-337" title="Activiti Explorer Mytasks" src="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti-explorer-mytasks.png" alt="" width="575" height="335" /></a></p>
<p><strong>Activiti Modeler</strong></p>
<p>Activiti Modeler was developed by Signavio. The Modeler is a web application in which processes can be modeled using the BPMN2.0 schema. The process definitions are stored in BPMN2.0 XML format stored on the server. Like the SpringSurf framework the modeler communicates to the server via JSON. In the default configuration, the Activiti process definitions will be stored on the servers file system.</p>
<p><a href="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti-modeler.png"><img class="aligncenter size-full wp-image-370" title="activiti-modeler" src="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti-modeler.png" alt="" width="575" height="335" /></a></p>
<p><strong>Activiti Designer</strong></p>
<p>Activiti Designer is an Eclipse plugin. In this way, the developer can work on both the process XML and the graphical schema and the code in the same developer environment and easily switch between the related pieces of logic. Basically it does just exactly what you&#8217;d expect.</p>
<p><strong>Activiti Probe</strong></p>
<p>Activiti Probe provides an overview of running processes. This application is typically for administrator-like roles. Here you can monitor if the BPM engine is still functioning, how the resource usage is doing, and check up on the log files. Process instances can be deployed into the engine. If the process unexpectedly fails, running tasks can be restarted, reassigned, or the process be stopped or restarted.</p>
<p>At present Activiti Probe is &#8220;limited&#8221; to display system settings and relevant database tables. This is in my opinion already much better than the ‘web based command line tool’ that is currently shipped with Alfresco version of JBoss. However, it is not yet what one would expect of an Enterprise tool. A graphical tool with more management possibilities and more ways of finding running (or failed) processes, is in the pipeline.</p>
<p><a href="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti-probe.png"><img class="aligncenter size-full wp-image-338" title="activiti-probe" src="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti-probe.png" alt="" width="575" height="335" /></a></p>
<p><strong>Activiti Cycle</strong></p>
<p>Activiti Cycle is the module where the social, collaboration aspect is located. BPM traditionally is the domain of business analysts. On the other hand, the developers combine the flow with the (custom) logic, make it communicate with repositories and ‘make the process work’. Activiti Cycle is an environment focused on collaboration with the process in its center. Processes can have relations with &#8220;artifacts&#8221; such as (for example Visio, Office, CAD) files, Maven repositories, Jira issues, a source code repository (like SVN). All roles involved in the creation,  and execution of a process can collaborate and discuss about the related processes and artifacts in context. There are many features that <em>could</em> be used, but the tool does not force off &#8216;how to do it. &#8220; Depending on how an organization intends to deal with the process of mastering BPM, the tool can be used accordingly. Various benefits can be gained, like people are more involved, solutions become more realistic (i.e. successful), and the design / development process is documented properly and subsequently decisions can be traced back to how, when and why.</p>
<p><a href="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti_cycle.png"><img class="aligncenter size-full wp-image-339" title="Activiti Cycle" src="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti_cycle.png" alt="" width="613" height="731" /></a></p>
<p><strong>Integration into Alfresco</strong></p>
<p>Integration of Activiti into other systems is the responsibility of the embedding system. Activiti is intended as a &#8216;generic&#8217; BPM engine. Luckily Activiti and Alfresco share the same standards (including SpringSurf), making integration with Alfresco &#8220;relatively easy&#8221;. The integration team at Alfresco is mainly engaged in creating &#8220;activity types&#8221; (to automate manipulations of the repository), mapping Alfresco users to Activiti (and the effects on authorization in Alfresco), and integrating task-related user interface elements to the Alfresco (Share) frameworks ( think of the service forms to generate the task screens).</p>
<p><strong>Current Status</strong></p>
<p>At the moment Aactiviti is a project heavily in development. The first release candidate is out just this afternoon (we count Version 5 RC1 at time of writing). According the roadmap, seven point-releases are scheduled from the start of 2010 up till July (5.1 &#8211; 5.7) , one each month. Although it is an <em>indication</em> in terms of planning, it is a tight schedule, but also a serious indication of the rapid pace of product development. At this point in time Activiti is not the enterprise grade, production ready competition to ‘commercial’ mature BPM solutions. As the pace of development continues, it could soon be suitable for &#8220;simple processes&#8221;, provided the required basic blocks are there. Personally I&#8217;m really excited for what the integration with Alfresco will bring&#8230; Take a look at the <a href="http://activiti.org/" target="_blank">activiti.org</a> web site for the Today’s current status, and keep an eye on the roadmap!</p>
<p><small><br />
Screenshots are reused from the activiti.org web site<br />
<a href="http://wiki.alfresco.com/wiki/CMIS" target="_blank">CMIS</a> is the Content Management Interoperability Standard managed by OASIS.<br />
</small><span style="font-size: 11px;"><a href="http://incubator.apache.org/chemistry/opencmis.html" target="_blank">OpenCMIS</a> (is part of the Apache Chemistry project) is a Java implementation of the CMIS standard.<br />
</span><span style="font-size: 11px;"><a href="http://en.wikipedia.org/wiki/Business_Process_Modeling_Notation" target="_blank">BPNM2.0</a> is a standard managed by the <a href="http://www.omg.org/" target="_blank">OMG</a> (Object Management Group).<br />
</span><span style="font-size: 11px;"><a href="http://www.jboss.org/jbpm" target="_blank">JBPM</a> is the open source workflow engine of <a href="http://jboss.org/" target="_blank">JBoss</a>, so owned by <a href="http://www.redhat.com/jboss" target="_blank">RedHat</a>.</span></p>
<div class="shr-publisher-330"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.allesovereim.nl/2010/11/activiti-the-enterprise-grade-open-source-bpm-promise/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Activiti, de enterprisewaardige open source BPM belofte</title>
		<link>http://www.allesovereim.nl/2010/11/activiti-de-enterprisewaardige-open-source-bpm-belofte/</link>
		<comments>http://www.allesovereim.nl/2010/11/activiti-de-enterprisewaardige-open-source-bpm-belofte/#comments</comments>
		<pubDate>Tue, 02 Nov 2010 05:28:59 +0000</pubDate>
		<dc:creator>tjarda.peelen</dc:creator>
				<category><![CDATA[Techniek]]></category>
		<category><![CDATA[alfresco]]></category>
		<category><![CDATA[Business Process Management]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://www.allesovereim.nl/?p=331</guid>
		<description><![CDATA[Tijdens de Alfresco Developers Conference oktober 2010 was ook het Activiti team aanwezig om in een tweetal presentaties de visie en werking van deze enterprise-class (to-be) Open Source BMP engine. Activiti is een Open Source project met als doel een stand-alone, enterprise waardige BPM engine te leveren waar processen in kunnen worden gedefinieerd, beheerd en waar omheen kan worden samengewerkt door de betrokkenen. 
De prestaties en mogelijkheden van de BPM engine zijn al indrukwekkend, hoewel de tools nog niet 'af' of productierijp zijn in een ECM setting. Activiti is een mooie BPM engine, een enterprise waardige belofte.]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>(There is also an <a href="http://www.allesovereim.nl/2010/11/activiti-the-enterprise-grade-open-source-bpm-promise/" target="_self">English version</a> of this posting)<br />
(Find the Spanish version in <a href="http://blyx.com/2010/11/03/activiti-bpm-la-promesa-del-software-libre-empresarial/" target="_blank">this article</a>)</p>
<p>Enige tijd geleden is <a href="http://www.alfresco.com/" target="_blank">Alfresco</a> samen met <a href="http://signavio.com/" target="_blank">Signavio</a> en <a href="http://www.camunda.com/" target="_blank">Camunda</a> gestart met <a href="http://activiti.com/" target="_blank">Activiti</a>, een open source alternatief voor enterprise waardige BPM. De eerste vraag die bij mij opkwam was &#8216;waarom een nieuwe BPM engine&#8217;? Op zich zijn er wel wat kanttekeningen bij de JBPM implementatie in Alfresco op het terrein van ontwikkelen en beheersen van processen. Maar daarnaast had Alfresco meer redenen om eens goed opnieuw over een BPM engine na te denken. Enerzijds zitten er beperkingen aan de <a href="http://www.gnu.org/copyleft/lesser.txt" target="_blank">LGPL</a> licentie (danwel de perceptie daarvan) waardoor Activiti project wordt ontwikkeld onder de <a href="http://www.apache.org/licenses/LICENSE-2.0" target="_blank">Apache 2</a> licentie.</p>
<p><strong>Visie</strong></p>
<p>Daarnaast is JBPM een &#8216;technisch georiënteerde&#8217; BPM engine. In het Activiti project heeft men de visie dat populair gezegd workflow ook &#8216;sociaal&#8217; zou moeten kunnen zijn. Let wel, moet <em>kunnen</em> zijn. Het Activiti project schrijft niet voor <em>hoe</em> een oganisatie het gebruik van BPM organisatorisch moet inrichten, het wil gezamenlijk samenwerken kunnen faciliteren.</p>
<p><span id="more-331"></span></p>
<p>Traditioneel is het ontwikkelen van (bedrijfs)processen het domein van &#8216;analisten&#8217;. Deze ontwikkelen processchema&#8217;s, bepalen dat taken bij rollen terecht moeten komen, en welke stappen er geautomatiseerd plaats moeten vinden. Vervolgens gaan ontwikkelaars met deze plannen aan de slag om er &#8216;uitvoerbare code&#8217; van te maken. Activiti heeft een aantal elementen in zich waardoor meer samenwerking gefaciliteerd kan worden tussen de analisten, beheerders en de ontwikkelaars. Enerzijds wordt gebruik gemaakt van BPNM2.0. Dit is een inmiddels breed geaccepteerde open standaard om processen te modelleren. Het mooie van deze 2.0 versie van de standaard is dat naast de schema taal, ook de achterliggende, definiërende XML gestandaardiseerd is. Activiti kan deze XML rechtstreeks uitvoeren. Dit heeft tot voordeel dat de analist en de ontwikkelaar van hetzelfde schema en dezelfde onderliggende XML uitgaan. Ze kunnen elkaars werk lezen, sterker nog, ze zouden op dezelfde schema&#8217;s kunnen werken. En dat communiceert erg effectief.  Anderzijds heeft Activiti een module in ontwikkeling waar de analist en de ontwikkelaar gezamenlijk kunnen werken aan processen, en ook bestaande processen kunnen gaan verbeteren. Ik kom hier later in dit artikel op terug.</p>
<p>Voor Alfresco is het pad van Activiti een doordachte actie. Zo zijn twee &#8216;founding fathers&#8217; van JBPM bij Alfresco in dienst getreden om deze open source BPM engine te realiseren. Daarnaast is de kennis en ervaring in huis hoe een open source project te draaien. Alfresco is natuurlijk zelf open source, maar met OpenCMIS, ook door Alfresco gestart en inmiddels gedoneerd aan de Apache foundation, heeft Alfresco inmiddels de nodige ervaring met het opstarten van Apache projecten. Activiti moet daar uiteindelijk ook terecht gaan komen.</p>
<p><strong>Het concept</strong></p>
<p>Laten we voor het gemak even uitgaan dat er bij het ontwikkelen en in bedrijf houden van BPM processen de volgende vier rollen betrokken zijn:</p>
<ul>
<li>De analist overziet het      bedrijfsdomein en bepaalt hoe processen lopen.</li>
<li>De ontwikelaar neemt het      resultaat van de analist over, en ontwikkelt een technische workflow die      uitvoerbaar is, die allerhande geautomatiseerde en door mensen uitvoerbare      taken kan bevatten.</li>
<li>De procesdeelnemer is de      persoon in de organisatie die een taak uit een proces krijgt toegewezen om      iets bij te dragen aan het proces,</li>
<li>De beheerder is de rol die er      voor zorgt dat het BPM systeem blijft werken. &#8216;vastzittende&#8217; taken of      processen kunnen worden herstart, verwijderd, en deze rol heeft inzicht in      waarom processen functioneren zoals ze doen in termen van foutmeldingen,      performance etc.</li>
</ul>
<p>Aan de hand van het schema hieronder zal ik uitleggen hoe een en ander bij elkaar hoort in Activiti.</p>
<p><a href="http://www.allesovereim.nl/wp-content/uploads/2010/10/activiticontext-nl.png"><img class="aligncenter size-full wp-image-336" title="activiticontext-nl" src="http://www.allesovereim.nl/wp-content/uploads/2010/10/activiticontext-nl.png" alt="" width="613" height="265" /></a></p>
<p><strong>Activiti Engine</strong></p>
<p>Het kloppend hart van het systeem is de Activiti Engine. Dit is het werkpaard waar de BPNM2.0-formaat XML wordt &#8216;ingevoerd&#8217; en afhankelijk van de beschreven logica processtappen worden aangemaakt en uitgestuurd. Deze geavanceerde engine heeft een extreem lage overhead in termen van geheugengebruik en database opslag. De engine genereert taken die naar personen/groepen/rollen gestuurd kunnen worden. Daarnaast kunnen er &#8216;systeemtaken&#8217; worden gegenereerd om allerhande geautomatiseerd werk uit te voeren. Denk aan document manipulaties in een DMS (via CMIS?), communicatie met andere systemen middels bijvoorbeeld webservices, mutaties in (externe) databases, etc.  Processen die niet meer actief zijn worden verplaatst naar een archief.</p>
<p>Activiti wordt geleverd met veel typen activiteiten/taken. Daarnaast is er een eenvoudige API waarmee organisaties hun eigen taken kunnen definieren, die vervolgens kunnen worden gemodelleerd en door de engine kunnen worden uitgevoerd. Op deze wijze kan de maatwerk activiteit eenduidig worden hergebruikt, via een nette user interface worden geconfigureerd, en daarmee ook door de analisten worden gebruikt.</p>
<p>De Activiti Engine is zo open mogelijk. Naast uitgebreide toegang middels een Java API, kan via een <a href="http://en.wikipedia.org/wiki/Representational_State_Transfer" target="_blank">REST</a> interface een applicatie van alles aan de engine &#8216;vragen&#8217;. Dit betekent dat de applicaties die van de Activiti Engine gebruik maken niet noodzakelijkerwijs ook in Java geprogrammeerd hoeven te zijn. De programmeertaal van de omliggende applicaties is dus middels het REST protocol ontkoppeld. Hierdoor kan de takenlijst bijvoorbeeld in een PHP of een .NET applicatie worden gepresenteerd. De Activiti Engine kan worden bevraagd op allerlei manieren, om werklijsten te genereren, statistieken te vergaren, om lopende processen op meerdere manieren terug te kunnen vinden. Denk bijvoorbeeld aan zoeken naar lopende processen waarbij de numerieke waarde van een attribuut groter is dan x, geordend op startdatum.</p>
<p>Activiti is ontworpen als enterprise BPM engine, dus ook om schaalbaar te zijn. Het is voorbereid om te functioneren in de cloud, instances van de engine kunnen parallel draaien, en het integreert desgewenst naadloos in een bestaande applicatie in het Spring framework.</p>
<p>De laatste feature die ik niet onvermeld wil laten is de mogelijkheid om processen automatisch te kunnen testen. Er zijn faciliteiten ingebouwd om middels JUnit testen (versie 3 en 4) het proces te kunnen testen. Dit is fantastisch nieuws omdat dit heel veel klikken scheelt om de vele paden van een proces te doorlopen. Dit wordt door de engine gefaciliteerd door een proces tijdelijk te deployen, uit te voeren (maar evt. versturen van email etc. achterwege te laten), en weer te &#8216;undeployen&#8217;. Aan de hand van de JUnit resultaten kan worden bepaald of de businesslogica in het proces functioneert zoals het bedoeld is.</p>
<p><strong>Activiti Explorer</strong></p>
<p>De Activiti Explorer is de ingang voor de procesdeelnemers. Hier zijn de persoonlijke- en de groepstaaklijsten te vinden. Groepstaken kunnen worden geclaimd, en taken kunnen worden uitgevoerd. Dit betekent dat gegevens kunnen worden ingevuld in een formulier, of proceskeuzes kunnen worden gemaakt. Taken kunnen aan andere gebruikers worden toegekend, en er kunnen zelfs ter plekke ad-hoc taken worden gemaakt om iemand iets onder de aandacht te brengen. Ook zouden sub-taken kunnen worden aangemaakt om de taak ad-hok op te delen in een aantal deeltaken.</p>
<p><a href="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti-explorer-mytasks.png"><img class="aligncenter size-full wp-image-337" title="Activiti Explorer Mytasks" src="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti-explorer-mytasks.png" alt="" width="575" height="335" /></a></p>
<p><strong>Activiti Modeler</strong></p>
<p>De Activiti Modeler is ontwikkeld door Signavio. De Modeler is een web-applicatie waarin processen volgends de BPMN2.0 standaard kunnen worden gemodelleerd. De procesdefinities worden in het BPMN2.0 formaat op de server opgeslagen. Net zoals het SpringSurf framework communiceert de modeler ook middels JSON met de server. In de standaard Activiti configuratie worden de processen op de server op het filesysteem opgeslagen.</p>
<p><a href="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti-modeler.png"><img class="aligncenter size-full wp-image-370" title="activiti-modeler" src="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti-modeler.png" alt="" width="575" height="335" /></a></p>
<p><strong>Activiti Designer</strong></p>
<p>Activiti Designer is een Eclipse plugin. Op deze wijze kan de ontwikkelaar zowel het grafisch proces als de xml en de code naast elkaar zien en hier eenvoudig tussen switchen. Eigenlijk gewoon precies wat je ervan zou verwachten.</p>
<p><strong>Activiti Probe</strong></p>
<p>Activiti Probe geeft overzicht over lopende processen. Deze applicatie is typisch voor beheerder-achtige rollen. Hier kan men ondermeer bekijken of de BPM engine nog  functioneert, resource gebruik, hoe staat het met de logfiles. Ook kunnen proces instances naar de engine worden gedeployed. Als het proces onverhoopt niet goed loopt kunnen taken opnieuw worden &#8216;gestart&#8217;, of het proces worden gestopt of herstart.</p>
<p>Op dit moment is Activiti Probe &#8216;beperkt&#8217; tot het tonen van systeeminstellingen en relevante database tabellen. Dit is in mijn beleving beter dan de &#8216;commandline tool&#8217; die op dit moment met Alfresco wordt geleverd. Het is echter nog niet wat van een Enterprise tool mag worden verwacht. Een meer grafische tool met mogelijkheden tot zoeken van processen op allerlei kenmerken zit in de planning.</p>
<p><a href="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti-probe.png"><img class="aligncenter size-full wp-image-338" title="activiti-probe" src="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti-probe.png" alt="" width="575" height="335" /></a></p>
<p><strong>Activiti Cycle</strong></p>
<p>Activiti Cycle is een module waar het sociale, samenwerkingaspect wordt uitgewerkt. Traditioneel is BPM het domein van business analisten, terwijl aan de andere kant juist de ontwikkelaars met het samenstel van code, repositories en het BPM proces het geheel laten &#8216;werken&#8217;. Met Aciviti Cycle wordt een omgeving gecreëerd waar samengewerkt kan worden rond processen. Processen kunnen relaties hebben met &#8216;artifacts&#8217;, zoals (bv. visio) bestanden, maven repositories, Jira issues, een source code repository (zoals SVN). Er zijn mensen die bij een proces betrokken zijn, en over allerhande zaken in context kunnen discussiëren. Er zijn veel features die kunnen worden gebruikt, maar de tool dwingt niet af &#8216;hoe het moet&#8217;. Afhankelijk van hoe een organisatie met BPM om wil gaan kan de tool worden ingezet. Voordelen die gerealiseerd kunnen worden zijn dat de mensen meer betrokken zijn, oplossingen realistischer (dus succesvoller) worden, en het ontwerp/ontwikkelproces wordt gedocumenteerd en achteraf het gevolgde pad is te reconstrueren (waarom en op basis waarvan zijn besluiten genomen).</p>
<p><a href="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti_cycle.png"><img class="aligncenter size-full wp-image-339" title="Activiti Cycle" src="http://www.allesovereim.nl/wp-content/uploads/2010/11/activiti_cycle.png" alt="" width="613" height="731" /></a></p>
<p><strong>Integratie met Alfresco</strong></p>
<p>Integratie met systemen is de verantwoordelijkheid van de systemen zelf. Activiti is bedoeld als &#8216;generieke&#8217; BPM engine. Gelukkig delen Activiti en Alfresco dezelfde standaarden (waaronder SpringSurf) , waardoor integratie met Alfresco als &#8216;relatief eenvoudig&#8217; omschreven mag worden. Het integratie team aan Alfresco zijde is vooral bezig op het gebied van &#8216;activiteit-typen&#8217; (automatische mutaties op de repository), koppeling van Activiti gebruikers naar Alfresco gebruikers, en het inpassen van taakgerelateerde user interface elementen aan de Alfresco (Share) frameworks (denk aan de forms-service om taakschermen te genereren).</p>
<p><strong>Huidige status</strong></p>
<p>Op dit moment is het Activiti project zwaar in ontwikkeling. Er wordt hard gewerkt aan een release candidate (we tellen versie 5 op moment van schrijven). Volgens de roadmap zijn de eerste 7 punt-releases (5.1 &#8211; 5.7) gepland, en wel maandelijks vanaf januari. Dat is een straf schema, een indicatie qua planning, maar ook een indicatie van het hoge tempo van ontwikkeling van het product. Activiti is nog niet productiewaardig als concurrent van de &#8216;commerciële&#8217; BPM oplossingen. Als het tempo van ontwikkeling doorgaat, is het binnenkort wellicht geschikt voor &#8216;eenvoudige processen&#8217; waarvoor dan al wel voldoende functionaliteit aanwezig is. Persoonlijk zit ik heel erg te wachten wat de integratie met Alfresco gaat opleveren&#8230; Let vooral op de <a href="http://activiti.org" target="_blank">activiti.org</a> website voor de exacte huidige status, en houd een oog op de roadmap!</p>
<hr /><small><br />
De screenshots zijn hergebruikt van de activiti.org site<br />
<a href="http://wiki.alfresco.com/wiki/CMIS" target="_blank">CMIS</a> is de Content Management Interoperability Standard in beheer bij OASIS. <a href="http://incubator.apache.org/chemistry/opencmis.html" target="_blank">OpenCMIS</a> (een onderdeel van het Apache Chemistry project) is er een Java implementatie van.<br />
<a href="http://en.wikipedia.org/wiki/Business_Process_Modeling_Notation" target="_blank">BPNM2.0</a> is een standaard in beheer bij de <a href="http://www.omg.org/" target="_blank">OMG</a> (Object Management Group)<br />
<a href="http://www.jboss.org/jbpm" target="_blank">JBPM</a> is de open source workflow engine van <a href="http://jboss.org/" target="_blank">JBoss</a>, dus van <a href="http://www.redhat.com/jboss" target="_blank">RedHat</a><br />
</small></p>
<div class="shr-publisher-331"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.allesovereim.nl/2010/11/activiti-de-enterprisewaardige-open-source-bpm-belofte/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Alfresco ondergaat flinke renovatie</title>
		<link>http://www.allesovereim.nl/2010/10/alfresco-ondergaat-flinke-renovatie/</link>
		<comments>http://www.allesovereim.nl/2010/10/alfresco-ondergaat-flinke-renovatie/#comments</comments>
		<pubDate>Thu, 28 Oct 2010 20:10:25 +0000</pubDate>
		<dc:creator>Paul Baan</dc:creator>
				<category><![CDATA[Techniek]]></category>
		<category><![CDATA[alfresco]]></category>
		<category><![CDATA[Enterprise Content Management]]></category>

		<guid isPermaLink="false">http://www.allesovereim.nl/?p=327</guid>
		<description><![CDATA[Vorige week was de Alfresco Developer Conference in Parijs, waar de laatste stand van zaken rondom de technische kant van Alfresco voor ontwikkelaars uit de doeken werd gedaan. Namens VLC was Bas Peters aanwezig, hij heeft een verslag over zijn bezoek geschreven op zijn weblog. Het artikel is in het Engels.]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Vorige week was de Alfresco Developer Conference in Parijs, waar de laatste stand van zaken rondom de technische kant van Alfresco voor ontwikkelaars uit de doeken werd gedaan. Namens <a href="http://www.vlc.nl">VLC </a>was Bas Peters aanwezig, hij heeft een verslag over zijn bezoek geschreven <a href="http://bpeters.tumblr.com/post/1407065851/alfresco-is-being-refactored">op zijn weblog</a>. Het artikel is in het Engels.</p>
<div class="shr-publisher-327"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.allesovereim.nl/2010/10/alfresco-ondergaat-flinke-renovatie/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NOiV: Open Source ECM voor gemeenten</title>
		<link>http://www.allesovereim.nl/2010/05/noiv-open-source-ecm-voor-gemeenten/</link>
		<comments>http://www.allesovereim.nl/2010/05/noiv-open-source-ecm-voor-gemeenten/#comments</comments>
		<pubDate>Mon, 17 May 2010 19:46:00 +0000</pubDate>
		<dc:creator>Paul Baan</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[alfresco]]></category>
		<category><![CDATA[document management]]></category>
		<category><![CDATA[Enterprise Content Management]]></category>
		<category><![CDATA[gemeente]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://www.allesovereim.nl/?p=203</guid>
		<description><![CDATA[Het actieplan Nederland Open in Verbinding (NOiV) heeft tot doel overheidsinstanties aan te moedigen gebruik te maken van Open Standaarden en Open Source. Ondanks de toenemende mogelijkheden en de druk van de overheid lopen Nederlandse overheidsinstellingen achter bij andere Europese landen. Bas Peters van VLC heeft een whitepaper geschreven waarin de mogelijkheden van Open Source [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Het actieplan Nederland Open in Verbinding (NOiV) heeft tot doel overheidsinstanties aan te moedigen gebruik te maken van Open Standaarden en Open Source. Ondanks de toenemende mogelijkheden en de druk van de overheid lopen Nederlandse overheidsinstellingen achter bij andere Europese landen.<br />
<span id="more-203"></span><br />
Bas Peters van VLC heeft een whitepaper geschreven waarin de mogelijkheden van Open Source Document Management (of Enterprise Content Management) worden beschreven, specifiek voor Nederlandse gemeentes. Daarin gaat hij ook in op de unieke eigenschappen die Alfresco heeft, en de professionele mogelijkheden die er voor beheer, implementatie en support van Alfresco te krijgen zijn. Het whitepaper laat zien dat er geen excuses meer zijn om als Nederland achter te lopen als het gaat om de toepassing van open source voor document management gerelateerde oplossingen.</p>
<p><a href="http://www.vlc.nl/sites/default/files/files/Alfresco%20open%20source%20alternatief.pdf">Het paper is te downloaden op de website van VLC</a>.</p>
<div class="shr-publisher-203"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://www.allesovereim.nl/2010/05/noiv-open-source-ecm-voor-gemeenten/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

