Program komputerowy

Z Encyklopedia Zarządzania
Wersja do druku nie jest już wspierana i może powodować błędy w wyświetlaniu. Zaktualizuj swoje zakładki i zamiast funkcji strony do druku użyj domyślnej funkcji drukowania w swojej przeglądarce.

Program komputerowy (zwany również oprogramowaniem komputerowym lub aplikacją) jest zbiorem poleceń, które zostały napisane przez programistę (specjalistę) w języku komputerowym. Obejmuje ono uporządkowany ciąg znaków - porządek operacji, jakie powinien wykonać komputer. Program należy wczytać do pamięci RAM komputera przed jego uruchomieniem i dalszym korzystaniem.

Programy stanowią nowatorskie narzędzie, które daje możliwość wykorzystania ich do np. tworzenia i opracowywania zadań testowych. Są one uniwersalne, więc stosuje się je w różnych dziedzinach[1]. Przykładowo mogą być ułatwieniem w matematyce, dzięki specjalnie stworzonym programom do obliczeń. Zapisane są w nich podstawy, które są wykorzystywane do wykonywania ważnych działań matematycznych. Jest to spore ułatwienie, gdyż dane i wyniki nie zostaną zagubione jak mogłyby w przypadku zapisania ich na kartce papieru, a pozostają w pamięci programu. Łatwiej również o wprowadzanie i testowanie na przykład nowych sposobów obliczeń. Dodatkowo wykorzystywane są w przedsiębiorstwach, nie mogących dokonać zakupu dużo droższego programu komputerowego[2].

TL;DR

Program komputerowy to zbiór poleceń napisanych przez programistę w języku komputerowym, które muszą być wczytane do pamięci RAM przed uruchomieniem. Programy mają wiele zastosowań, są uniwersalne i mogą być wykorzystywane w różnych dziedzinach. Języki programowania określają reguły tworzenia programu. Dobry program powinien spełniać cechy takie jak uniwersalność, modyfikowalność, niezawodność, zrozumiałość i efektywność. Nowe technologie i procesory umożliwiają tworzenie coraz wydajniejszych programów. Programy komputerowe mają wiele zalet, takich jak dostępność, niski koszt, niezawodność, proste działanie i łatwy dostęp do wyników.

Języki programowania

Realizacja programu komputerowego musi być zgodna z tzw. językiem programowania. Są to reguły określające, które z uporządkowanych ciągów znaków są programem i jakie opisuje obliczenia. Język programowania pozwala programowi wdrożyć szczegółową specyfikację, która jest niezbędna w komputerze[3]. Przykładowymi językami programowymi są HTML, JavaScript, XML, BASIC lub COBOL. Większość pierwszych języków szybko stało się przestarzałych i zastąpionych przez te najnowsze, ponieważ programowanie szybko się rozwija oraz powstają nowe potrzeby[4].

Jakość oprogramowania

