What components should be included in a full functional agent?

what component should be included in a full functional agent?
and how communication all the components?
I do not think only driver, monitor, interface, sequence, sequencer.

In reply to garkou:

Please read the UVM Cookbook. It will answer many of your questions.

In reply to garkou:

The UVM Manual says there is the sequencer/driver pair, the monitor and an configuration object. Because there are no compliance rules I’m adding also a coverage collector which measures the kind of data generated by the sequencer.

In reply to cgales:
okay,thanks

In reply to chr_sue:

yes, I think it can add some checker component.