Firefly
In Firefly, temporal composition is expressed in terms of relations between instants (beginning and ending of objects and user interactions).
This is the first work in the constraint-based area that has considered the unpredictable nature of some multimedia objects (like user interactions) (issue 5).
Working:
In order to provide a static formatting process handling this kind of objects, the Firefly scheduler partitions the temporal scenario at compile-time by grouping connected components (i. e. instants related by a temporal relation or a predictable duration).
Figure 10 shows the Firefly description of the Mascot scenario: there are two sets of connected components and two unpredictable objects (Button and Message) which appear with a dotted line.
The simplex algorithm is used to independently find the optimal solution of each partition. An event-driven scheduler dynamically handles the integration of the partitions.

Disadvantages:
Unfortunately, the time performances of this batch process is not good-enough in a interactive and incremental context (issue 12). This is the most important drawback of the Firefly approach.
Another weak point of Firefly is that it does not provide the user with any abstraction capabilities (issue 13).