Software

Software [1] [2] [3] ( software pro výslovnost [3] [4] [5] [6] je také přijatelný ) ( software ) je program nebo sada programů používaných k ovládání počítače ( ISO/IEC 26514: 2008 ) [7] .

Existují další definice z mezinárodních a ruských norem:

Software je jedním z typů softwaru počítačového systému spolu s technickou (hardwarovou), matematickou, informační, jazykovou, organizační, metodickou a právní podporou [13] .

Akademické obory, které studují software, jsou informatika a softwarové inženýrství .

V počítačovém slangu se často používá slovo „ soft “ , odvozené z anglického slova „ software “, které bylo poprvé použito v tomto smyslu v článku v American Mathematical Monthly matematika z Princetonské univerzity Johna Tukeyho v roce 1958 [14] .

Historie

Pozadí. Počátky programování

První program napsala Ada Lovelace pro Difference Engine Charlese Babbage , ale protože tento stroj nebyl nikdy dokončen, vývoj Lady Lovelace zůstal čistě teoretický [15] .

První teorii týkající se softwaru navrhl anglický matematik Alan Turing v roce 1936 ve své eseji „On computable numbers with application to the Entscheidungsproblem“ [ 16 ] [17] [18] . Vytvořil to, co je známé jako Turingův stroj , matematický model abstraktního stroje schopného provádět sekvence základních operací, které převádějí stroj z jednoho pevného stavu do druhého. Hlavní myšlenkou bylo matematicky dokázat skutečnost, že libovolného předem určeného stavu systému lze vždy dosáhnout sekvenčním prováděním konečné množiny elementárních příkazů (programů) z pevné množiny příkazů.

První elektronické počítače ze 40. a 50. let byly přeprogramovány přepínáním přepínačů a přepojováním kabelů, což vyžadovalo hluboké pochopení jejich vnitřní struktury. Mezi tyto stroje patřil zejména ENIAC (který však byl následně upraven tak, aby jej bylo možné alespoň částečně programovat pomocí děrných štítků ) [19] .

Důležitým krokem k moderním počítačům byl přechod na architekturu Johna von Neumanna , poprvé ztělesněnou ve Velké Británii , v počítači vyvinutém pod vedením J. R. Womersleyho a za účasti Alana Turinga , známého jako Mark I. První program uložený v paměti počítače byl spuštěn 21. června 1941. Pro usnadnění programování tohoto stroje přišel Turing se zkráceným kódovacím systémem, ve kterém byla sekvence dálnopisných symbolů výstupu na děrnou pásku použita k reprezentaci binárního strojového kódu [20] .

Jeden z Turingových zaměstnanců, John Mauchly , později se stal (spolu s Johnem Presperem Eckertem ) hlavou a zakladatelem Eckert-Mauchly Computer Corporation , která vyvinula počítače jako BINAC a UNIVAC , instruoval své zaměstnance, aby vytvořili překladač algebraických vzorců. Přestože se tohoto ambiciózního cíle ve 40. letech 20. století nepodařilo dosáhnout, pod vedením Mauchlyho byl vyvinut tzv. „ krátký kód “, ve kterém byly operace a proměnné kódovány dvouznakovými kombinacemi. Krátký kód byl implementován pomocí interpretu [21] . Grace Hopper , pracující od počátku 50. let na sadě matematických podprogramů pro UNIVAC I , vynalezla linkerový program " A-0 " , který po zadání identifikátoru získal požadovaný podprogram z knihovny uložené na magnetické pásce a zapsal to až na přidělené místo v RAM [22] .

 První programovací jazyky na vysoké úrovni se objevily v padesátých letech minulého století, kdy John Backus vyvinul FORTRAN a Grace Hopper vyvinula COBOL . Takový vývoj značně zjednodušil psaní aplikačního softwaru, který pak psala každá společnost, která si zakoupila počítač [23] .

