Ciclul de viață al lansării software-ului - Software release life cycle

Un exemplu de ciclu de viață al lansării software-ului de bază

Un ciclu de viață al lansării software-ului este suma etapelor de dezvoltare și maturitate pentru o bucată de software de calculator . Ciclurile variază de la dezvoltarea inițială până la lansarea sa finală și includ versiuni actualizate ale versiunii lansate pentru a ajuta la îmbunătățirea software-ului sau la remedierea erorilor software încă prezente în software.

Utilizatorii de computere sunt cel mai probabil familiarizați cu faza beta , deoarece produsele software sunt uneori publicitate public ca fiind beta pentru a reduce așteptările utilizatorilor cu privire la fiabilitatea lor.

Istorie

Utilizarea terminologiei de testare „alfa / beta” a apărut la IBM . Terminologii similare pentru dezvoltarea software-ului IBM au fost utilizate de persoanele implicate în IBM din cel puțin anii 1950 (și probabil mai devreme). Testul „A” a fost verificarea unui nou produs înainte de anunțul public. Testul „B” a fost verificarea înainte de a elibera produsul care urmează să fie fabricat. Testul „C” a fost testul final înainte de disponibilitatea generală a produsului. Deoarece software-ul a devenit o parte semnificativă a ofertelor IBM, terminologia testului alfa a fost utilizată pentru a indica testul de pre-anunț, iar testul beta a fost utilizat pentru a arăta disponibilitatea generală a produsului. Martin Belsky, manager al unor proiecte software anterioare ale IBM, a pretins că a inventat terminologia. IBM a renunțat la terminologia alfa / beta în anii 1960, dar până atunci primise o notificare destul de largă. Utilizarea „testului beta” pentru a face referire la testarea efectuată de clienți nu a fost făcută în IBM. Mai degrabă, IBM a folosit termenul „test de câmp”.

Etapele dezvoltării

Pre-alfa

Pre-alfa se referă la toate activitățile desfășurate în timpul proiectului software înainte de testarea formală. Aceste activități pot include analiza cerințelor , proiectarea software-ului , dezvoltarea software-ului și testarea unităților . În dezvoltarea tipică open source , există mai multe tipuri de versiuni pre-alfa. Versiunile de referință includ seturi specifice de funcții și sunt lansate imediat ce caracteristica este completă.

Alfa

Faza alfa a ciclului de viață al lansării este prima fază a testării software-ului (alfa este prima literă a alfabetului grecesc , folosită ca numărul 1). În această fază, dezvoltatorii testează, în general, software-ul folosind tehnici white-box . Validarea suplimentară este apoi efectuată folosind tehnici cutie neagră sau gri , de către o altă echipă de testare. Trecerea la testarea cutiei negre în cadrul organizației este cunoscută sub numele de versiune alfa .

Software-ul Alpha nu este testat temeinic de către dezvoltator înainte de a fi lansat clienților. Software-ul Alpha poate conține erori grave și orice instabilitate rezultată ar putea provoca blocări sau pierderi de date. Este posibil ca software-ul Alpha să nu conțină toate caracteristicile planificate pentru versiunea finală. În general, disponibilitatea externă a software-ului alfa este neobișnuită în software-ul proprietar , în timp ce software-ul open source are deseori versiuni alfa disponibile publicului. Faza alfa se încheie de obicei cu o înghețare a caracteristicilor , ceea ce indică faptul că nu vor mai fi adăugate funcții la software. În acest moment, se spune că software-ul este complet complet . Un test beta se efectuează după testarea acceptării la locul furnizorului (test alfa) și imediat înainte de lansarea generală a software-ului ca produs.

Beta

Beta, numită după a doua literă a alfabetului grecesc , este faza de dezvoltare software care urmează alpha. Software-ul în etapa beta este, de asemenea, cunoscut sub numele de betaware . O fază beta începe, în general, când software-ul este complet, dar este probabil să conțină o serie de erori cunoscute sau necunoscute. Software-ul în faza beta va avea, în general, mult mai multe bug-uri decât software-ul finalizat și probleme de viteză sau de performanță și poate provoca în continuare blocări sau pierderi de date. Accentul testării beta este reducerea impactului asupra utilizatorilor, încorporând adesea teste de utilizare . Procesul de livrare a versiunii beta către utilizatori se numește lansare beta și este de obicei prima dată când software-ul este disponibil în afara organizației care a dezvoltat-o. Lansările beta ale software-ului pot fi publice sau private , în funcție de disponibilitatea lor deschisă sau doar pentru un public limitat. Software-ul pentru versiunea beta este adesea util pentru demonstrații și previzualizări în cadrul unei organizații și pentru clienții potențiali. Unii dezvoltatori se referă la această etapă ca o previzualizare , lansare de previzualizare , prototip , previzualizare tehnică sau previzualizare tehnologică ( TP ) sau acces anticipat . De la introducerea Windows 8 , Microsoft a numit software-ul de pre-lansare ca o previzualizare mai degrabă decât beta . Toate versiunile de pre-lansare lansate prin Programul Windows Insider lansat în 2014 sunt denumite „ versiuni de versiuni preliminare Insider”. „Beta” poate indica, de asemenea, ceva mai mult ca un candidat de lansare sau ca o formă de demonstrație limitată în timp sau tehnică de marketing.

