Un sistema y método para reproducir una ruta predefinida a través de internet.

Un proceso iterativo para reproducir una ruta predefinida desde un servidor intermedio

(10) a través de un conjunto de páginas web en el orden que se realizaron originalmente las peticiones a las páginas web, en el que las peticiones para las páginas web se han grabado en un historial de peticiones creado mediante el servidor intermedio (10) antes del proceso de reproducción, durante el comienzo del proceso desde un URL de inicio de una página web de origen (35) repitiendo las siguientes etapas hasta que se haya reproducido completamente la ruta o haya ocurrido un error:

- seleccionar una petición grabada para una página web objetivo (36) desde el historial de peticiones;

- si la petición seleccionada es una petición de formulario, seleccionar (90) un formulario de mejor ajuste para el que debería realizarse más tarde una petición de reproducción para la página web objetivo (36) desde un conjunto de formularios en la página web de origen (35), para evitar errores debido a la expiración o al cambio en el contenido dinámico cuando se reproduce la página web objetivo (36);

- si la petición seleccionada no es una petición de formulario, seleccionar (110) un URL de mejor ajuste en la página web de origen (35) como un URL objetivo al que debería realizarse una petición de reproducción posterior; y

- enviar (140) la petición de reproducción para la página web objetivo (36) a un servidor web objetivo (30), la petición de reproducción realizada al formulario de mejor ajuste seleccionado o al URL de mejor ajuste.

Tipo: Patente Internacional (Tratado de Cooperación de Patentes). Resumen de patente/invención. Número de Solicitud: PCT/US2000/030805.

Solicitante: BMC SOFTWARE.

Nacionalidad solicitante: Estados Unidos de América.

Dirección: 2101 CITY WEST BOULEVARD HOUSTON, TX 77042 ESTADOS UNIDOS DE AMERICA.