Na počátku 50. let se koncept softwaru ještě nevyvinul. Takže o něm nebylo řečeno nic v článku Fortune z ledna 1952 „Kancelářští roboti“, který popisoval počítače Univac. Přestože se již v článku hovoří o počítači jako o univerzálním zařízení, programovací proces v tomto článku byl anachronicky popsán jako „přepínání přepínačů“ [24] . V polovině 50. let byl však vývoj softwaru na zakázku [25] již dobře zavedený , i když samotný termín „software“ se ještě nepoužíval, pak se jednoduše hovořilo o „ programování na zakázku “ nebo „ programovací službě “ [26] . První softwarová společnost byla System Development Corporation , založená v roce 1956 z americké vládou vlastněné RAND Corporation [27] . V této fázi byly zákazníky softwaru (jedinečného a nereplikovatelného) velké korporace a vládní agentury a cena jednoho milionu dolarů za program nebyla neobvyklá [28] .

Raná historie. Podnikový software

Samotný termín „software“ se začal široce používat od počátku 60. let 20. století, kdy začalo být relevantní rozlišovat mezi příkazy, které řídí počítač a jeho fyzickými součástmi – hardwarem [29] . Ve stejné době začalo formování softwarového průmyslu jako nezávislého odvětví . První společností zabývající se vývojem softwaru byla společnost Computer Sciences Corporation , založená v roce 1959 Royem Nuttem a Fletcher Jones s počátečním kapitálem 100 $. Prvními klienty CSC a softwarové společnosti, které je následovaly, byly super velké korporace a vládní organizace jako NASA [30] a firma nadále působila na trhu zakázkového softwaru, stejně jako jiné rané soukromé softwarové startupy jako Computer Usage Company (CUC) [27] .

Prvními samostatně vydanými softwarovými produkty, které nebyly dodávány s počítačovým hardwarem, byly generátor počítačové dokumentace AUTOFLOW , který automaticky kreslí vývojové diagramy , vydané společností Applied Data Research v roce 1965, a překladač programovacího jazyka MARK-IV , vyvinutý v letech 1960-1967. ve společnosti Informatika, Inc. [26] [31] Vzestup trhu podnikového softwaru úzce souvisí s příchodem rodiny počítačů IBM System/360 . Dostatečně masivní, relativně levné počítače, vzájemně kompatibilní na úrovni programového kódu, otevřely cestu pro replikovaný software [32] .

Postupně se okruh zákazníků softwaru rozšiřoval, což podnítilo vývoj nových typů softwaru. Tak se objevily první firmy specializující se na vývoj počítačově podporovaných konstrukčních systémů [30] .

V listopadu 1966 se Business Week poprvé zabýval tématem softwarového průmyslu. Článek se jmenoval „Software Gap – A Growing Crisis for Computers“ a hovořil jak o perspektivách tohoto byznysu, tak o krizi spojené s nedostatkem programátorů [24] . Typické softwarové produkty té doby sloužily k automatizaci běžných obchodních úkolů, jako jsou mzdy , nebo k automatizaci obchodních procesů středně velkého podniku, jako je výrobní závod nebo komerční banka . Cena takového softwaru se obvykle pohybovala mezi 5 000 a 100 000 $ [26] .

Osobní počítače a software pro masové spotřebitele

Vznik prvních osobních počítačů (např. Altair 8800 ) v 70. letech vytvořil předpoklady pro vznik masového softwarového trhu. Zpočátku byly programy pro osobní počítače distribuovány v „krabicové“ formě prostřednictvím nákupních center nebo poštou a byly za cenu 100–500 $ [26] .

