CI - Continuous Integration - Foundation

Kort om undervisningen

I softwareudvikling er Continuous Integration en betegnelse for en praksis, hvor udviklerne integrerer deres arbejde ofte, helst flere gange om dagen. Kvaliteten af de mange integrationer kontrolleres ved at have en (ellere flere) byggeserver(e) til at bygge og teste de mange integrationer, eksekvere statiske kodeanalyser, måle og profilere performance samt generere dokumentation ud fra source koden. Målet er med Continuous Integration, at øge softwarewarekvaliteten samt at sænke leveringstiden ved at skære ned på lange test- og fejlretningsperioder.

I dette kursus gennemgår vi, hvordan et udviklingsprojekt kan implementere de vigtigste teknikker knyttet til Continuous Integration. Kurset har en stærk hands-on orientering, hvor der veksles mellem præsentation af teori og arbejde på en case i praksis, sådan at deltagerne kommer hjem, ikke bare med nye ideer, men med en tillært praksis, der kan føres videre i det aktuelle udviklingsprojekt.

Indhold

Kurset gennemgår nedenstående discipliner og tools, men med fokus på principper, så deltagerne også vil være klædt på til at overføre ideerne til et andet tool i vedkommendes organisation.

  • Continuous Integration principper og best practices
  • Deployment pipelines 
  • Repository branching, merging from the IDE: Git Bitbucket
  • Automatisk build: Jenkins, Gradle og Docker
  • Deployment til Artifactory
  • Automatisk deployment
  • Release management
  • Statisk kodeanalyse: Findbugs, PMD m. fl.
  • Test-driven Development & Unit tests: JUnit, Spring, m.fl.
  • Automatiserede integrationstest: Spring Test.
  • Automatiserede funktionelle test til frontend: Selenium/BrowserStack

Forudsætninger

Det forudsættes, at deltagerne allerede har basalt kendskab til Git, SubVersion eller andet Source Control Management system, eksempelvis via kurset

 

 

Kendskab til Ant eller Maven er desuden en fordel. Kendskab til Gradle fås gennem kurset

 

 

Målgruppe

Kurset er henvendt til udviklere og arkitekter, der savner inspiration til / viden om, hvordan udviklingsmiljøer og testmiljøer bygges op efter moderne Continuous Integration-principper.

Efter kurset kan deltageren

 

  • Sikre en høj kodekvalitet, hvor fejl kan rettes og deployes hurtigt uden risiko for at introducere nye problemer.
  • Eksekvere automatiske test på en byggeserver.
  • Automatisere deployment til forskellige miljøer.
  • Foretage release management fra udvikling til produktion.
  • Benytte Git, Git Bitbucket, Jenkins, Docker og test frameworks til browsere.

 

Videre forløb

Hvis der efter kurset er behov for at gå mere i dybden med analysering af performance problemer, er kurset Java - Performanceoptimering - Foundation en mulighed. 

Derudover er kurset Java EE - Java Enterprise Edition 7 - Foundation relevant, hvis der i højere grad er brug for inspiration til arkitektur og design af applikationer.

Eksempel fra materialet på CI - Continuous Integration - Foundation.

Kontakt gerne Lund&Bendsen ved hjælp af vores kontaktformular eller ring til telefon (+45) 33 861 861 for at høre nærmere.