La première chose absolue dont vous avez besoin est une idée de la portée. Le plus concret est le mieux, mais toute forme d'exigences peut être utilisée pour produire des estimations initiales. Les exigences du client, la vision et la portée, et les documents de concept peuvent être utilisés très tôt. À mesure que les exigences et l'environnement d'exploitation commenceront à devenir plus clairs, les estimations s'amélioreront. Une meilleure compréhension du client (en particulier les interfaces entre le client et l'organisation en développement), l'équipe effectuant le travail, les technologies à utiliser, l'architecture du système et une conception détaillée contribueront tous à une estimation plus précise. Cela est visible dans le cône d'incertitude.
Si vous utilisez un outil de modélisation paramétrique, tel que SLIM ou COCOMO (Intermédiaire ou Avancé uniquement, car Basic ne tient pas compte des inducteurs de coûts), il devrait y avoir des facteurs d'ajustement pour la méconnaissance de la technologie. À titre d'exemple, COCOMO dispose d' un grand nombre d'inducteurs de coûts , dont certains sont spécifiquement axés sur la familiarité avec la plate-forme cible ainsi que le langage et les outils utilisés pour développer le système. SLIM tient également compte de l'expérience globale de l'équipe de développement, qui doit inclure des considérations sur les outils et technologies utilisés.
Avec cette technique, les résultats des outils de modélisation sont généralement validés car ils ont été utilisés avec succès pour estimer les projets logiciels précédents sur plusieurs années dans de nombreuses organisations. Cependant, la sortie est seulement aussi bonne que l'entrée de l'outil.
Si vous n'utilisez pas de modèles paramétriques pour l'estimation, vous devrez simplement considérer ces facteurs lors de la production de vos estimations. Cela devient plus un appel au jugement, mais vous pouvez envisager des activités telles que la lecture de la documentation, la configuration du nouvel environnement de développement et le développement d'exemples d'applications sur la plate-forme cible ou avec les langues cibles.
Dans ces cas, vous devrez ventiler vos estimations par tâche et pouvoir utiliser votre jugement professionnel pour la sauvegarder. J'espère que vous disposez de données historiques et d'autres preuves concrètes sur lesquelles baser vos estimations. Sinon, c'est plus une bataille difficile.