Významné pro rodící se masový trh se softwarem byly takové produkty jako tabulkový procesor VisiCalc , jehož myšlenka přišla na Daniela Bricklina , když jako absolvent MIT a softwarový inženýr na DEC absolvoval kurzy na Harvard Business School a chtěl uklidněte se nudnými finančními výpočty [33] a textovým procesorem WordStar , který vyvinul Seymour Rubinstein po pečlivém prostudování potřeb trhu [34] . O VisiCalc se nejprve hovořilo jako o killer aplikaci , tedy počítačové aplikaci, která už svou existencí dokazuje nutnost (a často i nutnost nákupu) platformy, pro kterou je takový program implementován. Pro VisiCalc a WordStar se takovou platformou staly osobní počítače, které se díky nim staly pracovním nástrojem z bohaté hračky pro geeky . Odstartovaly revoluci mikropočítačů a tyto programy mají konkurenci: tabulkové procesory SuperCalc , Lotus 1-2-3 , systém správy databází dBase II , textový procesor WordPerfect atd. [35] Textové procesory, tabulkové procesory, systémy pro správu databází a také grafické editorů , se brzy staly základem trhu se softwarem pro osobní počítače [36] .

V polovině 90. let umožnila hromadná replikace snížit cenu softwaru pro osobní počítače na sto až pět set dolarů [26] , přičemž podnikání výrobců softwaru nabylo do jisté míry podobnosti s podnikáním společností pro nahrávání zvuku [35 ] .

Klasifikace softwaru

Přístupy ke klasifikaci softwaru jsou dostatečně podrobně formalizovány v mezinárodní normě ISO/IEC 12182 [37] . Konkrétně první verze standardu stanovila 16 kritérií pro klasifikaci softwarových nástrojů:

Příklady tříd funkcí PS jsou:

Příklady tříd aplikační domény jsou:

Příklady tříd stupnice PS jsou:

Příklady tříd kritičnosti jsou:

Příklady uživatelských tříd jsou:

Příklady tříd stability jsou:

Podle stupně přenositelnosti se programy dělí na

Podle způsobu distribuce a použití se programy dělí na

Podle účelu programu se dělí na:

Podle typů programů se dělí [38] na:

Klasifikace softwaru podle odvětví

Klasifikace softwaru podle průmyslových odvětví zahrnuje několik přístupů. Obecně se software dělí na zakázkový , tedy vytvořený pro konkrétního zákazníka, a produktový , tedy vytvořený pro prodej na trhu. Software se zase podle typu spotřebitele dělí na Business-to-Business ( B2B ), tedy pro podniky a organizace, a Business-to-Consumer ( B2C ), tedy pro jednotlivce [39] .

Jednou z možností třídění podle odvětví je rozdělení na software pro firemního zákazníka ( anglicky  enterprise software vendors ), software pro masového spotřebitele ( anglicky  mass-market software vendors ) a IT služby [40] .

Dalším přístupem je rozdělení softwarového průmyslu do tří sektorů: všeobecné obchodní produkty ( anglicky  Business Function Software ), specializované obchodní produkty ( anglicky  Industrial Business Software ) a produkty pro soukromý život ( anglicky  Consumer Software ). Univerzální obchodní produkty jsou určeny pro podporu fungování podniků a organizací a zahrnují účetní systémy, finanční systémy, systémy personální evidence atd. Specializované obchodní produkty jsou zaměřeny na úkoly specifického typu podnikání: geografické informační systémy, zdravotnické systémy , logistické systémy atd. n. Mezi produkty pro ochranu soukromí patří antivirový software a software pro zabezpečení informací, různé užitečné utility, vzdělávací software, multimediální software atd. [39]

Systémový software

Sada programů, které poskytují kontrolu nad komponentami počítačového systému , jako je procesor , RAM , vstupně-výstupní zařízení , síťová zařízení , fungující jako „interlayer interface“, na jehož jedné straně je hardware a na druhé straně uživatel. aplikací. Na rozdíl od aplikačního softwaru systémový software neřeší konkrétní praktické problémy, ale pouze zajišťuje provoz jiných programů, poskytuje jim servisní funkce, které abstrahují detaily implementace hardwaru a firmwaru výpočetního systému, spravuje hardwarové zdroje výpočetního systému . Přiřazení toho či onoho softwaru k systému je podmíněné a závisí na konvencích použitých v konkrétním kontextu. Systémový software zpravidla zahrnuje operační systémy , utility , systémy pro správu databází , širokou třídu middlewaru .

