Rekenaars, Sagteware
Sagteware lewensiklus: konsep, standaarde, prosesse,
Sagteware-ontwikkeling is nie moontlik sonder die begrip van die sogenaamde sagteware lewensiklus. Gewone gebruiker dit kan wees, en hoef nie te weet nie, maar dit is wenslik om die basiese standaarde te leer (hierna sal vertel waarom dit nodig is).
Sagteware lewensiklus: Wat is dit in die formele sin?
Onder die lewensiklus van 'n sagteware produk verstaan as die tyd van sy bestaan, wat begin met die ontwikkelingsfase en voor die volledige verwerping van die gebruik van die gekose veld van toepassing totdat die volledige onttrekking uit die gebruik aansoek.
Eenvoudig gestel, inligtingstelsels in die vorm van programme, databasisse, of selfs "van bedryfstelsels" in aanvraag is net in die geval van data relevansie en geleenthede wat deur hulle.
Daar word geglo dat die definisie van die lewensiklus in enige manier nie van toepassing op programme, soos beta weergawes, wat die mees onstabiele in die werk is te toets. Die einste sagteware lewensiklus hang van baie faktore, waaronder een van die belangrikste rolle van die medium waarin die program gebruik gaan word. Jy kan egter kies en die algemene terme wat gebruik word in die definisie van die lewensiklus konsep.
aanvanklike vereistes
As wat algemeen geglo, gebruik 'n aantal voorwaardes met betrekking tot die ontwikkeling en gebruik vir enige sagteware produk, naamlik:
- formulering van die probleem;
- ontleding van die wedersydse vereistes van toekomstige stelsel;
- ontwerp;
- programmering;
- kodering en samestelling;
- toets;
- debugging;
- implementering en instandhouding van sagteware.
Sagteware-ontwikkeling bestaan uit al die bogenoemde stappe, en kan dit nie doen sonder ten minste een van hulle. Maar om te beheer sulke prosesse ingestel spesifieke standaarde.
Proses standaarde van die programmatuur-lewensiklus
Onder die stelsels vooraf bepaal die voorwaardes en vereistes vir sulke prosesse kan nou genoem word slegs drie belangrikste hiervan:
- GOST 34,601-90;
- ISO / IEC 12207: 2008;
- Oracle CDM.
Vir die tweede internasionale standaard is die Russiese ekwivalent. Dit GOST R ISO / IEC 12207-2010, is verantwoordelik vir die stelsel en sagteware-ingenieurswese. Maar die programmatuur-lewensiklus, in beide regulasies beskryf, is identies in stof. Die rede hiervoor is eenvoudig genoeg.
Tipes sagteware en updates
Moderne inligtingstelsels is sodanig dat hulle vas te stel algemene konsepte aansoek.
Byvoorbeeld, daar is stelsel programme en utilities, multimedia gereedskap, device drivers, kantoor programme en so aan. D. vir enige tipe van sagteware kan die bestaan van stadiums van die lewensiklus te bepaal.
Die uitbreiding daarvan is die mees algemeen gebruik word middel van opdatering (vir beide bedryfstelsels en platforms en toepassingsprogrammatuur). Waarskynlik nie nodig om te verduidelik dat 'n gebruiker van die rekenaar stelsel wat gebaseer is op Windows updates 'n stadium van die stelsel of komponente geslaag soos Microsoft NET Framework of virtuele masjien Java.
ontwerp stadium
Nou 'n paar woorde direk oor die stadiums van ontwikkeling. Lewensiklus sluit aanvanklik projekbeplanning, stelsel analise en teiken vereistes, die moontlikheid van 'n voorlopige of gedetailleerde ontwerp, kodering en toetsing, die moontlikheid van toepassingsprogrammatuur in gespesialiseerde stelsels, en so aan. D.
Modelle van die programmatuur-lewensiklus dui daarop dat die taak van die skep van sagteware moet beperk word tot die ontwikkeling van generiese programme of sagteware produkte wat sommige begin omgewing gebruik aanvanklik ingestel.
ontwerp
Ontwikkeling stelsels programmeertale. Sagteware ontwerp in die eerste fase kan af verminder word tot.
Sal hierdie C + / C ++, Java, Delphi of dieselfde ou Pascal - is nie so belangrik. Die vraag is, hoe geskep aansoek kan geïntegreer word in die bedryfstelsel en glad verloop.
In hierdie sin, een lewensiklus van sagteware toets dit is die tyd van die aanvanklike installasie van die produk tot sy volledige verwydering as gevolg van wanaanpassing van die stelsel vereistes, in onbruik of onvermoë om die take wat oorspronklik uit te voer.
daaropvolgende fases
Verdere ondersteuning vir die definisie van die programmatuur-lewensiklus, kom neer op kodering om te genereer en ontvang die aansoek bron-kode.
In die geval van 'n gratis (oop) die verspreiding van die sogenaamde sertifikaat word toegepas op grond van die GNU-lisensie wat toelaat vir veranderinge in die sagteware self op versoek van die gebruiker, vertroud is met die programmeertaal waarmee die aansoek is geskep.
As dit is 'n geslote kode, kan jy gereedskap gebruik soos Disassembler. Maar in hierdie geval, kan slegs die dekodering uitvoerbare EXE-lêers bereik, en beslis nie gekoppel DLL dinamiese biblioteke.
Maar hierdie teorie. In die praktyk, die stadium van die programmatuur-lewensiklus sluit 'n lys baie meer items. Selfs die mees eenvoudige simulasie wat bestaan uit 'n hersiening van standaarde en formuleer waarnemings (vereistes hoë-vlak tot argitektuur, wat ooreenstem met die die uitvoerbare kode, die middele en metodes van verifikasie). Dit is die proses van die programmatuur-lewensiklus. Maar hier is dit belangrik om te verstaan en te beheer 'n paar van die beginsels van sulke programme en stelsels.
bestuur Basics
sagteware lewensiklus bestuur is gebaseer op die ontbinding van programme in komponente, wat 'n wye genoeg verskeidenheid van gereedskap om hulle te skep.
Daar is 'n nadeel. Die keuse van modules is beperk deur die oorspronklike ontwikkelaar van die platform op die basis van wat ontwikkeling geproduseer. Natuurlik, as jy in ag neem die eenwording en tik gebruik ontwikkeling gereedskap (veral herbruikbare modules), geen twyfel daaroor nie.
Maar die stadiums van die sagteware lewensiklus noodwendig sluit die vestiging van data verwerking protokolle, roetines, standaard biblioteke, en nog baie meer.
gebruikte modules
En geen proses sagteware lewensiklus is volledig sonder die gebruik van 'n baie spesifieke komponente. Een van hierdie prioriteite is die volgende:
- Hoof (Hoof) module verantwoordelik vir die bekendstelling van die sagteware produk;
- Beheer-eenheid, wat verantwoordelik is vir die roeping van die verbonde komponente of dinamiese skakel biblioteke;
- funksies en diens dataverwerking gereedskap en bykomende gereedskap.
Die uitvoerbare lêer is gewoonlik, vir Windows-gebaseerde stelsels word aangebied in die vorm van "ekzeshnika". Beheer komponente het 'n uitbreiding configuratoren (Config.sys toegepas op die bedryfstelsel), verdere skakel biblioteke het verlenging DLL. Middel van beheer en verwerking funksies en instellings van 'n paar programme mag voorkom in die vorm van XML-lêers.
Hulle is, terloops, vir die meerderheid van die oomblik bekend media programme is 'n middel van die behoud van die basiese opset parameters. Die gebruik van sagteware van hierdie tipe, natuurlik, dit is nogal 'n beperkte, maar die begrip van die algemene beginsels van die werk met dieselfde media spelers kon nie seergekry nie. Hier is die rede waarom.
Trouens, wat hulle sagteware lewensiklus gelê net op die vlak van die lewe opgradering van die speler of die installasie van codecs en dekodeerders. 'N Gesonde en video transcoders is inherent eienskappe van 'n klank of video-stelsel.
Byvoorbeeld gebaseer op die FL Studio program
Aanvanklik het die virtuele studio sequencer FL Studio was die naam van Fruity Loops. Die lewensiklus van die sagteware in sy primêre verandering verstryk het, maar die aansoek is ietwat verander en sy huidige voorkoms verkry.
As ons praat oor die lewensiklus stadiums, eerste op die stadium van formulering van die probleem deur 'n paar voorvereistes gestel:
- die skepping van 'n drom module tipe trom masjiene soos die Yamaha RX, maar met een-skoot-monster of volgorde in WAV-formaat, live opgeneem in die ateljee;
- integrasie in die Windows-bedryfstelsel,
- die moontlikheid van projek uitvoer na WAV, MP3 en OGG;
- die verenigbaarheid van projekte met 'n bykomende aansoek vrugtige spore.
"C" beteken die programmeertale gebruik in die ontwikkeling stadium. Maar die platform het redelik primitief en het die gewenste klank kwaliteit gee nie die eindgebruiker.
In hierdie verband, tydens die toetsing en ontfouting stadium ontwikkelaars moes die weg van die Duitse Corporation Steinberg gaan en toe te pas om die basiese vereistes vir die klank ondersteuning bestuurder vir Full Duplex af. Klank kwaliteit is hoër en toegelaat word om die tempo, toonhoogte verander en addisionele FX-effekte in reële tyd op te lê.
Die voltooiing van die lewensiklus van die sagteware word beskou as die opbrengs van die eerste amptelike weergawe van FL Studio, wat, in teenstelling met hul voorvaders, het 'n volwaardige sequencer koppelvlak met die vermoë om die instellings op die virtuele 64-kanaal mengtafel met onbeperkte toevoeging van klank snitte en MIDI-spore wysig nie wees nie.
Bevordering van die program het nie daar stop. Op die stadium van die projek bestuur ondersteuning vir die koppeling van VST-formaat inproppe ingestel (eerste, tweede, en dan die derde weergawe), een keer wat ontwikkel is deur Steinberg. Rofweg gesproke, kan enige virtuele synthesizer wat VST-gasheer ondersteun verbind tot die program.
Dit is nie verbasend dat binnekort 'n komponis kon die analogie van "yster" modelle, soos 'n volledige stel van klanke eens gewilde Korg M1 gebruik. Meer - baie meer. Aansoek modules soos verslawend Drums of universele prop Kontak toegelaat om live klanke van werklike instrumente, aangeteken met alle skakerings van artikulasie in professionele ateljees speel.
Die ontwikkelaars het probeer om maksimum gehalte en die skep van ondersteuning te bereik vir die ASIO4ALL bestuurder, wat blyk te wees 'n kop en skouers bo die modus Full Duplex wees. Gevolglik is die verhoogde bitrate. Vandag, kan die gehalte van die uitvoer klank lêer 320 kbit / s op 'n sampling rate van 192 kHz wees. En hierdie professionele klank.
Soos vir die aanvanklike weergawe van sy lewensiklus kan heeltemal klaar is geroep, maar so 'n stelling is relatief, want die aansoek net sy naam verander, en het nuwe geleenthede gevind.
vooruitsigte ontwikkeling
Wat is die stadiums van die programmatuur-lewensiklus, dit is reeds duidelik. Maar hier op die ontwikkeling van so 'n tegnologie moet afsonderlik bespreek word.
Nodeloos om te sê dat enige sagteware ontwikkelaar is nie geïnteresseerd in die skep van 'n verbygaande produk, wat skaars uit te hou op die mark vir 'n paar jaar. In die toekoms, is almal op soek na die langtermyn benutting. Dit kan bereik word in verskillende maniere. Maar as 'n reël, byna almal van hulle neer op updates of nuwe weergawes van sagteware vry te stel.
Selfs in die geval van Windows, kan so 'n tendense gesien word met die blote oog. Dit is onwaarskynlik dat daar vandag is ten minste een gebruiker, deur middel van stelseldiagramme soos weergawes 3.1, 95, 98, of Millennium. Hul lewensiklus is verby ná die vrystelling van weergawe XP. Maar hier is die bediener weergawe op NT tegnologie gebaseer is nog steeds geldig. Selfs Windows 2000, vandag is nie net baie relevant, maar in sommige opsigte die installasie of sekuriteit selfs oortref die jongste verwikkelinge. Dieselfde geld vir NT 4.0 stelsels, en gespesialiseerde aanpassings Windows Server 2012.
Maar dit is in verband met hierdie stelsels steeds daarop aanspraak te ondersteun op die hoogste vlak. Maar die sensasionele ten tyde Vista is duidelik ervaar 'n sonsondergang siklus. Nie net dit nie, dit was onvoltooid, so stil en fout op sigself, en tekortkominge in sy sekuriteit stelsel was so erg dat ons net kan raai oor hoe was dit moontlik om te begin 'n sagteware-oplossing is onhoudbaar.
Maar as ons praat oor die feit dat die ontwikkeling van sagteware van enige tipe (kontrole of aansoek) is nie in plek is, kan ons net noem die feite. Na alles, vandag dit kom by nie net rekenaarstelsels en mobiele toestelle, en waarin die tegnologie is dikwels voor die rekenaar sektor. Die voorkoms van die verwerker chips gebaseer op agt cores - is nie die beste voorbeeld? Maar nog steeds, nie elke laptop kan spog dat hy so 'n "yster".
'N paar ekstra vrae
Soos vir die begrip van die programmatuur-lewensiklus, om te sê dat dit geëindig op 'n sekere punt in tyd, kan dit baie arbitrêr wees, want die sagteware het nog steeds die ondersteuning van die ontwikkelaars om hulle te skep. Inteendeel, die einde verwys na die nalatenskap aansoeke wat nie aan die vereistes van die moderne stelsels en kan nie werk in hul omgewing.
Maar selfs met die tegnologiese vooruitgang, baie van hulle in die nabye toekoms kan nie volgehou word. En dan sal dit 'n besluit óf maak om updates of die volledige hersiening van die hele konsep, wat oorspronklik ingesluit in die sagteware uit te reik. Vandaar - en 'n nuwe siklus met 'n verandering in die aanvanklike voorwaardes, die ontwikkeling omgewing, toets, en moontlik gebruik langtermyn in 'n sekere gebied.
Maar in rekenaartegnologie bevoordeel vandag die ontwikkeling van die outomatiese beheer stelsels (ACS), wat gebruik word in die vervaardiging. Selfs die bedryfstelsel, in vergelyking met gespesialiseerde programme, verloor.
Dieselfde omgewing op grond van Visual Basic is baie meer gewild as Windows-stelsel. En oor die toepassing sagteware onder die UNIX-stelsel wat ons glad nie praat nie. Wat kan ek sê, as byna almal van die kommunikasie netwerke van dieselfde van die Verenigde State van Amerika uitsluitlik werk aan hulle. By the way, 'n stelsel soos Linux en Android, ook is oorspronklik geskep op hierdie platform. Daarom, heel waarskynlik, UNIX vooruitsigte veel meer as dié van alle ander produkte gekombineer.
plaas uitkoms
Dit bly by te voeg dat in hierdie geval is slegs algemene beginsels en fases van die programmatuur-lewensiklus. Trouens, selfs die aanvanklike take aansienlik wissel. Gevolglik kan die verskille in ag geneem word op ander stadiums.
Maar die kern tegnologie ontwikkeling van sagteware produkte met hul daaropvolgende ondersteuning moet duidelik wees. Vir die res, moet dit in ag neem die besonderhede van die sagteware geskep, en die omgewing waarin dit kwansuis moet werk, en die moontlikheid van programme wat aan die eindgebruiker of die produksie, en nog baie meer.
Daarbenewens, soms lewensiklusse kan afhang van die dringendheid van ontwikkeling gereedskap. As, byvoorbeeld, sal 'n paar programmeertaal uitgediende, niemand nie doen om programme wat daarop gebaseer is, en selfs meer so skryf - om hulle in te voer in die produksie van outomatiese beheer stelsels. Daar is reeds na vore selfs programmeerders en bemarkers wat nodig het om vinnig te reageer op veranderinge in die rekenaar mark kom. En daar is spesialiste in die wêreld, daar is nie te veel. Hoogs gekwalifiseerde personeel, die vermoë om sy hand op die pols van die mark te hou, wat oorslaan na die gewildste. En hulle word dikwels sogenaamde "grys kardinale", waarop hang die sukses of nederlaag van sekere sagteware produkte op die gebied van IT.
Veronderstel dat hulle nie altyd verstaan die essensie van die program, maar dit is duidelik in staat om die model van die programmatuur-lewensiklus en die lengte van die tyd van hul aansoek, wat gebaseer is op die globale tendense in hierdie gebied te bepaal. Effektiewe bestuur gee dikwels 'n meer tasbare resultate. Ja, ten minste PR-tegnologie, advertensies, en so aan. D. Kan enige aansoek die gebruiker is nie nodig nie, maar met dien verstande dat dit aktief spog met die gebruiker installeer dit. Dit het so te sê, onbewuste vlak (dieselfde effek as die 25ste raam wanneer inligting in die gees van die gebruiker gestel, ongeag van homself).
Natuurlik, soos tegnologie in die wêreld is verbode, maar baie van ons is nie eens bewus daarvan dat hulle nog kan gebruik word om die onderbewussyn beïnvloed in 'n sekere manier. Wat net 'n "zombie" nuus kanale of web sites, nie te praat van die gebruik van meer kragtige instrumente, soos blootstelling aan infraklank (hierdie is toegepas in dieselfde opera produksie), sodat 'n mens vrees of onvanpas emosies kan ervaar.
Terug te keer na die sagteware, moet dit bygevoeg word dat sommige programme by die begin met behulp van klank, die aandag van die gebruiker. En studies toon dat sulke aansoeke is meer lewensvatbaar in vergelyking met ander programme. Natuurlik, verhoog en die programmatuur-lewensiklus, maak nie saak wat funksie is aanvanklik aangekla. En dit, ongelukkig, is wat gebruik word deur baie ontwikkelaars wat twyfel oor die wettigheid van sulke metodes verhoog.
Maar nie vir ons om te oordeel. Miskien beteken definieer sodanige bedreigings sal ontwikkel word in die nabye toekoms. Terwyl dit is net 'n teorie, maar, volgens sommige ontleders en kenners, om praktiese toepassings is daar baie min. As jy reeds 'n afskrif van geskep die neurale netwerke van die menslike brein, wat dan?
Similar articles
Trending Now