MarkBernstein.org
 
Follow me on Twitter

Timelines and Constraints

Tinderbox timelines can help you reason about (and remember) constraints.

For example, suppose you’re planning to make some widgets. You’re going to make some red, green, and blue widgets. When you start a different color of widget, you need to clean up and switch paint sources, and this takes and extra fifteen minutes.

This timeline appears in browsers that support the canvas element.

Here’s your schedule. Tinderbox can automatically remember to allow the appropriate downtime between jobs. We add a simple rule to the prototype widget:

$EndDate=$StartDate+"1 hour";

if($Name==$Name(previousSibling))

{$StartDate=$EndDate(previousSibling)+"5 minutes"}

else

{$StartDate=$EndDate(previousSibling)+"30 minutes";}

Now, if your manager wants you to do the blue widget right this minute, Tinderbox will automatically calculate when everything else will be started and finished.

Obviously, reality is much more complicated than this. And if your business rules get too complicated, you want a full-scale scheduling package! But it’s nice to know you can automate this kind of business rule while retaining the flexibility and malleability of Tinderbox.

Notice, too, that we can fit a small timeline into a small space. Timelines don’t need to be elaborate or complex to be useful, and since the next release Tinderbox will export them with a single click, you can include them whenever you like.