Softwarové inženýrství je aplikace systematického , disciplinovaného, měřitelného přístupu k vývoji , provozu a údržbě softwaru , stejně jako studium těchto přístupů; tedy aplikace disciplíny inženýrství na software ( ISO/IEC/IEEE 24765:2017 ) [1] .
Termín „softwarové inženýrství“ se poprvé objevil v roce 1968 na konferenci NATO a měl podnítit hledání řešení „ softwarové krize “, která v té době probíhala . Od té doby se rozrostla do profese softwarového inženýra a oblasti výzkumu věnovaného tomu, aby byl software lepší, dostupnější, lépe podporovaný a rychleji se vyvíjel.
Money Magazine a Salary.com vyhodnotily softwarové inženýrství jako nejlepší práci v Americe v roce 2006[ upřesnit ]
Vývoj softwaru souvisí s obory informatiky , projektového managementu a systémového inženýrství .
Když se na počátku 40. let objevily první moderní digitální počítače, byly do stroje již zabudovány sady spustitelných instrukcí. Odborníci rychle pochopili, že tento přístup není příliš pohodlný. Tak se zrodila „architektura uložených programů“ neboli von Neumannova architektura . Rozdělení na „hardware“ a „software“ tedy začalo abstrakcí používanou k řešení problému výpočetní složitosti.
První programovací jazyky se začaly objevovat v 50. letech 20. století a to byl další důležitý krok v abstrakci. Hlavní jazyky jako Fortran , Algol a Cobol byly vydány na konci padesátých let minulého století, aby řešily vědecké, algoritmické a obchodní problémy. Dijkstra napsal svůj slavný článek „Přejít na prohlášení považované za škodlivé “ v roce 1968 a David Parnas představil klíčové koncepty modularity a skrývání informací v roce 1972, aby pomohl programátorům vypořádat se se stále složitějšími softwarovými systémy. Systémový software pro ovládání hardwaru s názvem „ operační systém “ byl představen Unixem v roce 1969. V roce 1967 jazyk Simula představil koncept objektově orientovaného programovacího paradigmatu .
Tyto pokroky v softwaru se setkaly s velkým průlomem v počítačové technologii. V střední-sedmdesátá léta, mikropočítač byl představen , dovolovat fandy získat jejich vlastní počítač a psát jejich vlastní programy pro to. To zase dalo vzniknout osobním počítačům (PC) a Microsoft Windows . Také v polovině 80. let se koncepty jako životní cyklus softwaru jeví jako určitý druh konsenzu pro centralizovaný vývoj softwaru. Koncem 70. a začátkem 80. let se objevilo několik nových objektově orientovaných programovacích jazyků podobných simulám, včetně Smalltalk , Objective-C a C++ .
Open source software , který se objevil na počátku 90. let, zplodil decentralizovaný styl vývoje softwaru.
Právní požadavky na licencování a certifikaci profesionálních softwarových inženýrů se po celém světě liší. Ve Spojeném království Britská počítačová společnost uděluje licence softwarovým inženýrům a členové společnosti se také mohou stát „certifikovanými inženýry“ (C.Eng) a v některých částech Kanady, jako je Alberta, Ontario a Quebec, mohou být také inženýři
V roce 2004 počítal americký úřad pro statistiku práce 760 840 softwarových inženýrů pracujících v USA. Během stejného časového období bylo v USA zaměstnáno asi 1,4 milionu odborníků z praxe v jiných smíšených inženýrských profesích. Vzhledem ke své relativní novosti jako formálního studijního oboru je softwarové inženýrství často vyučováno jako součást učebního plánu informatiky a mnoho softwarových inženýrů se dobře vyzná v informatice.
Mnoho softwarových inženýrů pracuje jako zaměstnanci nebo dodavatelé. Pracují v podnicích, vládních agenturách (civilních nebo vojenských) a neziskových organizacích. Někteří inženýři pracují na volné noze . Některé organizace mají specialisty na provádění každého z úkolů v procesu vývoje softwaru. Jiné vyžadují softwarového inženýra, který provádí mnoho nebo všechny úkoly najednou. Ve velkých projektech se lidé mohou specializovat pouze na jednu roli. V malých mohou lidé zastávat několik nebo všechny role současně.
Specializace zahrnují: v průmyslu: analytici, softwaroví architekti , vývojáři , testeři , technická podpora, středně pokročilý analytik, manažer; v akademických kruzích: učitelé, výzkumní pracovníci.
Většina softwarových inženýrů a programátorů pracuje 40 hodin týdně a asi 15 procent softwarových inženýrů a 11 procent programátorů pracovalo v roce 2008 více než 50 hodin týdně. Úrazy v těchto profesích jsou vzácné. Stejně jako u jiných profesí, které vyžadují hodně času u počítače, jsou však lidé v těchto profesích náchylnější k únavě očí, bolestem zad a nemocem rukou a zápěstí, jako je syndrom karpálního tunelu .
Software Engineering Institute nabízí certifikaci ve specifických oblastech, jako je bezpečnost, optimalizace procesů a softwarová architektura. Apple , IBM , Microsoft a další společnosti financují[ upřesnit ] vlastní zkoušky pro certifikaci. Mnoho IT certifikačních programů se zaměřuje na konkrétní technologie a jsou řízeny těmito dodavateli technologií. Tyto certifikační programy jsou navrženy kolem místa, kde budou zaměstnáni lidé používající tyto technologie.
Rozšíření certifikace „General Software Development Skills“ je dostupné prostřednictvím různých profesních komunit. V roce 2006 IEEE certifikovalo více než 575 softwarových profesionálů jako „Certified Software Development Professional“ (CSDP). V roce 2008 přidali základní certifikaci známou jako „Certified Software Development Associate“ (CSDA). ACM měla na počátku 80. let profesionální certifikační program, který byl přerušen kvůli nedostatku zájmu. ACM na konci 90. let také zvažovala certifikaci profesionálních softwarových inženýrů, ale nakonec rozhodla, že taková certifikace není vhodná pro profesionální praxi vývoje softwaru.
British Computing Society vyvinula právně uznávanou profesionální certifikaci nazvanou Chartered IT Professional (CITP) a je dostupná pouze pro řádné členy (MBCS). Softwaroví inženýři mají nárok na členství v Institution of Engineering and Technology a mohou se odpovídajícím způsobem kvalifikovat jako autorizovaný inženýr . V Kanadě, Canadian Information Processing Society také vyvinula právně uznávanou profesionální certifikaci nazvanou Information Systems Professional (ISP). V Ontariu v Kanadě mohou softwaroví inženýři, kteří vystudovali kanadskou inženýrskou akreditační radu (CEAB), úspěšně složili zkoušku Professional Practice Examination (PPE) a mají alespoň 48 měsíců praxe softwarového inženýra, získat licenci prostřednictvím PEO. “) a se mohou stát profesionálními inženýry (P.Eng).
Znalosti programování jsou předpokladem pro to, abyste se stali softwarovým inženýrem. V roce 2004 IEEE Computer Society vydala SWEBOK , který byl publikován jako norma ISO/IEC 19759:2004, popisující množství znalostí, které by podle nich měl získat kvalifikovaný softwarový inženýr se čtyřletou praxí. Mnoho lidí vstupuje do této profese po absolvování nebo absolvování odborné školy. Standardní kurikulum pro International Bachelor of Software Engineering bylo definováno CCSE a aktualizováno v roce 2004. Řada univerzit má programy softwarového inženýrství. Od roku 2010 existuje ve Spojených státech 244 prezenčních programů, 70 online kurzů, 230 specializovaných programů, 41 výzkumných programů a 69 certifikačních programů. Na ruských univerzitách existuje samostatná oblast školení 09.03.04 "Softwarové inženýrství".
Kromě vysokoškolského vzdělání mnoho společností financuje stáže pro studenty, kteří se chtějí věnovat kariéře v oblasti informačních technologií. Tyto postupy mohou studentovi ukázat zajímavé skutečné výzvy, kterým softwaroví inženýři čelí každý den. Podobné zkušenosti lze získat vojenskou službou v oblasti softwarového inženýrství.
Hlavní rozdíly mezi softwarovým inženýrstvím a jinými inženýrskými obory jsou podle některých výzkumníků v rozdílné výši výrobních nákladů. [2]
Slovníky a encyklopedie | ||||
---|---|---|---|---|
|