At skabe et moderne softwaresystem er en meget besværlig opgave: den typiske størrelse af softwaren overstiger hundredtusindvis af operatører. For effektivt at skabe sådanne softwareprodukter skal en specialist have en forståelse af metoderne til analyse, design, implementering og test af softwaresystemer. Det er også vigtigt at forstå eksisterende tilgange og teknologier.

Udviklingen af ​​softwareprodukter, som ethvert andet komplekst system, udføres i etaper ved hjælp af en blokhierarkisk tilgang. Det indebærer udvikling af et produkt i dele med efterfølgende montage. På hvert trin udføres visse designoperationer, som er passende dokumenteret. Rækkefølgen af ​​stadier og deres resultater følger softwarens livscyklusmodell.

Derudover skal det implementerede system også ledsages af forskellige former for programdokumentation, for eksempel en specifikation, en programmørmanual, en brugermanual, en betjeningsvejledning osv. Muligheden for at lave softwaredokumentation er således bestemt nødvendig for en softwareudvikler. Du kan Gå Company og find den bedste eLearning-softwareudviklingsspecialist. Men hvis du ønsker at lære mere om de trin, der er involveret i softwareudvikling, så vil den følgende vejledning være nyttig. Prøv at afsætte tid nok til at studere det vigtige materiale om pædagogisk softwareudvikling.

Hvilke stadier omfatter softwareudviklingsprocessen?

Udviklingsprocessen for e-læringssoftware involverer de handlinger og opgaver, der udføres af udvikleren og dækker oprettelsen af ​​software og dens komponenter i overensstemmelse med de specificerede krav. Disse omfatter design- og driftsdokumentation, samt udarbejdelse af materialer, der er nødvendige for at kontrollere funktionaliteten og kvaliteten af ​​softwareprodukter, materialer, der er nødvendige til personaleuddannelse osv. I henhold til standarden omfatter softwareudviklingsprocessen følgende handlinger:

  1. Forberedende arbejde – valg af livscyklusmodel, standarder, udviklingsmetoder og værktøjer samt udarbejdelse af en plan fungerer;
  2. Analyse af krav til systemet – fastlæggelse af dets funktionalitet, brugerkrav, krav til pålidelighed og sikkerhed, krav til eksterne grænseflader mv.;
  3. Systemarkitekturdesign – bestemmelse af det nødvendige udstyr, software og operationer udført af servicepersonale;
  4. Analyse af softwarekrav – omhandler funktionalitet, herunder ydeevnekarakteristika, komponentmiljø, eksterne grænseflader, pålideligheds- og sikkerhedsspecifikationer, ergonomiske krav, datakrav, installation, accept, brugerdokumentation, drift og support;
  5. Softwarearkitekturdesign – definition af softwarens struktur, dokumentering af interfaces af dens komponenter, udvikling af en foreløbig version af brugerdokumentationen samt krav til test og en integrationsplan;
  6. Detaljeret softwaredesign – detaljeret beskrivelse af softwarekomponenter og grænseflader mellem dem, opdatering af brugerdokumentation, udvikling og dokumentation af krav til test og en testplan for softwarekomponenter, opdatering af komponentintegrationsplanen;
  7. Softwarekodning og -testning – udvikling og dokumentation af hver komponent, samt et sæt testprocedurer og data til deres testning, opdatering af brugerdokumentation og opdatering af softwareintegrationsplanen;
  8. Softwareintegration – samling af softwarekomponenter i overensstemmelse med softwareintegrations- og testplanen for overholdelse af kvalifikationskrav. Disse er et sæt kriterier eller betingelser, der skal opfyldes for at kvalificere softwareproduktet som værende i overensstemmelse med dets specifikationer og klar til brug under givne driftsforhold;
  9. Softwarekvalifikationstest – softwaretest i nærværelse af kunden for at demonstrere dens overholdelse af kravene og klarhed til drift. Samtidig kontrolleres også klarheden og fuldstændigheden af ​​brugerens tekniske dokumentation;
  10. Systemintegration – samling af alle systemkomponenter, inklusive software og hardware;
  11. Kvalifikationstest af systemet - test af systemet for overensstemmelse med kravene, kontrol af design og fuldstændighed af dokumentationen;
  12. Softwareinstallation – installation af software på kundens udstyr og verifikation af dets funktionalitet;
  13. Accept af softwaren – evaluering af resultaterne af kvalifikationstest af softwaren og systemet som helhed, endelig overførsel af softwaren til kunden.

