23.04.2015 Views

Grupo ARCO - Universidad de Castilla-La Mancha

Grupo ARCO - Universidad de Castilla-La Mancha

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.

4. MÉTODO DE TRABAJO Y HERRAMIENTAS 27<br />

4.1.2. Desarrollo dirigido por pruebas<br />

Des<strong>de</strong> el principio, el planteamiento fue realizar la implementación <strong>de</strong> este proyecto usando<br />

una metodología ágil, basando esta i<strong>de</strong>a en el previo conocimiento <strong>de</strong> las ventajas que<br />

esta técnica ofrecía.<br />

Test Driven Development (TDD) es una técnica incluida en lo que se conoce como metodología<br />

XP [Bec00]. <strong>La</strong> filosofía <strong>de</strong> esta técnica es crear las pruebas antes que el código.<br />

Cada prueba garantiza el cumplimiento <strong>de</strong> un requisito funcional concreto.<br />

<strong>La</strong>s ventajas <strong>de</strong> esta técnica son numerosas y algunas <strong>de</strong> las más importantes son:<br />

Sólo se implementa lo necesario para satisfacer la prueba y no más. No habrá código<br />

que no sea necesario.<br />

Se disminuye el número <strong>de</strong> errores. Cualquier modificación que afecte a algún componente<br />

se <strong>de</strong>tecta y se resuelve fácilmente.<br />

El código es reutilizable y se pue<strong>de</strong> cambiar con relativa facilidad.<br />

<strong>La</strong> productividad aumenta consi<strong>de</strong>rablemente porque se invierte menos tiempo en la<br />

<strong>de</strong>puración.<br />

Para po<strong>de</strong>r seguir esta técnica se <strong>de</strong>ben tener claros los escenarios que se quieren probar.<br />

Los escenarios serán la colección <strong>de</strong> pruebas que servirán para ir construyendo la API<br />

<strong>de</strong>l sistema. <strong>La</strong> <strong>de</strong>scripción <strong>de</strong> los escenarios se hace utilizando la técnica Behavior Driven<br />

Development (BDD). Esta técnica utiliza una plantilla que permite enten<strong>de</strong>r mejor el funcionamiento<br />

global <strong>de</strong> sistema:<br />

Given: Dado un contexto inicial.<br />

When: Cuando se produce un evento.<br />

Then: Entonces se obtienen unos resultados.<br />

4.2. Herramientas<br />

4.2.1. Lenguajes <strong>de</strong> programación<br />

Python - lenguaje <strong>de</strong> alto nivel, interpretado, multiparadigma y orientado a objetos, creado<br />

por Guido van Roosum. Se utiliza este lenguaje <strong>de</strong>bido a la simplicidad <strong>de</strong>l código y<br />

su amplia librería estándar.<br />

Este lenguaje se usa para implementar el particular mo<strong>de</strong>lo <strong>de</strong> comunicación <strong>de</strong> eventos<br />

DDS y también es usado para la implementación <strong>de</strong> las pruebas realizadas.<br />

C++ - lenguaje que proporciona mecanismos <strong>de</strong> orientación a objetos y es compatible con<br />

C. Fue creado por Bjarne Stroustrup.<br />

C++ se utiliza para implementar los ejemplos básicos <strong>de</strong> OpenSplice y RTI DDS.

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

Saved successfully!

Ooh no, something went wrong!