Fases de desenvolupament del programari

De Viquipèdia
Dreceres ràpides: navegació, cerca
Fases de desenvolupament del sofware.

En l'enginyeria del programari el terme anomenat fases de desenvolupament s'utilitza per expressar com ha progressat el desenvolupament d'un software i quant de desenvolupament pot requerir. Cada versió important d'un producte passa generalment a través d'una etapa en què s'agreguen les noves característiques (etapa alfa), després una etapa on s'eliminen errors activament (etapa beta), i finalment una etapa on s'han tret tots els bugs importants (etapa estable).

Les etapes intermèdies també poden ser reconegudes. Les etapes es poden anunciar i regular formalment pels desenvolupadors del producte, però els termes s'utilitzen de vegades de manera informal per descriure l'estat d'un producte. Normalment moltes companyies fan servir noms en clau per a les versions abans del llançament d'un producte, encara que el producte i les característiques reals són rarament secretes.

Prealfa[modifica | modifica el codi]

De vegades, es prepara una versió coneguda com a «prealfa» abans de lliurar l'alfa o la beta. A diferència d'aquestes dues versions, la prealfa no està completa. Quan s'usa aquest terme, es fa referència a totes les activitats realitzades durant el desenvolupament del projecte abans de fer la prova de programari. Aquestes activitats poden incloure l'anàlisi de requeriments, el disseny del programa, el desenvolupament d'aquest i la prova d'unitats. En el món del codi lliure, hi ha molts tipus de versions prealfa. Les versions de Milestone inclouen conjunts específics de funcionalitat, i es lliuren així com aquesta es veu completa. Les versions de Nightly builds es comproven automàticament al control de versions. Aquestes versions permeten als controladors comprovar immediatament les funcionalitats implementades més recents i trobar nous errors.

Alfa[modifica | modifica el codi]

És la primera versió del programa, la qual és enviada als verificadors per provar-la. Alguns equips de desenvolupament utilitzen el terme alfa per referir-se a una fase on un producte encara és inestable, a l'espera a que s'eliminin els errors però que satisfà la majoria dels requisits. El nom deriva d'alfa, la primera lletra de l'alfabet grec.

Beta[modifica | modifica el codi]

Una versió beta representa generalment la primera versió completa del programa informàtic o d'un altre producte, que és possible que sigui inestable però útil perquè les demostracions internes i les inspeccions prèvies seleccionin a clients. Alguns desenvolupadors es refereixen a aquesta etapa com a l'inspecció prèvia (preview) o com una inspecció prèvia tècnica (technical preview "TP"). Aquesta etapa comença sovint quan els desenvolupadors anuncien una congelació de les característiques del producte, indicant que no seran agregades més característiques a aquesta versió i que només es faran petites edicions o es corregiran errors.

Les versions beta estan en un pas intermedi en el cicle de desenvolupament. Els desenvolupadors les llancen a un grup de provadors o betatesters (de vegades el públic en general) per a una prova d'usuari. Els provadors divulguen qualsevol error que troben i de vegades aporten característiques de menor importància que volguessin veure en la versió final.

Quan una versió beta arriba a estar disponible per al públic en general, sovint és extensament provada pels experts o gent familiaritzade amb versions anteriors, com si el producte estigués acabat. Generalment els desenvolupadors de les versions betes de programari gratuït o de codi obert les llancen al públic, mentre que les versions beta propietàries van a un petit grup de provadors. Al febrer del 2005, ZDNet va publicar un article sobre el fenomen recent de les versions beta que romanien sovint per anys i que eren utilitzada com si estiguessin en nivell de producció.[1] Tant Gmail com Google News van estar en beta durant uns quants anys. Aquesta tècnica pot també permetre a un desenvolupador retardar l'oferiment de suport total o la responsabilitat d'edicions restants. Els receptors de betes altament propietàries poden haver de signar un acord de no revelació.

Com que aquesta és la segona etapa del cicle de desenvolupament que segueix a l'etapa alfa, aquesta es nomena amb la següent lletra grega beta.

Origen dels termes "alfa" i "beta"[modifica | modifica el codi]

