Add the basic functionality of splitting a requirement and improve its request observer and controller