Testerii beta sunt persoane care raportează activ problemele legate de software-ul beta. De obicei, aceștia sunt clienți sau reprezentanți ai potențialilor clienți ai organizației care dezvoltă software-ul. Testerii beta tind să-și ofere voluntar serviciile gratuit, dar primesc deseori versiuni ale produsului pe care îl testează, reduceri la versiunea de lansare sau alte stimulente.

Beta perpetuă

Unele programe software sunt păstrate în așa-numita versiune beta perpetuă , în care noile caracteristici sunt adăugate continuu software-ului fără a stabili o versiune finală „stabilă”. Deoarece Internetul a facilitat distribuirea rapidă și ieftină a software-ului, companiile au început să adopte o abordare mai slabă a utilizării cuvântului beta . În februarie 2005, ZDNet a publicat un articol despre fenomenul unei versiuni beta care rămâne adesea ani de zile și este folosită ca și cum ar fi la nivel de producție. A menționat că Gmail și Google News , de exemplu, au fost în beta de mult timp, deși sunt utilizate pe scară largă; Google News a părăsit versiunea beta în ianuarie 2006, urmat de Google Apps (numit acum Google Workspace ), inclusiv Gmail, în iulie 2009.

Beta deschisă și închisă

Dezvoltatorii pot lansa fie un beta închis , numit și beta privat , fie un beta deschis , numit și beta public ; versiunile beta închise sunt lansate unui grup restricționat de persoane pentru un test de utilizator prin invitație, în timp ce testerele beta deschise provin dintr-un grup mai mare sau oricine este interesat. Beta privată ar putea fi potrivită pentru software-ul care este capabil să ofere valoare, dar nu este pregătită pentru a fi utilizată de toată lumea, fie din cauza problemelor de scalare, a lipsei de documentație sau din lipsa caracteristicilor vitale. Testatorii raportează orice erori pe care le găsesc și uneori sugerează caracteristici suplimentare pe care cred că ar trebui să fie disponibile în versiunea finală.

Exemple de beta publică majoră:

  • Primii clienți au achiziționat o „ediție de pionierat” a procesorului de text WordVision pentru computerul IBM pentru 49,95 USD. În 1984, Stephen Manes a scris că „într-o strălucitoare lovitură de marketing, Bruce și James Program Publishers au reușit să determine oamenii să plătească pentru privilegiul de a testa produsul”.
  • În septembrie 2000 , o versiune în cutie de la Apple e Mac OS X Public Beta a fost lansat sistemul de operare.
  • Lansarea de către Microsoft a previzualizărilor tehnologiei comunității ( CTP ) pentru Windows Vista , între septembrie 2005 și mai 2006.
  • Din 2009 până în 2011, Minecraft a fost în beta publică.

Beta deschisă are scopul dublu de a demonstra un produs potențialilor consumatori și de a testa între o bază largă de utilizatori care ar putea scoate la iveală erori obscure pe care o echipă de testare mult mai redusă le-ar putea să nu găsească.

Eliberați candidatul

Un candidat de lansare ( RC ), cunoscut și sub denumirea de „going silver”, este o versiune beta cu potențialul de a fi un produs stabil, care este gata de lansare, cu excepția cazului în care apar erori semnificative . În această etapă de stabilizare a produsului, toate caracteristicile produsului au fost proiectate, codificate și testate prin unul sau mai multe cicluri beta, fără erori cunoscute din clasa showstopper. O versiune se numește cod complet atunci când echipa de dezvoltare este de acord că nu va fi adăugat niciun cod sursă complet nou la această versiune. Ar putea exista în continuare modificări ale codului sursă pentru remedierea defectelor, modificări ale fișierelor de documentare și date și cod periferic pentru cazuri de testare sau utilitare. Testerii beta, dacă sunt selectați în mod privat, vor fi adesea creditați pentru utilizarea candidatului de lansare ca și cum ar fi un produs finit. Testarea beta se efectuează în locația clientului sau a clientului și pentru a testa software-ul din perspectiva utilizatorului.

Versiune stabila

Numită și versiunea de producție , versiunea stabilă este ultima versiune candidată ( RC ) care a trecut toate verificările / testele. Bug-urile rămase sunt considerate acceptabile. Această versiune merge la producție. Unele domenii (de exemplu, distribuțiile Linux ) au două tipuri de versiuni stabile: versiuni normale sau stabile și versiuni de suport pe termen lung (LTS) care sunt menținute pentru o perioadă mai lungă de timp.

Eliberare

Odată lansat, software-ul este în general cunoscut sub numele de „versiune stabilă”. Termenul formal depinde adesea de metoda de lansare: suport fizic, lansare online sau o aplicație web.

Lansare în fabricație (RTM)

