Doradztwo przy zwinnych praktykach technicznych

Test Driven Development – TDD

Większość systemów informatycznych, które były tworzone przez ostatnie lata, nie cieszyła się dobrym pokryciem testami, a wręcz samą możliwością łatwego testowania, tym samym odpowiednią jakością. Na szczęście już od wielu lat programiści wprowadzają element testowania samego kodu w codzienne aktywności.

TDD to zarówno zbiór praktyk inżynierskich, jak i sam proces działania. W zbiór praktyk najczęściej wchodzi tworzenie testów jednostkowych, praktyki clean code, refactoring czy praca z legacy code. Zaczynamy od napisania testu, dopiero potem logiki go spełniającej, a kończąc na refaktoryzacji. Powtarzając ten proces właśnie w takiej kolejności, dostarczamy wysokiej jakości kod zawsze pokryty testami, zapewniając rozwiązanie o wysokiej standardach.

Box-14
Box-15

Behavior Driven Development – BDD

Pomimo dość dużego sukcesu TDD, wielu praktyków miało wciąż problem. Testy były oderwane od kontekstu biznesowego i konkretnych kryteriów akceptacyjnych. BDD w odróżnieniu od TDD kładzie nacisk na zrozumienie potrzeb klienta, języka jakim się posługuje, kontekstu w którym się porusza i jak będzie korzystał z produktu.

Sam proces rozpoczyna się od opisania scenariuszy testowych i kryteriów akceptacji, definiując założenia (ang. Given). Następnie opisujemy nieprzechodzącą specyfikację obiektu w kodzie, dopisujemy logikę, definiując zdarzenia (ang. When) i ich rezultaty (ang. Then), kończąc na refactoringu. Jeżeli jakość nie jest satysfakcjonująca, powtarzamy cykl do momentu otrzymania wysokiej jakości kodu oraz zrozumiałych testów akceptacyjnych zarówno przez osoby techniczne, jak i biznesowych odbiorców.

Programowanie w parach i weryfikacja kodu

Praca w parach, a w szczególności programowanie w parach (ang. Pair Programming) pozwala naprzemiennie tworzyć oprogramowanie, pełniąc funkcję kierowcy i nawigatora, cyklicznie się zmieniając. Dzięki temu osoby są maksymalnie skupione i poprzez kolaborację oraz inteligencję grupową dostarczają wysokiej jakości rozwiązanie wielokrotnie efektywniej, niżeli robiliby to w pojedynkę.

Weryfikacja kodu (ang. Code Review) z kolei pozwala na sprawdzenie jakości kodu przez drugiego specjalistę często na wspólnych sesjach, który może dostrzec nieefektywne rozwiązanie, jak również zaproponować solidniejsze podejście. Dzięki takiej praktyce ponownie jako efekt synergii nasze rozwiązania posiadają wyższą jakość i nie generują długu technicznego.

Box-16
Box-17

Ciągła integracja i dostarczanie – CI / CD

Tworzenie wysokiej jakości rozwiązań nie jest możliwe, a przynajmniej nie jest efektywne bez odpowiedniego zaplecza technicznego i praktyk pozwalających na szybkie testowanie, wprowadzanie zmian na środowisko i weryfikację założeń. Dlatego powstały takie praktyki jak automatyzacja testów (ang. Test Automation), ciągła integracja (ang. Continuous Integration), oraz ciągłe wdrażanie (ang. Continuous Deployment).

Dzięki tym praktykom możliwe jest efektywne dostarczanie rozwiązań i weryfikacja założeń bez przestojów, tak aby zespoły mogły skupić się na dostarczaniu wartości biznesowej.

Nasi trenerzy i coachowie doradzają, pomagają wprowadzać i stosować praktyki techniczne. Skontaktuj się z nami, opisz swoje plany, bolączki, wyzwania. Wspólnie możemy zwiększyć efektywność w Twojej organizacji.

Zapytaj o wsparcie lub zaproponuj spotkanie

Zainteresowany? Kliknij w przycisk i przejdź do formularza zgłoszeniowego już teraz.

Szkolenia wewnątrz organizacji

Box-1

Złóż zapytanie o szkolenie zamknięte

Konsulting i Doradztwo

Box-2

Dowiedz się więcej o konsultacjach

Informacje o zniżkach i promocjach

Scroll to top
[contact-form-7 id="2045" title="Dofinansowanie KFS"]

Uzyskaj dofinansowanie na szkolenie z KFS lub Bazy Usług Rozwojowych

Twoje imię i nazwisko:
Twój adres email:
Twój numer telefonu:
Przepisz kod poniżej: captcha
[contact-form-7 id="2045" title="Dofinansowanie KFS"]

Uzyskaj dofinansowanie na szkolenie z KFS lub Bazy Usług Rozwojowych

Twoje imię i nazwisko:
Twój adres email:
Twój numer telefonu:
Przepisz kod poniżej: captcha