摘要 |
In a distributed system including a debug server and debug clients coupled for data communications through a network, where the debug server includes a debug administrator, message router, back-end debugger, and a debuggee, collaborative software debugging includes: presenting a client-specific GUI; detecting user input through the GUI, including user input specifying a location to establish an event; establishing a client-specific event alert to be invoked upon receipt of an event notification for the event; generating application-level messages, including a request to establish the event; sending application-level messages to the debug server, including the request; receiving client-specific debug results, including an event notification for the event; and displaying the client-specific debug results, including invoking the client-specific event alert responsive to the event notification, without invoking an alert by at least one of the other debug clients receiving the event notification. |
主权项 |
1. A method of collaborative software debugging in a distributed system, the distributed system comprising a debug server, a plurality of debug clients, and a data communications network, the debug server coupled for data communications to the plurality of debug clients through the data communications network, the debug server comprising a debug administrator, a message router, a back-end debugger, and a debuggee, the method comprising:
presenting, by each debug client to a user of the debug client, a client-specific graphical user interface (‘GUI’), the client-specific GUI comprising a client-specific display of a debug session of the debuggee; detecting, by each debug client, user input through the client-specific GUI, including detecting, by a requesting debug client, user input specifying a location in source code to establish an event notification for an event; establishing, by the requesting debug client, a client-specific event alert to be invoked upon receipt of the event notification; generating, by each debug client in dependence upon the detected user input, one or more application-level messages, including generating, by the requesting debug client, a request to establish the event notification; sending, by each debug client, the application-level messages to the debug server, including sending, by the requesting debug client, the request to establish the event notification; receiving, by each debug client responsive to the application-level messages, client-specific debug results, including receiving, by the requesting debug client and at least one other debug client, the event notification responsive to the back-end debugger encountering the event; and displaying, by each debug client in the client-specific GUI, the client-specific debug results, including invoking, by the requesting debug client, the client-specific event alert responsive to the event notification, without invoking an alert by at least one of the other debug clients receiving the event notification. |