Programmer-Tester-Ratio

5

Ci sono raccomandazioni motivate quanti tester dovrebbe avere una squadra per programmatore? Sono più interessato alle opinioni che si riferiscono ad un approccio di sviluppo della vecchia scuola (niente roba agile) e progetti più grandi. Le fonti sono ben accette.

    
posta h0b0 05.01.2012 - 17:07
fonte

2 risposte

7

Da Stima del software di Steve McConnell (capitolo 21.1, pagina 237 -238):

  • Common business systems (internal intranet, management information system etc.) - 3:1 to 20:1 (often no test specialists at all)
  • Common commercial systems (public internet, shrink wrap etc.) - 1:1 to 5:1
  • Scientific and engineering projects - 5:1 to 20:1 (often no test specialists at all)
  • Common systems projects - 1:1 to 5:1
  • Safety critical systems - 5:1 to 1:2
  • Microsoft Windows 2000 - 1:2
  • NASA Space Shuttle Flight Control Software - 1:10

The data in here is based on observations of organizations that my company and I have worked with in the past 10 years.

As you can see from the data, ratios vary significantly even within specific kinds of software. This is appropriate, because the ratio that will work the best for a specific company or specific project will depend on the developmental style of the project, the complexity of the software being tested, the ratio of legacy code to new code, the skill of the testers compared to the skill of developers, the degree of test automation, and numerous other factors.

    
risposta data 05.01.2012 - 18:14
fonte
4

La mia opinione sarebbe che dipende molto dalla natura del progetto, perché alcuni progetti si prestano a test più automatizzati. Ad esempio, un pacchetto di contabilità ospitato non ha bisogno di accontentarsi di un numero elevato di ambienti e i tipi di test che devono verificarsi sono script complicati che coinvolgono scenari forniti dal lato aziendale.

D'altra parte, se stai sviluppando un'applicazione per Android, probabilmente vorrai che le persone testino fisicamente su un'ampia varietà di telefoni comuni, operazione che non è facile da automatizzare.

Ho lavorato in due posti in cui ho sentito il giusto rapporto con il tester. La mia attuale compagnia non ha tester: tutto è un test automatizzato, JUnit, RSpec, Selenium o Capybara. Questo funziona per i nostri processi e la nostra cultura.

Una società precedente aveva circa 1 tester per forse 4 ingegneri che scrivevano codice. Questo ha funzionato bene perché la pianificazione ha funzionato in modo tale che alcuni dei test fluttuassero tra i progetti a seconda della parte del ciclo in cui si trovavano e avremmo finito con 1 per 2-3 coder durante la stabilizzazione del codice.

Alcuni QA erano in India, il che era anche bello. Avremmo finito di fare cose alla fine della giornata, e quando arriveremo il giorno dopo avremmo ricevuto un nuovo feedback dal QA.

    
risposta data 05.01.2012 - 17:18
fonte

Leggi altre domande sui tag