Question:
Gérer les délais non négociables comme seule ressource sur un projet logiciel
CKing
2014-05-15 23:17:44 UTC
view on stackexchange narkive permalink

La question :

Comment gérer les délais irréalistes sur un projet logiciel? Comment puis-je m'assurer de ne manquer aucun délai lorsque les délais eux-mêmes ne sont pas réalistes? Que dois-je dire à mon responsable lorsque je rate une échéance? Qu'avez-vous fait face à des délais irréalistes et non négociables?

Le contexte:

Je travaille sur un projet logiciel depuis 6 mois. Je suis le seul développeur sur le projet. Il y a un module dans le projet qui a été développé par un développeur très expérimenté qui a été déplacé vers un autre projet il y a 6 mois lorsque j'ai rejoint le projet. Bien que j'ai repris le projet depuis lors, je n'ai pas eu la chance de regarder le module développé par le développeur senior. Il y a un nouveau cadre développé par notre entreprise. On nous a demandé d'utiliser ce cadre dans nos projets. Utiliser ce framework dans le projet sur lequel je travaille nécessite de se débarrasser du module écrit par le développeur senior et de refactoriser d'autres modules qui seraient impactés par ce changement.

Le problème: Le responsable principal du développement de mon projet a proposé des estimations irréalistes pour cette activité. J'ai fait part de mon inquiétude à lui, mais cela s'est retourné contre moi. Voici un exemple du genre de conversations que j'ai eues avec lui:

Moi: Pouvons-nous augmenter le nombre de jours pour la sous-tâche 1 à 5 jours?

Manager: Pourquoi pensez-vous que cette sous-tâche prendra plus de temps? Je pensais que vous connaissiez la base du code.

Moi: Je connais notre base de code. Je ne connais pas la base du code du framework. Je ne peux pas vous donner une estimation exacte sans regarder le code-cadre. Ce que je sais pour le moment, c'est que cette sous-tâche ne peut pas être effectuée en 2 jours. Nous aurons besoin d'au moins 5 jours pour cela.

J'ai signalé quelques sous-tâches supplémentaires qui, selon moi, prendraient plus de temps. Finalement, voici comment notre conversation s'est terminée:

Manager: Je ne peux pas modifier les estimations pour le moment. Vous devez gérer cela d'une manière ou d'une autre. Je commence à penser que vous n'êtes pas la bonne personne pour travailler sur ce projet.

J'ai eu 1 mois pour terminer cette activité et je suis coincé avec des estimations irréalistes. Ayant travaillé dans l'industrie pendant quelques années, je sais que je devrai travailler 12 heures par jour et probablement aussi le week-end pour respecter la date limite pour chaque sous-tâche.

Modifier: Cette question n'est pas un doublon de ceci

