Programinės įrangos inžinerija prieš sistemų inžineriją
Inžinerija yra disciplina, susijusi su gamtos mokslų, matematikos ir kitų rūšių žinių taikymu kuriant ir tobulinant produktus ir paslaugas, gerinančius gyvenimo kokybę. Inžineriją galima suskaidyti į daugelį disciplinų, kurios specializuojasi daugelyje sričių, naudodamos skirtingų tipų technologijas. Programinės įrangos inžinerija ir sistemų inžinerija yra dvi tokios disciplinos. Programinės įrangos inžinerija užsiima aukščiausios kokybės programinės įrangos projektavimu ir tobulinimu, o sistemų inžinerija yra inžinerijos subdisciplina, nagrinėjanti bendrą inžinerinių projektų valdymą jų gyvavimo ciklo metu..
Kas yra programinės įrangos inžinerija?
Programinės įrangos inžinerija užsiima aukščiausios kokybės programinės įrangos projektavimu ir tobulinimu. Programinės įrangos inžinierius analizuoja, projektuoja, kuria ir išbando programinę įrangą. Programinės įrangos inžinieriai vykdo programinės įrangos inžinerijos projektus, kurie paprastai turi standartinį programinės įrangos gyvavimo ciklą. Pavyzdžiui, „Water Fall“ programinės įrangos gyvavimo ciklas apims analizės etapą, projektavimo etapą, kūrimo etapą, bandymo ir patikros etapą ir galiausiai įgyvendinimo etapą. Analizės etape nagrinėjama problema, kurią reikia išspręsti, arba galimybės, kuriomis reikia pasinaudoti kuriant programinę įrangą. Kartais šį etapą vykdo atskiras verslo analitikas. Tačiau mažose įmonėse programinės įrangos inžinieriai gali atlikti šią užduotį. Projektavimo etapas apima projektavimo dokumentų, tokių kaip UML diagramos ir ER diagramos, vaizduojančią bendrą kuriamos programinės įrangos struktūrą ir jos komponentus, parengimą. Kūrimo etapas apima programavimą arba kodavimą naudojant tam tikrą programavimo aplinką. Testavimo etape siekiama patikrinti, ar programinėje įrangoje nėra klaidų ir ar ji atitinka visus kliento reikalavimus. Galiausiai sukurta programinė įranga įgyvendinama kliento svetainėje (kartais - atskiras diegimo inžinierius). Pastaraisiais metais sparčiai populiarėjo kitos programinės įrangos kūrimo metodikos, siekiant dar labiau pagerinti programinės įrangos inžinerijos proceso efektyvumą. Pvz., „Agile“ metodai sutelkti dėmesį į laipsnišką vystymąsi su labai trumpais vystymosi ciklais. Programinės įrangos inžinerijos profesija yra labai vertinama dėl labai aukšto atlyginimo.
Kas yra sistemų inžinerija?
Sistemų inžinerija yra inžinerijos disciplina, nagrinėjanti bendrą inžinerinių projektų valdymą jų gyvavimo ciklo metu (daugiau dėmesio skiriant fiziniams aspektams). Čia nagrinėjama logistika, komandos koordinavimas, automatinė mašinų kontrolė, darbo procesai ir panašios priemonės. Dažniausiai sistemos inžinerija sutampa su pramonės inžinerijos, valdymo inžinerijos, organizacinio ir projektų valdymo ir net programinės įrangos inžinerijos koncepcijomis. Sistemų inžinerija dėl šios priežasties įvardijama kaip tarpdisciplininė inžinerijos sritis. Sistemos inžinierius gali atlikti sistemos projektavimo, reikalavimų kūrimo, reikalavimų tikrinimo, sistemos bandymo ir kitus inžinerinius tyrimus.
Kuo skiriasi programinės įrangos inžinerija nuo sistemų inžinerijos?
Skirtumas tarp sistemų inžinerijos ir programinės įrangos inžinerijos nėra labai aiškus. Tačiau galima sakyti, kad sistemos inžinieriai daugiau dėmesio skiria vartotojams ir domenams, o programinės įrangos inžinerija daugiau dėmesio skiria kokybiškos programinės įrangos diegimui. Sistemos inžinierius gali susidoroti su nemaža aparatūros inžinerijos dalimi, tačiau paprastai programinės įrangos inžinieriai sutelks dėmesį tik į programinės įrangos komponentus. Sistemų inžinieriai gali turėti platesnį išsilavinimą (įskaitant inžinerijos, matematikos ir informatikos mokslus), o programinės įrangos inžinieriai - iš informatikos arba kompiuterių inžinerijos..