Een
eerste factor die aan workflow raakt is de diversiteit van applicaties die in een gemiddeld bedrijf draaien. Meestal koopt
een bedrijf een software aan met een specifiek doel, een specifieke taak. Zo heeft de boekhouding haar eigen IT-programma,
de besteldienst een andere, de documenten worden nog in een derde aangemaakt. Kortom : als men echt efficient wil werken moeten
de gegevens die in de ene gecreëerd worden kunnen overgedragen worden naar de andere. Het is immers niet erg efficiënt massa's
gegevens telkens opnieuw in tevoeren.
Echte paperless office houdt dus in dat er een interface wordt opgebouwd tussen
al deze applicaties zodat de gegevens automatisch worden overgedragen en enkel nog menselijke tussenkomst vragen als er een
controle moet gebeuren bv. Ook moet dit doorgeven gestuurd worden. En hier komt Workflow weer op de proppen : het Workflowsysteem
(WFMS= Workflow Management System) zorgt ervoor dat iedere invoerder op tijd en stond op de hoogte wordt gesteld dat alle
stappen in de keten voor hem achter de rug zijn.
Maar het is natuurlijk veel efficienter wanneer de overdracht automatisch
gebeurt, via IT dus (inlezen van bestanden of gegevens die door de vorige applicatie uit de keten werden opgesteld). Ook dit
kan zonder problemen door het WFMS worden begeleid.
Een WFMS is echter niet hetzelfde als een EAI, een Enterprise
Application Integration. Dit laatste is gewoon een software die toelaat dat 2 of meer applicaties met elkaar gegevens kunnen
uitwisselen, maar de sturing ervan is niet voorzien binnen de EAI zelf. Daarenboven is het een heel stroef systeem omdat het
verplicht dat de gegevens op een bepaalde manier binnenkomen en doorgegeven worden. Een voorbeeld is een batchverwerking die
elke nacht om 1h gegevens van één DB naar een andere pompt waarmee deze tweede applicatie of een gebruiker ervan dan verder
kan werken.
Een workflowsysteem werkt anders : daar kan het gegeven bv dadelijk overgemaakt en verder verwerkt worden,
een gegeven kan ook op andere manieren in de tweede applicatie terechtkomen. Kortom :er is geen rechtstreekse causale link
meer tussen beide applicaties. De WFMS neemt de rol van trigger voor de verbinding over en hij trekt zich niet aan van welke
gegevens moeten overgemaakt worden, enkel maar het hoe en het wanneer.
Input voor het WFMS is dan ook het proces zelf,
niet de gegevens die in het proces verwerkt worden. Een wijziging van het verloop van een proces is dan ook door te voeren
zonder dat de gegevensoverdracht zelf ter sprake hoeft te komen. WFMS is dus een laagje bovenop de EAI, een laag die enkel
sturend en loggend optreedt.
Grote winst hierbij is dat wanneer een proces verandert er geen massa verschillende applicaties
weer op elkaar moeten ingesteld worden, maar dat integendeel enkel het WFMS moet herbekeken worden. Daarenboven worden de
verschillende applicaties ontlast van de taak om bij te houden welke invoer gedaan werd door wie, zodat de gegevenstransfert
veel sneller kan verlopen.
In de meeste soft zijn verwerkingsproces en gegevens onlosmakelijk met elkaar verbonden.
Bij Workflowmanagement zijn inhoud van het proces en proces echter losgekoppeld van elkaar. Dit is vooral nuttig omdat de
inhoud van de gegevens over het algemeen zeer strikt gekend is (prijs, hoeveelheid, korting) en dus normaal "van de eerste
keer goed" zit bij informatisering. Processen zijn echter andere koek : zij zijn vaak het resultaat van een lange weg van
uitproberen en verfijnen tot uiteindelijk de meest efficiënte werkmethode bereikt wordt. Door beiden uit elkaar te halen hoeft
een wijziging in het proces geen gevolgen meer te hebben voor de software die de gegevens beheert, zodat verfijnen veel efficienter
kan verlopen en een wijziging ervan geen hertesten meebrengt van het opslagsysteem van de gegevens.
Op de koop toe
is het proces ook niet meer verspreid over verschillende softwaresystemen die elk hun stukje van het totale proces beheren.
Een beter overzicht en een veel gemakkelijker onderhoud zijn het gevolg. Want wanneer een manager weet dat bij een organisatiewijziging
3 verschillende softs moeten aangepast worden zal hij minder snel geneigd zijn de stap te zetten. Daarenboven moet in zo'n
geval meestal ook de interface tussen de deelapplicaties herschreven worden. Bij Workflow hoeft dit laatste niet en kan een
procesreëngeneering met veel minder problemen doorgevoerd worden.
Met een EAI zullen veel variabelen en code dubbel
voorkomen, 1 maal per deelsysteem. Een variabele die de toestand van het dossier aanduidt en hoe deze verandert in de loop
van de tijd moet immers in elke applicatie voorkomen, een logging van de stadia van verwerking ook. Beter is deze uit de applicaties
te halen en onder te brengen in een apart "specifiek" systeem : de workflow.
Workflow houdt zich dus enkel bezig met
het proces zelf, niet met de inhoud ervan. Een fout die vaak gemaakt wordt is dat men in de workflowapplicatie programmatiestappen
opneemt die de gegevens zelf wijzigen. Dit compliceert echter een latere procedurewijziging omdat deze gevolgen kan hebben
op de inhoud van het proces. De herprogrammering verloopt veel moeilijker en het testen wordt veel complexer omdat niet enkel
de flux maar ook alle aangesproken applicaties moeten hertest worden gezien ze met de verkeerde gegevens kunnen werken.