Aplikační software

Aplikační software je program určený k provádění určitých uživatelských úkolů a je navržen pro přímou interakci s uživatelem.

Licence

Uživatel obdrží software spolu s licencí , která mu dává právo používat softwarový produkt v souladu s podmínkami licence. Tyto podmínky zpravidla omezují možnost uživatele přenést softwarový produkt na jiné uživatele, změnit kód.

Některý software je dodáván s bezplatnou licencí. Tyto licence vám umožňují distribuovat software a také jej upravovat.

Část softwaru je distribuována jako freeware. Existuje také shareware. Uživatel v tomto případě obvykle na určitou zkušební dobu obdrží zdarma demo verzi softwarového produktu s poněkud omezenými funkcemi a po jejím skončení je povinen produkt buď zakoupit, nebo odinstalovat.

Viz také

Poznámky

  1. Ozhegov S.I. Slovník ruského jazyka. - M .: Ruský jazyk, 1986. - S. 364.
  2. Slovník přízvuků . Získáno 26. května 2007. Archivováno z originálu 3. dubna 2007.
  3. 1 2 Slovníky ruského jazyka – Kontrola slova „poskytující“ Archivní kopie ze dne 3. dubna 2018 na Wayback Machine Gramota.ru
  4. Rezničenko I. L. Ortoepický slovník ruského jazyka: Výslovnost. Důraz: Dobře. 25 000 jednotek / Reznichenko I.L. M .: Astrel Publishing House LLC: AST Publishing House LLC, 2003. - 284 s.
  5. Vydání Ozhegovova slovníku pravopisu z roku 2007 poskytuje jedinou možnost - ustanovení . // Pravopisný slovník ruského jazyka / Editoval S. I. Ozhegov. Locky-Press, 2007. 912 s. ISBN 5-320-00396-X .
  6. Vydání Rosenthalova slovníku z roku 2006 a 2007 také dává jedinou možnost - software // D. E. Rosenthal . Ruský jazyk. Příručka-cvičení. Onyx, mír a vzdělání, 2007. ISBN 5-488-00712-1 , 5-94666-332-1, 978-5-488-01360-5.
  7. ISO/IEC 26514:2008 Systémové a softwarové inženýrství — Požadavky na projektanty a vývojáře uživatelské dokumentace
  8. Podle GOST 19.101-77 zahrnují softwarové dokumenty dokumenty obsahující informace nezbytné pro vývoj, výrobu, údržbu a provoz programů .
  9. GOST 19781-90 Archivováno 10. února 2019 na Wayback Machine . Poskytování softwaru systémů pro zpracování informací. Termíny a definice
  10. Batovrin V.K., 2012 .
  11. Systém zpracování informací – jeden nebo více počítačových systémů a zařízení, jako jsou kancelářská a komunikační zařízení, která provádějí zpracování informací // Norma ISO / IEC 2382-1 Archivováno 18. září 2012 na Wayback Machine
  12. IEEE Std 829-2008 Standard IEEE pro dokumentaci testování softwaru a systému
  13. GOST 34.003-90 Informační technologie. Automatizované systémy. Termíny a definice
  14. John Tukey, 85 let, statistik; Coined the Word 'Software' , Nekrology , New York Times (28. července 2000).
  15. Počítačové jazyky, 1989 , 1. The Invisible Constructor § Harbingers of the Computer Age, str. jedenáct.
  16. Turing A. On Computable Numbers, with the Application to the Entscheidungsproblem  // Proceedings of the London Mathematical Society - London Mathematical Society , 1937. - Vol. s2-42, Iss. 1. - S. 230-265. — ISSN 0024-6115 ; 1460-244Xdoi:10.1112/PLMS/S2-42.1.230
  17. Turing A. M. On Computable Numbers, with Application to Entscheidungsproblem. A Correction  (anglicky) // Proceedings of the London Mathematical Society - London Mathematical Society , 1938. - Vol. s2-43, Iss. 6. - S. 544-546. — ISSN 0024-6115 ; 1460-244Xdoi:10.1112/PLMS/S2-43.6.544
  18. Halley, Mike. Elektronické mozky/Příběhy z úsvitu počítačového věku  (anglicky) . - Londýn: British Broadcasting Corporation a Granta Books, 2005. - S.  79 . — ISBN 1-86207-663-4 .
  19. Počítačové jazyky, 1989 , 1. Invisible Constructor, str. 10-11.
  20. Počítačové jazyky, 1989 , 1. Invisible Constructor, str. 14-16.
  21. Počítačové jazyky, 1989 , 1. Neviditelný konstruktor § Vytváření lidsky čitelných kódů, str. 16.
  22. Počítačové jazyky, 1989 , 1. The Invisible Constructor § Step for the Benefit of Programming, str. 18-20.
  23. Počítačové jazyky, 1989 , 1. The Invisible Constructor § Step for the Benefit of Programming, str. dvacet.
  24. 1 2 Campbell-Kelly, 2003 , 1. The Software Industry, str. jeden.
  25. Campbell-Kelly, 2003 , 1. Softwarový průmysl § Periodizace, sektorizace a schopnosti, str. 3.
  26. 1 2 3 4 5 Campbell-Kelly, 2003 , 1. Softwarový průmysl § Periodizace, sektorizace a schopnosti, str. čtyři.
  27. 1 2 Campbell-Kelly, 2003 , 1. Softwarový průmysl § Softwaroví dodavatelé, str. 5.
  28. Campbell-Kelly, 2003 , 1. Softwarový průmysl § Periodizace, sektorizace a schopnosti, str. 3-4.
  29. Počítačové jazyky, 1989 , 1. Invisible Constructor, str. deset.
  30. 1 2 Computer Languages, 1989 , 3. Vzestup softwaru § Software se stává průmyslem sám o sobě, str. 61.
  31. Campbell-Kelly, 2003 , 4. Počátky průmyslu softwarových produktů § Průkopnictví v průmyslu softwarových produktů: Informatika Mark IV, str. 103-104.
  32. Campbell-Kelly, 2003 , 1. Softwarový průmysl § Corporate Software Products, str. 6.
  33. Počítačové jazyky, 1989 , 3. Vzestup softwaru § První průmyslové standardy, str. 68-69.
  34. Počítačové jazyky, 1989 , 3. Vzestup softwaru § První průmyslové standardy, str. 68.
  35. 1 2 Campbell-Kelly, 2003 , 1. Softwarový průmysl § Mass-Market Software Products, str. 7.
  36. Počítačové jazyky, 1989 , 3. The Rise of Software § The Four Workhorses, str. 75-84.
  37. ISO/IEC TR 12182:2015 Systémové a softwarové inženýrství — Rámec pro kategorizaci IT systémů a softwaru a průvodce jeho aplikací . Získáno 4. března 2018. Archivováno z originálu dne 4. března 2018.
  38. GOST 19.101-77
  39. 1 2 Werder, Karl, Wang, Hua-Ying. Towards a Software Product Industry Classification Archivováno 13. dubna 2021 na Wayback Machine // Nové trendy v softwarových metodologiích, nástrojích a technikách. H. Fujita, G. A. Papadopoulos, IOS Press, 2016. ISBN 978-1-61499-674-3 . DOI: 10.3233/978-1-61499-674-3-27
  40. Campbell-Kelly M., Garcia-Swartz, D. Od produktů ke službám: Softwarový průmysl v éře internetu Archivováno 12. srpna 2021 na Wayback Machine // The Business History Review, Vol. 81, č.p. 4 (Zima, 2007), str. 735-764. DOI: 10.2307/25097422

Literatura