Résumé: Los avances recientes en el hardware dinámica y parcialmente reconfigurable han
desembocado en lo que se conoce como la multitarea hardware, que permite que unos dispositivos
conocidos como FPGA’s ejecuten diversas tareas hardware simultáneamente. Por otra parte,
también recientemente, se ha establecido lo que se conoce como Grid Computing; resumidamente,
sistemas
de computación distribuidos con una alta interoperabilidad entre sus actores.
Nuestro sistema pretende reunir ambas ideas, construyendo un gestor distribuido de
FPGA’s que ofrece la capacidad computacional de estos dispositivos a unos usuarios remotos. El
sistema es capaz, por lo tanto, de recibir peticiones de tareas hardware, de identificar los recursos
capaces de ejecutar cada tarea y de asignarlos a los recursos de forma que se optimice el
rendimiento global, y por último devolver el resultado fruto de los cálculos al usuario demandante
de la tarea.
[ABSTRACT]
The recently technology advances in hardware partially and dynamically reconfigurable,
have enabled multijob hardware, that is, simultaneous execution of many jobs in hardware devices
as FPGAs (Filed-Programmable Gate Array). In addition, nowadays, Grid computing, as
distributed computational systems which enables expansive and underutilized resource-sharing, is
becoming more and more important.
Our aim is to combine both ideas, implementing a distributed management FPGA’s system
that offers the computational capabilities of these devices to remote users. The system is capable
for receiving hardware job requests, identify the resources available for executing each job and
assign them to the more efficient resource to optimize global performance. At last, return the result
of the execution to the job owner.
Mots-clés: gestor distribuido de FPGA’s, FPGA’s, Grid Computing, Sistemas de computación distribuidos, distributed Computational systems
Résumé: JPet lleva desarrollándose varios años a fin de convertirlo en una herramienta competitiva en el campo del software testing. Se encarga de obtener casos de prueba (test-cases) de código java que garanticen el recubrimiento óptimo del mismo. En su comienzo la forma en que jPet mostraba la información a los usuarios no era fácil de entender, lo que hacía que no
fuera útil durante el desarrollo de software. En la actualidad, se ha solucionado este problema guardando la información necesaria de los casos de prueba en ficheros
.xml, mostrando al desarrollador de una manera más gráfica y
sencilla el trabajo realizado. La herramienta incorpora un visor en el que se puede comprobar el valor de los datos antes y después de la ejecución del código, así como la posibilidad de ver la traza de un caso de prueba en concreto.
En este proyecto vamos a ampliar jPet añadiéndole la
funcionalidad de generar tests en código java a partir de los casos de prueba almacenados en los ficheros .xml. De esta manera, el desarrollador puede verificar el funcionamiento del código que pretende testear. Los tests contienen todo lo necesario para su ejecución en java, pero están escritos a modo de plantilla por lo que, aunque ayudan al desarrollador ahorrándole tiempo, es necesaria sucolaboración para que recobren sentido y pasen a ser tests válidos.
[ABSTRACT]
Jpet has become a competitive tool for software testing over
the years. It obtains java code test-cases that ensures an optimal coverage. From its beginnings, showing data and explaining it wasn’t an easy task, so Jpet was not useful for software developing. Nowadays, this problem has been solved by saving test-cases relevant data to .xml files, guiding software developers through a more graphic and comprehensive way of the work carried out by Jpet. It has a budget that may be interesting for developers, a graphic interface in which you can check data values before and after running the piece of software tested and see a concrete test-case tracing painted in a glowing green.
So now we are going to expand and continue this ongoing
project by adding functionality to generate java code unit tests (junits) using the test-cases above-mentioned. Those tests can run on Java but they are just templates. Although it will certainly help developers saving their time, they need to be accordingly modified to apply.
Mots-clés: JPet, Software Testing, Java, Desarrollo de software