Tendencias 21
Coddii




Un nuevo sistema permitirá programar mediante capturas de pantalla

El proyecto facilitará la combinación de programas informáticos sólo a través de sus interfaces gráficas de usuario


Una nueva investigación del Instituto Tecnológico de Massachusetts (MIT) abre camino a la programación informática a partir de la interpretación gráfica de la pantalla del ordenador, lo que, en última instancia, podría permitir a un usuario estándar crear aplicaciones sin el dominio de ningún lenguaje informático. Por Elena Higueras.




Gráfico de Christine Daniloff. Fuente MIT
Gráfico de Christine Daniloff. Fuente MIT
Investigadores del Laboratorio de Informática e Inteligencia Artificial del Instituto Tecnológico de Massachusetts, MIT, han desarrollado un sistema que posibilita la creación de programas informáticos usando las capturas de pantalla de las interfaces gráficas de usuario, sin necesidad de conocer exhaustivamente ningún código de programación, según publica el MIT en un comunicado.

Este nuevo sistema, al que han bautizado como Sikuli ("ojo de Dios" en la lengua de los indios huicholes de México), se basa en el uso de la llamada interfaz gráfica de usuario, conocida también como GUI (graphical user interface), un tipo de interfaz formada por un conjunto de imágenes y objetos gráficos que representan la información y las acciones de las que el usuario se puede valer para interactuar con su computadora.

Su objetivo es facilitar la creación de “scripts”, programas cortos que combinan o amplían la funcionalidad de otros programas, sin que sea necesario conocer el código propio de cada uno de ellos. Gracias a Sikuli, el usuario que desee utilizar las funcionalidades de cada uno de los “scripts” con los que trabaja, sólo tendrá que capturar la imagen de la pantalla de su ordenador e insertarla directamente en una línea de código basado en Python. Éste es el único lenguaje de programación con el que el usuario debe estar mínimamente familiarizado.

Imagen en lugar de código

El desconocimiento de diversos lenguajes de programación no solo no dificulta el trabajo del usuario sino que además es una particularidad compartida con el propio sistema del MIT, que tampoco necesita saber nada sobre el código subyacente de una interfaz de usuario. En su lugar, utiliza algoritmos de visión por ordenador para analizar lo que está sucediendo en la pantalla.

Uno de los “padres” del invento, Rob Miller, compara su funcionamiento con nuestro modo de ver cuando afirma que “Sikuli es un software que ve en la pantalla de la misma forma en que lo hacen los seres humanos”, es decir, no necesita traducir entre distintos formatos de archivo o de lenguajes de programación porque, “como un hombre, sólo tiene que mirar a los píxeles en la pantalla”.

Para entender mejor cómo funciona este sistema, la web del MIT pone como ejemplo el siguiente caso práctico. Imaginemos que un usuario de Python quiere crear un programa que genere un mensaje automático en su móvil cada vez que el autobús que le lleva al trabajo pase por un punto determinado. Si la web de transporte dispone de un mapa de Google en el que se muestre cómo avanza el autobús, el usuario puede programar que el mensaje de aviso le llegue cuando el vehículo se encuentre en un área del mapa precisa. En lugar de especificar las coordenadas geográficas de la zona en cuestión, bastará con que introduzca capturas de pantalla en una secuencia de comandos de Python.

Futuras aplicaciones

El sistema, desarrollado en colaboración con la Universidad de Maryland, tiene un enorme potencial de uso en el que siguen trabajando sus creadores. Tanto es así que la próxima primavera presentarán una nueva aplicación de Sikuli en la conferencia CHI 2009, sobre interacciones hombre-máquina.

Se trata de una herramienta orientada a solucionar los problemas de funcionamiento que se repiten con frecuencia en los procesos de creación de los grandes proyectos de desarrollo de software. En estos trabajos, el nuevo código se acumula cada día y cualquier fallo en las líneas generadas podría causar errores en la interfaz gráfica de usuario. Para evitarlos, lo ideal sería que se pudiese comprobar toda la aplicación haciendo clic en los botones virtuales para asegurarse de que las ventanas e iconos aún emergen correctamente. Sin embargo, esto suele llevar tanto tiempo que al final se opta por realizar pruebas de calidad al término del proceso de creación del software.

Con la nueva aplicación de Sikuli, los programadores podrán generar secuencias de comandos que automáticamente comprueben todos los componentes de una interfaz gráfica de usuario a través de una especificación visual. Esto facilitaría notablemente la tarea de escritura de estos comandos, que una vez creados, se podrán ejecutar cada noche, sin ninguna otra modificación.


Elena Higueras
Miércoles, 20 de Enero 2010
Artículo leído 6994 veces



Nota

Comente este artículo

1.Publicado por aa el 20/01/2010 20:40
Este grabador de macros de windows tambien puede ser util para automatizar tareas. Tiene una funcionalidad, creo, unica entre los programas de este tipo que puede servir para programar acciones de programas en principio no programables. El reconocimiento de imagenes.

Puedes decirle, vete a este area de la pantalla en la que aparece esta imagen y ejecuta sobre ella una cierta combinacion de pulsaciones de teclas y/o de raton.

http://www.winautomation.com/features.html

2.Publicado por mvr1981 el 20/01/2010 23:32
Me gusta Python... no se casi nada pero seguro que si aprendo un poco mas.. esto me va a gustar...

Nuevo comentario:
Twitter

Los comentarios tienen la finalidad de difundir las opiniones que le merecen a nuestros lectores los contenidos que publicamos. Sin embargo, no está permitido verter comentarios contrarios a las leyes españolas o internacionales, así como tampoco insultos y descalificaciones de otras opiniones. Tendencias21 se reserva el derecho a eliminar los comentarios que considere no se ajustan al tema de cada artículo o que no respeten las normas de uso. Los comentarios a los artículos publicados son responsabilidad exclusiva de sus autores. Tendencias21 no asume ninguna responsabilidad sobre ellos. Los comentarios no se publican inmediatamente, sino que son editados por nuestra Redacción. Tendencias21 podrá hacer uso de los comentarios vertidos por sus lectores para ampliar debates en otros foros de discusión y otras publicaciones.

Otros artículos de esta misma sección
< >

Lunes, 7 de Noviembre 2016 - 15:00 Bolotweet, la red social del aula