Grundlæggende modeller af softwarens livscyklus i en e-læringssoftwareudviklingsvirksomhed

Konceptet om softwarens livscyklus dukkede op, da programmeringssamfundet indså behovet for at bevæge sig fra håndværksmæssige metoder til softwareudvikling til teknologisk og industriel produktion. Som det normalt sker i lignende situationer, forsøgte programmørerne at overføre erfaringerne fra andre industrielle produktioner til deres felt. Især begrebet livscyklus blev lånt.

De førende eksperter fra virksomheder inden for uddannelsessoftwareudvikling bemærker, at softwarens livscyklus er en periode, der starter fra det øjeblik, man træffer en beslutning om behovet for at skabe et softwareprodukt, og slutter i det øjeblik, det fjernes fuldstændigt fra en operation. Denne cyklus er processen med at bygge og udvikle software.

Livscykluskonceptet er opstået under indflydelse af behovet for at systematisere arbejdet i softwareudviklingsprocessen. Systematisering var det første trin på vejen til automatisering af softwareudviklingsprocessen. De næste trin i overgangen til automatisering af softwareudviklingsprocessen var som følger:

  • Etablering af de teknologiske ruter for softwareudvikleres aktiviteter;
  • Bestemmelse af muligheden for deres automatisering og identifikation af risici;
  • Udvikling af værktøjer til automatisering.

Brug af livscykluskonceptet giver mulighed for at vælge tilgange, der er mest effektive til opgaverne på et bestemt trin af softwarens levetid. Afhængigt af softwareudviklings- og supportprocesfunktionerne er der forskellige livscyklusmodeller.

Vandfaldsmodel

Vandfaldsmodellen for livscyklussen blev foreslået i 1970 af V. Royce. Vandfaldsmodellen af ​​softwarens livscyklus opstod for at imødekomme behovet for systematisering af arbejdet i de tidlige stadier af programudvikling. Ifølge denne model gennemgår softwaresystemer to faser i deres udvikling:

  1. Udvikling;
  2. Vedligeholdelse.

Faserne er opdelt i en række faser. Vandfaldsmodellen involverer sekventiel udførelse af alle faser af projektet i en strengt fastsat rækkefølge. Overgangen til næste fase betyder fuldstændig afslutning af arbejdet på den foregående fase.

Agile model (iterativ og inkrementel udvikling)

Agile-modellen går ud på at opdele projektets livscyklus i en sekvens af iterationer, som hver især ligner et miniprojekt med alle livscyklusfaser. Den klassiske Agile-model absolutiserer muligheden for at vende tilbage til tidligere stadier. Denne omstændighed afspejler et væsentligt aspekt af softwareudvikling: ønsket om at forudse alle situationer med systembrug på forhånd og umuligheden i langt de fleste tilfælde at opnå dette.

Alle traditionelle programmeringsteknikker sigter kun på at minimere afkast. Men essensen ændrer sig ikke fra dette: Når du vender tilbage, skal du altid gentage konstruktionen af ​​det, der allerede blev anset for at være klar.

Spiral Model

I spiralmodellen tager programudviklingen form af en række successive iterationer. I de første trin afklares produktspecifikationerne, i de næste trin tilføjes nye funktioner og funktioner. Ifølge eLearning-softwarevirksomheder er formålet med denne model at revurdere risiciene ved at fortsætte arbejdet i slutningen af ​​hver iteration.

Konklusion

Softwareudviklingsprocessen i en pædagogisk softwareudviklingsvirksomhed betragtes normalt som et kollektivt arbejde af specialister, der sigter mod at imødekomme brugernes behov for at automatisere deres aktiviteter. Som ethvert andet kollektivt arbejde kræver det organisering og ledelse. Denne proces er nogle gange langvarig, idet den i produktion og andre relationer forbinder dem, der kan betragtes som producenter af programmet i en eller anden grad.

Forfatter