Développement logiciel et gestion de projet

Après une version de micrologiciel dont on sait qu'elle fonctionne correctement, il y a 1000 commits, et le dernier commit présente un bogue. Le bogue a été introduit par un commit et se produit dans tous les commits suivants. Quand on identifie le commit fautif par recherche dichotomique, comme avec git bisect, combien de fois au maximum faut-il compiler et tester le micrologiciel ?

  1. A3
  2. B10
  3. C500
Afficher la réponse et l'explication

Réponse : B. 10

Le coupable est l'un des 1000 commits, et chaque test du commit du milieu divise par deux le nombre de candidats. Comme 2¹⁰ = 1024 ≥ 1000, 10 tests au plus suffisent à l'identifier. Tester les commits un à un à partir du plus ancien demanderait 999 tests dans le pire cas et environ 500 en moyenne : la recherche dichotomique fait donc une grande différence. Pour utiliser cette méthode, il importe de ne pas placer de commits cassés sur les branches partagées, afin que chaque commit puisse être compilé et testé.

S'entraîner sur ce thème Retour au thème

Autres questions sur Développement logiciel et gestion de projet

  1. Dans une WBS, qui décompose hiérarchiquement les livrables et le travail d'un projet, comment s'appelle l'élément de plus bas niveau, utilisé comme unité pour estimer la durée et le coût et pour affecter les personnes ?
  2. Dans un diagramme fléché à nœuds ① à ⑥, les activités, notées « nom : nœud de début → nœud de fin, durée », sont A : ① → ②, 6 jours ; B : ① → ③, 4 jours ; C : ② → ④, 4 jours ; D : ③ → ⑤, 4 jours ; E : ④ → ⑥, 2 jours ; F : ⑤ → ⑥, 3 jours ; et une activité fictive : ② → ③ (durée 0). Quelle est la durée minimale du projet complet ?
  3. Un projet comporte les activités, durées et prédécesseurs suivants : A : 4 jours (sans prédécesseur) ; B : 2 jours (aucun) ; C : 3 jours (A) ; D : 2 jours (B) ; E : 5 jours (C) ; F : 4 jours (C et D) ; G : 2 jours (F). Si toutes les autres activités commencent au plus tôt, de combien de jours au maximum peut-on retarder le début de l'activité B sans allonger la durée totale du projet ?
  4. Un projet comporte les activités, durées et prédécesseurs suivants : A : 6 jours (aucun) ; B : 4 jours (aucun) ; C : 4 jours (A) ; D : 4 jours (A et B) ; E : 2 jours (C) ; F : 3 jours (D), et sa durée totale est de 13 jours. Le surcoût pour raccourcir chaque activité d'un jour est de 300 000 yens pour A, 50 000 yens pour B, 100 000 yens pour C, 200 000 yens pour D, 80 000 yens pour E et 250 000 yens pour F. Quelle est la façon la moins coûteuse de raccourcir d'un jour la durée totale du projet ?
  5. Une estimation à trois points de la durée d'une activité donne une valeur optimiste de 4 jours, une valeur la plus probable de 7 jours et une valeur pessimiste de 16 jours. Quelle est la durée espérée donnée par la formule PERT ?