Bright Ideas
Karl Lausten
9862 2837
klausten@bright-ideas.dk

Versionsstyring og dokumentstyring

Dokumentstyring indeholder et element af versionsstyring, men der er grundlæggende forskelle på de to løsninger, som man skal være opmærksom på, før man vælger hvilken løsning, der er relevant i ens egen virksomhed.


er primært udviklet til software branchen. Der er nogle særlige kendetegn, som ikke nødvendigvis går igen i andre brancher:

  • Et ”program” består sædvanligvis af en række forskellige filer, som tilsammen skaber den løsning, kunden er villig til at betale for. Der kan f.eks. være en fil med selve logikken i programmet, en fil med opsætning af skærmbilledet, filer med diverse tekster på forskellige sprog, filer med brugerens eller administratorens individuelle tilpasninger og opsætninger, manualer og så videre. Alle disse filer hører sammen og skal passe sammen i en given version af programpakken.
  • Udviklingen gennemføres parallelt af en gruppe af mennesker. Ofte vil de arbejde på hver sin fil i pakken, men der vil også være situationer, hvor flere personer samtidigt arbejder på forskellige dele af samme fil.

CAD filer ligger i en særlig kategori, fordi en række delkomponenter (Parts) tilsammen udgør en enhed (Assembly). Der kan være tilknyttet styklister (Bill of Materials) og tegninger (Drawings). Der er indbyrdes relationer mellem de enkelte filer, og relationerne er som regel registreret internt i filerne. Derfor må man ikke uden videre omdøbe eller flytte enkeltfiler. Versions- eller dokumentstyringsprogrammer skal altså fungere i samspil med det CAD tegneprogram, filerne er dannet i. Mange CAD tegneprogrammer udbydes med en indbygget "Vault". I visse tilfælde kan samme Vault også benyttes som dokumentstyring for andre filtyper. Som regel er prisen for en brugerlicens dog så høj, at det ikke hænger sammen økonomisk. Løsningen vil ofte være, at kun de aktive tegnere bruger CAD systemets "Vault", og at de færdige tegninger i PDF eller DWG format overføres til en dokumentstyringsløsning, hvor alle brugere har adgang.

 

Versioner software, illustration fra SVN

Dokumentstyring er primært udviklet til andre brancher, hvor det enkelte dokument/den enkelte fil i sig selv udgør en selvstændig enhed, og hvor det typisk kun er en person ad gangen, som kan og skal redigere i filen. Der kan udmærket være tale om en serie af dokumenter, som vedrører samme sag og samme kunde, men det er op til medarbejderne selv at sikre den indbyrdes sammenhæng mellem dokumenterne som f.eks. når en rettelse i driftsregnskabet nødvendigvis medfører en tilsvarende rettelse i skatteregnskabet og måske i det overliggende moderselskabs regnskaber.
Typisk tildeles hvert dokument automatisk et nyt versionsnummer hver gang, der rettes i dokumentet. Der er dog i mange løsninger mulighed for at håndtere flere filer som et enkelt dokument med fælles versionering, og der kan være mulighed for at arbejde med dokumentsamlinger, hvor samlingen som sådan har sin egen versionering samtidig med, at hvert enkelt dokument i samlingen opretholder sin individuelle versionering.
Fokus i simpel dokumentstyring er at holde styr på, hvor sidste version af dokumentet findes, hvem der kan/skal redigere dokumentet på et givet tidspunkt, hvordan man nemmest kan finde alle relevante dokumenter ikke bare ud fra et kundenummer, men også ud fra forfatter, emne/fagområde og andre nøgleord, tidspunkt og hvad der ellers måtte være relevant, og på at styre et dokumentflow f.eks. modtagelse, godkendelse og betaling af en indkommet faktura. Dokumentstyring er beregnet til at håndtere alle virksomhedens dokumenter inklusive email, fax, breve, elektronisk dannede rapporter osv.
I forbindelse med Compliance (ISO certificering, GMP o.l.) kan der være behov for at styre versionsnumre på kontrollerede dokumenter (vejledninger, foreskrifter osv.) ud fra de godkendte versioner og ikke ud fra antallet af rettelser i et arbejdsdokument. Samtidig er der behov for at kunne redigere i en ny version af dokumentet og køre det igennem en godkendelsesproces i en lukket kreds, mens den gældende version fortsat er synlig for den brede kreds. Ofte er der tilmed behov for at arbejde med hoved- og underversioner. (Major/Minor versions), ligesom der kan være behov for samme dokument i udgaver til forskellige målgrupper eller i forskellige sprogudgaver, der ikke nødvendigvis bliver klar til frigivelse på samme tidspunkt. Det kan f.eks. håndteres ved bruge dokumentsamlinger, der indeholder både arbejdsversioner, godkendte versioner, gældende version og forældede versioner - evt. i forskellige sprog eller målgruppeudgaver. Hvert dokument i samlingen kan have sin egen opsætning af brugerrettigheder, så kun den relevante brugerkreds har adgang til netop det dokument.
Se hvordan M-Files håndterer det.

 

