Dziękujemy za wysłanie zapytania! Jeden z członków naszego zespołu skontaktuje się z Państwem wkrótce.
Dziękujemy za wysłanie rezerwacji! Jeden z członków naszego zespołu skontaktuje się z Państwem wkrótce.
Plan Szkolenia
QA/CI
- Czym jest QA?
- Czym jest CI?
- Koszty rozwoju oprogramowania, refaktoryzacji i naprawy błędów
- Identyfikacja i zrozumienie projektu
- Korzyści dla organizacji
DDD
- Rozwój oprogramowania oparty na wymaganiach biznesowych, założenia DDD
- Problemy w komunikacji IT-Biznes
- Model domenowy
Najlepsze Praktyki
- Zasada KISS i DRY
- Standardy kodowania
- Tworzenie wielokrotnego użycia kodu poprzez OOP i wzorce projektowe
- Identyfikacja i redukcja złożoności cyklomatycznej
Metryki Oprogramowania
- Waga metody na klasę
- Odpowiedź na klasę
- Głębokość drzewa dziedziczenia
- Powiazania między obiektami
- Brak spójności metod
- Liczba dzieci
- Złożoność cyklomatyczna
- Metryki klas
- Metryki modelu
- Metryki do wykorzystania
Testowanie Oprogramowania
- Co, kiedy i jak testować?
- Metoda "białej skrzynki" i "czarnej skrzynki"
- Rola testowania w metodologiach zwinnych
- TDD tylko potencjalny wzrost kosztów projektu
- Testy jednostkowe z JUnit (Java), PHPUnit (PHP)
- Testy behawioralne z JBehave (Java), Behat i Mink (PHP)
- Testy funkcjonalne
Refaktoryzacja
- Czym jest refaktoryzacja?
- Dług technologiczny
- Zapach kodu
- Wzorce refaktoryzacji
Dokumentacja
- Rola dokumentacji w metodologiach zwinnych
- Co dokumentować?
- Rodzaje dokumentacji
- Dokumentacja a metodyki zwinne, czyli (Działające oprogramowanie ponad obszerną 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 linii kodu (Java), phploc (PHP)
- UCDetector (Java), phpdcd (PHP)
- Jdepend (Java), phpdepend (PHP)
- Serwer Ciągłej Integracji Jenkins
Zwinne i CI/QA
- Planowanie i rozwój przyrostowy
- Akceptacja zmian
- Krótkie etapy
- Interdyscyplinarny zespół
- Extreme Programming, Przegląd kodu
- Ludzie i interakcje ponad procesy i narzędzia
Podsumowanie
- Dyskusja
- Pytania
- Jak rozpocząć proces wdrażania?
Wymagania
Znajomość procesów rozwoju oprogramowania
14 godzin
Opinie uczestników (1)
Czas na wymianę informacji między uczestnikami.