1. A method for managing a software development process, the method comprises: receiving information representative of instances of simple software development process events; detecting, by a complex event processing (CEP) engine and in response to the received information, at least one complex situation; and invoking at least one software management process reaction responsive to a detection of the at least one complex situation.