Welcome to Project Management!

Ever wondered how massive projects like building a skyscraper, launching a satellite, or even organizing a huge music festival stay on track? It’s not just luck—it’s Discrete Mathematics in action! In this chapter, we explore Critical Path Analysis (CPA). You will learn how to break a big project into smaller tasks, find out which tasks are the most important, and calculate exactly how much "wiggle room" you have before the whole project is delayed.

1. The Basics: Activity Networks

To manage a project, we first need to visualize it. In this course, we use Activity on Arc networks.

Key Components:

  • Arcs (the arrows): These represent the activities (tasks) themselves. The length of the arrow doesn't matter, but the direction does!
  • Nodes (the circles): These represent events, such as the start or completion of an activity.
  • Precedence: Some tasks can't start until others are finished. For example, you can't put the roof on a house until the walls are up!

Did you know? A Critical Path is actually the longest path through the network. It sounds strange, but because you have to finish every task, the longest sequence of tasks determines the minimum time the whole project will take.

Quick Review: An activity network shows the logical order of tasks. Arcs = Tasks, Nodes = Events.

2. The "Burst" and the "Merge"

When drawing or reading networks, you’ll encounter two common situations:

  • Burst: This is a node where one activity ends, and multiple new activities can start. It looks like the network is "bursting" outward.
  • Merge: This is a node where multiple activities must all finish before the next activity can begin. All the arrows "merge" into one point.

3. Finding the Times: Forward and Backward Passes

To find the project duration, we perform two "passes" through the network. We usually split the nodes into two or three sections to record these times.

The Forward Pass (Earliest Start Times)

We start at the beginning (Time 0) and move toward the end.

  1. For each node, calculate the Earliest Start Time (EST).
  2. If multiple activities merge into a node, the EST is the maximum value of \( (\text{EST of previous node} + \text{duration of activity}) \).

Analogy: If you are waiting for three friends to arrive before you can start a movie, and they arrive at 6:00, 6:15, and 6:30, you can't start until 6:30. You always take the latest (maximum) time!

The Backward Pass (Latest Finish Times)

Once we know the total project time, we work backward from the end to the start.

  1. For each node, calculate the Latest Finish Time (LFT).
  2. If an activity bursts from a node, the LFT is the minimum value of \( (\text{LFT of next node} - \text{duration of activity}) \).

Key Takeaway: Forward Pass = Maximum (finding the earliest we can start). Backward Pass = Minimum (finding the latest we can finish without delaying the end).

4. Identifying the Critical Path

A Critical Activity is a task where there is zero leeway. If it's delayed by even one second, the whole project is delayed.
An activity is critical if:

  • The EST at its start node is equal to the LFT at its start node.
  • The EST at its end node is equal to the LFT at its end node.
  • The difference between the LFT (end) and EST (start) is exactly equal to the duration of the task.

The Critical Path: This is the continuous path from start to finish consisting of critical activities.

5. All About "Float"

Float is a fancy word for "spare time" or "wiggle room." There are three types you need to know:

Total Float

This is the maximum amount of time an activity can be delayed without delaying the entire project.

Formula: \( \text{Total Float} = \text{LFT(end node)} - \text{EST(start node)} - \text{Duration} \)

Interfering Float

This is spare time that, if used, will delay the start of later activities (even if it doesn't delay the final project end date). It "interferes" with your neighbors!

Formula: \( \text{Interfering Float} = \text{LFT(end node)} - \text{EET(end node)} \)

Independent Float

This is "selfish" float. It’s the time an activity can be delayed even if the activities before it finish as late as possible and the activities after it want to start as early as possible. It is independent of what everyone else is doing.

Formula: \( \text{Independent Float} = \text{max}(0, \text{EST(end node)} - \text{LFT(start node)} - \text{Duration}) \)

Memory Trick:
Total: The whole project’s spare time.
Interfering: Shared spare time (affects the next person).
Independent: My own personal spare time.

6. Visualizing the Project: Cascade (Gantt) Charts

A Cascade Chart helps us see the project on a timeline. Each activity is represented by a horizontal bar.

  • Critical activities are usually drawn as solid bars.
  • Non-critical activities show their duration, with their Total Float often shown as a dashed line.

Why use them? They are brilliant for Resource Leveling. If you only have 3 workers, and a chart shows you need 5 workers on Tuesday, you can use the "float" (spare time) to shift non-critical tasks to Wednesday or Thursday instead.

Common Mistake: Students often forget that shifting a non-critical task might use up its float and make it "critical" or reduce the float of a following task. Always double-check the logic when moving bars!

Summary Checklist

  • Can I draw an Activity on Arc diagram from a precedence table?
  • Can I calculate EST (Forward Pass - Max) and LFT (Backward Pass - Min)?
  • Do I know that the Critical Path is the longest path?
  • Can I calculate Total, Independent, and Interfering floats?
  • Can I use a Cascade Chart to schedule a project for a specific number of workers?

Don't worry if the different types of float seem tricky at first! Just remember that "Float" always boils down to: (Available Time) - (Time Needed). You're doing great!