W swojej książce M. Witold i P. Mironowicz wspominają, że dobra jakość oprogramowania wiąże się ze spełnieniem określonych cech. Te cechy zostały przedstawione wraz z normą ISO 9126 w 5 kategoriach, zawierających około 25 atrybutów. Osoby wykazują szczególne zainteresowanie programami komputerowymi ze względu na wysoki poziom ich jakości. Program jest brany pod uwagę pod kątem spełnienia oczekiwań (potrzeb) użytkownika, zwanych trafnością. Jej określenie może być łatwiej lub trudniej (w przypadku dużych systemów) stwierdzane. 5 przykładowych cech, będących najbardziej pożądanymi właściwościami programu, to[5]:

  • Uniwersalność - dbanie o tę cechę oszczędza pracy w przyszłości, uczyni dany program rzetelnym oraz wspomaga proces przewidywania modyfikacji występujących w przyszłości. Uniwersalność programu oznacza, że jest on niezależny od niektórych globalnych właściwości sprecyzowanego zestawu danych wejściowych.
  • Modyfikowalność - po pewnym czasie należy wprowadzać kontrolowane zmiany pewnej części programu, podczas gdy reszta pozostanie nienaruszona. Program powinien być tak sformułowany, aby można było zauważyć “trwałość poszczególnych jego części". Jeżeli program został napisany z odpowiednimi komentarzami, posiada przejrzysty podział itp., to jest on o wiele łatwiejszy do modyfikowania. Jest to istotne przy ciągłym i szybkim rozwoju technologii.
  • Niezawodność - komputery charakteryzują się wysoką niezawodnością, więc jest to oczekiwane przez użytkowników również od oprogramowania, lecz te niezawodności różnią się między sobą. Program nie niszczy się sam oraz nie podlega zniszczeniu fizycznemu, jednak w długotrwałym okresie użytkowania może wystąpić “zjawisko zużycia oprogramowania". Od niezawodności oprogramowania zależy niezawodność systemu informatycznego - określa ona czy system jest zdolny do ciągłego dostarczania usług, które są oczekiwane przez użytkownika, pomimo chwiejnego środowiska.
  • Zrozumiałość - struktura i długość programu mają znaczny wpływ na jego zrozumienie - łatwiej przeanalizować krótszy program, chociaż takie zdarzają się być bardziej złożone. Aby program był mniej skomplikowany powinien mieć strukturę zbliżoną do tzw. struktury drzewa. Dodatkowo ważny jest odpowiedni język programowania. Zrozumiałość programu komputerowego nie jest jednoznaczna z jego czytelnością.
  • Efektywność - ta własność to czas, w jakim użytkownik otrzyma odpowiedź od programu oraz złożoność pamięciowa. Dla poprawy tej własności warto zwrócić uwagę na te fragmenty, które są najmniej wydajne lub w dalszych krokach podczas wnikania do struktur i algorytmów danych (lecz wtedy program może się stać mniej zrozumiały i bardziej skomplikowany).

Rozwój programowania

Nowo pisane programy komputerowe, muszą brać pod uwagę postęp zachodzący w metodologii. Dzięki istnieniu tanich procesorów z wysoką mocą obliczeniową specjaliści mogą tworzyć coraz wydajniejsze programy. Nowopowstałe procesory, na przykład mikroprocesory, posiadają skróconą listę rozkazów, co ułatwia pisanie programu komputerowego programiście[6].

Zalety programów komputerowych

Programy komputerowe znajdują zastosowanie w wielu płaszczyznach. Niewątpliwie posiadają wiele pozytywnych aspektów. W swojej publikacji Sermet E., Musiał A. oraz Paszek M. opisując użycie programów komputerowych do obróbki danych geologicznych podają niektóre z nich. Oto przykłady[7]:

  • dostępność - sprzęt informatyczny wraz z oprogramowaniem jest ogólnie dostępny dla użytkowników
  • cena - koszt zakupu programu komputerowego jest relatywnie niski
  • niezawodność - dobrze napisany program bezbłędnie dokona dokładnych obliczeń
  • proste, zrozumiane i szybkie działanie
  • łatwy dostęp do wyników i możliwość modyfikacji
  • duży zasób pamięci - programy komputerowe mieszczą i zapisują tysiące informacji
  • design thinking - dzięki modernizacji mamy możliwość zaprogramowania maszyn, które wyręczą ludzi i precyzyjnie dokonają za nich ciężkie prace


Program komputerowyartykuły polecane
Język wysokiego poziomuDrukarka 3DCADJavaBaza NoSQLJavaScriptAktualizacja oprogramowaniaWzorce projektoweSQL

Przypisy

  1. Sychowicz, A., Biernacki, A., Suchecka, M. (2011), s. 35-37
  2. Warwas, K., Tengler, S. (2015), s. 1618-1623
  3. Ben-Ari M. (2006), s. 2-3
  4. Witold M., Mironowicz P. (2018), s. 9-42
  5. Witold M., Mironowicz P. (2018), s. 9-42
  6. Witold M., Mironowicz P. (2018), s. 9-42
  7. Sermet E., Musiał A., Paszek M. (2016), s. 12-16

Bibliografia

Autor: Angelika Trólka