W drodze do Continuous Integration

CI

Ciągła Integracja, czyli Continuous Integration to jedna z dwunastu praktyk Ekstremalnego Programowania, stosowana podczas rozwoju oprogramowania. Polega na scalaniu wyników pracy zespołu programistycznego, poprzez włączanie ich do głównego repozytorium. Dla nowoczesnych systemów e-commerce oznacza to stałe podnoszenie jakości oprogramowania, a także ciągły jego rozwój. Częstsze dostarczanie klientom nowych funkcji i aktualizacji systemu, jest kluczem do osiągnięcia przewagi konkurencyjnej.  

Integracja kolejnych zmian w kodzie powinna odbywać się przynajmniej raz dziennie. Zintegrowane wersje kodu poddawane są natomiast automatycznym testom, a następnie, po sprawdzeniu ich poprawności, wprowadzane są do systemów klientów. Celem ciągłej integracji jest większa efektywność pracy członków zespołu, ponieważ mają stały dostęp do aktualnego postępu prac swojego teamu. CI ułatwia także prewencyjne wykrywanie ewentualnych błędów. Dla klientów oznacza to stały dostęp do aktualnej wersji oprogramowania.

Proces ciągłej integracji

Wszystkie zmiany, wprowadzane do repozytorium przez programistów, testowane są automatycznie. Najpierw przeprowadzane są testy unitowe, czyli sprawdzana jest poprawność kodu. Później następuje proces kompilacji kodu, tzw. build, na którym przeprowadzane są testy akceptacyjne. W przypadku wykrycia błędów, system natychmiast informuje o tym odpowiednie osoby przypisane do projektu. Jeśli natomiast testy się powiodą, zmiany przygotowywane są do wdrożenia i stają się kandydatami do wprowadzenia do bazowej wersji oprogramowania. W założeniu mogą więc od razu działać w systemie klienta.

Korzyści CI

Continuous Integration ma wiele zalet. Po pierwsze, klient ma zawsze dostęp do najnowszej wersji oprogramowania. Po drugie, zwiększa się efektywność w łączeniu prac zespołu programistycznego nad konkretnymi projektami, co skutkuje znaczną oszczędnością roboczogodzin pracowników. CI ułatwia także wykrywanie ewentualnych błędów, a co za tym idzie szybszą reakcję na ich rozwiązanie. Natomiast w przypadku konieczności wycofania wcześniej wprowadzonych zmian do systemu, zapewnia bezpieczeństwo bazy danych.

Prace nad Continuous Integration są częścią długoterminowej wizji rozwoju oprogramowania i-systems, która ma na celu systematycznie podnoszenie jakości dostarczanych rozwiązań.

Zobacz również artykuły o podobnej tematyce

Podsumowanie Q3 2017 w i-systems
wolczanka

Lipiec, sierpień, wrzesień już za nami. Przyszedł więc czas na kolejne podsumowanie, tym razem trzeciego kwartału 2017 roku w i-systems....

Lokalne środowisko z użyciem Vagranta
1

W jednym z poprzednich artykułów mój imiennik, czyli Łukasz wspominał jak uprościć sobie pracę z wirtualnymi hostami. Ja zaprezentuję kolejny...

Drużyna i-systems
jim_blog

Na początku i-systems tworzyło tylko dwóch pracowników. Dziś firma to zgrany i silny zespół niemal 100 specjalistów z branży e-commerce, którzy...

Zobacz więcej wpisów