you how to develop software based on parts that interact primarily through an event