29 lines
803 B
Markdown
29 lines
803 B
Markdown
Waterfall
|
|
=========
|
|
|
|
Waterfall is a declarative task execution framework.
|
|
Why Another Execution Framework
|
|
===============================
|
|
|
|
There are many, many execution frameworks out there that support defining
|
|
tasks with inter-task dependencies. Most of them only partially include
|
|
scheduling in their design.
|
|
|
|
Overview
|
|
--------
|
|
|
|
Resources
|
|
=========
|
|
|
|
Resources are at the heart of Waterfall. They are simple things: labels
|
|
with an associated set of time intervals. Tasks produce resources for
|
|
given intervals.
|
|
|
|
Tasks
|
|
=====
|
|
|
|
Tasks are commands that run on a set schedule. Each task produces one or
|
|
more `Resource`. The run schedule naturally breaks up the timeline into
|
|
intervals. When a task runs at time $T_n$, it will make make each resource
|
|
it provides available over the interval $(T_{n-1},T]$.
|