Versioner dokument,illustration fra M-Files

Den simple metode er at låse dokumenter, når en bruger checker dem ud for at rette i dem (Lock). Dermed har den pågældende bruger markeret, at han er ved at rette i filen. De øvrige brugere kan læse den gamle version af dokumentet, men kan ikke rette i det før, den aktive bruger har checket dokumentet ind igen med en ny version.

Den lidt mere sofistikerede metode indebærer at filer ikke bliver låst, når de checkes ud, men bliver sammenlignet med den centrale version, når de checkes ind (Merge). Hvis der er sket ændringer i brugerens version, opdateres den centrale version. Hvis flere brugere har ændret i samme fil på samme tid, undersøges automatisk om ændringerne er sket samme sted i filen. Hvis ikke, kan begge ændringer sikkert sikkert fungere sammen og begge ændringer indarbejdes i filen. Hvis ændringen vedrører samme del af filen, bliver bruger gjort opmærksom på konflikten, og det er op til bruger at løse konflikten ved enten at droppe egne ændringer, forkaste den anden brugers ændringer eller lave en fælles og bedre kombineret ændring. I denne sammenhæng er det helt afgørende, at brugerne skriver et par linier om, nøjagtigt hvad de har ændret og hvorfor i en logbog, og at alle detaljer i loggen følger filen.

Der findes værktøjer, som kan være en stor hjælp i håndtering af konflikter. Det gælder dog primært i tekstbaserede filer. Det kan være vanskeligt eller umuligt at sammenligne andre filtyper.

Uanset valget af metode skal løsningen sikre, at det er muligt at gå tilbage til tidligere versioner af et dokument, og at det fremgår klart hvornår dokumentet er rettet og af hvem. Hvis ”Merge” metoden anvendes, vil det være relevant at logbogen indeholder oplysninger for hver enkelt tilrettet linie i dokumentet.


Dokumentstyringsløsninger har normalt styr på de enkelte dokumenter og er i princippet ligeglade med, hvor de er placeret. Typisk bliver alle dokumenter blot arkiveret i en stor fælles folder og med mere eller mindre tilfældige filnavne. Styringen ligger i en database, hvor alle relevante oplysninger om dokumentet (Metadata) er gemt sammen med et link til selve dokumentet. Der er dog stor forskel på, hvordan systemerne fungerer. Visse systemer pakker hver enkelt fil ind i et "omslag", som sikrer at filen ikke kan ændres uden at systemet opdager det. Enkelte løsninger integrerer tæt med Windows Explorer (Stifinder) og registrerer derigennem ændringer på filen. En del systemer bygger på MS Sharepoint og integration med MS Office. Og en masse systemer registrerer kun det, brugerne selv aktivt taster ind vedr. ændringer i filerne. For de sidstnævnte vil det være muligt at ændre en fil udenom dokumentstyringen. I sådanne systemer er det også fortsat vigtigt, at brugerne er omhyggelige med at navngive filerne og gemme dem i et struktureret arkiv.

Versionsstyringsløsninger har derimod fokus på samlinger af filer, som typisk vil være organiseret i en træagtig struktur med systematisk navngivne foldere og filer. Databasen holder rede på, at en given version af et projekt består af en bestemt samling af filer i en bestemt struktur, hvor den enkelte fil skal være i en bestemt underfolder i en bestemt version for at løsningen som helhed fungerer. Bruger skal altså selv navngive filerne korrekt og placere dem i den korrekte folder.


I mange situationer skal et givet dokument igennem flere procedurer for at fuldføre en proces. Det kan være fakturaen fra en leverandør, der skal registreres, godkendes og betales. Det kan være en kontrakt, der skal skrives som udkast, forhandles og tilrettes i flere omgange og til sidst gennemgås af en jurist inden direktøren skriver under. Det kan være.... ja du kender selv behovet i din egen virksomhed! Vil du gerne have styr på processerne og måske få en advarsel eller automatisk sætte en anden på opgaven, hvis processen går i stå, fordi en bestemt medarbejder er på ferie eller syg, så skal du kigge på en dokumentstyringsløsning.

