I wonder how those minimum requirements are determined, especially RAM, CPU frequency in general? Is there a logic behind it or is it just determined by testing the program with different hardware to find out what would be okay for the end user?
Bene, non è possibile dare una risposta definitiva. (È probabile che persone, gruppi, società diverse abbiano idee / approcci diversi).
Ma in generale, l'unico modo in cui è probabile che funzioni è empirico; provalo e vedi.
-
Installa il software su una vasta gamma di piattaforme supportate e misura lo spazio su disco.
-
Esegui 1 su una gamma di sistemi con varie velocità della CPU e varie quantità di memoria:
- Verifica se funziona in modo accettabile (soggettivo).
- Guarda le statistiche di sistema per i segnali di stress sui sistemi di fascia bassa.
-
Incorpora il feedback degli utenti interni e dei beta tester esterni.
1 - A seconda della natura dell'applicazione, potrebbe essere necessario provare con problemi di dimensioni diverse, set di dati, numeri di utenti online, qualunque cosa ... fino a un punto che sia ragionevole.
Non mi sono imbattuto in un caso in cui è possibile ottenere consigli affidabili sulla piattaforma semplicemente applicando una logica. Come minimo è necessario eseguire alcuni test per calibrare il "modello di prestazioni".
Anche quando esiste una correlazione tra dimensioni del problema e prestazioni, di solito non è in grado di prevedere in modo affidabile quando si verificheranno problemi di prestazioni relativi alla scalabilità ... fino a colpire i problemi.