web-dev-qa-db-fra.com

Sont des échéances manquées communes dans les emplois de programmation?

C'était mon travail de pigiste à Odesk. J'ai fait plusieurs emplois plus tôt à temps donné, mais c'est la première fois que j'ai raté la date limite. C'était un travail très long et j'ai fait de mon mieux mais j'ai toujours manqué la date limite. Maintenant, j'ai très peur. Parce que c'est ma faute que j'ai manqué la date limite.

Ma question est la suivante: est-ce que c'est une grosse préoccupation ou des délais manqués communs parmi les emplois de programmation, alors je ne devrais pas trop m'inquiéter à ce sujet?

18
user88873

Oui. Les délais manqués sont courants dans le développement de logiciels.

De nombreux pigistes rencontrent des délais en engageant de la dette technique ou de cacher la saleté sous le tapis.

Paraphrasant Frederick Brooks ' Le mois mythique mois :

Frederick Brooks, author of The Mythical Man Month

  • Les délais sont souvent manqués car les dirigeants de projet continuent d'estimer les tâches logicielles de la même manière qu'ils font des tâches d'ingénierie civile, une approche imparfaite, car le logiciel est une industrie artisanale et artisanale sans suppression de normes claires. C'est tellement vrai que vous ne pouvez pas révoquer un programmeur "permis" Pour coder pour une faute professionnelle, vous ne pouvez ni poursuivre en justice pour la programmation sans titre.

  • Le développement de logiciels a une complexité inhérente au manque d'autres disciplines. Un grand programme peut avoir plus de composants qu'une voiture et ces composants peuvent interagir de manière plus différente.

  • Le logiciel est difficile à visualiser, de sorte que différents types de diagrammes sont utilisés pour voir différents aspects d'un projet, et ces aspects peuvent ne pas être orthogonaux. Le génie civil, d'autre part, des plans vous permettent de voir la plomberie, le câblage, etc. dans le même tableau (ou des couches) de manière orthogonale.

  • Ce n'est pas courant, après qu'un pont ou un bâtiment soit à moitié construit, pour que le client modifie complètement la portée du projet. C'est souvent le cas dans les projets logiciels.

  • L'état de la technique du développement logiciel n'a pas atteint le point où les projets logiciels sont répétables et presque sans risque. Même les plus grandes entreprises de logiciels tels que Microsoft peuvent manquer des délais de mois ou d'années.

  • La plupart Vaporware n'est que des projets logiciels coupés à cause de ces types de problèmes.

En conclusion:

Mauvaises estimations et sous-estimation de la complexité, en raison de la nature artisanale du processus de développement logiciel, il reste une discipline immature.

45
Tulains Córdova

Les délais manquants ne sont pas rares dans le développement de logiciels. Il est presque impossible d'estimer avec précision combien de temps un projet de logiciel prendra.

Le professionnalisme est indiqué dans la façon dont vous y traitez. Lorsque vous savez que vous manquerez une date limite, informez votre client le plus tôt possible à ce sujet afin qu'ils puissent planifier en conséquence.

3
Philipp

C'est assez commun, mais vous pouvez vous améliorer. Vous voudrez peut-être examiner l'estimation de quelque chose de résumé comme points d'histoire et gardez une trace de votre Velocity pour calculer vos estimations réelles. Ces concepts sont les plus souvent associés à Scrum, mais peuvent être utilisés même si vous ne faites pas Scrum.

La chose étonnante à propos de la vitesse est qu'elle englobe toutes les choses intangibles telles que les interruptions et la complexité inattendue que les développeurs ont une période difficile à comptabiliser dans leurs estimations. Toutes les probabilités moyennes en moyenne avec le temps. En moyenne sur 10 semaines, nos estimations de vitesse ont été exactes à environ 5%. Pourtant, lorsque nous estimons les mêmes tâches dans les heures, la même équipe est exactement sous-estime de 30 à 50%.

2
Karl Bielefeldt

Ma théorie (non prouvée) est que les humains ont évolué pour sous-estimer des emplois compliqués de deux ou trois à une. Chaque fois que le Congrès demande à la NASA quelque chose comme: que cela coûtera-t-il de construire une navette ou de voyager sur la lune qu'ils reviennent en une semaine avec un nombre. Après avoir manqué à tous les coûts attendus qu'ils découvrent qu'il coûtera trois fois plus cher.

Nous avons eu une blague dans les années 1970: prenez une estimation de programmeur, doublez le nombre, puis déplacez-la à la prochaine unité de temps. Par conséquent, si un programmeur dit que cela peut être fait dans deux semaines, il le terminera dans quatre mois.

Si quelqu'un a rénové une cuisine, ils pensent généralement que je vais le faire dans deux semaines. Ils finissent environ six semaines plus tard.

1
Meredith Poor