Lo importancia de una correcta gestión de los requerimientos

Uno de mis objetivos profesionales actuales es focalizar en la mejora de calidad con la captación de requisitos, ya que considero es una parte fundamental para el éxito de un proyecto.

Pienso y analizo en todo lo que deberíamos tener en cuenta a la hora de definirlos. No sólo para validar y verificar su cumplimiento, sinó también para saber qual es la mejor manera de gestionar los de manera colaborativa con todos los miembros del equipo.

¿Que se entiende por requerimientos?Es una representación escrita de las expectativas del usuario sobre lo que quiere que haga el software.

+ Leer más

Guía práctica para preparar pruebas de aceptación

Una de las fases más importantes en el desarrollo del software, es la de pruebas de aceptación, que coincide con la última fase del proceso, donde el cliente decide subir o no subir a producción. Momento en el que el equipo de desarrollo y el de calidad deben unir fuerzas para que negocio acepte el producto final.

Una vez que el equipo de calidad completa el testing y valida que el software ya está a punto para ser entregado al cliente, el producto debe ser impecable, cumpliendo con los requisitos establecidos al principio del proyecto.

El entorno de pruebas para la aceptación del test será similar al de producción (generalmente denominado entorno de Staging, pre-prod o UAT). La gran mayoría de pruebas realizas aquí, coincidirán con las del sistema, pero negocio debe pasarlas de nuevo, para ganar confianza en el producto que se lanza al mercado y para asegurarse de que el producto esté funcionando de la manera que debe.

+ Leer más

¿Que roles encontramos en una oficina de calidad?

Antiguamente la calidad se relacionaba con el test y normalmente se situaba únicamente al final del proceso de desarrollo del software. Momento, en que se encontraban problemas por no haber entendido bien requerimientos y que, si se hubieran detectado con antelación, se hubieran ahorrado tiempo y dinero.

Afortunadamente, hoy en día un QA no trata sólo de encontrar incidencias. La calidad del software, es un indicador estratégico, y las empresas líderes ya se han asegurado de que se realicen las inversiones adecuadas para garantizar el impacto de la calidad del software. Su principal tarea es la definir una estrategia de prueba clara, con un enfoque coherente y estructurado para adquirir más conocimiento sobre el producto que se está probando. Por otro lado, hoy en día el QA, debe tener un perfil más técnico ya que está implicado en la definición de todo el proceso de Integración continua, des de temas de Control de versiones, pasando por la Release y acabando por despliegues.

+ Leer más

Testing para no testers

Leyendo el libro de Katrina clokie: “A practical guide to testing in DevOps”, me gustó cómo habla del “Testing para no Testers”. Creo que es algo de lo que se viene hablando últimamente, pero que no queda bien definido, por lo que creo que es muy importante guiar, en actividades de prueba, a todos aquellos del equipo que no son própiamente del equipo de calidad.
A continuación, un conjunto de preguntas prácticas para ello:

¿Por que los NO Testers deberían participar en las pruebas?

+ Leer más

Test de Regresión en un escenario Ágil. 

En el desarrollo ágil, las pruebas necesitan ir adaptándose con cada sprint y calidad debe asegurar que los nuevos cambios implementados no afecten a lo que ya se ha echo.

Las pruebas de regresión comprueban esencialmente si la funcionalidad anterior de la aplicación está trabajando coherentemente y que los nuevos cambios ejecutados no han introducido nuevos errores en la aplicación. Puesto que puede haber muchas dependencias en las funcionalidades recién agregadas y existentes, se hace esencial comprobar que el nuevo código se conforma con el código anterior y que el código no modificado no se vea afectado de ninguna manera. En el desarrollo ágil, las pruebas de regresión se vuelven más relevantes ya que hay cambios continuos que se añaden a la aplicación.

+ Leer más

A practical Guide to Testing in DevOps

