Come vengono determinati i requisiti minimi di sistema?

17

Abbiamo visto innumerevoli esempi di software forniti con "requisiti minimi di sistema" come il seguente:

  • Windows XP / Vista / 7
  • 1 GB di RAM
  • Archiviazione 200 MB

In che modo questi sono generalmente determinati? Ovviamente a volte ci sono dei vincoli specifici (se il programma richiede 200 MB su disco, questo è un requisito difficile). A parte quelle situazioni, molte volte per cose come RAM o processore si scopre che più / più veloce è meglio senza vincoli. Come sono determinati? Gli sviluppatori fanno solo numeri che sembrano ragionevoli? La certificazione della qualità passa attraverso un rigoroso processo di test dei vari requisiti fino a quando non trovano le impostazioni più basse con prestazioni accettabili? Il mio istinto dice che dovrebbe essere il secondo, ma è spesso il primo in pratica.

    
posta Michael McGowan 24.06.2011 - 23:28
fonte

5 risposte

9

Spesso, i requisiti minimi sono stabiliti osservando i tipi di sistemi che i clienti di mercato target userebbero effettivamente per il prodotto in questione e scegliendo un taglio ragionevole che non alienasse il cliente target ed è qualcosa che il dipartimento QA può testare con una minima seccatura aggiuntiva.

Se ti aspetti che la maggior parte dei tuoi clienti installerà il tuo prodotto su computer desktop relativamente recenti, ad esempio, probabilmente ti guarderai intorno e vedrai che quasi tutti i computer desktop di fascia bassa per la casa verranno distribuiti con 2 GB di RAM. Quindi è probabile che un computer recente abbia almeno 1 GB di RAM anche se ha un paio di anni. Se pochissimi clienti desiderano utilizzare una macchina con solo 512 MB di RAM, è probabile che le entrate di tali vendite siano più che compensate dalle richieste di supporto (è probabile che le macchine più vecchie abbiano molti altri problemi e incompatibilità che causeranno problemi e genereranno più chiamate all'help desk rispetto ad altri clienti). Quindi potrebbe essere più redditizio evitare di fare vendite a quei clienti.

Questo è più o meno lo stesso calcolo che va nel capire quali browser web e risoluzioni dello schermo si desidera supportare. Anche se il sito potrebbe funzionare correttamente su IE 6 in 640x800, se il 99% degli utenti utilizza browser Web più recenti e ha risoluzioni dello schermo maggiori, è meglio specificare che supporti IE 7 e versioni successive e non provi a mantenere un vecchio box IE 6 / VM per i test di regressione rispetto a quelli che si occupano dell'1% del mercato di destinazione che utilizza versioni di browser molto vecchie.

    
risposta data 24.06.2011 - 23:44
fonte
5

Beta.

In genere una società di software pubblicherà una versione beta del prodotto (da alcuni mesi ad alcune settimane prima della versione di produzione, a seconda delle dimensioni e della complessità del prodotto). Queste versioni beta potrebbero disporre di metriche integrate per monitorare e segnalare a un server le prestazioni dell'applicazione in relazione alle specifiche del sistema. Questo, o semplicemente si baserà su questi beta tester per riferire fedelmente con le loro specifiche di sistema e le prestazioni percepite.

Dato un insieme di dati di esempio sufficientemente ampio, non è difficile estrapolare un requisito di sistema medio.

    
risposta data 24.06.2011 - 23:48
fonte
3

Ci sono diversi fattori che vengono generalmente considerati.

Alcuni sono requisiti rigidi : ho una dipendenza che richiede 1 GB di RAM, utilizzo funzionalità incomplete con IE 6, ecc.

Alcuni sono le mie aspettative del mercato rispetto a attività di test : se non penso che molti clienti utilizzeranno XP, allora posso richiedere almeno Vista e non dover test su XP (risparmiando un sacco di tempo e sforzi), se mi aspetto che i clienti abbiano computer di fascia alta, posso richiedere un processore più veloce (risparmiando anche molto tempo ai miei tester), ecc.

"Requisiti minimi di sistema" sono in realtà una dichiarazione del sistema minimo ufficialmente supportato. Puoi provare a eseguire il software su un sistema inferiore e potresti avere successo, ma se non funziona bene non lamentarti di usarlo perché ti abbiamo avvertito.

    
risposta data 25.06.2011 - 00:54
fonte
2

Alcuni requisiti possono essere determinati in base alle librerie incluse, ad esempio la funzione CreateFile dell'API Win32 afferma che richiede Windows 2000 Professional come client minimo supportato. Che lo faccia o no, correrai il rischio di dire di avere un minuto. requisito di Windows 98.

I requisiti minimi di memoria sono, penso, complicati, a causa dell'allocazione dinamica e della ricorsione. È possibile stimare una dimensione dello stack (le chiamate alla funzione ricorsiva potrebbero essere un problema qui) e si può stimare la dimensione dell'heap in base a come si pensa che il programma verrà eseguito. Alla fine del giorno penso che sia probabilmente un ballpark.

I requisiti dei processori, che non si basano sull'uso dell'insieme di istruzioni o sulle caratteristiche speciali del chipset, sono in genere stime, soprattutto perché so che ho eseguito molti giochi su un P4 che richiedeva un minimo di un Core 2 Duo ... Ero grato che funzionasse, quindi non mi sono lamentato di problemi di prestazioni: -)

Sono d'accordo con i commenti su browser, risoluzioni, ecc ... diventa "ciò che vuoi supportare" in opposizione a un requisito tecnico. Analogamente al commento del mio processore sopra, potrebbe funzionare, e se lo fa, bene! In caso contrario ... beh, è inferiore ai minimi e non supportato;)

Spero che ti aiuti.

    
risposta data 25.06.2011 - 04:36
fonte
1

Non dimenticare l'input dei reparti vendite e marketing. Se sai che la maggior parte dei computer nel settore X che stai cercando di vendere sono di una determinata specifica, puoi anche fare una "richiesta" di marketing di ingegneria :) Potresti chiedere in che modo le vendite conoscono il tipo di computer di un cliente ha. Basta dare un'occhiata discreta al numero di modello di Dell / HP / qualsiasi modello su una macchina durante una chiamata di vendita: la maggior parte delle aziende ha contratti di servizio in modo che non facciano il giro del loro PC (ciò che vedi è ciò che ottieni).

    
risposta data 25.06.2011 - 01:21
fonte

Leggi altre domande sui tag