Har du derimod behov for at sikre dig, at alle rettelser og al dokumentation til næste version af en samling af filer er kommet på plads og er blevet testet før, versionen frigives, og har du behov for, at man kan gå i gang med udvikling af version 3, mens test og dokumentation af version 2 er undervejs, så skal du kigge på versionsstyringsløsninger.


Hvor versionsstyring oftest ”kun” omfatter den del af virksomhedens aktiviteter, som vedrører udvikling og projekter, vil dokumentstyring ofte være relevant for samtlige dokumenter i virksomheden lige fra papirbaserede dokumenter, som kan scannes og arkiveres elektronisk, over email og automatisk genererede filer til manuelt oprettede dokumenter fra medarbejdernes maskiner. Faktisk får man kun fuldt udbytte af en dokumentstyringsløsning, hvis alle dokumenter bliver omfattet. Det kan være en udfordring at få alle eksisterende dokumenter registreret i databasen med relevante data. Hvis det ikke er praktisk muligt, kan det blive nødvendigt at leve med en skæringsdato, hvorefter alle nye dokumenter bliver registreret. I en periode vil det skabe lidt ekstra bøvl, men med tiden vil de gamle dokumenter kun undtagelsesvist skulle bruges, og man får (næsten) fuld glæde af løsningen.

Dokumentstyringens database er et suverænt hjælpemiddel til hurtigt at finde relevante dokumenter i helt forskellige situationer. Til dagligt er det sikkert kunden eller en bestemt sag, der vil være udgangspunktet, men ind imellem er der måske brug for at finde alle dokumenter vedr. et bestemt fagområde på tværs af kunder og sager, eller der kan være behov for at finde alle dokumenter fra en given periode eller med en bestemt forfatter eller godkender. Gode dokumentstyringsløsninger kan ikke blot søge i databasens metadata, men kan også gennemføre en effektiv fuldtekst søgning i alt indholdet i filerne.


Når flyveren er nået godt halvvejs over Atlanten, er der ikke længere brændstof nok til at flyve tilbage – den har nået et ”point of no return”. På samme måde kan det hurtigt gå efter implementering af dokumentstyring. Det kan kræve en stor indsats at få registreret metadata på alle gamle dokumenter, men så længe de stadig står i den gamle struktur med foldere og filnavne efter bestemte regler, der gør det muligt at finde dem ud fra det vigtigste kriterie, kan man stadig droppe projektet og gå tilbage til de sædvanlige procedurer. Når først et større antal filer er arkiveret i en fælles folder med tilfældige filnavne, vil det nærmest være uoverkommeligt at vende tilbage til en løsning uden en dokumentstyringsværktøj. I værste fald bliver det også umuligt at skifte løsning. Sørg derfor altid for at den valgte løsning er i stand til at eksportere sine metadata i et format, som andre løsninger kan importere. Selv om du laver et godt forarbejde, kan der nemt opstå uventede forhold, som medfører, at det engang i fremtiden bliver nødvendigt at skifte system. Dit firma kan vokse og udvikle sig med nye aktiviteter, det kan blive opkøbt eller selv købe andre, som benytter en anden løsning, eller din leverandør kan kan lukke eller blive opkøbt. Så selv om du ikke kan flyve tilbage over Atlanten, skal du have mulighed for at lande i forskellige lufthavne på den anden side!


Hvadenten dit valg bliver versionsstyring eller dokumentstyring, er der et par ting du skal overveje omkring systemets opbygning. Databasen med oplysningerne om alle dokumenterne kræver lidt datakraft. Den skal være placeret et sted, hvor alle relevante medarbejdere kan få adgang til den, og den skal være tilgængelig fra virksomhedens kontorer men måske også fra hjemmearbejdspladser, for kørende medarbejdere og i nogle tilfælde fra alle eller udvalgte kunder og samarbejdspartnere. Desuden skal selve dokumenterne være tilgængelige, selv om de ikke nødvendigvis skal placeres samme sted som databasen. Og du vil sikkert gerne kunne regulere hvem, der skal have adgang til hvad på en bekvem måde. I langt de fleste tilfælde vil det være relevant med en client/server løsning bygget op over en server, der ikke skal lave andet. Databasen bør normalt placeres på samme server, hvorimod dokumenterne valgfrit kan placeres for sig eller blive, hvor de er i forvejen, hvis det er relevant. Dog skal de naturligvis ligge på netværksdrev – ikke på de enkelte brugeres egne maskiner.

