6 Stimmen

Was ist der Kritische Pfad?

Als Entwickler stoße ich im Zusammenhang mit der Entwicklungsausführung manchmal auf den Begriff "Kritischer Pfad". Von wikipedia Ich weiß, dass es damit zu tun hat, die notwendigen Aufgaben zu identifizieren, die muss in einem Projekt abgeschlossen werden.

Ist mein Verständnis richtig?

Was ist die beste Definition des kritischen Pfades, die Sie kennen? Wie würde man den kritischen Pfad bei der Planung eines Projekts ermitteln?

9voto

Frozenskys Punkte 4024

Für eine Bewerbung :

Der kritische Pfad ist die Abfolge von Aktivitäten (von allen möglichen Abfolgen innerhalb der Anwendung), die in der Summe die längste Gesamtdauer ergeben, und ist somit das erste Ziel für die Optimierung.

Für ein Projekt :

Der kritische Pfad ist die Abfolge der Projektaktivitäten, die in der Summe die längste Gesamtdauer ergeben. Damit wird die kürzestmögliche Zeit für den Abschluss des Projekts bestimmt.

4voto

Vlad Gudim Punkte 23001

Das Projekt ist in Aufgaben wie Kodierung und Tests unterteilt. Die meisten Aufgaben hängen voneinander ab. So hängt zum Beispiel das Testen von der Programmierung ab, die abgeschlossen werden muss. Einige andere Aufgaben können parallel ausgeführt werden.

Nehmen wir an, Sie haben ein Miniprojekt zur Entwicklung eines Kundenverwaltungssystems. Sie könnten es grob in drei Aufgaben unterteilen:

  1. Kodierung UI - 5 Tage
  2. Kodierung des Backends - 7 Tage
  3. Integration von UI und Backend - 2 Tage

Wenn Sie alle Aufgaben der Reihe nach erledigen würden, würde das Projekt 5 + 7 + 2 = 14 Tage dauern.

Nehmen wir nun an, dass UI- und Backend-Codierung parallel durchgeführt werden können, so dass Sie zwei Entwickler gleichzeitig mit der Arbeit beauftragen können. Die Integration hängt jedoch von der Fertigstellung beider Aufgaben ab.

Wie lange würde das Projekt dauern?

  1. UI-Codierung beginnt an Tag 1 und endet an Tag 5
  2. Die Backend-Programmierung beginnt an Tag 1 und endet an Tag 7
  3. Die Integration kann erst an Tag 8 beginnen, wenn sowohl die Benutzeroberfläche als auch das Backend fertiggestellt sind, und endet an Tag 10.

Sie sehen also, wenn die UI-Codierung am dritten Tag statt am ersten Tag beginnen würde, hätte das keine Auswirkungen auf den Gesamttermin des Projekts, da sie dann am siebten Tag rechtzeitig für den Beginn der Integration abgeschlossen wäre. Das nennt man Schlupf, die UI-Codierung hat einen Schlupf von 2 Tagen.

Im Gegenteil, wenn sich die Backend-Codierung verzögert, würde sich der gesamte Zeitplan um die gleiche Anzahl von Tagen verzögern. Die Aufgabe hat keinen Spielraum im Zeitplan.

Die Backend-Codierung und -Integration bilden zusammen den kritischen Pfad des Projekts: Wenn sich eine der Aufgaben verzögert, verzögert sich auch die Projektlieferung.

Der kritische Projektpfad kann entweder als eine Abfolge von abhängigen Aufgaben definiert werden, die für den Abschluss des Projekts erforderlich sind und die längste Dauer haben, oder als eine alternative Definition, die Abfolge von abhängigen Aufgaben, die für den Abschluss des Projekts erforderlich sind und keinen Spielraum haben.

Wenn eine Aufgabe auf dem kritischen Pfad liegt, ist es natürlich von größter Wichtigkeit, dass sie pünktlich geliefert wird, da sonst der Zeitplan ins Wanken gerät und die Kosten steigen.