El terme "test beta" aplicat al programari prové d'un primer test de maquinari d'IBM que es remunta a les màquines de tabulació i ordenació de targetes perforades. El maquinari passava primerament per la fase de test alfa per provar la seua funcionalitat preliminar i la viabilitat de producció a petita escala. Després es feia un test beta per verificar si realment realitzava correctament les funcions que havia de fer i per saber si es podria fabricar d'acord amb les exigències del mercat. Seguidament es feia un test c per comprovar la seguretat. Amb l'arribada dels ordinadors programables i el primer programari compartible, IBM utilitzà la mateixa terminologia per a les proves de programari. Els tests beta els realitzaven persones o grups diferents als desenvolupadors. Com que altres empreses començaren a desenvolupar programaris per al seu ús propi i també per a la seua distribució, aquesta terminologia va romandre i ara és part del nostre vocabulari habitual.

Versió candidata a definitiva (RC)[modifica | modifica el codi]

Exemple d'un arbre amb les diferents versions de programari

Una versió candidata a definitiva, candidata a versió final o candidata pel llançament, encara que més coneguda pel seu nom en anglès release candidate, comprèn un producte final, preparat per ser publicat com a versió definitiva llevat que apareguin errors que ho impedeixin. En aquesta fase el producte implementa totes les funcions del disseny i es troba lliure de qualsevol error que suposi un punt mort en el desenvolupament. Moltes empreses de desenvolupament utilitzen sovint aquest terme. Altres termes relacionats inclouen les lletres gamma, delta (i potser més) per a versions que estan pràcticament completes però encara en proves i la lletra omega s'utilitza en les versions que es creu que estan lliures d'errors i es troben en el procés final de proves. Gamma, delta i omega són, respectivament, la tercera, quarta i última lletres de l'alfabet grec.

Versió de disponibilitat general (RTM)[modifica | modifica el codi]

La versió de disponibilitat general (també anomenada "daurada") d'un producte és la seva versió final. Normalment és gairebé idèntica a la versió candidata final, amb algunes correccions d'últim moment. Aquesta versió és considerada molt estable i relativament lliure d'errors amb una qualitat adequada per a una distribució àmplia i usada per usuaris finals. En versions comercials, pot estar també signada perquè els usuaris finals verifiquin que el codi no ha estat canviat des de la seva sortida. L'expressió que un producte "s'ha daurat" vol dir que el codi ha estat completat i que "està sent produït massivament i estarà a la venda properament ".

El terme "daurat" es refereix anecdòticament a l'ús del "disc mestre d'or" que va ser freqüentment usat per enviar la versió final als fabricants que el fan servir per produir les còpies de venda al detall. Això pot ser una herència de l'industria musical. En alguns casos, però, el disc mestre està realment fet d'or, tant per aparença estètica com per resistència a la corrosió.

Microsoft i altres usen el terme release to manufacturing (RTM) per referir-se a aquesta versió (per a productes comercials com Windows 7, com "Build 7600 is the Windows 7 RTM release), i release to Web (RTW) per a productes lliurement descarregables.

Estable/Inestable[modifica | modifica el codi]

En la programació de codi obert els números de les versions, o els termes estable i inestable, normalment distingeixen les fases del desenvolupament. En el passat, el nucli de Linux utilitzava el número de versió per denotar si una versió era estable o inestable. Les versions estaven formades per quatre digits, separats per un punt. Una xifra senar en el segon número de la versió indicava una versió inestable. Avui en dia ja no s'usa aquesta convenció, i totes les versions són estables independentment del nombre de versió. A la pràctica l'ús de nombres parells i imparells per indicar l'estabilitat d'un producte ha estat usat per molts altres projectes de programari lliure.

Aquest concepte també s'aplica al programari empaquetat en algunes distribucions Linux com Debian, de manera que hi ha una branca o conjunt de paquets considerats estables i una altra branca considerada inestable. Aquesta última branca aporta versions de programes més recents que la estable però que no estan tan provats.

Fi del producte[modifica | modifica el codi]

De vegades, les empreses de programari deixen de vendre o d'oferir els seus productes (és a dir, no ofereixen més actualitzacions). En aquest moment, es diu que el producte es troba en un estat de "legacy", "vintage" o "final de la vida". Per exemple, el 15 d'agost de 2007, Apple va anunciar que AppleWorks havia aplegat al "estatus de final de la vida". Vegeu també Final de la vida (d'un producte). En altres tipus de productes (més relacionats amb software de desenvolupament, com per exemple motors gràfics) quan arriba el seu "final de vida" passen a ser gratis i des del punt de vista de petits estudis o desenvolupadors de software això és molt profitós. Es podria dir que en aquest tipus de productes s'esgota el temps en què són útils i passen a ser 'software lliure'.

Vegeu també[modifica | modifica el codi]

Referències[modifica | modifica el codi]

  1. news.zdnet.com (anglès)