Du kan godt installere serverdelen på din egen maskine i en enmandsvirksomhed, men det tager altså en del kræfter fra maskinen, så du sidder tilbage med en sløv arbejdshest. Desuden bliver det et problem, når du får lidt gang i butikken og ansætter den første medarbejder. Hvis du ikke allerede har en server eller flere stående på kontoret, så tænk lige over om den overhovedet skal stå der? Er du bedre tjent med en hosted løsning, hvor serveren bliver placeret i et datacenter under trygge forhold og konstant opsyn? Så skal du ikke bekymre dig om andet end en fast månedlig udgift, og du og dine folk har adgang alle de steder, hvor I kan etablere en forbindelse til internettet. Hvis det skal være egen server, så vil du i nogle tilfælde kunne nøjes med standard PC som server i kombination med en NAS-boks til dokumenterne. Det koster ikke ret meget. Til gengæld har du heller ikke samme driftssikkerhed som med en egentlig servermaskine. Hvis driftssikkerheden betyder noget, skal der ordentligt udstyr til!

Det med adgangen til data kan du styre med brugerkonti oprettet direkte i selve systemet. Men så skal brugerne logge ind en ekstra gang for at få adgang. Hvis du har en netværksløsning med en Domain Controller og dermed central styring af brugere og kodeord, bør du vælge et system, der kan integreres, så du kan styre det hele et sted fra, og så brugerne kun skal logge ind en gang.

Visse af de tilgængelige løsninger er bygget op over et kommando-linie brugerinterface. Det kan være udmærket til programmører og teknikere, men mange andre vil foretrække at løsningen er integreret i deres sædvanlige Windows eller Mac brugerflade. Check om dit foretrukne system er ordentligt integreret. Måske findes der en særlig Windows eller Mac client til den Linux løsning, du har kig på...

Husk også at få både de centrale filer og de lokale arbejdskopier af dokumenterne med i din backupløsning.


Versionsstyring

Der findes en udmærket oversigt og sammenligning af ”Revision Control Software” på Wikipedia: http://en.wikipedia.org/wiki/Comparison_of_revision_control_software. Listen omfatter både licensbetalte og open source løsninger, og der er links til leverandørerne.

”Subversion” (også kaldet SVN) er rimeligt udbredt efter hvad jeg hører. Den er som udgangspunkt kommando-linie baseret, men der findes en Windows client ”TurtoiseSVN” på http://tortoisesvn.tigris.org/

Dokumentstyring

Der er rigtigt mange løsninger at vælge imellem. En række brancher har deres egne løsninger – f.eks. Advosys til advokater, hvor dokumentstyringen blot er et modul i en sammenhængende løsning. Løsningen er måske ikke særlig avanceret, men den dækker i hovedsagen branchens behov, og den tætte integration til de øvrige moduler opvejer i de fleste tilfælde eventuelle mangler i de enkelte moduler.

Sammenligninger fra Gartner og Nucleus Research har de senere år placeret M-Files stadig bedre i "den magiske firkant"

ECM Value Matrix

Hent den seneste rapport fra Nucleus Research her

I modsætning til mange andre kendte systemer er www.M-Files tilgængeligt både for små og store virksomheder. Det er også en kommerciel løsning, som du skal betale for. Til gengæld står der en stærk og professionel organisation bag, så du er sikker på fortsat udvikling og support.

Der findes også en lang række af Open Source løsninger. Mange er dog præget af, at der skal professionelle konsulenthuse til at installere og integrere løsningerne, så de er ikke nødvendigvis billigere end kommercielle løsninger.

Endelig er der en række løsninger opbygget over tilgrænsende teknologier. Det gælder f.eks. Microsofts Sharepoint, og løsninger fra kopimaskinefirmaer og billedbehandlingsfirmaer. De har givet deres styrker i forskellige sammenhænge, men også begrænsninger der måske kommer i vejen for en mere generel anvendelse i hele virksomheden.

Vær også opmærksom på

  • Content Management Systems (CMS), som primært er beregnet til at holde styr på indholdet på en hjemmeside

  • Collaborative Software / Groupware – systemer beregnet til at facilitere samarbejde om filer, projekter, opgaver osv.

Skrevet december 2011, tilføjelser februar 2016.
Karl Lausten