Aktualizacja oprogramowania

Aktualizacja oprogramowania
Polecane artykuły

Aktualizacja oprogramowania (ang. Software update) - jest to zestaw zmian w programie komputerowym lub zestaw danych, zaprojektowany w celu aktualizacji, naprawy lub ulepszenia danego oprogramowania. Obejmuje to naprawdę błędów, poprawę funkcjonalności, użyteczności lub wydajności.

A. Johnson oznajmia, że warto zapoznać się z kluczowymi elementami oraz zasadami przed aktualizacją[1].

Rodzaje oprogramowania

Praktycznie na wszystkich platformach komputerowych, oprogramowanie można podzielić na kilka ogólnych kategorii, w zależności od wspólnej funkcji, typu lub zakresu zastosowania. Istnieją trzy ogólne sfery:

Zastosowania lub wykonywanych zadań

  • Aplikacje (ang. Application software) - oprogramowanie, które wykorzystuje system komputerowy do wykonywania specjalnych funkcji lub funkcji rozrywkowych wykraczających poza podstawową obsługę samego komputera.
  • Oprogramowanie systemowe (ang. System software) - oprogramowanie, które zarządza prawidłowym zachowaniem sprzętu komputerowego lub wykorzystywane do prawidłowego działania innych oprogramowań.
  • Złośliwe oprogramowanie (ang. Malware) - niepożądane oprogramowanie, opracowane w celu uszkodzenia lub zakłócania pracy komputera. Programy Malware są w pewnym stopniu powiązane z przestępstwami komputerowymi, natomiast niektóre programy są tworzone w formie żartu.

Platformy, na której oprogramowanie jest wykorzystywane

  • Aplikacje desktopowe (ang. Desktop applications) - takie jak Microsoft Office, przeglądarki internetowe (również na smartfonach), czyli programy użytkowe poszerzające funkcjonalność komputera.
  • Oprogramowanie serwerowe (ang. Server software) - zarządza przechowywaniem danych oraz ich przesyłem w sieci.
  • Javascript - oprogramowanie mające swoje zastosowanie na stronach internetowych.
  • Wtyczki (ang. Plugins) i rozszerzenia to oprogramowanie, które rozszerza lub modyfikuje funkcjonalność innego oprogramowania i wymaga użycia tego samego oprogramowania w celu jego działania.

Narzędzia do programowania również są oprogramowaniem w postaci programu lub aplikacji. Twórcy używają ich do tworzenia, debugowania lub konserwacji własnych oprogramowań.

Rodzaje aktualizacji

Każde urządzenie, które posiadamy może otrzymać aktualizacje. Wyróżniamy aktualizacje takie jak:

  • Hotfix - poprawka lub aktualizacja szybkiej naprawy (ang. QFE update), która zawiera, paczkę informacji (często w postaci jednego lub więcej plików), które służą do rozwiązania problemu w oprogramowaniu. Hotfix jest używany zazwyczaj, gdy błąd oprogramowania jest na tyle poważny, że nie mógłby czekać na wprowadzenie kolejnej aktualizacji.
  • Aktualizacja zabezpieczeń (ang. Security update) - jest to aktualizacja, stosowana w celu usunięcia luki w zabezpieczeniach. Zapobiega wykorzystania słabego punktu przez osoby niepowołane.
  • Service pack - jest to zbiór aktualizacji, poprawek lub ulepszeń oprogramowania dostarczanego w postaci pojedynczego pakietu instalacyjnego. Firmy często wydają pakiet serwisowy, gdy liczba poszczególnych poprawek do danego programu osiąga określony limit. Jest to o wiele łatwiejszy sposób, niż instalacja wielu aktualizacji.

Według K. Pytela, każdy powinien robić regularnie aktualizacje sterowników[2].

Etapy aktualizacji

