Фигасе мудрость веков...
Имхо нет смысла вводить зависимость этих компонент, и взаимодействия между ними либо вынести в контроллер, либо создать класс управления, типа П(илоируемый)ЛА/БПЛА, и там уже ввести взаимодействие компонент, ибо возраст/личный счет пилота как бы может быть задействован в другой логике и быть связанным с двигателем не должен.
или же, пилот тут не нужен, и в целом будет правильным:
хз как у вас там логика строится, может и двигатель не нужен как отдельный класс, все на уровне методов и свойств самолета можно реализовать:
$airplane->startEngine();