Question 1 Explain the differences between EFG, EIG and ESIG. Give simple examples for each. Ans: EFG: The graph of all event in the GUI EIG: The graph of termination and system-interaction events in the GUI where +) system-interaction events: events that do not manipulate the structure of the GUI +) termination events: events that close a window ESIG: The graph of events in which there's a directed edge from node nx to ny iff there is an ESI relationship from nx to ny where +) Event ex has an ESI relationship with event ey, if, when executed together in a sequence < ex; ey >, they produce a GUI state that is different from the two states. Question 2 In the results, some crashes occur because different event handlers make different assumptions. Why might this occur? Ans: Because the different event sequences lead to the current event may set different contexts for it. For example, in MS Word, you can only save a document after typing something on it. This means the event "save document" depends on the event "typing" and it can only be crash if you type something strange. Question 3 What is Event Semantic Interaction, and how can it be used to improve GUI testing? Ans: ESI: see question 3 How can it be used to improve GUI testing: We can use this relationship for test case reduction. That is we just test the event-pairs (edge) having a strong relationship.