An exception for terminatinating execution or to throw for unit testing.
A objective collection is a objective that is achieved once all subobjectives are achieved.
getPreconditions(Environment $environment)
@inheritdocs
achieve(Environment $environment)
@inheritdocs
__construct(string $label, bool $is_notable, Objective ... $objectives)
An environment holds resources to be used in the setup process.
An objective is a desired state of the system that is supposed to be created by the setup.