web-dev-qa-db-fra.com

Comment puis-je estimer les projets lorsque je dois inclure une courbe d'apprentissage pour la nouvelle technologie?

Parfois, il existe des projets de recherche et de développement où rien n'est connu à l'avance de la technologie, des concepts et du client. Cependant, le gestionnaire a toujours besoin d'estimations de temps. Que puis-je faire pour produire des estimations utiles?

11
pradnya

Honnêtement, comme Nassim Nicholas Taleb écrit dans son livre le Black Swan: "Nous ne pouvons tout simplement pas prédire". Principalement en raison des inconnus inconnus. Il est généralement préférable de communiquer ce fait même, le fait que vous ne pouvez pas prédire, au lieu de communiquer une estimation.

Comme Taleb écrit: il vaut mieux être largement correct que précisément faux. Assurez-vous donc de communiquer le fait que vous avez des temps difficiles à estimer et utilisez des choses comme des "courbes d'apprentissage dans la nouvelle technologie" comme l'un des arguments. Cela signifie que la gamme de votre estimation sera grande: "Ce projet coûte entre 100 et 500k."

En disant une telle chose, celle qui vous demande d'estimer quelque chose réalise que les choses ne sont pas si simples.

13
Marten Sytema

La première chose à laquelle vous avez besoin est une idée de la portée. Le plus concret est meilleur, 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 conceptuels peuvent être utilisés tôt. À mesure que les exigences et l'environnement d'exploitation commencent à devenir plus clairs, les estimations s'amélioreront. Une meilleure compréhension du client (en particulier des interfaces entre le client et l'organisation en développement), l'équipe exécutant le travail, les technologies à utiliser, l'architecture du système et une conception détaillée contribueront à une estimation plus précise. Ceci 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, comme base de base ne tient pas compte des pilotes de coûts), il devrait y avoir des facteurs d'ajustement pour la non familiarité de la technologie. À titre d'exemple, Cocomo a n grand nombre de conducteurs de coûts , y compris certains qui sont spécifiquement adaptés à la familiarité avec la plate-forme cible ainsi que la langue et les outils utilisés pour développer le système. Slim représente également l'expérience globale de l'équipe de développement, qui devrait inclure des considérations d'outils et de technologies utilisées.

Avec cette technique, la sortie des outils de modélisation est généralement validée car elles ont été utilisées avec succès pour estimer les projets logiciels précédents sur de nombreuses années dans de nombreuses organisations. Cependant, la sortie est 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 prendre en compte ces facteurs lors de la production de vos estimations. Il devient plus d'un appel de jugement, mais vous pouvez envisager des activités telles que la lecture de documentation, la mise en place du nouvel environnement de développement et le développement d'applications d'échantillons sur la plate-forme cible ou avec les langues cibles.

Dans ces cas, vous devrez décomposer vos estimations par tâche et être capable d'utiliser votre jugement professionnel pour le sauvegarder. Espérons que vous avez des données historiques et d'autres preuves concrètes pour baser vos estimations. Sinon, c'est plus une bataille en montée.

3
Thomas Owens

Séparez la formation majeure et le temps de recherche du temps de développement. Casser le projet en plusieurs sous-projets qui ont des fins heureuses. Assurez-vous de créer une preuve de concept après la formation.

Si vous êtes nouveau dans la technologie, vous ne serez jamais proche du temps de développement réel. Augmentez cela comme un risque au début du projet et soyez généreux dans votre estimation. Cela s'applique aux technologies principales que vous et votre équipe ne connaissez pas.

3
NoChance