Domanda

Quando si lavora sui miglioramenti ad una linea esistente di applicazioni di business, pensi che sia meglio in batch fino cambiamenti in meno frequenti rilasci più grandi, o continuamente spedite nuove funzionalità nelle versioni più piccole? Supponendo che ci sono upgrade hardware o aggiornamenti del database, si fa a fare questi cambiamenti con le versioni pure, o tenerli separati?

Il rilascio tutto ha insieme il vantaggio che c'è meno interruzioni per il business, e meno di ore di lavoro invovled, ma ogni problema che incontrate in seguito potrebbe essere dovuto l'aggiornamento del database, l'hardware, o un qualsiasi numero di modifiche software.

Il rilascio poco e spesso rende più facile rintracciare i problemi derivanti da una release, ma porta a più disagi e più tempo speso test di regressione.

Quale è migliore?

È stato utile?

Soluzione

Considerate come ogni release colpisce i clienti. Saranno frequenti piccoli rilasci renderli più felici a causa di risolvere i problemi critici più veloce? Sarà questo migliorare le vendite e la reputazione? Se sarà attentamente valutare se questi benefici siano superiori il lavoro supplementare svolto, altrimenti basta seguire il percorso che è più conveniente per te.

Altri suggerimenti

In realtà dipende l'ambiente tua in alcuni scenari:.

Molti clienti : si desidera che tutti i clienti di avere la stessa versione, per quanto possibile. E 'molto più facile avere anual, semianual o trimestrale rilasci grandi, come il coordinamento di test e implementazione è molto costoso. In questo caso vorrei includere cambiamenti db pure.

"Big infrastruttura" : se si lavora in un ambiente di grandi dimensioni società con addetti dedicati per i sistemi operativi e database, ancora una volta il costo complessivo di un rilascio è grande e quindi meno frequenti rilasci più grandi sono meglio <. / p>

Per breve, calcolare i costi di un rilascio in potere dell'uomo, affari interuption, il coordinamento, la sperimentazione e portarlo in relazione con i benefici di ogni nuova funzionalità o bug fix.

Io di solito tendono ad avere 1-2 grandi uscite all'anno e correzioni di bug inbetween per Show Stoppers.

Credo che la risposta migliore è: una miscela dei due.

Per esempio, se si aggiunge un po 'di piacere per gli occhi, o fatto il nome di testo più "ajaxy", o forse gettato in un nuovo tipo di rapporto - fanno questo come release "piccoli". Liberazione anticipata, e il rilascio, spesso, il più possibile.

D'altra parte, se è stato modificato un processo utente rivolto costringendo gli utenti ad essere "riqualificato", o se si sta richiedere modifiche infrastrutturali enormi -. Andare a fare una grande liberazione, e fanno di questo il meno possibile

Come hai detto tu, se non v'è poca o nessuna interruzione, fare il più spesso possibile, gli utenti saranno più felici per esso - e si sarà effettivamente spendere meno tempo sul test di regressione, perché hai solo per testare tutto collegato alle modifiche apportate.

Credo che il suo meglio per lavorare in un grande rilascio e rattoppare come è necessario risolvere i problemi su tutta la linea.

Come sviluppatore è necessario anticipare i possibili problemi e interruzioni nel sistema per renderlo il più robusto possibile. Che di solito significa molto di test in anticipo.

Considera anche che l'utente finale non può decidere di pagare per i più piccoli incrementi nel prodotto e possono pure aspettare un grande aggiornamento. Un buon esempio di questo è quando ho ottenuto Adobe Photoshop, sembrano rilasciare una nuova versione ogni anno così ho aspettato fino a quando semplicemente è sembrato il momento giusto

Un numero minore di stampa significa che sarete trovare tutti i bug in una sola volta. Diventa più difficile sapere quale modifica del codice causato quali bug. Devi quindi più di un problema con gli insetti a cascata - una modifica del codice si fece mesi fa ha causato un bug, ma nel frattempo, hai fatto altri cinque cambiamenti che tutto dipende dal bug introdotto mesi fa

.

Più piccolo, stampa di alta qualità sono migliori. rilascia più piccole rendere più facile sono di alta qualità.

Personalmente, prediligo rilasci grandi.

Non ho il software a casa, che presenta aggiornamenti più volte a settimana. E 'fastidioso perché non v'è alcuna funzione di aggiornamento automatico, solo una notifica che continua a tornare.

Si potrebbe voler dare un'occhiata a questa domanda simile: Come spesso si deve si rilascia aggiornamenti software

In realtà - sia.
Can si sviluppo, eventualmente diviso in DEVEL e RELEASE ramo? Eventuali problemi urgenti dovrebbe essere fatto al più presto sul ramo REL e inviati agli utenti come una correzione. Dopo aver applicato aggiornamento rapido in ramo REL, la necessità di applicare la patch sarebbe stata inviata al team di sviluppo (nota: per risolvere qualche problema sulla REL è necessario scrivere del codice rapido, mentre nel ramo DEV è necessario mettere un po 'di tempo nel ripensare la correzione proposta , dato che le condizioni di ramo DEV potrebbero essere cambiate, quindi è normale che ci si scrive il codice completamente diverso per risolvere lo stesso problema in DEV o filiale REL).
Quando sarà fatto lo sviluppo della nuova versione, è necessario testare le nuove caratteristiche e le patch migrati da REL. Se tutto è ok, si sarà in grado di distribuire nuova versione grande, e archiviare il DEV corrente in REL, mentre il vecchio REL verrà ora sigillata.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top