liveBook · Manning

Earliest start time

As explained in Statistics Every Programmer Needs

An earliest start time is the earliest point at which a project activity can begin while respecting its predecessor dependencies.

An earliest start time (ES) is the earliest point at which an activity can begin after all predecessor dependencies are satisfied. Project schedules use ES with activity duration to calculate earliest finish time and identify the earliest possible project completion. section 13.3 section 13.3.1

Calculate earliest start times through a forward pass:

  • Start activities without predecessors at time zero. section 13.3.1
  • Set an activity’s ES to its immediate predecessor’s earliest finish time when it has one predecessor. section 13.3.1
  • For multiple predecessors, use the latest predecessor earliest finish time: ES = max(predecessor EF). section 13.3.1
  • Calculate earliest finish as EF = ES + expected activity duration, then continue through the network. section 13.3.1

Automated reporting tool project

Activity A starts at week 0 and lasts 3 weeks, so its EF is week 3. Activity B can therefore start at week 3 and finish at week 5. The network’s forward pass produces a 29-week project timeline, determined by its longest path. section 13.3.1

Figure 13.2 A visual representation of the automated reporting tool project plan, where each activity is represented by its unique identifier. Lines and arrows between activities represent dependencies. The sequence of digits immediately beneath each activity represents, in order, the activity’s earliest start time, expected duration, and earliest finish time. The earliest times are derived by using a forward pass through the network. Based on this analysis, the project timeline is 29 weeks, which is the length of the longest path in the network.
figure

Use the network diagram to trace dependencies and read each activity’s earliest start, duration, and earliest finish. section 13.3.1

How Statistics Every Programmer Needs covers it

How deep it goes
Explains forward-pass calculation, predecessor maxima, and duration addition, then stops short of implementation code.
Examples
Uses Activities A and B, a project network diagram, and a 29-week automated reporting tool schedule.
What it assumes
Assumes a dependency network and expected activity durations, while defining the scheduling metrics needed for calculation.
What you can do after
Apply a forward pass to calculate activity start and finish times and support critical-path analysis.
How it connects
Connects earliest start time with earliest finish time, forward pass, critical path, latest start time, and slack.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Statistics Every Programmer Needs. The section links point to the parts of the book it draws on.