Software: voorbeelden. Software ontwikkeling

1.6.1. Basisconcepten van informatieprocessoftware

Basisconcepten

De mogelijkheden van een computer als technische basis voor informatieprocessen en gegevensverwerkingstechnologieën hangen samen met de gebruikte software (programma's).

Programma - een geordende reeks computercommando's (instructies) om een ​​probleem op te lossen.

Software (software) - een reeks gegevensverwerkingsprogramma's en documenten die nodig zijn voor hun werking.

Bij het implementeren van informatieprocessen met behulp van computers, de termen "taak" en « Bijlage".

Een probleem (taak) is een probleem dat moet worden opgelost.

Applicatie is een oplossing voor een probleem geïmplementeerd door middel van informatietechnologie.

Een taak betekent dus een probleem dat moet worden geïmplementeerd met behulp van informatietechnologietools, en een toepassing is een geïmplementeerde oplossing voor een taak, hoewel deze termen in sommige gevallen ook als synoniemen kunnen worden beschouwd.

Vanuit het oogpunt van de specifieke kenmerken van ontwikkeling en het type software, zullen we onderscheid maken tussen: twee klassen van taken- technologisch en functioneel.

Technologische taken worden gesteld en opgelost tijdens het technologische proces van informatieverwerking op een computer. Technologische taken vormen de basis voor ontwikkeling softwareservicetools als hulpprogramma's, serviceprogramma's, bibliotheken met procedures en etc. , gebruikt om de werking van de computer, de ontwikkeling van andere programma's of de verwerking van deze functionele taken te waarborgen.

Functionele taken verschijnen en vragen om oplossingen bij de implementatie van managementfuncties binnen de informatiesystemen van vakgebieden. Bijvoorbeeld het beheren van de activiteiten van een handelsonderneming, het plannen van een productrelease, het beheren van het transport van goederen, het ophalen van informatie in een database, enz. Functionele taken vormen samen een vakgebied en bepalen volledig de bijzonderheden ervan.

Onderwerp (toegepast) gebied (toepassingsdomein) - een set van onderling verbonden functies, managementtaken, met behulp waarvan het bereiken van de gestelde doelen wordt bereikt.

Om problemen op te lossen, kunnen algoritmen, standaardmodellen en methoden voor het oplossen van problemen, gepresenteerd in kant-en-klare softwareproducten, worden gebruikt. In dit geval wordt het softwareproduct aangepast aan de voorwaarden van een specifieke toepassing. In alle andere gevallen worden originele algoritmen en programma's ontwikkeld voor de uitvoering van een complex van taken.

Programmeren (programmeren) - theoretische en praktische activiteiten met betrekking tot het maken van programma's.

Programmeren is een collectief concept en kan zowel als "wetenschap" als "kunst" worden beschouwd, dit is de basis van een wetenschappelijke en praktische benadering van de ontwikkeling van programma's.

Het programma is het resultaat van intellectueel werk, dat wordt gekenmerkt door creativiteit. In elk programma is er een individualiteit van de ontwikkelaar; het programma weerspiegelt een zekere mate van de kunst van de programmeur. Tegelijkertijd veronderstelt programmeren ook routinewerk, dat een strikt uitvoeringsschema kan en moet hebben en aan de normen moet voldoen.

Programmeren is gebaseerd op een complex van wetenschappelijke disciplines gericht op onderzoek, ontwikkeling en gebruik van gespecialiseerde tools voor het maken van programma's. Bij het ontwikkelen van programma's, resource-intensieve en wetenschapsintensieve technologieën, wordt hooggekwalificeerd intellectueel werk gebruikt, dat ook de specifieke kenmerken van dit werkterrein bepaalt.

Programmering is een ontwikkelde tak van economische activiteit die gepaard gaat met aanzienlijke uitgaven aan materiaal, arbeid en financiële middelen. De totale omzet op het gebied van softwareontwikkeling loopt op tot enkele honderden miljarden dollars per jaar.

In verband met de groeiende vraag naar een verscheidenheid aan gegevensverwerkingsprogramma's, is de kwestie van het gebruik van effectieve programmeertechnologieën en hun overdracht naar een industriële basis zeer relevant. Het betekent:

  • standaardisatie, reproduceerbaarheid en reproductie door verschillende ontwikkelaars van programmeermethoden,
  • introductie van progressieve softwareontwikkelingstools,
  • het gebruik van speciale methoden en technieken voor het organiseren en uitvoeren van werkzaamheden aan de ontwikkeling van programma's (projectmanagementmethodologie).

Software productconcept

Alle programma's kunnen naar het type van hun gebruikers worden onderverdeeld in twee klassen (Fig. 1) - hulpprogramma's en softwareproducten (producten).

Deze classificatiefunctie is bepalend. Hiermee kunt u de status van het programma wijzigen, in plaats van de "hulp" toolkit voor gegevensverwerking, verandert het in een "hoofdtool". Dus, afhankelijk van het type "consument" onderscheid te maken tussen programma's van "intern" gebruik en softwareproducten (producten) voor "externe" distributie.

Hulpprogramma's("Programma's voor jezelf") zijn ontworpen om aan de behoeften van hun ontwikkelaars te voldoen. Meestal spelen utilitaire programma's de rol van een dienst in gegevensverwerkingstechnologie, of zijn ze een programma voor het oplossen van een functionele taak die niet bedoeld is voor wijdverbreide distributie.

Softwareproducten (producten) ontworpen om te voldoen aan de behoeften van gebruikers, wijdverbreide distributie en verkoop, evenals andere producten die het onderwerp zijn van verkoop of uitwisseling .

Het softwareproduct moet goed zijn voorbereid voor gebruik, over de nodige technische documentatie beschikken, een service verlenen en de betrouwbare werking van het programma garanderen, het handelsmerk van de fabrikant hebben en het is wenselijk om een ​​statusclassificatiecode te hebben. Alleen onder dergelijke omstandigheden kan het gemaakte softwarepakket een softwareproduct worden genoemd.

Het pad van "programma's voor jezelf" naar softwareproducten is vrij lang, het wordt geassocieerd met veranderingen in de technische en softwareomgeving voor de ontwikkeling en werking van programma's, met de opkomst en ontwikkeling van een onafhankelijke tak van de nationale - informatie bedrijf, die wordt gekenmerkt door de arbeidsverdeling van softwareontwikkelaars, hun verdere specialisatie, de vorming markt van software en informatiediensten. Dit is een wereldwijd proces.

Softwareproducten kunnen worden gemaakt als:

  • individuele ontwikkeling in het kader van de bestelling;
  • ontwikkeling voor massadistributie onder gebruikers.

Bij individuele ontwikkeling het ontwikkelbedrijf maakt een origineel softwareproduct dat rekening houdt met de bijzonderheden van gegevensverwerking voor een bepaalde klant.

Bij ontwikkeling voor massadistributie het ontwikkelbedrijf moet enerzijds zorgen voor de veelzijdigheid van de uitgevoerde gegevensverwerkingsfuncties en anderzijds de flexibiliteit en aanpasbaarheid van het softwareproduct voor de omstandigheden van een specifieke toepassing. Een onderscheidend kenmerk van softwareproducten moet hun "consistentie" zijn - de functionele volledigheid en volledigheid van de geïmplementeerde verwerkingsfuncties, die in combinatie worden gebruikt. Ontwikkeling en onderhoud van programma's voor massaal gebruik gaan in de regel gepaard met hoge arbeidskosten - correctie van gedetecteerde fouten, creatie van nieuwe versies van programma's, enz.

De ontwikkeling van een softwareproduct vindt plaats op basis van: industriële technologie uitvoering van ontwerpwerk met behulp van moderne programmeertools. De specificiteit ligt in uniciteit het proces van het ontwikkelen van algoritmen en programma's, afhankelijk van de aard van de informatieverwerking en de gebruikte tools. Aanzienlijke middelen worden besteed aan het maken van softwareproducten - arbeid, materiaal, financieel; hoge kwalificatie van ontwikkelaars is vereist.

Softwareproducten vereisen: begeleiding, die in de regel wordt uitgevoerd door gespecialiseerde softwaredistributeurs (distributeurs, dealers), minder vaak - door ontwikkelingsbedrijven.

Onderhoud van een softwareproduct - de prestaties van een softwareproduct handhaven, overschakelen naar de nieuwe versies, wijzigingen aanbrengen, gedetecteerde fouten corrigeren, enz.

Softwareproducten hebben, in tegenstelling tot traditionele producten, geen strikt gereguleerde set kwaliteitskenmerken die worden gespecificeerd bij het maken van programma's, of deze kenmerken kunnen niet vooraf worden gespecificeerd of geëvalueerd, omdat dezelfde verwerkingsfuncties die door een softwaretool worden geleverd, een verschillende ontwikkelingsdiepte hebben. Zelfs de tijd en kosten van het ontwikkelen van softwareproducten kunnen vooraf niet met een hoge mate van nauwkeurigheid worden bepaald.

De belangrijkste kenmerken van de programma's zijn:

  • algoritmische complexiteit (logica van informatieverwerkingsalgoritmen),
  • samenstelling en diepgang van de uitwerking van de geïmplementeerde verwerkingsfuncties,
  • volledigheid en consistentie van verwerkingsfuncties,
  • technische specificaties:
  • hoeveelheid programmabestanden,
  • vereisten voor het besturingssysteem en technische verwerkingsmiddelen vanaf de zijkant van de software: de hoeveelheid schijfgeheugen, de grootte van het RAM-geheugen voor het uitvoeren van programma's, het type processor, de versie van het besturingssysteem, de aanwezigheid van een computernetwerk , enzovoort.

1.6.2. Softwareclassificatie

Indeling per toepassingsgebied

Softwareproducten kunnen worden ingedeeld op basis van verschillende criteria. Overweeg een classificatie waarin het fundamentele kenmerk het toepassingsgebied (het gebruiksgebied) is softwareproducten:

  • hardwaregedeelte van computers en computernetwerken;
  • functionele taken van informatiesystemen en technologieën van vakgebieden;
  • technologie voor softwareontwikkeling.

Om de informatietechnologie op deze gebieden te ondersteunen, zullen we respectievelijk drie klassen van softwareproducten onderscheiden die in Fig. 2 worden getoond:

  • applicatiesoftware;
  • toolkit voor programmeertechnologie.

Systeem software

Softwareproducten van deze klasse zijn van algemene aard, ongeacht de specifieke kenmerken van het onderwerp. Ze stellen hoge eisen aan betrouwbaarheid en maakbaarheid van het werk, gemak en efficiëntie van gebruik.

Rijst. 2. Softwareclassificatie

Systeem software gericht:

  • om een ​​besturingsomgeving te creëren voor het functioneren van andere programma's,
  • om te zorgen voor een betrouwbare en efficiënte werking van de computer zelf en het computernetwerk,
  • voor diagnostiek en preventie van computerhardware en computernetwerken,
  • om ondersteunende technologische processen uit te voeren (kopiëren, archiveren, herstellen van programma's en databases, enz.).

Deze klasse van softwareproducten is nauw verwant aan het type computer en maakt er integraal deel van uit. Softwareproducten zijn voornamelijk gericht op gekwalificeerde gebruikers - professionals op computergebied: systeemprogrammeur, netwerkbeheerder, applicatieprogrammeur, operator. Kennis van de basistechnologie van het werken met deze klasse softwareproducten is echter ook vereist voor eindgebruikers van een personal computer, die niet alleen zelfstandig met hun programma's werken, maar ook het noodzakelijke onderhoud van de computer, programma's en gegevens uitvoeren.

De systeemsoftware omvat: besturingssysteem die gewoonlijk bij uw computer wordt geleverd, en servicesoftware die extra kan worden gekocht.

Besturingssysteem is bedoeld voor het plannen en beheren van de computerbronnen van een computer, voor het beheren van de uitvoering van applicatiesoftware. In deze klasse van softwareproducten zijn de meest voorkomende besturingssystemen Windows (Microsoft), OS/2 (IBM), Unix (gratis).

Dienstsoftware make-up programma's en softwaresystemen die zorgen voor:

  • organisatie van het computerproces om de mogelijkheden uit te breiden en de efficiëntie van het besturingssysteem te verbeteren;
  • betrouwbare computerbediening;
  • handiger werkomgeving voor de gebruiker.

Serviceprogramma's voor het uitbreiden van de mogelijkheden van een besturingssysteem worden vaak hulpprogramma's genoemd. Hulpprogramma's zijn programma's die worden gebruikt om aanvullende gegevensverwerkingsbewerkingen of computeronderhoud uit te voeren (diagnose, testen van hardware en software, optimaliseren van het gebruik of kwaliteitscontrole van schijfruimte, herstellen van vernietigde informatie op een magnetische schijf, enz.).

Toolkit voor programmeertechnologie

Softwareproducten van deze klasse bieden een softwareontwikkelingsproces en omvatten gespecialiseerde softwareontwikkelaarstools. Ze ondersteunen alle technologische stadia van het ontwerpen, programmeren (coderen), debuggen en testen van de gemaakte programma's. De gebruikers van de toolkit voor programmeertechnologie zijn systeem- en applicatieprogrammeurs. In hun werk laten ze zich leiden door de software van de computertechnologie, in de omgeving waarin de werking van de programma's die ze maken hoort te zijn.

Deze richting van software maakt momenteel een fase van snelle ontwikkeling door, wat te wijten is aan de overgang naar industriële technologie productie van programma's, de wens om de tijd-, arbeids- en materiaalkosten voor de productie en werking van programma's te verminderen, waardoor een gegarandeerd kwaliteitsniveau wordt gegarandeerd.

De toolkit voor programmeertechnologie kan worden onderverdeeld in twee subklassen, gericht op:

  • creatie van individuele applicaties of hun complexen;
  • automatisering van de ontwikkeling en implementatie van informatiesystemen.

In het kader van deze gebieden zijn de volgende groepen softwareproducten gevormd:

  • tools voor het maken van applicaties, waaronder:
  • lokale middelen voor het uitvoeren van individueel werk aan het maken van programma's;
  • geïntegreerde instrumentele omgevingen voor softwareontwikkelaars om een ​​reeks onderling gerelateerde werkzaamheden op het gebied van softwareontwikkeling uit te voeren;
  • CASE - technologie ( Computerondersteunde systeemtechniek), vertegenwoordigen methoden voor analyse, ontwerp en creatie van softwaresystemen met behulp van computertechnologie.

On-premises en frameworks softwareontwikkelaars zijn het meest representatief en gebaseerd op verschillende programmeertalen. Dit komt door de geschiedenis van hun creatie en ontwikkeling, relatieve betaalbaarheid voor een breed scala aan ontwikkelaars, aanvaardbare vereisten voor het technische complex van het ontwikkelingsproces.

Programmeertalen, als we de syntaxis van de vorming van zijn constructies als classificatiecriterium nemen, kan deze voorwaardelijk in klassen worden verdeeld:

  • machinetalen (computertaal) - programmeertalen waargenomen door de hardware van de computer (machinecodes);
  • machinegeoriënteerde talen (computergeoriënteerde taal) - programmeertalen die de structuur van een bepaald type computer weerspiegelen (assembler);
  • algoritmische talen (algoritmische taal) - programmeertalen die onafhankelijk zijn van de architectuur van de computer om de structuur van het algoritme weer te geven (PASKAL, FORTRAN, BASIC, enz.);
  • probleemgeoriënteerde talen (universele programmeertaal) - programmeertalen die zijn ontworpen om problemen van een bepaalde klasse op te lossen (LISP, RPG, SIMULA, enz.);
  • geïntegreerde programmeersystemen.

Een andere classificatie van programmeertalen is hun indeling in talen gericht op de implementatie van de basis gestructureerd programmeren, en objectgeoriënteerde talen, zoals Visual Basic, Visual C ++, die het concept van objecten, hun eigenschappen en verwerkingsmethoden ondersteunen.

Verdere ontwikkeling van programmeersystemen die een reeks tools combineren voor complexe toepassingen in alle technologische stadia van het maken van programma's zijn: geïntegreerde software-omgevingen ontwikkelaars . Het belangrijkste doel van dit type toolkit is het verhogen van de productiviteit van programmeurs, het automatiseren van het maken van programmacodes die een grafische gebruikersinterface bieden, en het ontwikkelen van applicaties voor de client-server-architectuur.

CASE-technologie is een softwarepakket dat het gehele technologische proces van analyse, ontwerp, ontwikkeling en onderhoud van complexe softwaresystemen automatiseert. Het belangrijkste voordeel van de CASE-technologie is de ondersteuning van collectief werk aan een project vanwege de mogelijkheid om te werken in het lokale netwerk van ontwikkelaars, export / import van projectfragmenten en organisatorisch projectbeheer.

CASE-technologietools zijn onderverdeeld in twee groepen:

  • ingebed in het implementatiesysteem - alle ontwerp- en implementatiebeslissingen zijn gekoppeld aan het geselecteerde databasebeheersysteem (DBMS);
  • onafhankelijk van het implementatiesysteem - alle ontwerpoplossingen zijn gericht op eenwording van de beginfasen van de levenscyclus en de middelen van hun documentatie, bieden meer flexibiliteit bij de keuze van de implementatiemiddelen.

Sommige CASE-technologieën zijn alleen bedoeld voor systeemontwerpers en bieden speciale grafische hulpmiddelen voor het weergeven van verschillende soorten modellen, bijvoorbeeld gegevensstroomdiagrammen (DFD), entiteit-relatiediagrammen (ERD), enz.

Een andere klasse van CASE-technologieën ondersteunt alleen levenscyclusfasen van softwareontwikkeling, waaronder:

  • automatisch genereren van programmacodes op basis van hun specificaties;
  • het controleren van de juistheid van de beschrijving van datamodellen en datastroomschema's;
  • het documenteren van programma's in overeenstemming met geaccepteerde normen en de huidige staat van het project;
  • test- en foutopsporingsprogramma's.

In het kader van CASE-technologieën wordt het project integraal ondersteund. Ontwerpmaterialen die in CASE-technologie zijn voorbereid, dienen als een taak voor programmeurs, en programmeren zelf wordt nogal beperkt tot codering - vertaling van gegevensstructuren en methoden voor hun verwerking in een bepaalde taal, als er niet wordt voorzien in automatische codegeneratie.

De meeste CASE-technologieën gebruiken ook de "prototyping"-methode om snel programma's te maken in de vroege stadia van ontwikkeling. Het genereren van codes van programma's wordt automatisch uitgevoerd.

Applicatiesoftware

Softwareproducten van deze klasse dienen als softwaretools voor het oplossen van functionele problemen en zijn de meest talrijke klasse van softwareproducten. Deze klasse omvat softwareproducten die informatie verwerken over functionele taken van verschillende vakgebieden.

De installatie van softwareproducten op een computer wordt uitgevoerd door gekwalificeerde gebruikers of specialisten, en hun directe bediening wordt in de regel uitgevoerd door eindgebruikers - consumenten van informatie, in veel gevallen, wier activiteiten ver van het computerveld verwijderd zijn. Deze klasse van softwareproducten kan zeer specifiek zijn voor individuele computers.

Deze klasse software is de meest representatieve, wat te wijten is aan het wijdverbreide gebruik van computertechnologie op alle gebieden van menselijke activiteit, het creëren van geautomatiseerde informatiesystemen in verschillende vakgebieden.

Een geschatte classificatie van applicatiesoftware wordt getoond in figuur 3.

Rijst. 3. Classificatie van applicatiesoftware

Probleemgerichte software vormt de meest representatieve klasse van softwareproducten, waarbinnen classificatie wordt uitgevoerd volgens verschillende criteria:

  • soorten vakgebieden,
  • informatie Systemen,
  • functies en takensets, enz.

Voor sommige vakgebieden is typering van de datastructuur en algoritmen voor hun verwerking mogelijk. Hierdoor ontstond een markt voor softwareproducten bedoeld voor:

  • geautomatiseerde boekhouding;
  • financiële activiteiten;
  • personeelsbeheer (personeelsadministratie);
  • voorraadbeheer;
  • productiemanagement;
  • bankinformatiesystemen, enz.

Het belangrijkste voor deze klasse van softwareproducten is het creëren van: vriendelijke interface voor eindgebruikers.

De belangrijkste trends in de ontwikkeling van probleemgerichte softwaretools:

  • creatie van softwaresystemen in de vorm geautomatiseerde werkstations(AWP) leidinggevend personeel;
  • creatie van geïntegreerde systemen voor het beheer van het vakgebied op basis van computernetwerken die AWP's combineren in een enkel softwarepakket met een "client-server"-architectuur;
  • organisatie van informatiesysteemgegevens in de vorm van een gedistribueerde database in een computernetwerk;
  • maatwerk van verwerkingsfuncties door eindgebruikers (zonder tussenkomst van programmeurs);
  • bescherming van programma's en gegevens tegen onbevoegde toegang.

Voor deze klasse van programma's is hoog vereisten voor de efficiëntie van gegevensverwerking(de doorvoer voor banksystemen moet bijvoorbeeld enkele honderden transacties per seconde zijn). De hoeveelheden opgeslagen informatie zijn ook groot, wat leidt tot hogere eisen aan gegevensbeheertools (bijwerken, kopiëren, zorgen voor de prestaties van gegevensverwerking).

Computerondersteunde ontwerpsoftware is bedoeld om het werk van ontwerpers en technologen te ondersteunen die verband houden met de ontwikkeling van tekeningen, diagrammen, diagrammen, grafische modellering en ontwerp, het creëren van een bibliotheek met standaardelementen (sjablonen) van tekeningen en hun herhaald gebruik, het creëren van demonstratie-illustraties en tekenfilms.

Een onderscheidend kenmerk van deze klasse van softwareproducten zijn hoge eisen aan het technische deel van het gegevensverwerkingssysteem, de aanwezigheid van bibliotheken met ingebouwde functies, objecten, interfaces met grafische systemen en databases.

Toolingomgeving voor eindgebruikers bevat een breed scala aan softwareproducten die voornamelijk informatietechnologieën van eindgebruikers ondersteunen. Naast eindgebruikers kunnen programmeurs deze softwareproducten ook gebruiken dankzij de ingebouwde softwaretools om geavanceerde gegevensverwerkingsprogramma's te maken.

Methodegerichtsoftware omvat softwareproducten die wiskundige, statistische en andere methoden bieden voor het oplossen van problemen voor elk vakgebied.

De meest gebruikte software voor wiskundige programmeermethoden, het oplossen van differentiaalvergelijkingen, simulatie en operationeel onderzoek. Softwareproducten van deze klasse kunnen stand-alone en embedded zijn. Excel-spreadsheet bevat bijvoorbeeld een gegevensanalysepakket dat een breed scala aan statistische methoden biedt, en een zoekpakket voor oplossingen dat een lineaire programmeermethode implementeert. Een voorbeeld van een op zichzelf staand softwareproduct is Microsoft Project, dat een methode voor netwerkplanning en -beheer implementeert. Dit verschafte projectmanagers een vrij krachtige toolkit voor het plannen en analyseren van professionele activiteiten.

Kantoorsoftware make-up programma's die zorgen voor organisatorisch beheer van het kantoor, waaronder:

  • organisatoren (planners) - software voor het plannen van werktijden, het maken van notulen, het plannen, het bijhouden van een notebook en telefoonboek;
  • vertaalsoftware;
  • tekstherkenning en spellingcontrole;
  • geïntegreerde pakketten - een set van verschillende softwareproducten die elkaar functioneel aanvullen en hetzelfde type informatietechnologie ondersteunen op één besturingsplatform.

Geïntegreerde pakketten bevatten de volgende typische componenten:

  • DBMS;
  • tekstverwerker;
  • grafische editor;
  • rekenblad;
  • organisator;
  • e-mailondersteuningstools;
  • programma voor het maken van presentaties.

De componenten van de geïntegreerde pakketten kunnen afzonderlijk van elkaar werken, maar de belangrijkste voordelen van de geïntegreerde pakketten komen tot uiting wanneer ze intelligent met elkaar worden gecombineerd. Gebruikers van geïntegreerde pakketten hebben een uniforme interface voor verschillende componenten, waardoor het relatieve gemak van het ontwikkelingsproces wordt gegarandeerd.

Geïntegreerde pakketten zijn effectief voor samenwerking met meerdere gebruikersgroepen. Zo is het mogelijk om vanuit de applicatie waarin de gebruiker zich bevindt documenten en databestanden naar een andere gebruiker te sturen, terwijl de standaarden voor het overdragen van data in de vorm van objecten over het netwerk of via e-mail worden ondersteund.

Desktop publishing-systemen omvat programma's die informatietechnologie bieden voor computerpublicatie:

  • opmaak en redactie van teksten;
  • automatische paginering van tekst;
  • kopteksten maken;
  • computerlay-out van de afgedrukte pagina;
  • montage graphics;
  • voorbereiding van illustraties, enz.

Multimediasoftware bedoeld voor het maken en gebruiken van audio- en video-informatie. Multimediasoftwareproducten hebben een leidende positie in de markt ingenomen op het gebied van bibliotheekinformatiediensten, het leerproces en de organisatie van vrije tijd. Databases met computerbeelden van kunstwerken, bibliotheken van geluidsopnamen vormen de basis voor toegepaste leersystemen, computerspellen, bibliotheekcatalogi en fondsen, etc.

Intelligente systemen implementeert individuele functies van menselijke intelligentie. De belangrijkste componenten van kunstmatige-intelligentiesystemen zijn een kennisbank, een intelligente gebruikersinterface en een programma voor het genereren van gevolgtrekkingen. Hun ontwikkeling gaat in de volgende richtingen:

  • wrapper-programma's voor het maken van expertsystemen door kennisbanken en inferentieregels te vullen;
  • kant-en-klare expertsystemen voor het nemen van beslissingen binnen bepaalde vakgebieden;
  • kennisbankbeheersystemen voor het onderhouden van semantische modellen (procedureel, semantisch netwerk, frame, productie, enz.);
  • spraakanalyse- en herkenningssystemen, enz.

conclusies

In dit onderwerp worden de basisconcepten en classificatie van software-informatieprocessen besproken. Definities en uitleg van termen als: programma, software, taak, toepassing, onderwerp (toegepast) gebied, probleemstelling, algoritme en zijn eigenschappen, programmering, softwareproduct, onderhoud van softwareproducten. Een beschrijving van de classificatie van software volgens het toepassingsgebied wordt gegeven: systeem, toegepaste, programmeertechnologietools. In elke klasse worden subklassen toegewezen, waarvoor het doel en hun kenmerken worden bepaald.

Zelftestvragen

  1. Wat is een programma?
  2. Wat is software?
  3. Geef een definitie van de taak en toepassing.
  4. Wat is een vakgebied?
  5. Wat zijn de belangrijkste fasen van het proces voor het maken van programma's?
  6. Wat is de probleemstelling?
  7. Wat is een algoritme om een ​​probleem op te lossen?
  8. Wat zijn de belangrijkste eigenschappen van algoritmen?
  9. Wat is een softwareproduct en wat zijn de eigenschappen ervan?
  10. Wat is onderhoud van softwareproducten?
  11. Hoe kan software worden geclassificeerd?
  12. Wat zit er in de systeemsoftware?
  13. Wat is een subklasse van servicesoftware?
  14. Geef de definitie van het hulpprogramma. Geef voorbeelden.
  15. Wat is een toolkit voor programmeertechnologie?
  16. Geef een definitie van CASE-technologie en wanneer deze wordt gebruikt.
  17. Welke soorten programmeertalen ken je?
  18. Materiaal van de site http://mega.km.ru/pc/srch.asp
Bedrijfsdatabases Materiaal van de site http://mega.km.ru/pc/Encyclop.asp?Topic=pc_918

Basis softwareconcepten

COMPUTER SOFTWARE

Controlevragen

1. Wat is computerarchitectuur?

2. Wat zijn de principes van het bouwen van een computer, geformuleerd door von Neumann.

3. Welke apparaten zitten in de von Neumann-computer?

4. Welke elektronische elementen bevinden zich op het moederbord?

5. Wat zijn de belangrijkste functies van de microprocessor?

6. Wat is kloksnelheid?

7. Wat is de capaciteit van de microprocessor?

8. Welke modellen microprocessors ken je?

9. Wat is het doel van geheugenapparaten?

10. Wat is RAM en ROM?

11. Wat wordt afgekort als RAM?

12. Wat is de minimale hoeveelheid informatie op geheugenapparaten voor een pc?

13. Wat is het doel van de systeembus?

14. Wat zijn de belangrijkste groepen toetsen op een standaard toetsenbord.

15. Op welke poort is de muis aangesloten?

16. Wat is het doel van de monitor?

17. Beschrijf het werkingsprincipe van dot-matrix-, inkjet- en laserprinters?

18. Wat zijn de sporen en sectoren op een magnetische schijf?

19. Waarom schijven formatteren?

20. Wat is een laserschijf?

21. Wat is een chauffeur?

22. Wat zijn de soorten poorten?

Een computer is een softwaregestuurd automatisch apparaat om met informatie te werken. Zonder programma's is elke computer "dead iron" De mogelijkheden van een computer als technische basis voor een gegevensverwerkingssysteem hangen samen met de gebruikte software (programma's).

Programma (programma, routine) is een geordende reeks computeropdrachten (instructies) voor het oplossen van een probleem.

Software (software)- een reeks gegevensverwerkingsprogramma's.

Probleem (taak)- een op te lossen probleem.

Sollicitatie- software implementatie op een computer om het probleem op te lossen.

Software zekerheden kunnen worden onderverdeeld in drie groepen:

- systeemprogramma's;

- toegepaste programma's;

- programmeersystemen.

systemisch worden programma's genoemd die het rekenproces organiseren en computerbronnen aansturen.

Ze zijn ontworpen om de werking van de apparaten waaruit de computer bestaat te regelen, de communicatie met de gebruiker (gebruikersinterface) te organiseren en met het bestandssysteem te werken.

Systeemprogramma's bestaan ​​uit:

- besturingssystemen (OS),

- werkende membranen,

- speciale programma's.

Besturingssysteem (OS)- een reeks programma's die de werking van computerhardware, netwerken en alle programma's ondersteunen.

Wanneer u de computer inschakelt, wordt het besturingssysteem eerst in het RAM geladen, onder controle waarvan de werking wordt gecontroleerd en alle daaropvolgende werking van de computer. Het werk wordt ook voltooid onder de controle van het besturingssysteem.



besturingssysteem

Besturingssystemen worden ingedeeld op:

- het aantal gelijktijdige gebruikers aan een gebruiker en multiplayer besturingssysteem;

- het aantal taken dat gelijktijdig wordt uitgevoerd onder de controle van het besturingssysteem, per single-tasking en multitasking;

- het aantal processors dat per uniprocessor en multiprocessor;

- bitdiepte Processoren naar 8-bit, 16-bit, 32-bit, 64-bit;

- het type gebruikersinterface aan opdracht(tekst) en object georiënteerd(grafisch);

- de manier om gedeelde hardware- en softwarebronnen te gebruiken op netwerk en lokaal.

Het grootste verschil systemen voor meerdere gebruikers van één gebruiker is de beschikbaarheid van middelen om de informatie van elke gebruiker te beschermen tegen ongeoorloofde toegang door andere gebruikers.

V multitasking elke taak (programma, applicatie) krijgt beurtelings een bepaalde hoeveelheid processortijd toegewezen. Aangezien het schakelproces erg snel is en de processortijd die aan taken wordt toegewezen vrij klein is, krijgt de gebruiker de indruk van gelijktijdige uitvoering van meerdere taken tegelijk.

Besturingssysteem MS-DOS is een commando (tekst) besturingssysteem voor 16-bit computers op basis van microprocessors 8086 ... 80486. Alle MS-DOS-programma's worden opgeslagen op magnetische schijven, daarom heet het schijf besturingssysteem(Schijfbesturingssysteem). MS is de afkorting voor Microsoft. Er zijn verschillende wijzigingen van dit besturingssysteem uitgebracht, dus we kunnen over het geheel praten familie van besturingssystemen MS-DOS.

Windows-besturingssystemen

Bij het maken van een besturingssysteem van de Windows-familie gebruikte Microsoft objectgeoriënteerde benadering.

Op gebruikersniveau komt de objectgeoriënteerde benadering tot uiting in het feit dat de interface een schijn van de echte wereld is, en het werken met een computer wordt gereduceerd tot handelingen met gewone objecten. Mappen kunnen dus worden geopend, gesloten, verplaatst, in een portfolio worden geplaatst. Documenten kunnen worden bekeken, gecorrigeerd, van de ene plaats naar de andere worden overgebracht, vernietigd of in de prullenbak worden gegooid.

Het Windows-besturingssysteem is gebaseerd op de principes:

- WYSIWYG(Wat je ziet Is What You Get - what you see is what you get), waardoor op de printer hetzelfde beeld wordt gevormd als op het beeldscherm. Wanneer u in DOS werkt, kan het uiterlijk van de tekst op het beeldscherm en afgedrukt op de printer verschillen. Dit hangt af van het lettertype dat op de printer is geselecteerd.

- Plug en Play(plug and play, meer precies, plug and play) stelt u in staat om nieuwe apparaten op uw computer aan te sluiten zonder handmatige configuratie, zoals een printer of laserspeler. De Engelse term Plug and Play wordt in het Russisch plug and play uitgesproken. Het besturingssysteem dat dit principe ondersteunt, selecteert automatisch het stuurprogramma dat nodig is voor de werking van het nieuwe apparaat dat op de computer is aangesloten.

- technologie Slepen en neerzetten(slepen en neerzetten). Dankzij de Drag and Drop-technologie is het gemakkelijk om de positie van elk venster en de grootte ervan te wijzigen.

In Windows kun je documenten samenstellen uit onderdelen die in verschillende applicaties zijn voorbereid. De technologie wordt gebruikt om documenten te koppelen en in te sluiten OLE(Object Linking and Embedding), wat 'objecten koppelen en insluiten' betekent.

Bij het werken in het Windows-besturingssysteem worden programma's meestal toepassingen.

Het voordeel van besturingssystemen van de Windows-familie is: uniforme gebruikersinterface(shell), waardoor dezelfde principes voor het beheer van hun werk in verschillende programma's worden bewaard. Hierdoor kunnen meerdere taken tegelijk worden uitgevoerd.

In dit geval bevindt de gebruikersinterface van elk programma zich "in een apart rechthoekig gebied, dat wordt genoemd" venster.

operationele shells–– grafische add-ons gemaakt om het werken met het besturingssysteem te vergemakkelijken. De meest populaire in Rusland zijn Norton Commander, DOS Navigator, Windows Commander, enz.

Speciale programma's –– enkele aanvullende diensten van systemische aard uitvoeren. Deze programma's zijn onderverdeeld in hulpprogramma's en stuurprogramma's.

Nutsvoorzieningen- ontworpen om vaak herhaalde bewerkingen uit te voeren, bijvoorbeeld het formatteren van magnetische schijven, het defragmenteren van schijven, het maken van back-ups van bestanden, het herstellen van per ongeluk verwijderde bestanden, het zoeken naar en het verwijderen van virussen, enz.

chauffeurs- systeemprogramma's die zorgen voor de werking van printers, stations, beeldschermen, toetsenborden, enz. Het woord "driver" komt van het Engelse woord driver - driver, driver.

Applicatiepakketten (PPS)

Een toepassingsprogrammapakket is een complex van onderling verbonden programma's voor het oplossen van problemen van een bepaalde klasse van een specifiek vakgebied.

Toepassingsprogramma's, de gebruiker in staat stellen om hun informatieproblemen direct op te lossen.

Applicatiesoftware is op zijn beurt verdeeld in twee delen:

- toepassingsprogramma's voor algemene doeleinden ,

- beroepsgerichte programma's.

NAAR algemene toepassingen bevat programma's die de meeste gebruikers nodig hebben, ongeacht hun professionele interesses. Ze bevatten:

- tekstverwerkingssystemen (tekstverwerkers);

- grafische computersystemen (grafische editors);

- spreadsheetsystemen - spreadsheets (spreadsheetprocessors);

- gebruikersgerichte databasebeheersystemen;

- hulpmiddelen voor het ontwikkelen van presentaties;

- programma's die werken met e-mail en werken met internet.

Professioneel georiënteerde programma's gespecialiseerde programma's maken voor specialisten met een beperkt takenpakket.

Programmeersystemen - een hulpmiddel voor het werk van professionele programmeurs.

Elk dergelijk systeem is gericht op een specifieke programmeertaal: Pascal, Basic, Fortran, C, Assembler, enz. Programmeersystemen stellen u in staat om programmateksten te maken, programma's te debuggen en uit te voeren. Alle bovenstaande soorten software zijn gemaakt door programmeurs met behulp van speciaal gemaakte programmeersystemen.

Wat is software? We ontmoeten dagelijks voorbeelden van het praktische gebruik ervan, zittend achter een computer. Zelfs een simpele beweging van de muis over het scherm is het resultaat van de software. Welke soorten software zijn er? Hoe wordt softwareontwikkeling uitgevoerd?

Software: theorie

De werking van een computer wordt uitgevoerd door het gecombineerde gebruik van hardware en software. De eerste verwijst naar een reeks microschakelingen, borden en andere elektronische componenten en apparaten waaruit een pc bestaat. Onder de tweede - computerprogramma's die zijn ontworpen om informatie te verwerken en nuttige acties uit te voeren met behulp van een pc. De eerste in het jargon wordt vaak "hardware" genoemd, de tweede - "software".

De software verschijnt op de computer door middel van installatie - het plaatsen van de bijbehorende bestanden op de schijf. In sommige gevallen is het nodig om de software te updaten. Dit is in feite een herinstallatie van een meer geavanceerde en moderne versie van de software. Een zogenaamde "distributie" hebben. Het is een gespecialiseerd installatieprogramma.

Er zijn twee hoofdtypen software: systeemsoftware en applicatiesoftware. Het eerste type zorgt voor de werking van de pc in termen van zijn belangrijkste functies: starten, laden en uitvoeren van computerbewerkingen op laag niveau. De belangrijkste soorten systeemsoftware worden beschouwd als controles voor computerhardwarecomponenten en hun instellingen.

Dit zijn programma's met behulp waarvan praktisch belangrijke acties op een pc worden uitgevoerd. Bijvoorbeeld typen, tabellen bouwen, tekenen, internetten, etc.

Om de taal te vereenvoudigen, kan deze als volgt worden samengevat: systeemsoftware - voor een computer, applicatiesoftware - voor een gebruiker. Een andere manier om het verschil in eenvoudige bewoordingen uit te leggen: het werk is meestal niet zichtbaar. Ze voeren hun functies uit zonder "coördinatie" met de gebruiker, in een verborgen modus. Op zijn beurt werkt de applicatiesoftware alleen met de directe deelname van de gebruiker. Voorbeelden van beide zullen we vandaag bespreken.

Er zijn natuurlijk "niet-computer" soorten software. Ze kunnen andere soorten apparaten bedienen, bijvoorbeeld tablets, smartphones, tv's. Er is software voor klimaatbeheersingssystemen, industriële installaties, etc.

Wat is een besturingssysteem?

OS is een basistype systeemsoftware vanuit het oogpunt van het bedienen van de mogelijkheden van een pc. Waarom is het opgenomen in deze categorie software? Feit is dat in de omgevingen die worden gevormd door besturingssystemen, de rest van de computersoftware (zowel het systeem als de applicatie) draait. Het besturingssysteem is de basis voor de pc om te werken. Als er geen besturingssysteem is, werkt geen ander programma. De belangrijkste bedrijfsprocessen van het besturingssysteem zijn voor de gebruiker verborgen.

De meest voorkomende besturingssystemen voor pc's ter wereld zijn Windows (de meest populaire, er zijn veel versies van - 7e, 8e, XP en andere), Linux, MacOS.

Systeemsoftware: stuurprogramma's

Het tweede, misschien wel belangrijkste type systeemsoftware is een stuurprogramma. Ze zijn ontworpen om de juiste werking van de hardwarecomponenten te garanderen. Als de stuurprogramma's voor de schijf niet op de computer zijn geïnstalleerd, werkt deze niet. Evenzo - voor een videokaart, muis, modem en zelfs een processor. Typische netwerksoftware is een router- of modemstuurprogramma. Dit type software wordt meestal geleverd door hardwarefabrikanten (en zit in veel gevallen bij besturingssystemen).

Dit is de essentie van systeemsoftware. De volgende in de rij hebben we - applicatiesoftware, voorbeelden van de meest populaire oplossingen en de belangrijkste functies die aan gebruikers worden aangeboden.

Applicatiesoftware: antivirussen, hulpprogramma's

Veelvoorkomende soorten toepassingssoftware zijn antivirussen en hulpprogramma's. De eerste zijn ontworpen om de pc te beschermen tegen malware die andere software of zelfs hardwarecomponenten van de computer kan uitschakelen. Enkele van de meest populaire antivirusprogramma's in Rusland zijn NOD32, DrWeb, Kaspersky. De hulpprogramma's zijn ontworpen om de stabiele werking van de pc te garanderen, om te controleren hoe de processor, schijven, geheugen en andere hardwarecomponenten van de computer correct werken.

Populair Microsoft Word

Naar welke van de specifieke voorbeelden van applicatiesoftware is tegenwoordig de grootste vraag? Dit geldt in de eerste plaats voor tekstverwerkingsprogramma's. Dergelijke bewerkingen op een computer zijn historisch gezien de allereerste. Een van de meest populaire tekstverwerkingsprogramma's ter wereld en het uitvoeren van gerelateerde bewerkingen (tekentabellen, grafieken, enz.) is Word. Het is ontwikkeld door een van 's werelds grootste bedrijven - het Amerikaanse Microsoft. De Russische transcriptie, die klinkt als "Word-programma", is acceptabel.

Tot op heden zijn er verschillende versies van deze software uitgebracht. De functies in elk van hen zijn verschillend, maar de basistaak (en in de praktijk meest gevraagde) taak die door MS Word in een of andere vorm wordt uitgevoerd, is het opmaken van de tekst, het opslaan in een bestand en zorgen (indien nodig) voor de juiste uitvoer naar de printer.

Microsoft Word: functies

Het "Word-programma" kan een groot aantal bewerkingen uitvoeren. Namelijk:

Opmaak van letters en alinea's (selectie van het lettertype van de gewenste grootte en basiskenmerken - onderstrepen, vet, cursief, regelafstand, enz.)

Het uiterlijk van pagina's ontwerpen (de kleur en het patroon op de achtergrond instellen, afbeeldingen, afbeeldingen, enz.)

Elementen toevoegen bij de tekst (tabellen, grafieken, pictogrammen, enz.)

Word leren gebruiken is eenvoudig. Veel van de bedieningselementen van het programma zijn intuïtief. Het is ook vermeldenswaard dat Microsoft, dat Word heeft uitgebracht, zijn oplossing heeft voorzien van een gedetailleerd helpsysteem dat door de gebruiker kan worden geopend door op F1 op het toetsenbord te drukken.

Populaire applicatieprogramma's: Microsoft Excel

Een voorbeeld van een andere populaire applicatiesoftware is Microsoft Excel (in het Russisch - "Excel-programma"). Haar beperkte specialisatie is rekenen met spreadsheets. Zo'n oplossing vereenvoudigt het werken met getallen enorm.

Ondanks het feit dat dit programma als professioneel wordt beschouwd, kunnen zelfs beginnende gebruikers de basismethoden om ermee te werken onder de knie krijgen (daarom verwierf het wereldwijde bekendheid).

Microsoft Excel: functies

De eenvoudigste bewerkingen in Excel zijn het weergeven van tekst en getallen als tabellen. Het werkgebied van het programma ziet er in feite uit als een groot aantal cellen, waarin u iets kunt schrijven. Een meer gecompliceerde procedure is het plotten van grafieken, het introduceren van formules. Bewerkingen die professionele training vereisen - programmeren van zogenaamde "macro's" (een soort interne programma's), technische berekeningen.

Laten we de meest voorkomende soorten problemen in de praktijk opsommen die het "Excel-programma" kan oplossen:

Wiskundige berekeningen met behulp van numerieke waarden in tabelcellen (optellen, aftrekken, delen, vermenigvuldigen, bouwprogressies, enz.);

Toepassing van formules om de rekening te automatiseren;

Opstellen van rapporten, formulieren, vragenlijsten en andere documenten die er het meest comfortabel uitzien in de vorm van tabellen;

Constructie van grafieken, visualisatie van statistieken met behulp van diagrammen.

Net als bij Word is het gebruik van Excel heel gemakkelijk zelf te leren. De bediening van het programma is grotendeels intuïtief. Dit type software is ook uitgerust met een gedetailleerd helpsysteem (wat niet alleen handig kan zijn voor een beginnende gebruiker, maar ook voor een professional).

Populaire applicatiesoftware: Adobe Photoshop

Gebruikers moeten vaak één interessant programma gebruiken - "Photoshop". Voor Windows 7, 8 of XP bestaat het in een groot aantal versies. Officieel heet dit programma Adobe Photoshop. Het is bedoeld om te tekenen (dergelijke oplossingen worden "grafische editors" genoemd). Het wordt, net als bij Word en Excel, gebruikt door zowel beginnende gebruikers als professionals: ontwerpers, webontwikkelaars, tekenfilmmakers.

Photoshop verwijst naar programma's die afbeeldingen verwerken in de zogenaamde "raster"-modus. Wat betekent het? We kunnen zeggen dat het grootste deel van computergraphics tot de categorie "raster" behoort. We hebben het over afbeeldingen die bestaan ​​uit een groot aantal kleine puntjes (onthoud hoe een beeld is opgebouwd op een tv en monitor - het principe is hetzelfde). Met behulp van "raster" kunt u absoluut alle grafische elementen maken. Je kunt een portret tekenen van een persoon, een huis, een landschap - wat dan ook. Naast "raster"-afbeeldingen zijn er ook "vector"-afbeeldingen. Afbeeldingen die erop zijn gebaseerd, kunnen op hun beurt alleen worden gebouwd volgens de sjablonen die in het programma zijn opgenomen.

Adobe Photoshop: functies

Met behulp van Photoshop kunt u niet alleen afbeeldingen maken, maar ook wijzigingen aanbrengen in de kant-en-klare afbeeldingen. Vandaar de term "photoshop". Je kunt bijvoorbeeld objecten in de foto aanpassen, er iets aan toevoegen, retoucheren - met veel ervaring met Photoshop kan alles heel geloofwaardig uitpakken.

Adobe Photoshop werkt met de meeste grafische bestandsformaten vanwege de aanwezigheid van een groot aantal converters voor verschillende formaten. Deze laatste converteren grafische informatie van het bestandsformaat naar het oorspronkelijke formaat van de Adobe Photoshop-editor bij het lezen van een bestand. Bij het schrijven naar een bestand voeren converters de omgekeerde conversie uit.

Wat zijn de meest populaire soorten Photoshop-bewerkingen? Deze omvatten het volgende:

Creatie van nieuwe tekeningen met behulp van virtuele penselen, potloden, linialen, vormen met verschillende kleuren;

De grootte van afbeeldingen of hun individuele elementen wijzigen;

De inhoud van twee verschillende afbeeldingen combineren;

De kleur van een afbeelding of delen ervan wijzigen;

Toepassing van visuele effecten met behulp van sjablonen en algoritmen die in het programma zijn ingebouwd;

Transformatie van afbeeldingen (reflectie, rotatie, enz.).

Net als bij Word en Excel zijn de bedieningselementen van Photoshop eenvoudig intuïtief te leren. Dus zelfs een onervaren gebruiker kan iets tekenen. Veel van de versies van het programma zijn uitgerust met een helpsysteem in het Russisch, dat in detail beschrijft hoe u met Photoshop kunt werken.

Populaire soorten applicatiesoftware: browsers

Een browser is een programma waarmee gebruikers naar internet gaan, nieuws van sites lezen, berichten schrijven op sociale netwerken, video's bekijken - kortom, ze doen alles wat typisch is voor "virtuele ruimte". De meest populaire oplossingen van dit type in de wereld zijn Internet Explorer, Opera, Google Chrome. Er zijn een zeer groot aantal van hun analogen en subtypes. De functionaliteit van elk van hen is over het algemeen hetzelfde. De meeste gebruikers geven er de voorkeur aan om de een of de ander te exploiteren, gebaseerd op een subjectieve beoordeling van de kwaliteit van het ontwerp van programma's en het gemak van de regeling van de controles erop.

Het werkingsprincipe van browsers is gebaseerd op het herkennen van de hypertext-opmaaktaal (HTML genaamd) en het omzetten ervan in visuele elementen die begrijpelijk zijn voor de gebruiker - tekst, afbeeldingen, tabellen, video, animatie, berichtformulieren, enz.

Browsers: functies

Gerangschikte voorbeelden van dergelijke software is heel eenvoudig. De belangrijkste elementen van de browser zijn de regel met het siteadres en het hoofdveld (meestal de "webinterface" genoemd, waar informatie van internet wordt weergegeven. Het belangrijkste kenmerk van een dergelijk programma is dat het een tussenpersoon is tussen de PC-gebruiker en andere mensen in de virtuele ruimte Met behulp van een browser (meer precies, een "webinterface") kan een persoon in feite gegevens uitwisselen, iets van zichzelf verzenden (tekst, bestanden) en iets ontvangen van anderen. "Was internet vóór de uitvinding van browsers? Feit is dat de "webinterface" historisch gezien niet de eerste manier van communicatie tussen gebruikers is, het verscheen na vele jaren van internationale overeenstemming over de normen waarmee de uitwisseling van "virtuele " informatie moet worden uitgevoerd.

Software: betaald en gratis

Een van de criteria voor het classificeren van software is de kostprijs. Er zijn drie categorieën van oplossingen. Ten eerste is het volledig gratis, ten tweede is er een commerciële. Als de gebruiker dergelijke software wil gebruiken, moet hij betalen voor de installatie ervan. Ten derde is er een tussenliggend type software - shareware. Wat is zijn eigenaardigheid? In het algemeen is het gebruik van dergelijke software als volgt: u hoeft niet te betalen voor de installatie, maar nadat u het programma enige tijd (bijvoorbeeld een maand) hebt gebruikt, moet u geld overmaken naar de ontwikkelaar voor verder gebruik.

Wat is cloudcomputing?

In de afgelopen jaren is de term "cloudtechnologieën" erg populair geworden. Wat is dit fenomeen? "Cloud-technologieën" zijn, in eenvoudige bewoordingen, toepassingssoftware die vanuit een browser kan worden gestart (deze wordt daarom niet op een pc geïnstalleerd). Laten we naar een voorbeeld kijken. Microsoft Word, waar we het hierboven over hadden, wordt gestart door te dubbelklikken op het pictogram op het bureaublad. Maar er is dezelfde oplossing, maar "troebel": het gebruik van dit type software wordt uitgevoerd via de webbrowserinterface. De bestanden waarmee de gebruiker met dergelijke software werkt, worden in de regel ook op internet opgeslagen.

Veel programma's bestaan ​​nu in het "cloud"-formaat. Er zijn zelfs versies van dit type besturingssysteem. We kunnen dus stellen dat niet alleen het "cloud"-formaat wordt toegepast, maar ook systeemsoftware. De populariteit van dergelijke oplossingen vandaag de dag hangt samen met de hoge snelheid van internet (een paar jaar geleden bestond zoiets niet), evenals de tijdwinst van de gebruiker - het is niet nodig om iets op de pc te installeren. Overigens gebeurt de software-update van het cloudtype onafhankelijk van de gebruiker. Dit is ook handig.

Wie ontwikkelt de software?

Er is een hele tak van de economie waarbinnen softwareontwikkeling plaatsvindt - programmeren. Er werken mensen met een grote diversiteit aan kennisprofielen. Maar ze zijn verenigd door een gemeenschappelijk kenmerk: kennis van programmeertalen. Met behulp van een of meer van hen schrijft een persoon software. Een programmeertaal is een reeks instructies die worden herkend door de hardwarecomponenten van een computer. Nadat hij een "zin" heeft geschreven die op een bepaalde manier is gebouwd, geeft de persoon die de software maakt de "opdracht" aan de processor, of, laten we zeggen, de pc-schijf om die en die bewerking op het bestand uit te voeren. Er worden honderden talen gebruikt voor softwareontwikkeling. Onder de populaire zijn C ("C"), Java, Pascal, Ruby-on-Rails.

Is het moeilijk om te leren hoe je software maakt?

Helemaal niet. Iedereen kan softwareontwikkelaar worden. Softwareontwikkeling is helemaal geen verboden activiteit. Veel succesvolle ondernemers zijn begonnen met het ontwikkelen van software. Voorbeelden van zulke mensen zijn Bill Gates, Linux Torvalds, Eugene Kaspersky. U kunt talen leren voor het maken van software op basis van een grote hoeveelheid beschikbare literatuur, videozelfstudies of door gespecialiseerde cursussen te volgen. Softwareontwikkeling is een van de snelst groeiende industrieën en de groei in populariteit heeft voornamelijk te maken met universele beschikbaarheid.

| Computer software. Over systeemsoftware en programmeersystemen

Les 8
Het concept van software en zijn typen. Het doel van het besturingssysteem en zijn belangrijkste functies

§9. Computer software
§10. 0 systeemsoftware en programmeersystemen

Computer software

De belangrijkste onderwerpen van de paragraaf:

Wat is software;
- soorten software;

Onderwerpen in studie:



- Samenstelling van toegepaste software.


- Serviceprogramma's.

Wat is software?

De mogelijkheden van een moderne pc zijn zo groot dat steeds meer mensen hem gebruiken in hun werk, studie en dagelijks leven. De belangrijkste kwaliteit van een moderne computer is de "gebruiksvriendelijkheid". Mens-computercommunicatie is eenvoudig, visueel en begrijpelijk geworden. De computer zelf vraagt ​​de gebruiker wat te doen in een bepaalde situatie, helpt om uit moeilijke situaties te komen. Dit is mogelijk dankzij de computersoftware.

Laten we de analogie tussen een computer en een mens opnieuw gebruiken. Een pasgeboren persoon weet niets en weet niet hoe. Hij verwerft kennis en vaardigheden in het proces van ontwikkeling, leren, het verzamelen van informatie in zijn geheugen. Een computer die in een fabriek is samengesteld uit microschakelingen, draden, borden en andere dingen, is als een pasgeboren persoon. We kunnen zeggen dat het laden van software in het geheugen van de computer vergelijkbaar is met het lesgeven aan een kind.

Software wordt gemaakt door programmeurs.

De volledige reeks programma's die op alle apparaten van het langetermijngeheugen van een computer is opgeslagen, vormt de software (SW).

Computersoftware wordt voortdurend bijgewerkt, ontwikkeld en verbeterd. De kosten van geïnstalleerde programma's op een moderne pc zijn vaak hoger dan de kosten van de technische apparaten. De ontwikkeling van moderne software vereist zeer hoge kwalificaties van programmeurs.

Soorten software

Er is een noodzakelijk onderdeel in de computersoftware, zonder welke er niets aan gedaan kan worden. Het wordt systeemsoftware genoemd. Het belangrijkste element van de systeemsoftware is het besturingssysteem (bijv. Windows, Linux). De koper koopt een computer die is uitgerust met systeemsoftware, die niet minder belangrijk is voor de werking van de computer dan geheugen of een processor. Naast de systeemsoftware omvat de computersoftware ook applicatieprogramma's en programmeersystemen.

Computersoftware is onderverdeeld in:

Systeem software;
- toegepaste software;
- programmeersystemen.

Systeemsoftware en programmeersystemen zullen later worden besproken. Laten we nu kennis maken met de toegepaste software.

Samenstelling toegepaste software *

* In software verandert alles heel snel, dus het is onmogelijk om een ​​nauwkeurige en permanente classificatie te geven.
Sommige moderne programma's zijn moeilijk toe te schrijven aan een van de hieronder beschreven typen.
.


Programma's waarmee de gebruiker zijn informatietaken kan oplossen zonder te hoeven programmeren, worden applicatieprogramma's genoemd.

Een besturingssysteem wordt meestal geleverd met een reeks algemene toepassingen. In Windows is dit een groep programma's "Standaard" (eenvoudige tekst- en grafische editors, rekenmachine, enz.), een e-mailprogramma en een internetbrowser. Programma's voor algemene doeleinden omvatten ook kantoor-, multimedia- en amusementsprogramma's. In Linux zijn dergelijke programma's op basis van hun doel in groepen verdeeld.

Office programma's. In de regel installeert een gebruiker die een computer koopt er een kantoorsoftwaresuite op. Deze programma's omvatten:

Tekstverwerkers - voor het werken met tekstdocumenten;
tabellarische processors, die het mogelijk maken om tabellaire berekeningen te organiseren die in de praktijk heel gebruikelijk zijn;
programma's voor het maken van presentaties - een demovideo die wordt gebruikt voor spreken in het openbaar;
programma's voor het beheren van eenvoudige databases.

Multimediale programma's. Dit zijn algemene programma's die zijn ontworpen om met beeld en geluid te werken. Deze omvatten grafische editors waarmee u kunt tekenen, foto's kunt verwerken en fotomontages kunt maken. Met geluids- en beeldspelerprogramma's kunt u een afbeelding weergeven, naar een muziekopname luisteren en een video bekijken. Geluidsverwerking op een computer wordt in de regel gedaan door professionals, die hiervoor speciale softwarepakketten gebruiken.

Entertainment programma's. Veel gebruikers beginnen hun communicatie met de computer met computerspelletjes.

Professionele software. Dit zijn toepassingsprogramma's voor speciale doeleinden - hulpmiddelen voor professionele activiteiten. Boekhoudsoftware wordt bijvoorbeeld gebruikt voor geautomatiseerde salaris- en andere berekeningen die worden gemaakt op boekhoudafdelingen; computerondersteunde ontwerpsystemen worden door ontwerpers gebruikt om projecten voor verschillende technische apparaten te ontwikkelen; programma's waarmee complexe wiskundige problemen kunnen worden opgelost, worden gebruikt door wetenschappers en ingenieurs; medische expertsystemen helpen een arts een patiënt te diagnosticeren en nog veel meer.

Educatieve programma's. Dit zijn ook speciale programma's. Educatieve programma's omvatten elektronische leerboeken, trainingssimulators. Vaak wordt een spelvorm gebruikt voor trainingsdoeleinden. Deze combinatie is vooral populair bij jonge kinderen.

Kort over de hoofdzaak

Computersoftware is onderverdeeld in drie delen: systeemsoftware, applicatiesoftware en programmeersystemen.

Toepassingsprogramma's gebruiken de gebruiker kan zijn informatieproblemen direct oplossen zonder te hoeven programmeren.

Applicatiesoftware omvat: kantoor-, multimedia-, entertainment- en educatieve, professionele en andere programma's.

Vragen en taken

1. Wat is computersoftware?

2. Welke taken voert de applicatiesoftware uit?

3. Wat zijn de belangrijkste soorten toepassingen voor algemene doeleinden.

4. Wat zijn speciale toepassingen?

Over systeemsoftware en programmeersystemen

De belangrijkste onderwerpen van de paragraaf:

Wat is een besturingssysteem;
- interactieve modus;
- serviceprogramma's;
- programmeersystemen.

Onderwerpen in studie:

Softwareconcept.
- Soorten software
- Samenstelling van toegepaste software.
- Systeemsoftware en besturingssysteemfuncties.
- Het concept van een interactieve werkwijze.
- Serviceprogramma's.
- Het programmeersysteem is een hulpmiddel voor het werk van de programmeur.

Wat is een besturingssysteem?

Waar applicatieprogramma's voor zijn, is gemakkelijk te begrijpen. Wat is systeemsoftware?

Het belangrijkste onderdeel van de systeemsoftware is: besturingssysteem(OS).

Een besturingssysteem is een set programma's die RAM, processor, externe apparaten en bestanden beheren en een dialoog voeren met de gebruiker.

Het besturingssysteem heeft veel werk te doen en het werkt bijna altijd. Om bijvoorbeeld een toepassingsprogramma uit te voeren, moet het worden gezocht in het externe geheugen (op schijf), in het RAM worden geplaatst (nadat daar vrije ruimte is gevonden), het programma starten, de werking van alle computerapparaten tijdens de uitvoering controleren, en diagnostische berichten weergeven in geval van storingen. ... Het besturingssysteem zorgt voor al deze zorgen.

Hier zijn de namen van enkele van de meest voorkomende besturingssystemen voor personal computers: Windows, Linux, Mac OS.

Interactieve modus

Het besturingssysteem communiceert met de gebruiker via een specifieke dialoogomgeving (shell) die op het scherm wordt weergegeven: "Desktop", bestandsbeheerder, enz. Als de gebruiker een actie wil uitvoeren, stuurt hij het besturingssysteem de juiste opdracht, handelend op de elementen van de dialoogomgeving. Het kan bijvoorbeeld een opdracht zijn om een ​​toepassingsprogramma te starten, een opdracht om een ​​bewerking met bestanden uit te voeren (een bestand verwijderen, kopiëren, enz.), een opdracht om de huidige tijd of datum te melden, of een opdracht voor het opnieuw opstarten van de computer. Na het voltooien van deze werkfase, gaat het besturingssysteem in de wachtstand op de volgende opdracht van de gebruiker.

Deze manier van werken wordt interactieve modus genoemd.... Dankzij het besturingssysteem voelt de gebruiker zich nooit aan zijn lot overgelaten. Alle besturingssystemen op personal computers werken samen met de gebruiker in een dialoogmodus. Dialoogmodus wordt vaak interactieve modus genoemd.

Serviceprogramma's

Naast het besturingssysteem moet de systeemsoftware ook veel onderhoudsprogramma's bevatten, dienst karakter... Dit zijn bijvoorbeeld programma's voor het onderhouden van schijven (kopiëren, formatteren, "curing", enz.), het comprimeren van bestanden op schijven (archivering), het bestrijden van computervirussen en nog veel meer.

Computervirus wordt kwaadaardige softwarecode genoemd die gegevens op een computer kan beschadigen of uitschakelen. De belangrijkste dragers van virussen zijn: software zonder licentie, bestanden gekopieerd van willekeurige bronnen, evenals het wereldwijde computernetwerk internet. De strijd tegen computervirussen wordt gevoerd door specialisten die antivirusprogramma's maken.

Antivirusprogramma's moeten in de computersoftware zijn opgenomen. Het is echter niet voldoende om een ​​dergelijk programma eenmalig op een computer te installeren. Daarna moet u de database regelmatig bijwerken - instellingen toevoegen voor nieuwe soorten virussen. Dergelijke updates worden het meest efficiënt via internet uitgevoerd door de servers van fabrikanten van antivirusprogramma's.

Programmeersystemen

Naast systeem- en applicatiesoftware is er nog een derde type software. Het wordt programmeersystemen (SP) genoemd.

Een programmeersysteem is een set tools die is ontworpen om te werken met programma's in een van de programmeertalen.

Programmeurs werken met programmeersystemen. Ze ontwikkelen computerprogramma's. Elke joint venture is gericht op een specifieke programmeertaal. Er zijn veel verschillende talen, bijvoorbeeld Pascal, BASIC, FORTRAN, C ("C"), Assembler, LISP, enz. In deze talen schrijft de programmeur programma's, en met behulp van programmeersystemen brengt hij ze in de computer , debugt, test en voert uit.

Programmeurs maken allerlei soorten programma's: systeem, applicatie en nieuwe programmeersystemen.

Kort over de hoofdzaak

Systeem software- een verplicht onderdeel van de software. De kern is het besturingssysteem (OS). Het besturingssysteem is direct verbonden met de hardware en regelt de werking ervan, organiseert het werk met bestanden en voert een dialoog met de gebruiker.

Naar serviceprogramma's omvat schijfonderhoudsprogramma's, archiveringsprogramma's, antivirusprogramma's, enz.

Programmeersystemen- hulpmiddelen voor het werk van programmeurs.

Vragen en taken

1. Welke soorten software zijn beschikbaar op moderne computers? Bereid uw bericht voor.

2. Wat is een besturingssysteem (OS)? Wat zijn de belangrijkste functies die het vervult?

3. Wat is de interactieve wijze van communicatie tussen het besturingssysteem en de gebruiker?

4. Waar zijn programmeersystemen voor? Wie werkt met hen samen?

Elektronische bijlage bij de les


Lesmateriaal downloaden

Software- een integraal onderdeel van een computersysteem. Het is een logisch vervolg op technische middelen. Het toepassingsgebied van een bepaalde computer wordt bepaald door de software die ervoor is gemaakt. De computer zelf kent geen enkele toepassing. Al deze kennis is geconcentreerd in programma's die op computers draaien. Software moderne computers bevatten miljoenen programma's - van gaming tot wetenschappelijk.

Er zijn twee hoofdtypen software: systeemsoftware (ook wel generiek genoemd) en applicatiesoftware (maatsoftware genoemd). Elk type software heeft een andere functie. systemisch software Is een reeks programma's die computercomponenten besturen, zoals een processor, communicatie en randapparatuur. Programmeurs die een systeem maken software worden systeemprogrammeurs genoemd. Applicatiesoftware verwijst naar programma's die zijn geschreven voor gebruikers, of door de gebruikers zelf, om een ​​computer een specifieke taak te geven. Orderverwerkings- of distributielijstprogramma's zijn voorbeelden van applicatiesoftware. Programmeurs die schrijven toegepast software worden applicatieprogrammeurs genoemd.

Beide soorten software zijn met elkaar verbonden en kunnen worden weergegeven in de vorm van een diagram zoals weergegeven in figuur 2.1. Zoals je kunt zien, werkt elk gebied nauw samen met het andere. systemisch software biedt en controleert toegang tot computerhardware. Toegepast software interageert met hardwarecomponenten via het systeem. Eindgebruikers werken voornamelijk met applicatiesoftware. Om hardwarecompatibiliteit te garanderen, is elk type software ontworpen voor een specifiek hardwareplatform.


Rijst. 2.1.

Systeemsoftware, waaronder: besturingssysteem, taalvertalers en hulpprogramma's, regelt de toegang tot hardware. Applicatiesoftware zoals programmeertalen en diverse gebruikersapplicaties werken met de hardware via de systeemsoftwarelaag. Gebruikers hebben op hun beurt interactie met de applicatiesoftware.

Softwaresystemen kunnen worden ingedeeld op basis van verschillende criteria. Overweeg de classificatie, waarbij het fundamentele kenmerk het gebied (gebied) van het gebruik van softwareproducten is:

  • hardware-onderdeel van stand-alone computers en computernetwerken;
  • functionele taken van verschillende vakgebieden;
  • technologie voor softwareontwikkeling.

Om de informatietechnologie op deze gebieden respectievelijk te ondersteunen, worden drie klassen van softwareproducten onderscheiden, weergegeven in figuur 2.2:

  • systeem software;
  • applicatiesoftware;
  • instrumentale software.

systemisch software(Systeemsoftware) - een reeks programma's en softwaresystemen die zijn ontworpen om de werking van een computer en computernetwerken te waarborgen. systemisch software voert de volgende taken uit:

  • het creëren van een besturingsomgeving voor het functioneren van andere programma's;
  • zorgen voor een betrouwbare en efficiënte werking van de computer zelf en het computernetwerk;
  • diagnose, lokalisatie van storingen, fouten en storingen en preventie van computerhardware en computernetwerken;
  • uitvoering van ondersteunende technologische processen (kopiëren, archiveren, herstellen van programmabestanden en databases, enz.).


Rijst. 2.2.

Deze klasse van softwareproducten is nauw verwant aan het type computer en maakt er integraal deel van uit. Softwareproducten zijn voornamelijk gericht op gekwalificeerde gebruikers - professionals op computergebied: systeemprogrammeur, netwerkbeheerder, applicatieprogrammeur, operator. Kennis van de basistechnologie voor het werken met deze klasse van softwareproducten is echter ook vereist voor eindgebruikers van een personal computer, die niet alleen zelfstandig met hun programma's werken, maar ook onderhoud plegen aan de computer, programma's en gegevens.

Softwareproducten van deze klasse zijn van algemene aard, ongeacht de bijzonderheden gebied... Ze stellen hoge eisen aan betrouwbaarheid en maakbaarheid van het werk, gemak en efficiëntie van gebruik.

Toegepast software is een complex van onderling verbonden programma's die zijn ontworpen om problemen van een bepaalde klasse van een specifiek probleem op te lossen gebied. Applicatiepakketten(PPP) voor algemeen gebruik zijn softwaretools voor het oplossen van functionele problemen en zijn de meest talrijke klasse van softwareproducten. Deze klasse omvat softwareproducten die informatie in verschillende vakgebieden verwerken.

Installatie van applicatiepakketten op een computer wordt uitgevoerd door systeembeheerders, systeemprogrammeurs en (in sommige gevallen) gekwalificeerde gebruikers. De directe bediening van softwareproducten wordt in de regel uitgevoerd door eindgebruikers - informatieconsumenten, in veel gevallen wier activiteiten zeer ver van het computerveld af liggen. Deze klasse van softwareproducten kan zeer specifiek zijn voor bepaalde vakgebieden.

De programmeertechnologie-toolkit is een verzameling programma's en softwarecomplexen die technologie bieden voor de ontwikkeling, debuggen en implementatie van de gemaakte softwareproducten.

De toolkit voor programmeertechnologie bevat gespecialiseerde softwareproducten die ontwikkelaarstools zijn. Softwareproducten van deze klasse ondersteunen alle technologische stadia van het ontwerpen, programmeren (coderen), debuggen en testen van de gemaakte programma's. De gebruikers van de programmeertechnologie zijn systeem- en applicatieprogrammeurs.

systemisch software(Figuur 2.3) kan worden onderverdeeld in basis software, die in de regel bij de computer wordt geleverd, en de service software die extra kan worden gekocht.

Basis software(basissoftware) - de minimale set softwaretools om de werking van een computer te garanderen. Dienst software omvat programma's en softwarepakketten die de mogelijkheden van de basissoftware uitbreiden en een gemakkelijkere omgeving voor de gebruiker organiseren.


Rijst. 2.3.

in basis software omvat:

  • besturingssysteem;
  • operationele shells (meestal tekst en grafisch);
  • netwerk besturingssysteem.

Besturingssysteem ontworpen om de uitvoering van gebruikersprogramma's, planning en controle van computerbronnen van een computer te regelen.

De meest traditionele vergelijking van besturingssystemen wordt uitgevoerd volgens de volgende kenmerken van het informatieverwerkingsproces:

  • geheugenbeheer (maximaal adresseerbare ruimte, geheugentypes, technische indicatoren van geheugengebruik);
  • functionaliteit van hulpprogramma's (hulpprogramma's) als onderdeel van het besturingssysteem;
  • de aanwezigheid van schijfcompressie;
  • de mogelijkheid om bestanden te archiveren;
  • ondersteuning voor multitasking;
  • ondersteuning voor netwerksoftware;
  • beschikbaarheid van hoogwaardige documentatie;
  • voorwaarden en complexiteit van het installatieproces;
  • mobiliteit (draagbaarheid), veiligheid, betrouwbaarheid, enz.

Besturingssystemen worden, gezien hun centrale positie in computersoftware, in detail besproken in het volgende hoofdstuk van de tutorial.

Operationele shells zijn speciale programma's die zijn ontworpen om de communicatie tussen de gebruiker en de opdrachten van het besturingssysteem te vergemakkelijken. Operationele shells hebben zowel tekst- als grafische eindgebruikersinterface-opties, en spraak- en handschriftherkenningsopties zijn in de toekomst mogelijk. Deze programma's vereenvoudigen de taak van besturingsinformatie voor het uitvoeren van opdrachten van het besturingssysteem aanzienlijk, verminderen de spanning en complexiteit van de eindgebruiker.

Een uitbreiding van de basissoftware van een computer is een reeks services, extra geïnstalleerde programma's (of programma's die rechtstreeks bij besturingssystemen worden geleverd), die als volgt kunnen worden geclassificeerd op basis van hun functionele kenmerken:

  • diagnostische programma's voor computergezondheid;
  • antivirusprogramma's die uw computer beschermen, geïnfecteerde bestanden detecteren en herstellen;
  • schijfonderhoudsprogramma's die de kwaliteit van het magnetische schijfoppervlak controleren, de veiligheid van het bestandssysteem op logisch en fysiek niveau controleren, schijven comprimeren, verzekeringskopieën van schijven maken, back-upgegevens op externe media, enz.;
  • programma's voor het archiveren van gegevens die zorgen voor het comprimeren van informatie in bestanden om de hoeveelheid geheugen voor de opslag ervan te verminderen;
  • netwerk onderhoudsprogramma's.

Deze programma's worden vaak hulpprogramma's genoemd. Hulpprogramma's zijn programma's die worden gebruikt om aanvullende gegevensverwerkingsbewerkingen of computeronderhoud uit te voeren (diagnose, testen van hardware en software, optimaliseren van het gebruik van schijfruimte, herstellen van vernietigde informatie op een magnetische schijf, enz.).

In moderne besturingssystemen kunnen dergelijke hulpprogramma's worden weergegeven, zoals bijvoorbeeld in Windows, door de programmagroepen "standaard" en "service". Ze bevatten een aantal handige programma's: rekenmachine, geluidsrecorder, kladblok, enz. De "service" -groep bevat een aantal programma's die de mogelijkheden van het besturingssysteem uitbreiden: schijfopschoning en defragmentatie, systeemherstel, enz.