Aufgaben, die nicht auf dem kritischen Pfad liegen, dürfen Abweichungen bei der Dauer oder der Startzeit haben, solange sie den Schlupf nicht überschreiten, andernfalls werden sie selbst Teil des kritischen Pfads.

3voto

Ralph M. Rickenbach Punkte 12431

Der kritische Pfad ist die Reihe der abhängigen Aufgaben, die bei einer Zeitverschiebung in einer dieser Aufgaben das gesamte Projekt verschieben.

Was will ich damit sagen?

Wenn Sie Aufgaben a,b,c,d haben. A und b müssen erledigt sein, bevor c beginnen kann. D ist nicht von einer anderen Aufgabe abhängig. A dauert länger als b, und a und c brauchen zusammen länger als d, [a,c] ist der kritische Pfad.

Wenn Sie diesen Weg optimieren, verkürzen Sie Ihr Projekt.

Es ist eine gute Praxis, die Aktivitäten auf dem kritischen Pfad genau zu beobachten.

2voto

duffymo Punkte 298898

Ich würde sagen, wenn eine Aufgabe Teil eines Projekts ist, dann müssen alle erledigt werden.

Mein Verständnis von "kritischem Pfad" hat mehr mit Abhängigkeiten zu tun. Es ist die Aufgabe mit den meisten Abhängigkeiten, dem größten Risiko, die Aufgabe, die die meisten anderen Aufgaben zum Scheitern bringen wird, wenn sie nicht abgeschlossen wird. Es könnte die Aufgabe mit der längsten Vorlaufzeit sein, so dass sie früh genug geplant und begonnen werden muss, um genügend Zeit für die Fertigstellung der übrigen Aufgaben zu gewährleisten.

2voto

CraigTP Punkte 42633

Ich bin mir nicht sicher, ob es an der am besten Definition, aber sie ist sicherlich eine der prägnantesten:

Die Abfolge der abhängigen Schritte, die die Mindestzeit bestimmen, die benötigt wird, um einen Vorgang auszuführen

einen anderen, etwas längeren, und zwar im Zusammenhang mit Projektmanagement (ähnlich dem Wikipedia-Artikel, den Sie verlinkt haben):

Der Weg durch eine Reihe von Aktivitäten, die Interdependenzen, bei denen die späte Fertigstellung von Aktivitäten eine Auswirkungen auf den Endtermin des Projekts hat oder einen wichtigen Meilenstein verzögert (es können mehr als einen kritischen Pfad)

Ihr Verständnis ist richtig, und der erste Schritt zur Ermittlung des kritischen Pfades durch ein bestimmtes Projekt besteht darin, zunächst alle einzelnen Schritte zu definieren, die für den Abschluss des Projekts erforderlich sind, und dann jeden einzelnen "Schritt" zu untersuchen, um festzustellen, wie abhängig/wichtig dieser Schritt sowohl für andere Schritte im Projekt als auch für das Projekt insgesamt ist.

Nehmen wir an, ich möchte eine Wand streichen. Die Schritte könnten sein (dies ist ein absichtlich vereinfachtes Beispiel):

  • Farbe kaufen
  • Einige Pinsel kaufen
  • Die Wand streichen

Da das Endergebnis eine schöne, frisch gestrichene Wand sein soll, ist der erste Schritt (Farbe kaufen) absolut entscheidend für die ganze Sache. Wenn ich das nicht schaffe, bleibt alles andere liegen. Außerdem hängt jeder weitere Schritt davon ab, dass Schritt 1 bereits ausgeführt wurde. Daher ist in diesem (zugegebenermaßen erfundenen) Beispiel der erste Schritt auf dem kritischen Pfad der Kauf von Farbe.

Umgekehrt ist Schritt 2 wichtig für einen guten Anstrich, könnte aber möglicherweise weggelassen werden, wenn ich die Farbe einfach an die Wand werfe!

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X