Continous Integration 2017-01-28T12:12:09+00:00

Continous Integration

Kontinuerlig Integration och test (CI)

En nyckelfaktor vid agil utveckling och något som ofta nämns som något av det viktigaste för att nå framgång i projekten är att integrera tidigt och ofta. Att bygga silos och spara integration till slutet har visat sig misslyckas gång på gång genom åren. Det gäller att hitta felen snabbt, och att fixa dem snabbt!

Tanken med kontinuerlig integration är att man frekvent (ofta vid varje leverans) bygger, integrerar och testar den nya koden med resten av systemet, för att säkerställa att allting fortfarande fungerar som det ska och för att alltid ha en fungerande version av mjukvaran tillgänglig att rulla ut. Detta sker via en uppsättning automatiserade tester som triggas av nya leveranser och ger ett utfall.

Tester och integration görs ofta i olika steg beroende på hur systemet ser ut i form av systemtyp, storlek och antal moduler. Testmiljön bör testa saker som ofta är problematiska tidigt, och ge snabb feedback till användaren, men samtidigt göra gedigna tester som ger god täckning av helheten för att säkerställa kvalitet.

Detta uppnås ofta med flera olika steg, mer och mer omfattande, som i tur höjer kvaliteten på aktuell mjukvaruversion allt eftersom den passerar teststegen. Viktigt är också att testerna och miljön underhålls för att hela tiden skydda systemet mot införande av fel. Ny funktionalitet måste efter hand säkras upp med nya tester i CI.