what is the purpose why you define an event in the component controller ?
Thomas Jung replied
Another feature is that of component usage. Components can be designed to be reused within other components. The best example of this is the implemenation of the ALV in Web Dynpro. It is a reusable component. You might want to let the parent component know about some event from within the inner reusable component. For that reason events in the component controller can be marked as interface events and can be exposed to external components. Once again this type of event is used heavily in the ALV component.