“A practical Guide to Testing in DevOps de katrina clokie“, es un libro para entender que es devops bajo una perspectiva de calidad del software. Por lo que va especialmente dirigido a miembros del equipo de calidad, pero también, es de interés para otros Roles en el equipo, que quieran saber más acerca de qué manera el testing tiene cabida en un modelo como DevOps. Un libro que sobre todo anima a explorar las diferentes oportunidades para mejorar la calidad del software. Un libro muy práctico que te da ejemplos de cómo el equipo de calidad, trabaja conjuntamente con el de desarrollo y el de operaciones en una cultura devOps.

+ Leer más

Agilidad y calidad van de la mano…

Actualmente, las metodologías ágiles están en boca de todo el mundo y especialmente en las del desarrollo de software. Pero antes de tirarte a la piscina e introducir Agile en tu organización, primero necesitamos saber de qué se trata y entender el por qué lo necesitamos, y sobre todo nos tenemos que preguntar si vamos a ser capaces de llevarlo a cabo con éxito, ya que no podemos ir hacia metodologías ágiles, sólo por el hecho de que todo el mundo va hacia allí.

Tuve la suerte, de introducirme en este mundo, mediante una buena formación y con el Mentoring de un coach, que nos corregía en nuestro día a día. Era una organización pequeña, pero me sirvió de mucho para entender la base de la metodología y darme cuenta de que mi manera de hacer hasta la actualidad ya era muy agile. Pero sobre todo me sirvió para apostar por esta manera de trabajar en equipo e intentar acompañar a las organizaciones dónde he trabajado posteriormente a incorporarlo de la mejor manera, con el objetivo de construir software de mejor calidad.

+ Leer más

Women in tech, de Tarah Wheeler.

<Women in Tech> Take your career to the next level with practical advice and inspiring stories from Tarah Wheeler.

Libro orientado a mujeres que están pensando en meterse en tecnología, o las que ya están pero que quieren tomar su carrera a un siguiente nivel. Este libro combina prácticos consejos de buenas  profesionales e inspiradoras historias personales de exitosas mujeres en tecnología. Profesionales brianna wu (fundadora, gigante spacekat), Angie Chang (fundadora, las mujeres 2.0), Keren elazari (experta en seguridad), Katie Cunningham ( desarroladora y profesora de Python), miah Johnson (administradora de sistemas), Kristin Toth Smith (CTO), y kamilah Taylor (social media) i escrito por la CEO Tarah Wheeler. 

+ Leer más

Tranformación digital en la organización para mejorar la calidad del software

La manera de hacer software ha cambiado y por tanto también tiene que cambiar el equipo que lo diseña y la organización que lo piensa. Ahora se habla de devops, integración continua, creación del software ágil, pero todo esto no tiene sentido, si no trabajamos los cambios en la organización.

Cuando hablo de cambios en la organización, me refiero a un cambio Cultural buscando un nuevo modelo de trabajo para que las personas que forman la empresa, acepten los cambios, asuman sus objetivos, y entiendan su nueva función. Por lo que es fundamental trabajar una estrategia de Comunicación y Formación, hacer una buena difusión de conocimiento y adoptar buenas prácticas, así como compartir las medidas de avance, reconocimiento y de mejora continua.

+ Leer más

WomanLiderTIC

Me llamó mucho la atención el lema del congreso,#WomanLiderTIC.  “Empoderando las ciudades, empoderamos la ciudadanía”, pero ¿se puede empoderar la ciudadanía sin la presencia de las mujeres en la tecnología? ¿Podemos hablar de ciudades inteligentes prescindicendo de la inteligencia de las mujeres?. Llevo 20 años en el mundo de la tecnología y por mi experiencia, yo contestaría que no. En la era tecnologica, hombres y mujeres hemos ido desarrollando habilidades diferentes, y bajo mi punto de vista no somos iguales. En las últimas décadas, los hombres han desarrollado una especial habilidad para crear tecnología, y son ellos los que han tomado las riendas. El problema es que como los hombres han sido los que han desarrollado este mundo a su manera, ahora a las mujeres nos cuesta posicionarnos y tenemos menos oportunidades y menos peso. Con lo qual si los hombres siguen avanzando, corremos el riesgo de que se cree un mundo cada vez más masculinizado, y cada vez será más difícil, que las mujeres nos posicionemos, por lo que tendrenos cada vez menos oportunidades.  

