Kursplan
Kvalitetssikring/Kontinuerlig integrasjon
- Hva er kvalitetssikring?
- Hva er kontinuerlig integrasjon?
- Kostnadene ved programvareutvikling, refaktoring og feilretting
- Identifisering og forståelse av prosjektet
- Vinst for organisasjonen
DDD
- Programvareutvikling basert på forretningskrav, antakelser DDD
- Kommunikasjonsproblemer IT-Forretning
- Domene Modell
Beste praksis
- KISS-prinsippet og DRY
- Kode standarder
- Oppretting av gjenbrukbar kode gjennom OOP og desigmønstre
- Identifisering og reduksjon av syklomatisk kompleksitet
Programvaremetrikker
- Vektmetode per klasse
- Svar For en Klasse
- Dybde av Arvstre
- Kobling mellom objekter
- Mangel på samhørighet av metoder
- Antall barn
- Syklomatisk kompleksitet
- Metrikker klasse
- Modell Metrikker
- Metrikker for bruk
Programvaretesting
- Hva, når og hvordan teste?
- Metoden for "hvite-boks" og "svarte boks"
- Rollen til testing i agile metodologier
- TDD kun en potensiell økning i kostnadene for prosjektet
- Enhetstesting med JUnit (Java), PHPUnit (PHP)
- Atferdstester med JBehave (Java), Behat og Mink (PHP)
- Funksjonelle tester
Refaktoring
- Hva er refaktoring?
- Teknologigjeld
- Kode lukt
- Refaktoringmønstre
Dokumentasjon
- Rollen til dokumentasjon i agile metodologier
- Hva skal dokumenteres?
- Typer dokumentasjon
- Dokumentasjon og agile metodologier, eller kan man kalle det (Fungerende programvare fremfor omfattende dokumentasjon)?
- Standard XMI
- Automatisk generering av dokumentasjon fra Javadoc (Java), ApiGen (PHP)
Verktøy og miljø CI
- Verktøy og miljø CI
- PMD (Java), phpmd (PHP)
- CPD (Java), phpcpd (PHP)
- Linjer med kode-teller (Java), phploc (PHP)
- UCDetector (Java), phpdcd (PHP)
- Jdepend (Java), phpdepend (PHP)
- Jenkins Continuous Integration Server
Agile og CI/QA
- Planlegging og inkrementell utvikling
- Omfavne endringer
- Korte faser
- Tverrfaglig team
- Extreme Programming, Kodegjennomgang
- Individer og interaksjoner over prosesser og verktøy
Sum
- Diskusjon
- Spørsmål
- Hvordan begynner man prosessen med implementering?
Krav
Kjennskap til programvareutviklingsprosesser
Referanser (5)
Engasjerende og praktisk øving.
Balavignesh Elumalai - Scottish Power
Kurs - SonarQube for DevOps
Maskinoversatt
Trener har inngående erfaring og godt fortalt i handling. Dybden av kunnskapen og lidenskapen for undervisning er høyt verdsatt.
Anup Kumar - SMR Automotive Mirrors Stuttgart
Kurs - Jenkins 2: Building CI/CD Pipelines
Maskinoversatt
The trainer was very well organized. He explained about all the tools required for the training in the beginning. The trainer happily clarified all the doubts and practical use cases were discussed.
Vivek Verma - Global Knowledge Network Training Ltd
Kurs - DevOps Practical Implementation and Tools
Very detailed, trainer knows the subject very well and has covered a lot of topics
Gabriel Kelly Navarro - Opswerks
Kurs - Advanced Spinnaker
Luke was very knowledgeable, patient, and very open to satisfy my curiosity, for example I asked him to generate errors to see how system will response, etc. He would go above and beyond to answer questions or demonstrate the functionalities, even some of my questions were out of the class scope. He gave me a real experience with the system. I definitely will take another class with him and recommend him as a teacher for others. Thank you Luke!.