Inventor/es: DAVIS,CLAY, BODWELL,WALTER R, KLOBE,MICHAEL C.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO DE DATOS DIGITALES ELECTRICOS (computadores... > Equipo o métodos de tratamiento de datos o de cálculo... > G06F17/30 (Recuperación de la información; Estructura de bases de datos a este efecto)
  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO DE DATOS DIGITALES ELECTRICOS (computadores... > G06F13/00 (Interconexión o transferencia de información u otras señales entre memorias, dispositivos de entrada/salida o unidades de tratamiento (circuitos de interfaz para dispositivos de entrada/salida específicos G06F 3/00; sistemas multiprocesadores G06F 15/16))
  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO DE DATOS DIGITALES ELECTRICOS (computadores... > G06F12/00 (Acceso, direccionamiento o asignación en sistemas o arquitecturas de memoria (registro de la información en general G11))
  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO DE DATOS DIGITALES ELECTRICOS (computadores... > Detección de errores; Corrección de errores; Monitorización... > G06F11/34 (Registro o evaluación estática de la actividad del computador, p. ej. de las interrupciones o de las operaciones de entrada-salida)

PDF original: ES-2536318_T3.pdf

 

google+ twitter facebookPin it
Un sistema y método para reproducir una ruta predefinida a través de internet.

Fragmento de la descripción:

Un sistema y método para reproducir una ruta predefinida a través de internet

Campo técnico de la invención La presente invención se refiere en general a sistemas y métodos de páginas web, y más particularmente, a un sistema y método de software para reproducir una ruta web predeterminada desde un servidor intermedio.

Antecedentes de la invención A medida que los sitios web se hacen más omnipresentes, las empresas están cada vez más interesadas en establecer objetivos de rendimiento y normas de calidad para sus sitios web. Una manera para conseguir estos objetivos es simular una experiencia del usuario con un sitio web de la compañía. Simulando una experiencia del usuario, el propietario de un sitio web puede determinar la integridad de enlaces y recursos en la página y valorar una experiencia del cliente frente a los objetivos operacionales definidos por la empresa. Adicionalmente, los departamentos de tecnología de la información de las compañías podrán rastrear y medir mejor recursos web críticos.

Una manera para simular una ruta del usuario a través de un sitio web es registrar todas las peticiones realizadas mediante un usuario en un servidor intermedio, registrar datos adicionales relacionados con cada petición y abrir una conexión para enviar de vuelta los datos exactos que se pasaron. Esta técnica puede usarse para sitios web que contienen únicamente páginas estáticas. Sin embargo, un número creciente de sitios web son dinámicos, y un método para reproducir una ruta del usuario a través de la web debe poder tener en cuenta contenido tal como las ID de sesión y formularios. Puesto que el contenido dinámico puede producir que una sesión de página web expire o cambie con el tiempo, simplemente reproducir una serie de peticiones en ocasiones dará como resultado que se devuelvan errores desde el sitio web objetivo.

Los métodos actuales para simular una ruta a través de sitios web no tratan adecuadamente sitios web dinámicos.

Microsoft Web Stress Analyzer Tool se desarrolló para realizar pruebas de estrés a un sitio web antes de poner a disposición el sitio en internet. La herramienta de Microsoft únicamente soporta técnicas de sitio web dinámicas basadas en cookies pero no soporta otras técnicas, ni soporta comunicación de HTTPS entre un explorador y un sitio web. Adicionalmente, la herramienta de Microsoft requiere que se descargue e instale software en un ordenador del usuario.

El documento "SiteScope Users Guide -URL Transaction Monitor", [En línea] 10 de febrero de 1999, BMC Software, Inc., Boulder, Colorado, Estados Unidos, XP002234976 se refiere a un método para probar automáticamente sitios web para obtener una evaluación de entorno. La idea detrás de esta referencia es completamente diferente del objeto de la presente invención. Del mismo modo, el documento US 6.138.157 se refiere a un método para probar un sitio web.

Sumario de la invención La presente invención proporciona un sistema y método de reproducción de ruta web que elimina o reduce 45 sustancialmente las desventajas y problemas asociados a sistemas de reproducción de ruta web anteriormente desarrollados. Más específicamente, la presente invención proporciona un sistema y método para reproducir una ruta predefinida a través de un conjunto de páginas web. El método para reproducir una ruta web predefinida incluye seleccionar una petición grabada asociada a un URL grabado desde un historial de peticiones. Si la petición grabada es una petición de formulario, la presente invención puede determinar un formulario de mejor ajuste desde la página 50 web de origen para la que puede realizarse una petición de reproducción. Como alternativa, si la petición no es una petición de formulario, la presente invención selecciona un URL de mejor ajuste en la página web de origen para el que puede realizarse una petición de reproducción. Después de que se selecciona un formulario de mejor ajuste o un URL de mejor ajuste como un URL objetivo, la presente invención realiza una petición de reproducción al URL objetivo.

La presente invención proporciona ventajas sustanciales sobre sistemas anteriormente desarrollados permitiendo una ruta a través de una página web dinámica a reproducir.

La presente invención proporciona otra ventaja técnica importante más estando completamente basada en web.

La presente invención proporciona otra ventaja técnica importante más ejecutándose en servidores convencionales industriales.

La presente invención proporciona otra ventaja técnica importante más soportando comunicaciones de HTTPS. 65

La presente invención proporciona otra ventaja técnica importante más puesto que no requiere que el usuario instale software adicional en un ordenador del usuario.

La presente invención proporciona una ventaja significativa pudiendo reproducir una ruta a través de un número sustancialmente mayor de páginas web que los métodos anteriormente desarrollados.

Breve descripción de los dibujos Para un entendimiento más completo de la presente invención y de las ventajas de la misma, se hace referencia ahora a la siguiente descripción tomada junto con los dibujos adjuntos en los que números de referencia similares indican características similares y en los que:

La Figura 1 es una representación esquemática de un sistema en el que la presente invención puede registrar y reproducir una ruta; y La Figura 2 es un diagrama de flujo que ilustra una realización de la presente invención para reproducir una ruta a través de un conjunto de páginas web.

Descripción detallada de la invención Se ilustran realizaciones preferidas de la presente invención en las figuras, usándose números similares para hacer referencia a partes similares y correspondientes de los diversos dibujos.

Para los fines de la presente invención, "contenido" se refiere al HTML y otros datos devueltos a un explorador del usuario mediante una página web en respuesta a comandos del usuario (por ejemplo, cuando el usuario selecciona un enlace) . Contenido "estático" es aquel contenido devuelto a un explorador del usuario que no cambia con el tiempo. Una página web "dinámica" representa una página que puede contener diferente contenido no preformateado que cambia con el tiempo en respuesta a los mismos comandos del usuario. Una "ruta" es una sucesión de peticiones de web en un orden particular.

La presente invención proporciona un sistema para reproducir una ruta del usuario a través de la web desde un servidor intermedio. La Figura 1 es una representación esquemática de un sistema en el que puede implementarse la presente invención para registrar y reproducir una ruta del usuario a través de la web. Un usuario puede acceder al programa de software 5 en el servidor intermedio 10 mediante el explorador web 20. En una realización, el usuario, después de acceder al programa de software 5 en el servidor intermedio 10, puede usar el explorador web 20 para proporcionar un nombre de ruta (por ejemplo, "ruta 1") y un URL de inicio para el programa de software 5. El nombre de ruta y el URL de inicio pueden grabarse en la base de datos 15. El nombre de ruta se usa para categorizar una ruta particular definida por el usuario, mientras que el URL de inicio es el punto de inicio de la ruta del usuario. Una vez que el usuario indica que está disponible para empezar a definir una ruta haciendo clic en un botón de "inicio", por ejemplo, el programa de software 5 puede a continuación producir que se abra una ventana de visualización en el explorador web 20. La ventana de visualización es una nueva ventana en el explorador web 20 en la que se visualizará el contenido recibido en respuesta a unos comandos del usuario. El explorador web 20 envía... [Seguir leyendo]

 


Reivindicaciones:

1. Un proceso iterativo para reproducir una ruta predefinida desde un servidor intermedio (10) a través de un conjunto de páginas web en el orden que se realizaron originalmente las peticiones a las páginas web, en el que las peticiones para las páginas web se han grabado en un historial de peticiones creado mediante el servidor intermedio (10) antes del proceso de reproducción, durante el comienzo del proceso desde un URL de inicio de una página web de origen (35) repitiendo las siguientes etapas hasta que se haya reproducido completamente la ruta o haya ocurrido un error:

- seleccionar una petición grabada para una página web objetivo (36) desde el historial de peticiones; -si la petición seleccionada es una petición de formulario, seleccionar (90) un formulario de mejor ajuste para el que debería realizarse más tarde una petición de reproducción para la página web objetivo (36) desde un conjunto de formularios en la página web de origen (35) , para evitar errores debido a la expiración o al cambio en el contenido dinámico cuando se reproduce la página web objetivo (36) ; -si la petición seleccionada no es una petición de formulario, seleccionar (110) un URL de mejor ajuste en la página web de origen (35) como un URL objetivo al que debería realizarse una petición de reproducción posterior; y -enviar (140) la petición de reproducción para la página web objetivo (36) a un servidor web objetivo (30) , la petición de reproducción realizada al formulario de mejor ajuste seleccionado o al URL de mejor ajuste.

2. El proceso de la reivindicación 1, en el que la petición de reproducción enviada al servidor web objetivo (30) incluye un conjunto de parámetros de formulario de reproducción.

3. El proceso de la reivindicación 2, en el que el conjunto de parámetros de formulario de reproducción comprende: un conjunto de parámetros de formulario grabados; y un conjunto de parámetros de formulario unidos, en donde el conjunto de parámetros de formulario unidos incluye parámetros de formulario desde la configuración actual de la página web de origen (35) .

4. El proceso de la reivindicación 3, que comprende adicionalmente determinar si la petición seleccionada es un POST o un GET.

5. El proceso de la reivindicación 4, en el que seleccionar (90) un formulario de mejor ajuste comprende: rechazar un formulario potencial desde un conjunto de formularios potenciales en la página web de origen (35) si un URL del formulario potencial no comienza con el URL para el que se realiza la petición seleccionada; si la petición de formulario es un POST, rechazar un formulario restante desde un conjunto de formularios restantes, comprendiendo el conjunto de formularios potenciales en la página web de origen (35) menos de los formularios ya rechazados, si el formulario restante no requiere que cada parámetro se incluyera en los parámetros de formulario de reproducción si la petición de reproducción se realizó para el formulario restante; si el conjunto de formularios restantes aún contiene más de un formulario restante, rechazar todos los formularios restantes desde el conjunto de formularios restantes que no requieren todos los parámetros de formulario ocultos en un conjunto de parámetros de formulario grabados en el historial de peticiones; y si existe aún más de un formulario restante en el conjunto de formularios restantes, seleccionar un formulario de mejor ajuste desde el conjunto de formularios restantes de una manera predeterminada, de lo contrario seleccionar el formulario restante en el conjunto de formularios restantes como el formulario de mejor ajuste.

6. El proceso de la reivindicación 4, en el que seleccionar (90) el formulario de mejor ajuste comprende: rechazar un formulario potencial desde un conjunto de formularios potenciales en la página web de origen (35) si el URL del formulario potencial no comienza con el URL para el que se realizó la petición; si la petición de formulario es un GET, rechazar un formulario restante desde un conjunto de formularios restantes, comprendiendo el conjunto de formularios potenciales en la página web de origen (35) menos de los formularios ya rechazados, si el formulario restante no requiere todos los parámetros de formulario ocultos incluidos en los parámetros de formulario grabados; si el conjunto de formularios restantes contiene aún más de un formulario restante, rechazar un segundo formulario restante desde el conjunto de formularios restantes que no requieren todos los parámetros de formulario que se incluirían en los parámetros de formulario de reproducción si se realizó una petición de reproducción al segundo formulario restante; y si existe aún más de un formulario restante en el conjunto de formularios restantes, seleccionar un formulario de mejor ajuste desde el conjunto de formularios restantes de una manera predeterminada, de lo contrario seleccionar el formulario restante en el conjunto de formularios restantes como el formulario de mejor ajuste.

7. El proceso de la reivindicación 1, seleccionar (110) el URL de mejor ajuste comprende adicionalmente: si el URL de un enlace en la página web de origen (35) coincide exactamente con el URL al que se refiere la petición seleccionada, seleccionar el enlace como el URL de mejor ajuste; si el URL del enlace en la página web de origen

(35) no coincide exactamente con el URL para el que se realiza la petición seleccionada, seleccionar un URL no coincidente localizado en una dirección asociada a la petición seleccionada como el URL de mejor ajuste.

8. El proceso de la reivindicación 7, que comprende adicionalmente, si el URL no coincidente coincide parcialmente 8 5

con el URL para la que se realiza la petición seleccionada, seleccionar el URL no coincidente como el URL de mejor ajuste.

9. El proceso de la reivindicación 8, que comprende adicionalmente anexar una cadena contenida en la petición seleccionada al URL no coincidente para formar el URL para la petición de reproducción.

10. El proceso de la reivindicación 1, en el que la petición de reproducción incluye un conjunto de encabezamientos de modo que una página web objetivo (36) devuelve los mismos contenidos como si la petición de reproducción se realizara desde un tipo particular de explorador (20) .

11. El proceso de la reivindicación 1, en el que la petición de reproducción incluye un conjunto de cookies, y el conjunto de cookies contiene una cookie modificada que corresponde a una cookie grabada en el historial de reproducción y que corresponde a la petición seleccionada, en donde la cookie modificada se ha modificado de manera que una página web objetivo (36) devuelve contenido como la petición de reproducción la hubiera realizado un nuevo usuario.

12. El proceso de una de las reivindicaciones 1 a 11, que comprende un proceso de definición de ruta ejecutado antes del proceso de reproducción, el proceso de definición de ruta adaptado para crear una ruta a través del conjunto de páginas web y que comprende la etapa de recibir una petición de usuario para una página web de origen (35) y ejecutar las siguientes etapas hasta que el usuario detenga el proceso de definición de ruta:

- grabar la petición de usuario en el historial de peticiones en el servidor intermedio (10) ; -transmitir la petición de usuario al servidor web objetivo (30) ; -recibir el contenido de la página web de origen (35) desde el servidor web objetivo (30) ; -mediar el contenido de la página web de origen (35) para hacer referencia al servidor intermedio (10) ; -transmitir el contenido de la página web de origen (35) al usuario; -recibir una petición de usuario adicional para una página web objetivo (36) , en donde la petición de usuario adicional está basada en el contenido mediado de la página web de origen (35) ; -realizar la petición adicional para la página web objetivo (36) la petición para la página web de origen (35) .

13. Un sistema para reproducir una ruta predefinida a través de un conjunto de páginas web desde un servidor intermedio (10) en el orden que se realizaron originalmente las peticiones a las páginas web, en el que las peticiones para las páginas web se han grabado en un historial de peticiones creado mediante el servidor intermedio (10) antes de reproducir la ruta, comprendiendo el sistema: un medio legible por ordenador; y un conjunto de instrucciones de software almacenadas en el medio legible por ordenador que pueden operar para hacer que un ordenador comenzando desde un URL de inicio de una página web de origen (35) repita las siguientes etapas hasta que se haya reproducido completamente la ruta o haya ocurrido un error:

- seleccionar una petición grabada para una página web objetivo (36) desde el historial de peticiones; -si la petición seleccionada es una petición de formulario, seleccionar (90) un formulario de mejor ajuste al que debería realizarse más tarde una petición de reproducción para la página web objetivo (36) desde un conjunto de formularios en la página web de origen (35) , para evitar errores debido a la expiración o al cambio en contenido dinámico cuando se reproduce la página web objetivo (36) ; -si la petición seleccionada no es una petición de formulario, seleccionar (110) un URL de mejor ajuste en la página web de origen (35) como un URL objetivo al que debería realizarse una petición de reproducción posterior; y -enviar (140) la petición de reproducción para la página web objetivo (36) a un servidor web objetivo (30) , la petición de reproducción realizada al formulario de mejor ajuste seleccionado o al URL de mejor ajuste.

14. El sistema de la reivindicación 13, en el que la petición de reproducción enviada al servidor web objetivo (30) incluye un conjunto de parámetros de formulario de reproducción.

15. El sistema de la reivindicación 14, en el que el conjunto de parámetros de formulario de reproducción incluye: un conjunto de parámetros de formulario grabados; y un conjunto de parámetros de formulario unidos, en el que el conjunto de parámetros de formulario unidos incluye parámetros de formulario desde la configuración actual de la web de origen (35) .

16. El sistema de la reivindicación 15, en el que el programa de software puede operar adicionalmente para determinar si la petición seleccionada es un POST o un GET.

17. El sistema de la reivindicación 16, en el que las instrucciones de software pueden operar adicionalmente para seleccionar (90) un formulario de mejor ajuste:

rechazando un formulario potencial desde un conjunto de formularios potenciales en la página web de origen (35) si el URL del formulario potencial no comienza con el URL al que se realizó la petición seleccionada; si la petición de formulario es un POST, rechazar un formulario restante desde un conjunto de formularios restantes, que 9 5

comprende el conjunto de formularios potenciales en la página web de origen (35) menos los formularios ya rechazados, si el formulario restante no contiene cada parámetro que se incluiría en los parámetros de formulario de reproducción si la petición de reproducción se realizara para el formulario restante; si el conjunto de formularios restantes contiene más de un formulario restante, rechazar todos los formularios restantes desde el conjunto de formularios restantes que no requieren todos los parámetros de formulario ocultos en un conjunto de parámetros de formulario grabados en el historial de peticiones; y si hay aún más de un formulario restante en el conjunto de formularios restantes, seleccionar un formulario de mejor ajuste desde el conjunto de formularios restantes de una manera predeterminada, de lo contrario seleccionar el formulario restante en el conjunto de formularios restantes como el formulario de mejor ajuste.

18. El sistema de la reivindicación 16, en el que las instrucciones de software pueden operar adicionalmente para seleccionar (90) un formulario de mejor ajuste:

rechazando un formulario potencial desde un conjunto de formularios potenciales en la página web de origen (35) si el URL del formulario potencial no comienza con el URL para el que se realiza la petición seleccionada; si la petición de formulario es un GET, rechazar un formulario restante desde un conjunto de formularios restantes, que comprende el conjunto de formularios potenciales en la página web de origen (35) menos los formularios ya rechazados, si el formulario restante no requiere todos los parámetros de formulario ocultos incluidos en los parámetros de formulario grabados; si el conjunto de formularios restantes aún contiene más de un formulario restante, rechazar un segundo formulario restante desde el conjunto de formularios restantes que no requiere todos los parámetros de formulario que se incluirían en los parámetros de formulario de reproducción si se realizara una petición de reproducción para el segundo formulario restante; y si existe aún más de un formulario restante en el conjunto de formularios restantes, seleccionar un formulario de mejor ajuste desde el conjunto de formularios restantes de una manera predeterminada, de lo contrario seleccionar el formulario restante en el conjunto de formularios restantes como el formulario de mejor ajuste.

19. El sistema de la reivindicación 13, en el que las instrucciones de software pueden operar adicionalmente para seleccionar (110) el URL de mejor ajuste mediante:

si el URL de un enlace en la página web de origen (35) coincide exactamente con el URL al que se refiere la petición seleccionada, seleccionar el enlace como el URL de mejor ajuste; si el URL del enlace en la página web de origen (35) no coincide exactamente con el URL para el que se realiza la petición seleccionada, seleccionar un URL no coincidente localizado en una dirección asociada a la petición seleccionada como el URL de mejor ajuste.

20. El sistema de la reivindicación 19, en el que las instrucciones de software pueden operar adicionalmente para seleccionar (110) un URL de mejor ajuste:

seleccionando el URL no coincidente como el URL de mejor ajuste si el URL no coincidente coincide parcialmente con el URL para el que se realizó la petición seleccionada.

21. El sistema de la reivindicación 20, en el que las instrucciones de software pueden operar adicionalmente para hacer que un ordenador anexe una cadena contenida en la petición de URL seleccionada para el URL no coincidente para formar el URL en la petición de reproducción.

22. El sistema de la reivindicación 13, en el que la petición de reproducción incluye un conjunto de encabezamientos de modo que una página web objetivo (36) devuelve los mismos contenidos que si se realizara la petición de reproducción desde un tipo particular de explorador (20) .

23. El sistema de la reivindicación 13, en el que la petición de reproducción incluye un conjunto de cookies, y el conjunto de cookies contiene una cookie modificada que corresponde a una cookie grabada en el historial de reproducción y que corresponde a la petición seleccionada, en donde la cookie modificada se ha modificado de manera que una página web objetivo (36) devuelve el contenido como si la petición de reproducción la realizara un nuevo usuario.