28.01.2015 Views

opensheet - Grupo ARCO - Universidad de Castilla-La Mancha

opensheet - Grupo ARCO - Universidad de Castilla-La Mancha

opensheet - Grupo ARCO - Universidad de Castilla-La Mancha

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

94 5. RESULTADOS<br />

A<strong>de</strong>más <strong>de</strong> los elementos <strong>de</strong> diseño nuevos, se han añadido nuevos métodos a las clases<br />

existentes:<br />

ScriptExecuter(OpenSheetManager openSheetManager, Properties properties): es un<br />

nuevo método constructor <strong>de</strong> ScriptExecuter que permite crear directamente un objeto<br />

sin necesidad <strong>de</strong> leer las variables <strong>de</strong> un ficheros .properties, facilitando su uso <strong>de</strong>s<strong>de</strong><br />

el servicio web. Para evitar la repetición <strong>de</strong> código en el nuevo constructor a partir <strong>de</strong><br />

la refactorización, ha surgido un nuevo método privado InitScriptExecuter al que llama<br />

cada constructor.<br />

setCellValue(CellPosition position, String value): es el método <strong>de</strong> ISpreadSheet que<br />

permite insertar una ca<strong>de</strong>na en una celda i<strong>de</strong>ntificada por su posición X e Y.<br />

setRangeValue(CellPosition firstCellPosition, CellPosition lastCellPosition, double value):<br />

es el método <strong>de</strong> ISpreadSheet que permite insertar en todas la celdas <strong>de</strong> un rango<br />

un valor numérico.<br />

setRangeValue(CellPosition firstCellPosition, CellPosition lastCellPosition, String value):<br />

es el método <strong>de</strong> ISpreadSheet que permite insertar en todas la celdas <strong>de</strong> un rango<br />

una ca<strong>de</strong>na.<br />

save(): es el método <strong>de</strong> IOpenSheetDocument que permite recuperar salvar los cambios<br />

realizados en un documento <strong>de</strong> hojas <strong>de</strong> cálculo.<br />

Para comprobar que los elementos creados a partir <strong>de</strong> las pruebas y la refactorización<br />

cumplen con lo especificado, en este caso ha sido necesario crear un cliente <strong>de</strong>l servicio web<br />

muy básico que llama a las dos operaciones publicadas. Gracias a estas pruebas a través <strong>de</strong><br />

un cliente se han <strong>de</strong>tectado diferentes problemas, el primero ha sido la incapacidad <strong>de</strong> JAX-<br />

WS para manejar mapas <strong>de</strong> variables, como ya se ha comentado antes, lo que ha obligado<br />

a modificar las interfaces, algunas pruebas y métodos; y a<strong>de</strong>más han aparecido problemas<br />

con el <strong>de</strong>spliegue <strong>de</strong>l servicio web en el contenedor <strong>de</strong> servlets, que se han solucionado y<br />

documentado en el manual <strong>de</strong> usuario para que si a algún usuario le suce<strong>de</strong> alguno <strong>de</strong> esos<br />

problemas sepa como resolverlos.<br />

5.7.3. Resumen <strong>de</strong> sprint<br />

En el sprint se han completado las dos historias planificadas con tres días <strong>de</strong> retraso. En el<br />

gráfico <strong>de</strong> burndown, ver la figura 5.12, se pue<strong>de</strong> ver la evolución <strong>de</strong>l mismo.<br />

En el gráfico se pue<strong>de</strong> observar que en el comienzo <strong>de</strong>l sprint se ha ido más lento <strong>de</strong> los<br />

esperado, esto es <strong>de</strong>bido a que el diseño y las pruebas para las operaciones que se han realizado<br />

estaban subestimadas, luego una vez se ha <strong>de</strong>finido como llevar a cabo las operaciones<br />

y se han ido realizando más pruebas, se ha ido aumentando la velocidad. El último repunte

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!