WBS Graph Rewriter · an earlier scheduling sandbox

Change a task network and inspect the consequences

Excavate, lay pipe, backfill, inspect and tie in. Change the links or resource assumptions and compare the resulting schedules. Every structural edit is a hypothesis about how this little job can be done.

A network you can change

Start with the six-step sample. Select an edge and collapse two serial steps, or try adding a second task that needs the same crew. Compare the earliest dates with a schedule that honours the entered resource capacities.

What this is · how to use it

The earlier name was “WBS Graph Rewriter.” The implemented model is a finish-to-start precedence network. A WBS describes a deliverable hierarchy; the network here describes order and time.

  1. Select a task in the graph or dropdown; edit its fields and apply the change.
  2. Add tasks, gates or buffers; choose source and target to add a dependency. Select an edge to remove or rewrite it.
  3. Compare earliest and resource-feasible timing, inspect total float, and read the diagnostic.
  4. Save a named scenario before changing assumptions. Compare or restore it, undo/redo edits, or export a JSON bundle.

Tasks have integer durations and named resource demands. Gates and milestones can have zero duration. Buffers consume time with no resources. There are no calendars, deadlines, lags, costs or hidden technical constraints. The GAO Schedule Assessment Guide provides wider scheduling context.

Rewrite rules and their limits
  • R1 · Collapse serial steps: A must have exactly one successor B, and B exactly one predecessor A. The new package retains both steps and their resource profiles, but assumes they run contiguously without a resource-waiting gap. This extra assumption can change the levelled finish. Expand it to edit internal steps.
  • R2 · Add a finish buffer: choose one deterministic zero-float route, sum its supplied variances and use ceil(k × √sum). This is an illustrative independent-variance heuristic, not a critical-chain method or a confidence guarantee. A shared buffer follows every current terminal task.
  • R3 · Gate note: append a hypothetical note to a zero-duration gate with one successor. This changes no approval, governance authority or dates.
  • R4 · Remove a dependency assumption: allowed here only for disjoint resource profiles with no noOverlap flag. That check does not prove the link technically dispensable; explicitly acknowledge the hypothesis before applying it.

Changes validate the graph before acceptance. Structural validity does not establish real-world suitability.

CPM, resources, uncertainty and useful tips

A forward/backward pass finds earliest/latest dates and total float using precedence only. Zero float marks critical tasks, including ties. Resource leveling picks from tasks whose predecessors are already scheduled, then finds an available interval. Earliest-first and low-float-first are deterministic heuristics; neither is an optimality claim. Impossible demands produce an error, never a forced “feasible” placement.

For merged packages, resource demands vary across the preserved internal steps. The inspector's resource field shows peak demand for reference. The risk experiment separately samples each original step from an independent triangular distribution [0.7d, d, 1.3d]; it ignores resources and the editable variance field. That field is used only by R2. These are invented assumptions.

Drag a node to rearrange it; use zoom buttons or Ctrl/⌘ + mouse wheel to inspect the graph. Every task and edge is also available through labelled selectors. Use Undo/Redo for plan edits, or save and restore named scenarios. Export includes the plan, scenarios and log; nothing is automatically persisted in the browser.

Network

Brown borders mark precedence-critical tasks. Arrows run from predecessor to successor. Selected items have a thicker border.

Inspector

Choose a task or dependency.

Add or remove a link

Four explicit experiments

Earliest and resource schedules

Exact timings in arbitrary common time units. Earliest/latest and float are precedence-only.
TaskEarly start / finishLate start / finishTotal floatResource start / finishStatus

Scenarios and changes

Change log

    Named resource pools

    Whole-unit capacities, at most 20 pools. Renaming preserves all uses; removing a pool also removes its demand from tasks and internal steps.

    NameCapacityRemove

    Precedence-only duration experiment

    Each original step has an independent triangular duration from 0.7d to 1.3d, with mode d. Zero-duration steps stay at zero. Resource constraints and the R2 variance fields do not enter this simulation.