+ Leer más

50 ideas para mejorar rápido tu Test

Fifty Quick Ideas To Improve Your Tests, by Gojko Adzic

Este libro está dirigido a equipos multidisciplinares de trabajo que quieren trabajar en un entorno de entrega continuo, con historias de usuario, y con testing frecuente sobre todo con la intención de incorporar mejoras continuas en el software que estamos desarrollando.

Este libro ayudará al equipo a dar unos consejos de cómo probar mejor el software, de manera más fácil y más rápida. Muchas de estas ideas aportaran a todo el equipo a mejorar la calidad de lo que se está construyendo.

+ Leer más

Infografía Hacia la calidad del Software con DevOps

DevOps es un cambio cultural; Es una filosofía ágil de colaboración entre todos para mejorar procesos, des de la toma de requisitos hasta la puesta en marcha, todo con el objectivo común de ser más eficientes. Una de les tareas del QA especialista, debería ser implementar prácticas para asegurar el pensamiento crítico y la interrogación y no solo basar-se puramente en la calidad del software. El objetivo de la calidad del software es: calidad del proceso + calidad de las personas/equipo + Calidad del producto.

+ Leer más

Llevando mi carrera a un siguiente nivel…

Leyendo Women in Tech, the Tarah Wheeler, ha sido la inspiración para escribir este post, me he sentido identificada y creo que mi historia podría ser perfectamente un capítulo más de este libro.

¿Por qué estudié informática?. Creo, que lo que me atraía de los ordenadores, era que lo veía como una herramienta para encontrar soluciones a problemas. Me matriculé en Ingeniería informática, en el 1996. Fue una época bonita dónde tuve la suerte de conocer a la que siempre será la trupe de la Uni. Hicimos una gran piña, la gran mayoría éramos chicas que no sabíamos muy bien porqué habíamos escogido la carrera, pero que íbamos aprendiendo y creciendo tecnológicamente hablando.

+ Leer más

Jira para mejorar la gestión de proyectos e incidencias

Fue amor a primera vista y me metí de lleno en sacar lo mejor de él. No quiero decir, que sea la mejor herramienta en el mercado, pero si que es la que conozco a fondo y me gusta, no sólo para la gestión de incidencias y proyectos, si no también para tener un control sobre la estrategia del proyectos y de los objetivos que seguimos. En los últimos proyectos que he colaborado, todos han utilizado Jira, lo que me ha permitido descubrir la herramienta des de diferentes puntos de vista y así sacarle el máximo partido a todas sus ventajas...

+ Leer más

Usa Docker para mejorar tu entorno de pruebas

En el departamento de calidad, debemos tener en cuenta unos conceptos básicos si queremos entender como tratar con Docker en un sistema de Integración contínua. Para empezar, nos hacemos las siguientes preguntas:

¿Que necesitamos para construir un entorno de Integración Continua?:

– Monitorizar el repositorio de código fuente.

– Compilar el producto.

– Pasar los tests automáticos.

– Auditar el código de forma automática.

En un escenario clásico, para cada entorno ( dev, test, uat, prod) tendríamos unas cuantas máquinas virtuales encargadas de hacer todas estas tareas, pero ¿cómo hacer un entorno mucho más ligero, más fácil de escalar y más sencillo de portar?. Con el uso de contendores.

+ Leer más

Agile Testing: A Practical Guide for Testers and Agile Teams 

A Practical Guide for Testers and Agile Teams. Addison-Wesley Signature Series (Cohn))

Mi primera estrategia de Test con Ágile, la definí gracias a este libro. Había recibido un curso de Agile, pero quise saber más de cómo mejorar el test usando Agile.

