Mappstruktur, filnamn och versionering

Mappstruktur

En genomtänkt mappstruktur är en förutsättning för ett välorganiserat forskningsmaterial. Det bör därför finnas en mappstruktur på plats redan när data börjar samlas in, med begripliga mappnamn och en tydlig utformning.

Det är bra om forskningsprojektets filer är organiserade i mappar med namn som säger något även för den som inte är så insatt i projektet – till exempel en ny medarbetare eller en intressent som vill se vad som händer i projektet.

Mappar bör:

Mappstruktur exempel
       Exempel på en mappstruktur.
  • följa en struktur med mappar och undermappar som motsvarar projektarbetets upplägg och arbetsflöde
  • ha självförklarande namn som inte är längre än nödvändigt
  • ha unika namn – undvik att ge samma namn till både en mapp och en undermapp.

Mappstrukturen gör det överskådligt för alla inblandade vad som finns var, och den ger en mall för hur man sparar och organiserar data inom projektet. Om data samlas in i omgångar kan mappar skapas för varje insamlingsomgång, med enhetliga namn på vad som samlas in, insamlingskontext och datum.

Ett tips är att i den översta mappen i mappstrukturen lägga en fil i .txt-format (en så kallad ReadMe-fil) som beskriver strukturen och hur du har valt att tänka även kring filnamn och versionering. Om du senare behöver ändra på mappstrukturen så dokumenterar du detta här.

Filnamn

Det kan snabbt bli många filer i ett forskningsprojekt så bestäm i förväg hur filerna ska namnges. På så sätt underlättas arbetet under insamling och databehandling och det blir lättare att hitta filer i mappstrukturen. Detta gäller inte minst om det är flera personer som skapar och namnger filer.

Ett filnamn bör:

  • vara unikt inte bara i sin egen mapp utan helst i hela projektet. Råkar en fil trilla ur sin mapp så ska man av filnamnet veta till vilken mapp den hör
  • ge en uppfattning om innehållet
  • vara ganska kort
  • ha versionsnumret direkt i namnet.

Versionering

Ett sätt att hålla koll på förändringar av filer och dataset är att skapa versioner av datafilerna. Den första versionen av data är oftast resultatet från datainsamlingen, sedan följer versioner med bearbetade eller rensade filer fram till en slutlig filversion. Varje ny sparad version av data bör anges med ett nytt versionsnummer (t.ex. v01, v02, v03 o.s.v.) och gärna datum när filen skapades.

En strukturerad filversionering gör det lätt att se vilken som är den senaste versionen av en datafil och vad som har gjorts i olika versioner, så att du kan se var i arbetsflödet en specifik fil befinner sig. Det är även bra att ha en lista över förändringar (antingen direkt i arbetsfilen eller i en separat fil) där det version för version dokumenteras vilka förändringar som har gjorts i respektive fil. På så sätt blir det tydligt vad som gjordes när och det går att söka sig bakåt och hitta något som fanns i en tidigare version men som senare togs bort eller ändrades.

En form av versionering är att använda en så kallad ”programfil” där alla ändringar görs och tillämpas på den låsta filen med originaldata. Detta är en vanlig metod om man arbetar i statistiska analysprogram som STATA, R och SAS. Om du gör på det här sättet så bör du göra programfilen tillgänglig (eller den del av filen som justerar datasetet). Du bör även dokumentera din kod noggrant så att andra kan förstå den. Vissa högt rankade tidskrifter kräver att även analyskoden görs tillgänglig.

Spårbarhet (proveniens)

En viktig anledning till versionering är proveniens, det vill säga dokumentationen av ett dataobjekts ursprung och historia. Du ska steg för steg kunna redogöra för vad som har gjorts med materialet om någon senare ifrågasätter projektets slutsatser och data. Då gör versioneringen det möjligt att gå tillbaka och visa hur allt har gått till.

Exempel på filnamn och versioner

Oavsett om ni är flera personer i en projektgrupp eller om du arbetar själv i projektet så bör det finnas regler för hur filer ska namnges. Det underlättar när man ska leta fram rätt fil vid ett senare tillfälle.

Tänkt dig att du har följande datafiler i ett projekt:

  • PeterS_ordlista_17jun.wav
  • talare1_ord_slutlig.wav
  • talare1_slutlig2.wav
  • talarePS_ord_ren.wav

Vad ser vi här? I vilken ordning har filerna samlats in? Vad innehåller de? Hur förhåller de sig till varandra? Är Peter S. samma person som talare 1?

Antag att filerna i exemplet ovan istället namnges på följande sätt:

  • talare1_ordlista_v00_orig.wav
  • talare1_ordlista_v01_ren.wav
  • talare1_ordlista_v02_ren.wav
  • talare1_ordlista_v03_ren_slutlig.wav

Då ser vi att samtliga filer innehåller talare 1:s läsning av en ordlista. Filerna är versioner av varandra: originalfilen ligger överst och de andra är rensade versioner av denna, med den slutliga versionen nederst. Om du väljer att ha separata mappar för respektive talare (en mapp för talare 1, en för talare 2 osv.) eller om du har olika mappar med samtliga talare och en version (t.ex. alla originalfiler) i varje mapp beror på vad som fungerar bäst för ditt projekt.

 

Tips!

När du startar ett projekt, tänk på att:

  • bestämma vilka riktlinjer för versioneringen, mappstrukturen och filnamngivningen som gäller i projektet
  • ge en person ansvar för att riktlinjerna för namngivning och versionering följs
  • uppdatera vid behov och dokumentera förändringarna.