Cerrar panel

Cerrar panel

Cerrar panel

Cerrar panel

Eventos 05 may 2016

La importancia de la arquitectura de sistemas y el ‘testing’

El mundo de los desarrolladores, con tantísimos lenguajes y formas de operar, es sin duda muy complejo. Dentro de él la arquitectura de los sistemas y los test de prueba tienen una importante relevancia. El evento Codemotion Meetup celebrado en el Centro de Innovación BBVA de Madrid reunió a desarrolladores que debatieron sobre el testing y las posibilidades de la arquitectura de sistemas.

arquitectura-sistemas-bbva

Jorge Ortíz Fuentes, consultor independiente dedicado a la arquitectura de sistemas, al desarrollo móvil y la seguridad, habló acerca de cómo conseguir una buena arquitectura de sistemas, y para ello lo comparó con el trabajo de la NASA y dio las siguientes claves:

- Hay que volver a aprovechar piezas, como hacen los ingenieros de la NASA.

- Las misiones se cumplen mediante procesos, para enviar un hombre a Marte primero hay que mandarlo a la luna. Con la arquitectura de sistemas pasa igual, hay que ir paso a paso.

Evitar los puntos de fallo único, aquellos que cuando se rompen crean un fallo en cadena.

- Hay que saber dónde está el origen del problema.

- Hacer cosas que duren mucho tiempo, construir un software que permita cambios sin que suponga un gran coste.

- Realizar el trabajo de tal forma que se pueda trabajar en equipo (cuidado con los storyboards de IOS)

- Es mucho más fácil solventar problemas cuando la misión está bien definida, es decir, cuando tenemos una arquitectura bien definida.

En cuanto a las características que ha de tener una buena arquitectura, Jorge Ortíz explicó que “debe permitir el crecimiento rápido, ser robusta, reutilizable, que permita trabajar en equipo y aplazar soluciones”.

Jorge Ortíz también añadió que “hay otros problemas con respecto a la arquitectura que se tienen que resolver con patrones, o bien con patrón comando, patrón plantilla o patrón de diseño”.

Pablo Guardiola, ingeniero de software, trató el tema del testingpor qué es importante hacer test y los tipos de test:

Sobre la importancia de hacer test, Guardiola resaltó una serie de motivaciones para ello:

- Validar que nuestro sistema funciona correctamente.

- Comprobar la cobertura del código.

- Te permite hacer refactoring.

- Los test son la documentación viva del sistema.

-Hacer Test Drive Development (dividir un problema complejo en uno sencillo).

- Permiten el customer acceptance, es decir, asegurar al cliente que la appfunciona.

-Para hacer pair programming, es decir, trabajar con un compañero para visualizar los posibles fallos entre los dos.

Pablo Guardiola dividió los tipos de test en 2 grupos:

-De verificación de estado: permiten modificar el comportamiento interno del método sin que el test falle.

-De comportamiento: son más frágiles, si se modifica el nombre del método, este test fallará.

Pablo Guardiola concluyó con una reflexión: “¿Nos tenemos que preocupar de hacer test? Sí, pero sin volvernos locos, no hay que testear sin sentido, sino que hay que buscar realizar test sobre las partes más críticas de nuestra app".

Puedes ver el evento completo aquí.