Plan Szkolenia

Kontrola Jakości/CI

  • Czym jest kontrola jakości?
  • Czym jest CI?
  • Koszty rozwoju oprogramowania, refaktoryzacji i napraw błędów
  • Wykrywanie i rozumienie projektu
  • Zysk dla organizacji

DDD

  • Rozwój oprogramowania oparty na wymaganiach biznesowych, założeniach DDD
  • Problemy w komunikacji IT-Biznes
  • Model dziedziny

Najlepsze Praktyki

  • Zasada KISS i DRY
  • Standardy kodowania
  • Tworzenie powtarzalnego kodu za pomocą OOP i wzorców projektowych
  • Wykrywanie i zmniejszanie skomplikowania cyklicznego

Metryki Oprogramowania

  • Metoda Wagi na Klasę
  • Odpowiedź dla Klasy
  • Głębia Drzewa Dziedziczenia
  • Łączenie Obiektów
  • Brak spójności metod
  • Liczba dzieci
  • Skomplikowanie cykliczne
  • Metryki klasy
  • Metryki modelu
  • Metryki użytkowania

Testowanie Oprogramowania

  • Co, kiedy i jak testować?
  • Metoda "białej skrzynki" i "czarnej skrzynki"
  • Rola testowania w metodykach agilnych
  • TDD może zwiększyć koszty projektu
  • Testowanie jednostkowe z JUnit (Java), PHPUnit (PHP)
  • Testy behawioralne JBehave (Java), Behat i Mink (PHP)
  • Testy funkcjonalne

Refaktoryzacja

  • Co to jest refaktoryzacja?
  • Dług technologiczny
  • Zapach kodu
  • Wzorce refaktoryzacji

Dokumentacja

  • Rola dokumentacji w metodykach agilnych
  • Co należy udokumentować?
  • Typy dokumentacji
  • Dokumentacja a metodyki agilne, albo można nazwać (Pracujące oprogramowanie nad kompleksową dokumentacją)?
  • Standard XMI
  • Automatyczne generowanie dokumentacji z Javadoc (Java), ApiGen (PHP)

Narzędzia i Środowisko CI

  • Narzędzia i Środowisko CI
    • PMD (Java), phpmd (PHP)
    • CPD (Java), phpcpd (PHP)
    • Licznik Linijek Kodu (Java), phploc (PHP)
    • UCDetector (Java), phpdcd (PHP)
    • Jdepend (Java), phpdepend (PHP)
  • Serwer CI Jenkins

Agile i CI/KJ

  • Planowanie i inkrementalny rozwój
  • Akceptacja zmian
  • Krótkie etapy
  • Zespoły interdyscyplinarne
  • Extreme Programming, Przeglądanie kodu
  • Indywidualni i interakcje ponad procesy i narzędzia

Podsumowanie

  • Dyskusja
  • Pytania
  • Jak rozpocząć proces implementacji?

Wymagania

Znajomość procesów tworzenia oprogramowania

 14 godzin

Liczba uczestników


cena netto za uczestnika

Opinie uczestników (1)

Propozycje terminów

Powiązane Kategorie