Versjonering av Cerebrum

Beskrivelse av versjoneringa av USIT sin Cerebrum-variant. Dette er ei minimal versjonering, med formål å informere eksterne og interessentar.

1   Introduksjon

Versjoneringa har som formål å informere partnarar, tenesteeigarar og andre om kva som skjer med Cerebrum, på ein enkel måte. Merk at formålet retter seg i mindre grad mot utviklarane. Dette kjem av at Cerebrum utviklast fortløpande, så utviklarar forholder seg som oftast alltid til siste versjon, eventuelt eigne feature branches.

2   Oppsett

Versjoneringa består av komponentane:

  • Versjonar lagrast i Jira.
  • Publiseringa skjer på nettsida Aktuelt om Cerebrum.
  • Koden taggast per versjon.

2.1   Versjonering

  • Versjonar følger større endringar i funksjonalitet, og får kortnamn basert på dette. Til dømes EIS.1 for ny versjon der største endringa er ny integrasjon med ePhorte, og EIS.2 for oppdateringar av denne.
  • Ny versjon vert ikkje publisert og annonsert før etter at endringane er i produksjon.
  • Versjonane har indirekte samanheng med UAIT sine sprintar, men kjem etter prodsetting. Fokuset er funksjonalitet, så om ein sprint har to store endringar, kan det vurderast to ulike versjonar, spesielt om dei har ulike prodsettingstidspunkt.
  • Småsaker leggast med i næraste versjon dei vart prodsatt i. Sidan Cerebrum oppgraderast fortløpande, vil ikkje dette stemme 100% overens.
  • Tenestegruppeeigar styrer og prioriterer kva som skal med i versjonar, i samråd med tenestegruppeleiar, UAIT og KIA.
  • Tenestegruppeleigar har oppgava med å holde Jira ved like, og publiserer nye versjonar.
  • Merk at denne versjoneringa har ingenting med versjoneringa av database-tabellar i Cerebrum, til dømes versjon 0.9.6 for core.

2.2   Jira

Cerebrum sitt Jira-prosjekt, CRB, oppdaterast fortløpande etterkvart som nye versjonar vert planlagt. Issues knyttast mot versjonen dei vert fiksa i.

2.3   Publisering

Ei ny sak publiserast under Aktuelt om Cerebrum kvar gang ein ny versjon vert nådd. Sida kan også innehalde andre saker, men saker om versjonar publiserast under Versjonshistorikk. Sida er opent tilgjengeleg, så alle interesserte kan følge med, evt. abonnere på feeden.

Oversikten lagast med klipp-og-lim frå Jira, frå HTML-versjonen av release notes, modifisert noko for bedre framvising:

<h3 class="accordion">Ny funksjonalitet</h3>

...

<h3 class="accordion">Forbedringer</h3>

...

<h3 class="accordion">Feilrettinger</h3>

...

Når alt i ny versjon av Cerebrum er gått i prod, vil tenestegruppeleiar publisere ny versjon i Vortex, under Aktuelt om Cerebrum.

2.4   Tagging

Utviklarane får oversikt over versjonar ved at vi tagger på siste commit i ein versjon. Døme på ein ny tag:

git tag -a v2015-1

Utviklarane kan då blant anna hente ut koden for ein viss versjon og sjå differansen mellom ulike versjonar.

Tagginga gjerast på commiten, dvs. HEAD, som er gått i produksjon. Denne vil då måtte vere i master-branchen.

3   Rutiner

Rutiner som må utførast for å holde versjoneringa ved like.

Etter UAIT sin Sprint Planning - når vi veit kva som skal utviklast:

  • Ny versjon opprettast i Jira, med beskrivelse av fokuset.
  • Alle stories for sprinten knyttast mot versjonen.

Etter prodsetting av ny funksjonalitet:

  • Sjå over alle Jira-issues som er resolved i perioden frå forrige versjon til no, og sett fix version til denne versjonen. Dette er for å også få vist fram feilfiksar.
  • Versjonen vert Released i Jira.
  • Ei ny sak leggast ut under Versjonshistorikk, med utklipp frå Jira. Ved behov må namna på stories gjerast meir forståelege, og saka bør inneholde meir forklaringar så det er handgripeleg for målgruppa. Sikkerhetsmessige stories kan vurderast å bli fjerna, men vi ønsker å informere om dette også.

4   Vidare arbeid

  • Innføring av versjonering kan brukast for meir langsiktig planlegging av nye versjonar av Cerebrum. Dette er riktignok ikkje beint fram, sidan UAIT har ulike produkt, mange interessentar og prioriteringar som flyttast fortløpande, så det vil ikkje nødvendigvis kunne bli ein fast plan, men meir ein plan under endring. Sjå også Jira sin dokumentasjon om Road map.
  • Versjoneringa kan brukast i namngiving dersom vi begynner å pakke og publisere Cerebrum for prodsetting, i staden for å sjekke ut koden direkte frå repoet. Dette kan også automatiserast.

5   Referansar

Av jokim
Publisert 13. feb. 2015 12:32 - Sist endret 13. jan. 2023 12:35