Co to jest inżynieria wydania?
Inżynieria wydania lub releng to proces przygotowywania kompletnego oprogramowania komputerowego do dystrybucji. Może to obejmować wiele odrębnych dyscyplin programowania i inżynierii, a nie wszystkie definicje inżynierii wersji są takie same dla różnych firm. Niektóre z zadań, które mogą być zaangażowane w inżynierię wydań, to kompilowanie kodu źródłowego, śledzenie i utrzymanie narzędzi programistycznych i środowisk, utrzymywanie biblioteki wydań przez cały okres życia programu, a czasem implementacja wdrażania oprogramowania na działającym serwerze lub systemie. Kilka korzyści z posiadania dedykowanego inżyniera ds. Wydań w cyklu opracowywania oprogramowania to lepsze doświadczenie dla użytkowników końcowych - ponieważ metody wydania są najpierw testowane - lepsza ogólna dokumentacja programu podczas aktualizacji i rodzaj kontroli jakości w sytuacjach, w których różne części programu pochodzą z oddzielnych źródeł.
Podczas opracowywania oprogramowania dochodzi do momentu, w którym aplikacja jest ukończona i musi zostać przekazana klientom lub zainstalowana na serwerze na żywo, aby można było z niej korzystać. Bez inżyniera wydania proces ten może wymagać od programistów skompilowania programu za pomocą narzędzi programistycznych, a następnie przeniesienia plików binarnych na docelowy nośnik lub serwer. Niektóre z problemów, które można napotkać w tym procesie, polegają na tym, że program może mieć zależności, które nie są określone ilościowo, pewne zmiany mogą zostać zapomniane lub ostatecznie proces niekoniecznie może być odtwarzalny w przyszłości.
Jedną z największych części inżynierii wydania jest śledzenie postępów w rozwoju programu. Może to oznaczać użycie systemu kontroli wersji lub innego oprogramowania nie tylko do śledzenia i oznaczania każdego kroku programu podczas jego rozwoju, ale także do przechowywania migawek programu, aby można je było później przywołać. Oprócz samej obsługi kodu źródłowego, pomyślne zbudowanie programu wymaga przechowywania informacji o używanych narzędziach i różnych bibliotekach lub innych wykorzystywanych zasobach. Ostatecznym celem jest możliwość ponownej kompilacji programu na dowolnym etapie jego rozwoju, niezależnie od systemów programistycznych użytych do jego tworzenia.
Inną możliwą częścią inżynierii wydania jest przygotowanie aplikacji do dystrybucji wśród klientów. Po skompilowaniu programu do plików binarnych opracowuje się i eksploruje metody instalowania programu na komputerze użytkownika końcowego. Może to obejmować pisanie programu instalacyjnego lub testowanie programu w różnych sytuacjach, jeśli jest on aktywny, aby upewnić się, że działa zgodnie ze specyfikacjami. Inżynieria wydania czasami wymaga faktycznej instalacji programu wiele razy na wielu systemach, aby zapewnić, że różne konfiguracje lub błędy są obsługiwane we właściwy sposób.