Methods and systems are provided for monitoring a loosely coupled system, such as a web-based system and a business-to-business (B2B) system. In the case of a web-based system, exchanges between a web client and a web server may be monitored to determine quality and performance of the web-based system. The exchanges may include objects and attributes communicated from the web server to the web client. The exchanges may also include information about actions performed on objects as a user navigates through web pages displayed by the web client. For example, when the user selects a hyperlink, the monitoring system may recognize the hyperlink as an action. Accordingly, the actions along with the objects and their associated attributes may be recorded. The objects and their associated attributes may then be retrieved from the web server and the recorded actions may be played back against the retrieved objects based on the recorded attributes and the retrieved attributes. The results of the play back may be compared with the expected results to monitor the quality and performance of the web server. Additional actions may also be generated based on user defined rules and played against the retrieved objects to monitor alternate aspects of the web server.
Drawings
Claims36
A method for monitoring a system that includes a first process running on a first computer and a second process running on a second computer, said method comprising the steps of:
monitoring communications between the first process and the second process;
detecting objects and attributes associated with the objects based on information communicated from the second process to the first process;
detecting actions performed on the objects based on information communicated from the first process to the second process;
recording the objects, the attributes, and the actions,
retrieving the objects and the attributes from the second process;
playing back the recorded actions against the retrieved objects based on the recorded attributes and the retrieved attributes to identify one or more changes in the second process.
3 more elements
An apparatus, comprising:
a monitor that monitors communications between a first process running on a first computer and a second process running on a second computer, detects objects and attributes associated with the objects based on information communicated from the second process to the first process, and detects actions performed on the objects based on information communicated from the first process to the second process;
a recorder that records the detected objects, attributes, and actions,
a player that retrieves the objects and the associated attributes from the server and plays back the recorded actions against the retrieved objects based on the recorded attributes and the retrieved attributes to identify one or more changes in the second process.
A method for monitoring a system that includes objects and information about the objects, said method comprising the steps of:
recording one or more actions performed on one or more of the objects;
recording the objects and the information about the objects;
retrieving, from the system, the objects and the information about the objects;
performing the recorded one or more actions on the retrieved objects corresponding to the one or more objects on which the recorded one or more actions are performed, if the retrieved information about the retrieved objects corresponding to the one or more objects on which the recorded one or more actions are performed match the recorded information about the one or more objects on which the recorded one or more actions are performed;
and
monitoring the system based on one or more results of the step of performing the recorded one or more actions on the retrieved objects.
#The present invention relates generally to the field of computer software, and more particularly, methods and systems for testing and monitoring quality and performance of systems. The systems may include loosely coupled systems, such as web-based systems and business-to-business (B2B) systems.
#The advent of the Internet has led to the proliferation of loosely coupled systems.
#These systems use the connectivity provided by the Internet to collaborate to achieve a common business goal. Many businesses rely on such systems to make their products available to existing as well as potential customers over the Internet. For example, web-based systems offer businesses the ability to reach a large audience and offer new services with reduced time-to-market, while B2B systems allow several businesses to collaborate to achieve common business objectives. To stay competitive, businesses strive to develop and offer new services faster than their competitors. As the time-to-market for these businesses shorten, the data as well as the software that implements these systems may change frequently. Unfortunately, such frequent changes may introduce new defects or software bugs. These defects or software bugs may cause certain services to be inaccessible or fail, resulting in loss of sales and revenue for businesses.
#FIG. 1 is a block diagram of a system, in accordance with an embodiment of the invention;
#FIG. 2 is a block diagram of a client monitor, in accordance with an embodiment of the invention;
Detailed description5,739 words
#Reference will now be made in detail to the preferred embodiment of the invention, examples of which are illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts.
#In accordance with an embodiment of the present invention, a monitoring system is provided for monitoring a loosely coupled system, such as a web-based system and/or a business-to-business (B2B) system. The loosely coupled system may include, for example, a first process running on a first computer and a second process running on a second computer. The first and second processes may communicate with each other by exchanging hierarchically structured data (HSD) using a predefined protocol. An example of a web-based system may include a web server and a web browser exchanging HyperText Markup Language (HTML) messages using a HyperText Transfer Protocol (HTTP). An example of a B2B-based system may include two business processes exchanging Extensible Markup Language (XML) messages via a direct Transmission Control Protocol/Internet Protocol (TCP/IP) socket. An example of a wireless-based system may include a wireless application server and a wireless client exchanging Wireless Markup Language (WML) messages using a Wireless Application Protocol (WAP).
#The monitoring system may include a client monitor and a server monitor, which may communicate with each other over a network to monitor the loosely coupled system. In the case of a web-based system, the monitoring system may monitor exchanges between a web client and a web server to determine quality and performance of the web-based system. The exchanges may include objects and other associated information about the objects, such as attributes of the objects along with information about actions performed on the objects. An object may include any item that may be selected and/or manipulated, such as text, shapes, pictures, books, documents, software, etc. In a web-based system, an object may include, for example, a link displayed on a web page, a search field in a form, a radio list in a form, a check box in a form, a form, text on a web page, or an entire web page.