Il y a une différence entre être le seul développeur sur un projet et avoir 5 développeurs sur un projet. Les aspects psychologiques associés au fait d'être le seul développeur d'un projet sont différents. Par exemple, 5 développeurs peuvent faire équipe contre un manager si la pression se fait sentir, mais un seul développeur court le risque d'être insulté ou humilié devant tout le monde s'il s'oppose aux vues des managers. 5 développeurs peuvent se soutenir les uns les autres dans les moments difficiles, mais un seul développeur doit supporter toute la charge lui-même. Ce sera ma parole contre mes managers mais ce ne sera pas le cas si j'avais plus de développeurs qui travaillaient avec moi et estimaient que les délais ne sont pas réalistes. La stratégie pour faire face à cette situation seule sera sensiblement différente de la stratégie pour y faire face en équipe (comme l'a correctement souligné Wesley dans les commentaires de sa réponse)

@JoeStrazzere Unrealistic est un terme relatif. Mon responsable ne considère pas ces délais comme irréalistes. Il m'a spécifiquement demandé de gérer mon chemin autour de ses estimations qui signifie travailler 12 heures et le week-end. Cela peut être normal pour lui mais ce n'est pas réaliste pour moi.
il ne vous reste aucune option. J'essaierais de faire de mon mieux sans heures supplémentaires, bien sûr. Vous n’auriez rien à expliquer la date limite, car vous avez déjà clairement indiqué que ce n’était pas possible. Aussi, vous pourriez peut-être vous concentrer sur les parties impuissantes et essayer d'ajuster le travail sur ces parties au temps dont vous disposez, en laissant ce qui peut être accessoire ou moins impuissant.
Je pense que ce qui se passe ici, c'est que le directeur veut que vous travailliez ces 12 heures par jour.
La première étude que j'entendu parler de temps de travail était par Hans Eysenck dans l'industrie de l'armement en Grande-Bretagne pendant la Seconde Guerre mondiale, étaient des travailleurs auraient dû être vraiment motivés. Il a constaté que les personnes travaillant 57 heures par semaine étaient moins productives que les personnes travaillant 48 heures par semaine. Pas moins productif par heure, mais moins productif par semaine. En règle générale, un développeur de logiciels travaillant 60 heures par semaine pendant six semaines et un autre travaillant 40 heures par semaine pendant six semaines ont une productivité égale par semaine - sauf qu'au bout de six semaines, l'un est fatigué et perdra rapidement sa productivité.
Les détails sont différents mais la question est la même. Y a-t-il une raison pour laquelle les réponses ne vous aideront pas? Ce serait mieux d'inclure dans votre modification que votre explication sur la façon dont vos spécificités sont différentes.
Alors, comment cela s'est-il terminé?:)
Cinq réponses:
Wesley Long
2014-05-16 00:36:45 UTC
view on stackexchange narkive permalink

Manager: Je ne peux pas modifier les estimations maintenant. Vous devez gérer cela d'une manière ou d'une autre. Je commence à penser que vous n'êtes pas la bonne personne pour travailler sur ce projet.

Votre manager abdique sa responsabilité pour son rôle, vous allez donc devoir faire son travail aussi .

  • Commencez par rassembler ce que vous considérez comme une chronologie réaliste pour ce devoir, en répertoriant toutes les étapes que vous voyez et en estimant le nombre d'heures pour chaque étape. Ne passez pas trop de temps là-dessus, car vous pourriez être accusé de «bloquer» le projet. Il peut s'agir de quelque chose d'aussi simple qu'une feuille Excel répertoriant les étapes, le nombre d'heures estimé et le calcul de la date d'achèvement estimée. N'incluez aucune référence à la date limite. Envoyez-le par e-mail à votre responsable.

  • À la fin de chaque journée, à côté de votre temps estimé, indiquez le nombre d'heures que vous avez passées à l'étape à côté de votre estimation et le pourcentage complet (certes subjectif) à côté de cela. Incluez également une référence à toute période «hors projet» (réunions obligatoires, demandes d'urgence, etc.). Le calcul de la date d'achèvement estimée devrait être mis à jour à partir de là. Envoyez-le par e-mail à votre responsable à la fin de chaque journée.

  • Ne vous plaignez pas. Procédez de votre mieux. Faites tous les efforts possibles.

À la fin du projet, une des deux choses se produira:

  1. Vous vous serez surpris et aurez effectivement respecté la date limite.
  2. Vous aurez manqué la date limite et votre responsable n'aura aucune raison (légitime) d'être sévère avec vous, car vous l'avez tenu informé à chaque étape .

Par-dessus tout, évitez vos émotions. C'est juste du travail. Si cela vous émeut, vous ne vous en tirerez pas bien et les choses que vous dites en étant désemparé peuvent être utilisées contre vous plus tard. Si vous restez calme, concentré et productif, vous pourrez honnêtement dire que vous avez fait de votre mieux et que vous n'avez rien caché à votre responsable.

Si votre organisation ne peut pas respecter cela, il n'y a jamais eu moyen de réussir en premier lieu.

Je ne serai peut-être pas en mesure de tracer toutes les étapes car je ne sais pas quelles seront les étapes. J'aurai besoin d'un peu de temps pour analyser ce que seront les étapes et l'estimation pour chaque étape. Malheureusement, le temps est compté et l'établissement d'estimations qui auront un sens prendra un temps considérable.
Une meilleure option serait de passer 20 minutes chaque matin sur mon plan pour la journée et de l'envoyer à mon responsable tous les jours avant de commencer tout travail. De cette façon, je serai plus organisé et mon responsable aura la chance de voir la quantité de travail qu'il a volontiers oublié de prendre en compte dans les estimations.
@Bot - le point est la communication. Faites de votre mieux, ajoutez des détails et des révisions au fur et à mesure que vous les rencontrez. Quand vous dites que vous aurez besoin de "quelque temps" - c'est difficile pour commencer. Le fait est que vous ne voulez pas atteindre la date limite et que votre responsable vous demande «Que s'est-il passé? Tenez-le à jour quotidiennement avec autant de détails et aussi précisément que possible. Sur-communiquer.
Bon point d'être calme et de ne pas devenir trop émotif.
Je pense que la communication pourrait très bien être la solution ici. Cependant, mon responsable pourrait réaliser mon objectif en lui envoyant des mises à jour quotidiennes et me demander d'arrêter de le faire. Si un développeur junior m'envoyait chaque jour des courriels sur ce qu'il allait accomplir, je sentirais qu'il le fait pour couvrir ses traces. Je pourrais même trouver ça un peu ennuyeux.
@bot: Mes cadres supérieurs m'envoient des mises à jour quotidiennes de mon statut. Ils reçoivent des mises à jour des personnes qu'ils gèrent. Ceux-ci sont courts - devraient prendre 2 minutes à assembler et 30 secondes à lire, mais cela donne à la chaîne suffisamment d'informations pour savoir comment les choses se passent.
@bot - Vous n'êtes pas le développeur junior. Vous êtes le SEUL développeur de ce projet et êtes donc chef d'équipe. Titre officiel ou non, c'est votre rôle, et les rapports de situation au chef de projet (votre gestionnaire) sont non seulement appropriés, mais attendus.
@CKing Tout gestionnaire qui vous demande d'arrêter d'envoyer des rapports d'état sur les projets en cours est totalement incompétent.C'est littéralement l'une des plus grandes parties de leur travail, vérifier comment les choses se passent constamment.
utnapistim
2014-05-16 20:09:25 UTC
view on stackexchange narkive permalink

Comment gérer les délais irréalistes sur un projet logiciel? Comment puis-je m'assurer de ne manquer aucun délai lorsque les délais eux-mêmes ne sont pas réalistes?

S'ils ne sont pas réalistes, vous les manquerez . Cela dit, il est possible que les délais soient considérés comme atteignables par votre responsable (comme dans "pas irréaliste") étant donné que vous ferez des heures supplémentaires (voir ci-dessous).

Ayant travaillé dans l'industrie pour un quelques années, je sais que je vais devoir travailler 12 heures par jour et probablement aussi le week-end pour respecter la date limite pour chaque sous-tâche.

Je ne sais pas quelle est votre situation est, mais si quelqu'un me disait que je devrais travailler 12 heures par jour pour respecter un délai auquel je ne me suis pas (personnellement) engagé, je répondrais en révisant mon CV et en commençant à chercher ailleurs. Il y a deux trois choses à réaliser à propos des heures supplémentaires planifiées:

  • d'abord, lorsque la date limite est irréaliste, les heures supplémentaires ne sont pas réponse, mais un symptôme du problème.

  • Deuxièmement, à moins que vous ne travailliez dans un pays sans loi sur la protection du travail, les heures supplémentaires ne peuvent pas vous être imposées. Si vous êtes payé 9 heures par jour (par exemple), il est totalement irréaliste pour votre responsable de s'attendre à obtenir plus de votre temps, essentiellement gratuitement. Ils vous demandent de consacrer 1,5 homme-jour pour chaque homme-jour, et de ne rien obtenir en retour (c'est tout aussi irréaliste que l'échéance).

  • troisième , lorsque vous faites des heures supplémentaires, vous travaillez en dessous de la moitié de votre capacité, pendant plus longtemps. Ça n'a pas envie, parce que vous corrigez les choses et elles ont tendance à fonctionner, à court terme. De manière mesurable, vous faites plus d'erreurs lorsque vous faites des heures supplémentaires, et la plupart du code que vous écrivez se traduit par une dette technique. Les retards et les problèmes causés par la dette technique augmentent de façon exponentielle avec le temps, jusqu'à ce que vous vous retrouviez avec une base de code non maintenable.

Pour répondre à votre question, je voudrais faire deux choses:

  • assurez-vous que le responsable comprend et suit mes progrès sur ce projet (c'est-à-dire que si je faisais 50% de ce que je devrais faire pour respecter la date limite, je le communiquerais de manière aussi claire que possible) .

  • refuse de faire des heures supplémentaires systématiques. S'il y a une urgence et que l'avenir de l'entreprise est en jeu, j'accepterais de rester en retard au bureau pendant un jour ou deux (et le troisième, je répondrais par "Désolé, j'ai des projets" - et partirais).

Si rien ne brûlait et qu'un responsable décidait "Je ne peux pas modifier les estimations maintenant" pour des estimations irréalistes, je ferais de mon mieux pendant le temps que j'ai donné à l'entreprise . Votre contrat avec l'entreprise est là pour spécifier ce que l'entreprise peut vous demander (spécifie-t-il les heures supplémentaires? Dans quelles conditions?).

Si le délai n'était pas respecté, ce serait un problème de gestion (ie pas à moi à résoudre), et la responsabilité incomberait au directeur.

Votre responsabilité à cet égard est de faire ce que vous pouvez de façon réaliste (en gardant à l'esprit qu'il n'est pas réaliste pour l'entreprise d'attendre du travail gratuit de votre part) et communiquez les retards et les problèmes à votre responsable. À partir de là, c'est son problème.

Modifier en gras .

Bon point sur le fait que les heures supplémentaires sont un symptôme plutôt que la solution.
Re: Heures supplémentaires. Ne créez pas de précédent pour des attentes irréalistes. Vous seriez surpris de voir à quel point travailler quelques mois d'heures supplémentaires pour terminer un projet se transforme automatiquement en TEMPS SUPPLÉMENTAIRE PERMANENT ATTENDU de la part de votre responsable. Lorsque les choses se calmeront et qu'ils vous verront travailler des heures normales, ils le percevront alors que vous vous relâchez. Comme l'a dit utna, il n'est pas déraisonnable de faire des heures supplémentaires à court terme pour respecter un délai réaliste. Les heures supplémentaires prolongées le sont certainement. Si vous cédez et le faites, vous avez créé un précédent qui sera attendu de vous chaque fois qu'ils le demanderont.
NotMe
2014-05-16 03:13:22 UTC
view on stackexchange narkive permalink

Qu'avez-vous fait face à des délais irréalistes qui n'étaient pas négociables?

Très peu de délais sont en fait non négociables. Si c'était vraiment non négociable, alors il y aurait eu plus d'une personne sur le projet. Pour la simple raison du risque que vous ne soyez plus disponible pour y travailler et donc de la possibilité que la date limite ne soit pas respectée.

Manager: Je ne peux pas modifier les estimations maintenant. Vous devez gérer cela d'une manière ou d'une autre. Je commence à penser que vous n’êtes pas la bonne personne pour travailler sur ce projet.

Si un responsable me disait cela, en me donnant une date limite, j’ai jugé déraisonnable, alors je d'accord avec lui et demandez dans quel projet il aimerait me déplacer.

Si vous sentez vraiment que vous ne pouvez pas accomplir le travail dans le temps imparti, votre travail consiste à soulever ce drapeau à la direction. Ce que vous avez fait. Le travail de la direction consiste alors à déterminer s'il existe des obstacles à l'achèvement qu'ils peuvent supprimer ou à pousser le calendrier et à parler aux parties concernées.

Si, cependant, la direction essaie simplement de vous forcer à respecter le calendrier, alors c'est une recette pour un désastre qui ne se terminera tout simplement pas bien. Dans ce cas, il vaut mieux en finir avec le plus dur maintenant plutôt que d'être complètement stressé et de faire face à un éventuel licenciement plus tard.

En acceptant poliment que peut-être vous n'êtes pas la bonne personne pour travailler dans ces conditions l'une des trois choses se produira. Soit vous appelez son bluff et il changera le calendrier, il ajoutera une autre personne pour vous aider ou vous vous retrouverez sans travail. Honnêtement, si vous êtes renvoyé, vous l'auriez probablement été si vous aviez quand même manqué la date limite.

+1 pour "si vous êtes renvoyé, vous l'auriez probablement été si vous aviez quand même manqué la date limite". Un moyen sûr pour votre responsable de manquer la date limite est de vous renvoyer maintenant.
La vérité est que le développeur senior et moi sommes les seuls à connaître très bien le système existant. Avec des estimations aussi agressives, nous sommes les deux seules personnes qui peuvent venir à l'esprit de n'importe qui pour cette activité. Le développeur principal est lié à plusieurs projets, je suis donc à peu près la seule option s'il a des délais aussi agressifs à l'esprit. La seule chose qui me dérange, c'est le fait que je peux faire tout le travail nécessaire pour respecter ces délais tout en risquant d'être considéré comme quelqu'un qui a peur de relever des défis.
@bot: Si les délais sont possibles, je ne suis pas tout à fait sûr de savoir pourquoi vous étiez dans le bureau de votre patron pour commencer. Soit vous pouvez faire le travail dans le temps imparti, soit vous ne pouvez pas. Si vous le pouvez, mais que vous êtes simplement réticent au travail, alors vous devez "boucler la renoncule" et "le faire". Cependant, si le nombre d'heures supplémentaires est tel que vous vous sentez maltraité, vous devez demander de l'aide. Si l'aide n'est pas disponible, vous devez prendre des décisions quant à l'endroit où vous souhaitez travailler.
JB King
2014-05-16 00:00:33 UTC
view on stackexchange narkive permalink

Comment gérer les délais irréalistes sur un projet logiciel?

En général, il y a quelques points à considérer ici:

  1. La date limite est-elle due à un événement externe qui ne peut pas être déplacé ? Par exemple, s'il y a un salon professionnel où le projet doit être réalisé, c'est un peu différent d'une échéance arbitraire.

  2. Dans quelle mesure pouvez-vous prouver que l'échéance est irréaliste? La date limite peut être planifiée mais de quelles preuves disposez-vous pour contrer ces points?

Comment puis-je m'assurer de ne manquer aucune échéance lorsque les échéances elles-mêmes sont irréalistes?

Mettre des heures supplémentaires et demander de l'aide serait ma suggestion.

Que dois-je dire à mon responsable lorsque je rate une échéance?

Si vous savez qu'une date limite ne sera pas respectée, je vous suggère d'en informer votre responsable dès que possible et de voir quelle ligne de conduite est recommandée. Il y aura peut-être une lutte de pouvoir ou autre chose ici, mais il peut y avoir des alternatives. Il y a aussi la question de savoir comment les délais sont gérés au sein de l'entreprise, car j'ai tout vu de tout le monde dans l'entreprise aider à respecter les délais, les délais ne sont que des dates pleines d'espoir qui ne signifient rien.

Qu'as-tu fait face à des délais irréalistes et non négociables?

En fonction de ces premiers points, il y aurait quelques options:

  1. Plan d'urgence - Révisez la portée afin qu'une démo puisse être faite mais avec des fonctionnalités limitées.

  2. Repousser - Accordé que c'était moche, il y a eu des moments où mes collègues et moi avons dit au responsable que l'échéance n'était pas possible et nous avons demandé ce qu'ils voudraient que nous fassions. Après tout, ils peuvent avoir d'autres choses à faire en fonction de la raison pour laquelle cela a été poussé si fort.

  3. Plongez-vous - j'ai également vu des moments où l'équipe consacrerait des heures supplémentaires et respecterait la date limite. Certes, cela comporte le risque d'être éventuellement demandé de le faire à nouveau, mais c'est là qu'il faut faire attention à la façon dont le temps est géré dans l'entreprise, car s'il y avait beaucoup de temps supplémentaire, cela pourrait être utilisé plus tard. Sinon, obtenir l'approbation de l'ergothérapie peut être une autre stratégie ici.

Les délais ont été imposés à mon manager par son manager. Les délais sont une religion sur mon lieu de travail et j'ai fait des heures supplémentaires plusieurs fois avant pour respecter les délais. Les délais actuels sont à un tout autre niveau, mais ils devront être respectés, qu'ils le soient ou non pour une raison particulière. Bon point de demander de l'aide.
JB soulève de bons points. Comment savez-vous que la date limite est irréaliste? Vous ne voulez pas faire le travail requis pour prouver qu'il est irréaliste (c.-à-d. Un calendrier), alors comment le savez-vous? Aussi, concernant un plan d'urgence. Découvrez précisément ce qui est absolument nécessaire à la date limite. par exemple. si c'est pour une démo, peut-être que certaines fonctionnalités doivent seulement sembler fonctionner mais pas vraiment. Proposez ensuite de travailler sur cette fonctionnalité en dernier avec une fonctionnalité fictive comme solution de secours. Cependant, je ne sais pas comment vous irez quelque part sans un calendrier et des estimations de votre choix.
Giacomo1968
2014-05-16 23:06:38 UTC
view on stackexchange narkive permalink

Voici la réponse de votre responsable:

Responsable: Je ne peux pas modifier les estimations pour le moment. Vous devez gérer cela d'une manière ou d'une autre. Je commence à penser que vous n'êtes pas la bonne personne pour travailler sur ce projet.

Et l'essentiel pour moi est ceci:

Je commence avoir l'impression que vous n'êtes pas la bonne personne pour travailler sur ce projet.

L'argument principal de ce manager pour que vous respectiez une échéance irréaliste est que vous n'êtes peut-être pas la bonne personne pour le projet? Vraiment? Comment l'intimidation va-t-elle réellement inspirer le travail?

Mon instinct me dit que la pression pour respecter ce délai - et les conséquences pour lesquelles cela ne peut pas être moi - incombe vraiment à votre manager &, le manque de perspective de votre manager .

Et malheureusement, ce gestionnaire veut s'assurer que tout retour de flamme de cette échéance manquée retombe sur le développeur (c'est-à-dire: vous).

Le meilleur conseil que je puisse vous donner consiste à examiner le projet lui-même et à le diviser rationnellement en ces catégories.

  • Fonctionnalité de base: Ce qui peut être fait d'ici la date limite qui serait solide comme un roc & bénéfique pour l'avancement du projet. Votre objectif serait d'aller de l'avant en faisant de votre mieux en vous admettant que l'échéance globale ne peut pas arriver, mais à quel point je serai beau - et à quel point le projet sera beau - au moment où l'échéance sera respectée. >
  • Problématique mais nécessaire: ce qui ne peut être fait dans les délais sans compromettre sérieusement la qualité. FWIW dans chaque projet de programmation sur lequel j'ai participé, il y a toujours eu une fonctionnalité de base qui peut être invisible pour les non-techniciens, mais qui couvre 80% de ce qui doit être fait. Donc, si vous pouvez posséder cette base en renforçant cette fonctionnalité de base, vous gagnez gros.
  • Problématique et nécessite une nouvelle stratégie: Quelles parties du projet semblent être de «belles choses», mais de manière réaliste, ce serait une fosse de ressources & qui aurait un impact négatif sur l'ensemble du projet. Plusieurs fois, en particulier dans le monde invisible de la programmation, des idées qui semblent conceptuellement bonnes sur papier peuvent finir par devenir un cauchemar dans le monde réel. Par exemple, si votre projet inclut des aspects de conception frontale qui nécessitent un examen de groupe &, vous savez que cela prendra du temps & nécessitera des révisions, cela tomberait dans la dernière catégorie.

Maintenant avec cela dit, compilez cette liste & approchez votre manager avec les détails. Bien qu'ils disent clairement que vous n'êtes pas un bon candidat pour le projet, la réalité est que s'il y avait quelqu'un d'autre qui pourrait gérer qu'il aurait déjà obtenu la tâche. Ou peut-être que votre responsable trouverait un moyen pour vous deux de travailler en coopération.

Mais dans l'état actuel des choses, mon attitude est que si le projet tombe sur vos genoux & vous savez que les délais sont déraisonnables vous êtes dans votre pouvoir de façonner une discussion sur la meilleure façon d'aborder ce problème.



Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
Loading...