Według K. Vaniea aktualizacje można podzielić na 6 etapów takich jak[3]:

  • Świadomość (ang. Awareness) - pierwszym etapem aktualizacji jest świadomość, że program tego wymaga. O aktualizacji użytkownik zazwyczaj dowiaduje się z powiadomień lub wtedy kiedy aktualizacja zacznie instalować się automatycznie. Oczywiście, istnieje możliwość sprawdzenia ręcznie, czy jest dostępna nowa wersja danego oprogramowania.
  • Podejmowanie decyzji (ang. Deciding) - po zapoznaniu się z informacją o aktualizacji, użytkownik musi zdecydować czy chce zainstalować ją teraz, przełożyć w czasie czy całkowicie zrezygnować. Wiele osób, zanim przystąpi do procesu, poszukuje informacji, opinii w sieci, aby się upewnić, że aktualizacja nie pogorszy działanie oprogramowania.
  • Przygotowanie (ang. Preparation) - Aby poprawnie przygtować się do aktualizacji, należy upewnić się, że urządzenie ma zasilanie, a także utworzyć kopii zapasowej na wypadek, gdyby aktualizacja nie powiodła się lub nie spełniała oczekiwań użytkownika. Ważnym elementem jest również wystarczająca ilość miejsca na dysku, musimy zadbać, aby tego nie zabrakło.
  • Instalacja (ang. Installation) - ten proces może wymagać interakcji użytkownika, oraz mocy obliczeniowej komputera. Aktualizacja wymaga czasu w trakcie którego, użytkownik nie może korzystać z oprogramowania. Zalecane jest zamknięcie innych programów lub w ogóle nie używanie komputera podczas instalacji aktualizacji, gdyż może to spowolnić proces lub nawet spowodować awarie systemu. Większość aktualizacji wymaga uruchomienia ponownie systemu, w celu zakończenia procesu instalacji.
  • Rozwiązywanie błędów (ang. Troubleshooting) - Częstym problemem występującym w instalatorze jest to, że może zakończyć się niepowodzeniem, pozostawiając użytkownikowi dwie możliwości, przejście procedury rozwiązywania problemu lub przywróć wcześniejszą wersję oprogramowania. Jeżeli po aktualizacji, program nie działa prawidłowo, możemy zdecydować się na reinstalacje oprogramowania lub skorzystanie z kopii zapasowej systemu.
  • Stan po aktualizacji (ang. Post-state) - po aktualizacji, każdy może wystawić własną opinie na podstawie doświadczeń podczas instalacji. Według ankiety osoby, które miały pozytywne doświadczenia, bezproblemowo mogli zaktualizować oprogramowanie oraz polepszyła się wydajność programu. Natomiast Ci co mieli negatywne doświadczenia, opisywali więcej problemów, gorszą wydajność oraz jak aktualizacja wpłynęła negatywnie na inne oprogramowanie.

Zagrożenia związane z aktualizacja

Głównym założeniem programistów jest stworzenie aktualizacji w celu ulepszenia produktu, niestety wiążą się z tym zagrożenia - w tym przypadku zagrożeniem jest możliwość pogorszenia przez aktualizację.

Aktualizacje oprogramowania wprowadzają ryzyko, że nowa wersja będzie zawierała błąd, powodując całkowitą awarie programu lub tylko częściową. Tak naprawdę każde oprogramowanie może być narażone na awarie, od darmowych programów, po ważne systemy rządowe.

Uaktualnienia mogą również spowodować negatywną opinie wśród użytkowników. Osoby korzystające z danego oprogramowania mogą preferować starszą wersję, z którą są zaznajomieni i przyzwyczajeni, nawet jeśli nowsza wersja działa zgodnie z przeznaczeniem. Często nowsze aktualizacje usuwają niektóre funkcje, zastępując je nowymi, natomiast nie zawsze wpływa to pozytywnie na funkcjonalność oprogramowania.

Ostatnim ryzykiem aktualizacji oprogramowania jest możliwość uszkodzenia urządzenie w przypadku awarii zasilania, gdy aktualizacja jest w trakcie instalacji. Jest to szczególnie duży problem w przypadku urządzeń, w których aktualizacje są zazwyczaj all-or-nothing (np. aktualizacja systemu operacyjnego). Są to aktualizacje, które nie nadają się do użytku, jeśli są tylko w części zapisane oraz mają ograniczoną możliwość odzyskania danych po nieudanej aktualizacji.

A. Johnson objaśnia, że dzięki aktualizacjom oprogramowania można zwiększyć poziom bezpieczeństwa. Jeśli aktualizacja będzie wadliwa, urządzenie może się zepsuć lub stanowić łatwy cel dla osób niepowołanych[4].

Aby zabezpieczyć się przed awariami systemu, należy zawsze zadbać o kopię zapasową. Dzięki niej, unikniemy utratę ważnych danych.

Przypisy

  1. A. Johnson 2017, s. 1
  2. K. Pytel 2010, s. 68
  3. K. Vaniea 2016, s. 3218-3224
  4. A. Johnson 2017, s. 2-3

Bibliografia

Autor: Kacper Kowalewski, Zuzanna Czudaj, Martyna Kaleta.