Nous avons tous vu d'innombrables exemples de logiciels qui naviguent avec des "exigences système minimales" comme les suivantes:
Comment sont-ils généralement déterminés? De toute évidence, il existe parfois des contraintes spécifiques (si le programme prend 200 Mo sur le disque, il s'agit d'une exigence difficile). Outre ces situations, plusieurs fois pour des choses comme RAM ou le processeur, il s'avère que davantage/plus rapide est meilleur, sans contrainte difficile. Comment sont-ils déterminés? Les développeurs font-ils simplement des chiffres qui semblent raisonnables Est-ce que la QA passe par un processus rigoureux testant diverses exigences jusqu'à ce qu'ils trouvent les paramètres les plus bas avec des performances acceptables? Mon instinct le dit devrait Soyez ce dernier mais est souvent le premier mais est souvent l'ancien.
Fréquemment, les exigences minimales sont définies en examinant les types de systèmes qui ciblent les clients du marché utiliseraient réellement pour le produit en question et en cueillant une coupure raisonnable qui n'éside pas le client cible et que le département QA peut tester avec un minimum tracas supplémentaire.
Si vous vous attendez à ce que la plupart de vos clients allaient installer votre produit sur des ordinateurs de bureau relativement récents, vous ressembliez probablement autour de vous et voyez qu'à propos de tout ordinateur de bureau bas de gamme pour la maison va expédier avec 2 Go de RAM . Donc, un ordinateur récent est très susceptible d'avoir au moins 1 Go de RAM même si cela fait quelques années. Si très peu de vos clients veulent utiliser une machine qui dispose que de 512 Mo de RAM, les revenus de ces ventes seront probablement plus que compensés par les demandes de support (les machines plus anciennes auront probablement de nombreux autres problèmes et Incompatibilités qui causeront des problèmes et généreront plus d'appels d'assistance que d'autres clients). Il peut donc être plus rentable d'éviter de faire des ventes à ces clients.
Ceci est à peu près le même calcul qui consiste à déterminer les navigateurs Web et les résolutions d'écran que vous souhaitez soutenir. Même si le site peut fonctionner correctement sur IE 6 en 640x800, si 99% de vos utilisateurs utilisent des navigateurs Web plus récents et disposent probablement de résolutions d'écran plus grandes, vous ferez probablement mieux de préciser que vous prenez en charge IE 7 et plus et ne pas essayer de maintenir un ancien IE 6 case/VM pour des tests de régression que vous êtes dans la restauration de 1% de votre marché cible qui utilise Verses Vieilles Versions de navigateur.
Plusieurs facteurs sont généralement pris en compte.
Certains sont exigences difficiles: J'ai une dépendance nécessitant 1 Go de RAM, j'utilise des fonctionnalités incompatibles avec IE 6, etc.
Certains sont mes attentes du marché vs effort de test: Si je ne pense pas que beaucoup de clients utiliseront XP alors je peux demander à moins Vista et ne pas avoir à tester sur XP (sauvegarde beaucoup de temps de test et d'effort), si j'espère que les clients disposent d'ordinateurs haut de gamme, je peux avoir besoin d'un processeur plus rapide (sauvegarder mes testeurs beaucoup de temps aussi), etc.
"Exigences système minimales" constitue vraiment une déclaration du système minimal officiellement soutenu. Vous pouvez essayer d'exécuter le logiciel sur un système moindre et vous pourriez réussir, mais si cela ne fonctionne pas bien, ne vous plaignez pas pour utiliser parce que nous vous avertit.
Certaines exigences peuvent être déterminées sur la base des bibliothèques que vous avez incluses, par exemple, la fonction CreateFile Win32 Createfile indique qu'elle nécessite Windows 2000 Professional comme client pris en charge minimum. Que ce soit ou non, vous couriez un risque réel pour dire que vous avez un min. exigence de Windows 98.
Je pense que les exigences minimales de la mémoire sont difficiles, en raison de l'allocation et de la récursivité dynamiques. Vous pouvez estimer une taille de pile (les appels de fonction récursive pourraient être un problème ici) et vous pouvez estimer votre taille de tas en fonction de la façon dont vous pensez que votre programme sera exécuté. À la fin de la journée, je pense que c'est probablement un ballon de ballon.
Les exigences du processeur, qui ne sont pas basées sur l'utilisation des instructions ou des caractéristiques spéciales trouvées sur le chipset, sont généralement des estimations que je pense, surtout que je sais que j'ai couru beaucoup de jeux sur un P4 qui a appelé au minimum d'un noyau 2 Duo ... J'étais reconnaissant qu'il a couru, alors je ne me suis pas plaint de toute question de performance :-)
Je suis d'accord avec les commentaires sur les navigateurs, les résolutions, etc ... cela devient "ce que tu veux soutenir" par opposition à une exigence technique. De même au commentaire de mon processeur ci-dessus, cela peut fonctionner, et si c'est bien! Si ce n'est pas ... Eh bien, c'est en dessous des minimums et non pris en charge;)
J'espère que ça aide.
N'oubliez pas l'entrée des services de vente et de marketing. Si vous savez que la plupart des ordinateurs de l'entreprise X que vous essayez de vendre à une spécification donnée, cela peut également faire une "demande" marketing de l'ingénierie :) Vous pouvez demander comment les ventes connaissent le type d'ordinateurs un client. a. Il suffit de jeter un regard discret sur le numéro Dell/HP/Quel que soit le numéro de modèle sur une machine lors d'un appel de vente - la plupart des entreprises ont des contrats de service afin qu'ils ne soient pas enroulé dans les entrailles de leur PC (ce que vous voyez est ce que vous obtenez).