Životní cyklus softwaru: koncept, standardy, procesy
Vývoj softwaru je nemožný bez pochopení takzvaného životního cyklu programů. To nemusí být nutné znát obyčejnému uživateli, ale je žádoucí zvládnout základní standardy (bude dále projednáno, proč je to nutné).
Obsah
Životní cyklus software: co je ve formálním smyslu?
V životním cyklu jakéhokoli softwarového produktu je obvyklé porozumět době jeho existence, počínaje fází vývoje a až do okamžiku úplného odmítnutí použití ve zvolené oblasti použití, dokud nebude aplikace úplně odstraněna z každodenního použití.
Jednoduše řečeno, informační systémy ve formě programů, databází nebo dokonce "operačních systémů" jsou poptávané pouze tehdy, jsou-li relevantní data a schopnosti, které poskytují.
Předpokládá se, že definice životního cyklu se v žádném případě nevztahuje na testovací aplikace, například na beta verze, které jsou v práci nejvíce nestabilní. Samotný životní cyklus softwaru závisí na mnoha faktorech, mezi kterými jedna z hlavních rolí hraje prostředí, ve kterém bude program používán. Je však možné identifikovat obecné podmínky používané při určování konceptu životního cyklu.
Počáteční požadavky
Jak se běžně domníváme, pro každý softwarový produkt jsou používány různé podmínky týkající se jeho vývoje a použití, a to:
- vyjádření problému;
- analýza vzájemných požadavků budoucího softwaru na systém;
- design;
- programování;
- kódování a kompilace;
- testování;
- ladění;
- implementaci a údržbu softwarového produktu.
Vývoj softwaru se skládá ze všech výše zmíněných fází a nemůže se uskutečnit bez alespoň jednoho z nich. Pro kontrolu těchto procesů jsou však stanoveny zvláštní normy.
Standardy procesů životního cyklu softwaru
Mezi systémy, které předurčují podmínky a požadavky na takové procesy, dnes existují pouze tři hlavní:
- GOST 34.601-90;
- ISO / IEC 12207: 2008;
- Oracle CDM.
Pro druhou mezinárodní normu existuje ruský analog. Jedná se o GOST R ISO / IEC 12207-2010, zodpovědný za systémové a softwarové inženýrství. Životní cyklus softwaru popsaný v obou pravidlech je však v podstatě totožný. To je vysvětleno prostě.
Typy softwaru a aktualizace
Moderní informační systémy jsou takové, že vytvářejí obecně přijímané koncepty oblasti použití.
Například tam je systémových programů a nástroje, multimediální nástroje, ovladače zařízení, kancelářské aplikace atd. Pro všechny typy softwarových produktů můžete definovat fáze životního cyklu své existence.
Pro obnovu jsou nejčastěji používány nástroje pro upgrade (pro oba operační systémy a pro platformy a aplikační software). Pravděpodobně není třeba vysvětlovat, že každý uživatel počítačového systému se systémem Windows prošel fází aktualizace samotného systému nebo součástí, jako je například Microsoft .NET Framework nebo virtuální stroj Java.
Fáze návrhu
Nyní pár slov přímo o etapy vývoje. Životní cyklus zpočátku zahrnuje projektování, systémové analýzy a cílové požadavky, možnost předběžného nebo podrobný návrh, kódování a testování, možnost aplikačního software ve specializovaných systémů, a tak dále. D.
Modely životního cyklu softwaru předpokládají, že počátečním úkolem vytváření softwaru by mělo být vytvoření univerzálních aplikací nebo softwarových produktů, které používají specifické prostředí pro spuštění.
Vývoj
Vývojové systémy jsou programovací jazyky. Návrh softwaru v první fázi může být snížen.
Bude to C + / C ++, Java, Delphi nebo stejné zastaralé Pascal - není tak důležité. Otázkou je, do jaké míry se může vytvořená aplikace integrovat do operačního systému a pracovat bez poruch.
V tomto smyslu, jeden životní cyklus testování softwaru je čas počáteční instalaci produktu až do jeho úplného odstranění v důsledku nepřizpůsobení požadavků systému je nefunkční nebo nemohou plnit úkoly původně.
Další kroky
Další údržba, která určuje životnost softwaru, se omezuje na kódování a získání zdrojového kódu aplikace.
V případě volné (open) šíření tzv certifikátu je použita v závislosti na licenci GNU, který umožňuje změny v samotném softwaru na žádost uživatele, obeznámený s programovacím jazykem, se kterým byla vytvořena aplikace.
Pokud je to uzavřený kód, můžete použít nástroje jako Disassembler. V tomto případě však můžete dosáhnout pouze dekódování spustitelného souboru EXE a rozhodně není přidružené dynamické knihovny DLL.
Ale toto je teorie. V praxi jsou v životním cyklu softwaru řada dalších prvků v jejich seznamu. Dokonce i nejjednodušší simulovaná situace spočívá v prověřování norem a formulování připomínek (vysoké požadavky na architekturu, soulad spustitelného kódu, prostředků a ověřovací metodiky). Toto je životní cyklus softwaru. Je však důležité pochopit některé zásady řízení těchto programů a systémů.
Základy managementu
lifecycle management software je založen na rozkladu programů do složek, což dostatečně širokou škálu nástrojů k jejich vytvoření.
Tam je také nevýhoda mince. Výběr modulů je omezen na vývojáře počáteční platformy, na jejímž základě se provádí programování. Samozřejmě, pokud si vzít v úvahu unifikaci a psaní používají vývojové nástroje (zejména opakovaně použitelné moduly), o tom není pochyb.
Stadia životního cyklu softwaru však nutně zahrnují vytvoření protokolů pro zpracování dat, podprogramů, standardních knihoven a mnoho dalšího.
Použité moduly
A žádný proces životního cyklu softwaru není dokončen bez použití velmi specifických komponent. Mezi tyto priority patří:
- hlavní (hlavový) modul odpovědný za spuštění softwarového produktu;
- řídicí modul odpovědný za volání připojených komponent nebo dynamických knihoven;
- funkční a servisní nástroje pro zpracování dat a další nástroje.
Spouštěcí soubor zpravidla pro systémy Windows je prezentován ve formě "exeshnika". Řídicí komponenty mají rozšíření konfigurátoru (config.sys pro operační systémy), navíc připojené knihovny mají rozšíření DLL. Ovládání a zpracování funkcí a nastavení některých aplikací může vypadat Soubory XML.
Mimochodem, pro většinu dnešních známých multimediálních programů jsou prostředky na zachování základních konfiguračních parametrů. Použití softwaru tohoto typu je samozřejmě spíše omezené, ale pochopení obecných zásad práce se stejnými multimediálními přehrávači neublíží. A to je důvod, proč.
Ve skutečnosti v nich je životní cyklus softwaru položen pouze na úrovni aktualizační verze samotného hráče nebo instalace kodeků a dekodérů. A audio a video transcodéry jsou základní atributy libovolného audio nebo video systému.
Příklad založený na FL Studio
Zpočátku byl virtuální studiový sekvencer FL Studio nazýván Fruity Loops. Životní cyklus softwaru v jeho primární úpravě vypršel, ale aplikace byla poněkud přeměněna a získala aktuální podobu.
Pokud hovoříme o fázích životního cyklu, nejprve ve fázi stanovení úkolu bylo stanoveno několik povinných podmínek:
- Vytvoření bicích automatů bicí modul typu, jako je Yamaha RX, ale s jedním-shot-vzorku nebo sekvence ve formátu WAV, nahrával živě ve studiu;
- integrace do operačních systémů Windows;
- možnost exportovat projekt ve formátech WAV, MP3 a OGG;
- Projekty kompatibility s doplňkovou aplikací Fruity Tracks.
Ve fázi vývoje byly použity programovací jazyky C. Ale platforma vypadala spíše primitivní a nedala koncovému uživateli potřebnou kvalitu zvuku.
V této souvislosti vývojáři museli v testovací a debugovací fázi sledovat cestu německé společnosti Steinberg a uplatňovat podporu režimu Full Duplex v požadavcích na hlavní zvukový ovladač. Kvalita zvuku se zvýšila a umožňovala měnit tempo, pitch a překrývat další efekty FX v reálném čase.
Dokončení celého životního cyklu softwaru je považován za výstup první oficiální verze FL Studio, který na rozdíl od svých předchůdců, byl plnohodnotným sekvencer rozhraní s možností upravovat nastavení na virtuální 64-kanálového mixážního pultu s neomezeným přidáním zvukové stopy a MIDI stopy.
Propagace programu se zde nezastavila. Ve fázi řízení projektu byla zavedena podpora pro připojení VST zásuvných modulů (první, druhá a pak třetí verze) vyvinutá Steinbergem v té době. Zhruba řečeno, každý virtuální syntezátor, který podporuje VST-host, se může připojit k programu.
Není divu, že brzy každý skladatel by mohl používat analogy "železných" modelů, například kompletní sady zvuků kdysi populárního Korg M1. Dále - více. Použití modulů, jako jsou návykové bubny nebo univerzální kontakt plug-in umožnilo reprodukovat živé zvuky skutečných nástrojů zaznamenaných se všemi odstíny artikulace v profesionálních studiích.
Současně se vývojáři snažili dosáhnout maximální kvality vytvořením podpory ovladačů ASIO4ALL, která se ukázala být vyšší než režim Full Duplex. Proto došlo k nárůstu datového toku. K dnešnímu dni může být kvalita exportovaného zvukového souboru 320 kbit / s při vzorkovací frekvenci 192 kHz. A to je profesionální zvuk.
Pokud jde o počáteční verzi, může být její životní cyklus nazýván zcela kompletní, ale takové tvrzení je relativní, protože aplikace pouze změnila svůj název a získala nové příležitosti.
Perspektivy vývoje
Jaké jsou etapy životního cyklu softwaru, je již jasné. Za zmínku stojí vývoj těchto technologií zvlášť.
Není nutné říci, že žádný vývojář softwaru nemá zájem o vytvoření letmého produktu, který pravděpodobně zůstane několik let na trhu. Z dlouhodobého hlediska se každý dívá na jeho dlouhodobé využití. To lze dosáhnout mnoha způsoby. Ale zpravidla se téměř všichni vrhnou na vydání aktualizací nebo nových verzí programů.
Dokonce i v případě operačního systému Windows lze tyto trendy vidět pouhým okem. Je nepravděpodobné, že dnes bude alespoň jeden uživatel používat systémy, jako jsou modifikace 3.1, 95, 98 nebo tisíciletí. Jejich životní cyklus skončil po vydání verze XP. Serverové verze založené na technologiích NT jsou však stále relevantní. I dnešní systém Windows 2000 je nejen velmi relevantní, ale i pro některé parametry instalace nebo zabezpečení, které dokonce překračují nejnovější vývoj. Totéž platí pro systém NT 4.0, stejně jako pro specializovanou úpravu systému Windows Server 2012.
Ve vztahu k těmto systémům je však podpora na nejvyšší úrovni ještě prohlášena. Ale senzační ve své době Vista jasně prožívá cyklus západu slunce. Nejen že to bylo nedokončeno, byly tam také chyby a v jeho bezpečnostním systému bylo tolik škod, že lze jen odhadnout, jak bylo možné uvolnit takové neudržitelné řešení na softwarovém trhu.
Ale pokud mluvíme o tom, že vývoj softwaru jakéhokoli typu (manažer nebo aplikace) nehybně stojí, můžeme pouze uvést fakta. Koneckonců, dnes to nejsou jen počítačové systémy, ale také mobilní zařízení, kde technologie často překonávají počítačový sektor. Vznik procesorových čipů založených na osmi jádrech - není nejlepším příkladem? A přesto ne každý notebook se může pyšnit tím, že má takové "železo".
Několik dalších otázek
Co se týče pochopení životního cyklu softwaru, říkat, že to skončilo v určitém okamžiku, může být velmi libovolné, protože softwarové produkty stále mají podporu od vývojářů, kteří je vytvořili. Spíše konec odkazuje na starší aplikace, které nesplňují požadavky moderních systémů a nemohou fungovat ve svém prostředí.
Ale i při zohlednění technického pokroku se mnohé z nich již v blízké budoucnosti mohou ukázat jako neudržitelné. Tehdy se musíte rozhodnout, zda chcete uvolnit aktualizace, nebo úplně přehodnotit celý koncept, původně vložený do softwarového produktu. Proto - a nový cyklus, který zahrnuje změnu počátečních podmínek, prostředí pro vývoj, testování a možné dlouhodobé využití v určité oblasti.
V dnešní počítačové technologii se však dává přednost vývoji automatizovaných řídicích systémů (ACS), které se používají ve výrobě. Dokonce i operační systémy v porovnání se specializovanými programy ztrácejí.
Stejná prostředí založená na jazyce Visual Basic zůstávají mnohem populárnější než systémy se systémem Windows. Aplikační software pro UNIX-systémy vůbec nehovoří. Co říci, pokud téměř všechny komunikační sítě téhož Spojených států pracují výhradně pro ně. Mimochodem, na této platformě byly původně vytvořeny systémy jako Linux a Android. Proto je s největší pravděpodobností UNIX mnohem více vyhlídky než jiné produkty dohromady.
Místo toho celkem
Zbývá dodat, že v tomto případě jsou uvedeny pouze obecné zásady a etapy životního cyklu softwaru. Ve skutečnosti se dokonce i počáteční úkoly mohou velmi výrazně lišit. Rozdíly mohou být pozorovány v ostatních fázích.
Základní technologie pro vývoj softwarových produktů s následnou údržbou by však měly být jasné. V ostatních případech by mělo brát v úvahu specifika softwaru vytvořili, a prostředí, ve kterém je prý by měl fungovat, a možnost programů poskytovaných koncovému uživateli nebo při výrobě, a ještě mnohem více.
Kromě toho mohou životní cykly někdy záviset na významu vývojových nástrojů. Pokud se například nějaký programovací jazyk stává zastaralým, nikdo na něm nebude psát programy a tím více - zavádět je do automatizovaných řídicích systémů ve výrobě. Tady se dokonce ani programátoři nedostanou do popředí, ale obchodníci, kteří by měli včas reagovat na změny v počítačovém trhu. A není tak mnoho odborníků na světě. Vysoce kvalifikovaní zaměstnanci, schopní držet ruku na pulsu trhu, se stanou nejvíce poptávkou. A jsou často takzvanými "šedými kardinálci", na kterých závisí úspěch nebo ztráta určitého softwarového produktu v oblasti IT.
Předpokládám, že ne vždy pochopit podstatu programu, ale zjevně schopen určit model životního cyklu softwaru a dobu jejich platnosti, založené na globální trendy v této oblasti. Efektivní řízení často přináší hmatatelnější výsledky. Ano, přinejmenším PR technologie, reklama atd. Možná, že nějaká aplikace nepotřebuje uživatele, ale pokud je aktivně inzerována, uživatel ji nainstaluje. To má, tak říkajíc, podvědomé úrovni (stejný účinek jako 25. rámu, když je informace dát do mysli uživatele, bez ohledu na sebe).
Samozřejmě, že taková technologie ve světě jsou zakázány, ale mnozí z nás ani nejsou vědomi, že mohou být stále používány k ovlivňování podvědomí určitým způsobem. To je jen „zombie“, zpravodajské kanály, nebo internetové stránky, nemluvě o použití více výkonných nástrojů, jako je například vystavení infrazvuku (toto bylo aplikováno ve stejné produkci opery), takže člověk může zažít strach nebo nevhodné emoce.
Při návratu k softwaru stojí za to dodat, že některé programy používají při spuštění zvukový signál a přitahují pozornost uživatele. A jak ukazují studie, takové aplikace jsou životaschopnější ve srovnání s jinými programy. Samozřejmě se zvyšuje životní cyklus softwaru bez ohledu na to, jakou funkci je přiřazena původně. A toto, bohužel, používá mnoho vývojářů, což vyvolává pochybnosti o platnosti těchto metod.
Ale nemůžeme to soudit. Možná v blízké budoucnosti budou vyvinuty nástroje, které takové hrozby určují. Zatím se jedná pouze o teorii, ale podle některých analytiků a odborníků zůstává praktická aplikace jen málo. Pokud už vytváříte kopie neuronových sítí lidského mozku, pak co říci?
- Role a standardy auditu v systému environmentální kontroly
- Jaký je zvláštní rys multiplatformního softwaru?
- Jak vypočítat menstruační cyklus
- Životní cykly projektu: hlavní fáze
- Cyklus s post-podmínkou a smyčkou s předpokladem
- Užitečné informace: jak počítat menstruační cyklus
- Délka menstruačního cyklu: jak důležitá je?
- Přehled užitečného softwaru: program pro úplné odstranění programů
- PDM systémy: přehled, příklady, srovnání. Zavedení systémů PDM
- Životní cyklus organizace a její hlavní etapy
- Kvalitní smyčkou
- Řešení problémů s programováním. Cyklický algoritmus
- Ověření je proces ověření softwarového produktu
- Debug - co je to? Popis nástroje
- Software: klasifikace softwaru a jeho hlavní typy
- Životnost výrobku
- Životní cyklus produktu
- Životní cyklus výrobku a milníky
- Rodinný životní cyklus
- Životní cyklus buňky - období od jejího narození k nezávislému rozdělení nebo smrti
- Inovace jsou nástrojem ke zlepšení výkonnosti podniku