Termenul de lansare în producție (RTM), cunoscut și sub denumirea de „aur auriu”, este un termen utilizat atunci când un produs software este gata de livrare. Această versiune poate fi semnată digital , permițând utilizatorului final să verifice integritatea și autenticitatea achiziției de software. O copie a versiunii RTM cunoscută sub numele de „ masterul de aur ” sau GM este trimisă pentru duplicarea în masă sau pentru reproducerea discului, dacă este cazul. Această terminologie este preluată din industria producției de înregistrări audio, în special procesul de masterizare . RTM precede disponibilitatea generală (GA) atunci când produsul este lansat publicului. O versiune master de aur (GM) este de obicei versiunea finală a unei piese de software în etapele beta pentru dezvoltatori. De obicei, pentru iOS , este versiunea finală înainte de o lansare majoră, cu toate acestea, au existat câteva excepții.

Este de obicei utilizat în anumite contexte de software de producție în serie cu amănuntul - spre deosebire de o producție sau proiect specializat de software într-o producție și distribuție comercială sau guvernamentală - unde software-ul este vândut ca parte a unui pachet într-o vânzare de hardware de computer asociată și de obicei în cazul în care software-ul și hardware-ul aferent vor fi în cele din urmă disponibile și vândute în masă / public la magazinele cu amănuntul pentru a indica faptul că software-ul a îndeplinit un nivel de calitate definit și că este pregătit pentru distribuția cu amănuntul în masă. RTM ar putea însemna, de asemenea, în alte contexte, că software-ul a fost livrat sau lansat către un client sau client pentru instalare sau distribuire către computerele sau utilajele utilizatorului final hardware. Termenul nu definește mecanismul de livrare sau volumul; afirmă doar că calitatea este suficientă pentru distribuția în masă. Livrabil de la organizația de inginerie este frecvent sub forma unui suport master de aur utilizat pentru duplicare sau pentru a produce imaginea pentru web.

Disponibilitate generală (GA)

Repere într-un ciclu de viață al produsului: disponibilitate generală (GA), anunț de sfârșit de viață (EOLA), data ultimei comenzi (LOD) și sfârșitul ciclului de viață (EOL)

Disponibilitatea generală ( GA ) este etapa de marketing în care toate activitățile de comercializare necesare au fost finalizate și un produs software este disponibil pentru achiziționare, în funcție de limbă, regiune, disponibilitate electronică vs. disponibilitate media. Activitățile de comercializare ar putea include teste de securitate și conformitate, precum și localizare și disponibilitate la nivel mondial. Timpul dintre RTM și GA poate fi de la o săptămână la luni, în unele cazuri înainte ca o versiune disponibilă în general să poată fi declarată din cauza timpului necesar pentru a finaliza toate activitățile de comercializare solicitate de GA. În această etapă, software-ul „a intrat în funcțiune”.

Lansare pe web (RTW)

Lansarea pe web ( RTW ) sau lansarea pe web este un mijloc de livrare de software care utilizează internetul pentru distribuire. Producătorul nu produce materiale fizice în acest tip de mecanism de eliberare. Versiunile web devin din ce în ce mai frecvente pe măsură ce crește utilizarea internetului.

A sustine

În timpul duratei de viață acceptate, software-ul este uneori supus versiunilor de service, patch-urilor sau pachetelor de servicii , uneori numite și „versiuni interimare” sau „versiune de întreținere” (MR). De exemplu, Microsoft a lansat trei service pack-uri majore pentru edițiile pe 32 de biți ale Windows XP și două service pack-uri pentru edițiile pe 64 de biți . Astfel de versiuni de servicii conțin o colecție de actualizări, remedieri și îmbunătățiri, livrate sub forma unui singur pachet instalabil. De asemenea, pot implementa noi caracteristici. Unele programe software sunt lansate cu așteptarea unui sprijin regulat. Clasele de software care implică, în general, asistență prelungită, ca normă, includ suite antivirus și jocuri online multiplayer masive . Continuând cu acest exemplu Windows XP, Microsoft a oferit actualizări cu plată încă cinci ani după încheierea asistenței extinse. Aceasta înseamnă că asistența sa încheiat pe 8 aprilie 2019.

Sfârșitul vieții

Când software-ul nu mai este vândut sau suportat, se spune că produsul a ajuns la sfârșitul duratei de viață, că este întrerupt, retras, depreciat, abandonat sau învechit, dar loialitatea utilizatorilor își poate continua existența pentru o perioadă de timp, chiar și mult după platforma este depășită - de exemplu, Atari ST și Sinclair ZX Spectrum .

După data de sfârșit de viață, dezvoltatorul nu va implementa, de obicei, nicio caracteristică nouă, nu va remedia defectele, erorile sau vulnerabilitățile existente (indiferent dacă sunt cunoscute înainte sau nu acea dată) sau va oferi asistență pentru produs. Dacă dezvoltatorul dorește, acesta poate elibera codul sursă, astfel încât platforma va rămâne din nou și va fi întreținută de voluntari.

Vezi si

Referințe

Bibliografie

  • Livrare continuă: lansări de software de încredere prin automatizare de construcție, testare și implementare de către Jez Humble, David Farley; ISBN  0-321-60191-2