El libro se sumerge en los principios y prácticas para tener éxito al introducir Testing Agile con el equipo. Explica cómo utilizar modelos como los cuadrantes de prueba Agile para visualizar y planificar con éxito todas las actividades de prueba. Junto con varios colaboradores de equipos de distribución de software de todo el mundo, comparte formas de resolver problemas comunes y tener éxito con la planificación de las pruebas, los test exploratorios, la automatización y el ajuste de todas estas actividades en los diferentes Sprints.

+ Leer más

Herramientas integradas en navegadores para QA

Los navegadores hoy en día tienen herramientas para mejorar la calidad de software.

Aún recuerdo cuando las herramientas que te encontrabas en los navegadores sólo te permitían ver el código fuente. Hoy en día, te permiten hacer muchas más cosas, como ejecutar y depurar fragmentos de JavaScript, monitorear el tráfico de red en tiempo real a medida que tu aplicación o página se carga para identificar cuellos de botella, analizar el rendimiento de CSS y garantizar que su código no utiliza demasiada memoria o demasiados CPU… Desde una perspectiva de pruebas, podemos reproducir cómo una aplicación o página web se representará en diferentes navegadores, así como en diferentes dispositivos y plataformas a través de la magia del diseño de simuladores incorporados.

+ Leer más

Cómo los Webservices encajan en un sistema de integración contínua? 

En un entorno con integración continua, ¿deberíamos refactorizar una arquitecturaa de Web Services a microservicios?. 

Una API, es el medio por el cual los terceros pueden escribir código que interactúa con otro código.

Web Services, es una gran aplicación monolítica de Java que se usa para intercambiar datos entre aplicaciones, con una comunicación estándar definida por W3C, y con una interfaz generalmente especificada cómo WSDL, y casi siempre funciona a través de HTTP.

+ Leer más

Mejorar la calidad en los requerimientos con BDD, cucumber y Gherkin. 

Aquí, es dónde entra el Test de Aceptación, para expresar lo que se ha entendido y lo importante, es que no se empieza a programar, hasta que el que tiene la idea no los acepta. El Test de Aceptación ayuda al equipo a focalizar esfuerzos y a asegurar que lo que se está entregando no va a tener que volver a tocarse, a no ser que entren modificaciones, pero eso ya se tratará como una nota de cambio.

+ Leer más

Critical thinking, la mejor Herramienta para un QA.

Si llevamos la definición al mundo del desarrollo del software; Un test, es "un procedimiento para la evaluación crítica del software", tenemos algunos criterios estándares para analizarlo y evaluarlo:  Criterios funcionales ( Requisitos, Historias, ... ) y Criterios no funcionales ( accesibilidad, escalabilidad, usabilidad, portabilidad, seguridad, rendimiento, etc..). Pero estos procedimientos estándares, definen cómo realizar las pruebas de software, pero no explican el por qué debemos realizar las pruebas. Aquí, es dónde entra el pensamiento crítico que el QA puede aportar.

+ Leer más

Importancia de la retrospectiva en la estrategia de pruebas

Bajo mi punto de vista, la retrospectiva es clave para asegurar el éxito en cualquier proyecto. Es la reunión periódica dónde se revisa, cómo han ido las cosas y se proponen acciones para mejorar las siguientes entregas, todo con el objetivo de la mejora continua. Una retrospectiva puede ayudar a determinar si todos en el equipo, saben cuál es la estrategia de prueba que se va a seguir, y sobre todo si todos en el equipo, están de acuerdo en los aspectos de la estrategia que se ha implementado hasta el momento.

+ Leer más

Porqué verificación y validación no significan la misma cosa

Los términos de validación y verificación son usados en muchos campos, también lo son en la calidad del software. Por eso debemos tener claro, cuando utilizar uno otro. "La verificación está destinada a verificar que un producto cumple con un conjunto de especificaciones. La validación está destinada a asegurar que un producto, satisface las necesidades del usuario".

+ Leer más