Hacer pruebas es un “must”

Tiempo estimado de lectura: 8 minutos.

Cuando te planteas que habría que probar tu producto, ¿realmente te lo planteas como algo opcional? ¿No debería ser algo inherente a la propia implementación?

Independientemente de que estés desarrollando una nueva aplicación, un servicio que van a consumir tus clientes, una nueva funcionalidad que te han pedido tus usuarios, un nuevo producto que quieres lanzar al mercado, etc. probarlo no debe ser algo que nos planteemos, si no algo que debemos hacer. Usando términos de moda, se puede decir que hacer testing es un “must”.

Índice de contenidos

¿Probar o no probar?

Nadie te va a decir que no cuando digas que quieres probar lo que estás construyendo. Sería muy de insensatos, ¡claro que lo quieren probado! ¡Y que funcione! Es lo mínimo que se nos puede pedir. Aunque lo que estemos implementando sea un producto mínimo viable, este tiene que ser funcional y en ese “ser funcional”, debemos tener en cuenta siempre que haga lo que queremos que haga y que, al menos, no falle.

Le voy a decir a mi cliente que voy a invertir un esfuerzo adicional en probar el producto, pero que voy a necesitar ampliar el tiempo de entrega y ampliar el coste, claro, más trabajo implica más tiempo y a más tiempo…

Plantea tu estrategia

Aquí a lo mejor, te vas a empezar a encontrar caras largas que te van a recordar compromisos de entrega, presupuestos cerrados, complicaciones derivadas del “retraso” en la entrega y van a tener razón, porque si te has planteado que tienes que probar el producto una vez que te has embarcado en la ejecución de tu proyecto, con hitos que alcanzar en el horizonte temporal, vas a tener que lidiar con el hecho de que esas pruebas las tenías que haber tenido en cuenta a la hora de cerrar la planificación.

Tampoco debemos dejar que esas caras largas nos hagan empezar a tensar la relación con nuestro cliente o usuario y verlo como la “parte contraria” de un conflicto porque, más que contraria, ahora mismo lo que está es contrariada. Ponte por un momento en su lugar…

Volvemos a que nadie te va a decir que no a que plantees montar los recursos que consideres necesarios para garantizar la fiabilidad de tus entregas en cada implementación, pero debemos ser conscientes de que ese extra de actividad requiere de cierto trabajo de base que debemos realizar desde el mismo momento en que empezamos con la toma de requisitos, planteándonos lo que vamos a hacer para probarlos.

¡Ojo! Ni el mejor sistema de pruebas del mundo, por más completo y específico que sea, te va a permitir garantizar el 100% de fiabilidad de tu producto.

Tenlo en cuenta, porque nos podemos venir arriba y pillarnos las manos al tratar de justificar la necesidad de realizar actividades de testing con que el resultado va a ser una aplicación totalmente libre de fallos. Eso no lo vas a poder garantizar nunca.

A lo mejor esto te choca. ¿Cómo voy a pensar en las pruebas, si aún no está desarrollado el requisito? Pero es precisamente ahí donde está una de las claves.

Si al tomar los requisitos, estás teniendo en cuenta lo que vas a tener que hacer para probarlos, vas a obtener los criterios de aceptación adecuados a lo que te piden y además, te vas a encontrar con que el tiempo de dedicación a las actividades de testing y los recursos que necesitas para ello, no te van a suponer un esfuerzo extra porque lo vas a poder incluir en tus planificaciones iniciales.

¿Quién hace las pruebas?

Si me planteas la cuestión de qué es mejor, si un desarrollador que también pruebe su desarrollo o un equipo específico de testing, te diré que mi opinión sobre el tema ha cambiado con el paso de los años.

Define tus objetivos

Cuando empecé a entrar en temas de calidad, lo hice con la idea de qué mejor que el desarrollador para probar la funcionalidad desarrollada. Partía de la base, y reconozco ahí mi error, de que cuando yo desarrollaba, el tema de las pruebas era un “must” que ni te planteabas porque eran lo primero que te pedía tu jefe de proyecto cuando le decías que habías terminado la tarea. “¿Está probado?”, “¿Funciona?”, “Como encuentre yo un fallo…”.

La realidad es otra y bastante diferente. En una amplia mayoría de casos, aunque siempre hay excepciones, el tiempo de desarrollo puede expandirse más allá de lo planificado y lo primero que se suele resentir son aspectos como mantener actualizada la documentación del proyecto y las pruebas.

Es por esto que, si los desarrolladores van a tener que hacer además las pruebas, y se han visto en la necesidad de ampliar el tiempo de desarrollo, van a acabar definiendo las pruebas básicas que validan el proceso implementado. Pero… si en lugar de pinchar “Aceptar” después de rellenar los datos del formulario, ¿me da el punto y lo pulso con el formulario vacío? No tiene lógica, cierto, pero al menos tendríamos que controlar que esa acción “ilógica” no nos genere un error no controlado que nos tumbe la aplicación.

Es un ejemplo simplista, pero representativo de lo que suele acabar sucediendo.

Los equipos de testing tienen otra visión, más enfocada a la funcionalidad, a la experiencia de usuario, a las diferentes interacciones que se pueden llevar a cabo con cada página, por lo que se plantean las baterías de pruebas con un enfoque más orientado a probar que la funcionalidad no solo no falla, si no que además, funciona de la manera más óptima posible.

Es por esto que otra cosa que has de tener en cuenta a la hora de conformar tu equipo de proyecto, es contar con gente experta en pruebas que pueda aportar valor añadido a tu producto.

Una buena funcionalidad es crítica…. pero la experiencia de usuario va más allá de una correcta funcionalidad y abarca otras perspectivas como el rendimiento, la usabilidad o la multi-canalidad, entre otros.

Este equipo debe estar implicado en todas las fases de construcción, ya que el conocimiento funcional que van a adquirir les va a permitir realizar baterías de pruebas eficaces que os ayuden a elevar el nivel de fiabilidad de vuestro producto y con ello, la satisfacción de vuestro cliente y por ende, de la vuestra, así que al final, todos contentos.

No tener tiempo para probar es otra justificación que debes borrar de tu proyecto y más con las modalidades de negocio emergentes en las que los tiempos de puesta en producción de productos mínimos viables, son cada vez más ajustados.

El time-to-market de tu producto, seguro que te suena el concepto, acelera los tiempos que marcan el ciclo de vida de desarrollo y trae de la mano subidas de versión a entornos productivos de manera habitual. Una estrategia de testing definida con cabeza y no colada con calzador en tu Project, va a ser un elemento clave para llevar a cabo una entrega continua que te va a permitir ser competitivo y destacar en tu sector de actividad.

Si consigues conjuntar un desarrollo ágil en el que automatices tus pruebas unitarias, de interfaz y de servicios, que dispongas de herramientas para generar datos de prueba y un entorno controlado en el que tu equipo de testing pueda trabajar, vas a poder definir un plan de automatización de pruebas óptimo que va a cubrir los requisitos de negocio y las funcionalidades más importantes que debe cubrir tu producto.

Juntando todo esto en la forma en la que vas a gestionar tu proyecto, la entrega continua es posible.

Evalúa tu producto

¿Crees que las pruebas son patrimonio exclusivo del desarrollo de software?

Buena pregunta, ¿verdad? ¿Que piensas? A fin de cuentas, cuando hacemos pruebas, lo que hacemos es definir una actuación, registrar el resultado que hemos obtenido y evaluar si es satisfactorio. En base a esto, ¿sigues pensando que sólo nos aplica si nuestra actividad se centra en desarrollar un producto de software?

A lo mejor tu actividad se centra en desarrollar un personaje de animación para una serie y según va avanzando ésta, ves que el personaje no está causando el impacto en la audiencia que habíais previsto inicialmente, lo que os lleva a tratar de analizar qué es lo que no está encajando e ir haciendo ajustes que permitan reconducir el resultado.

Se que me vas a decir que esto no es un producto como tal, pero si que vas a ver cómo evolucionar tu personaje en base a evaluar el resultado de los cambios que vas introduciendo.

Puede que te dediques a la radio y quieras hacer cambios en tu programa, tales como incluir una sección nueva y para ello vas probando diferentes temáticas hasta que das con la que aporta lo que buscas y lo que demanda tu audiencia.

Si estás embarcado en una campaña de marketing en Facebook y tu cliente tiene que publicar en varios idiomas, vas a hacer pruebas con la segmentación para intentar mejorar la experiencia de usuario de sus seguidores al mostrarles la publicación en el idioma en el que tienen configurada su red social, en lugar de que les aparezca una publicación en la que muestras todos los idiomas con los que trabajas esperando que el seguidor busque el párrafo que comprende.

Algo más cercano. A lo mejor te estás planteando bajar de peso y no acabas de dar con el mejor método para hacerlo. Tampoco es un producto, cierto, pero si es un objetivo a conseguir para el que vas a estar probando diferentes acciones y evaluando los resultados que obtienes hasta que lo alcances, ¿no?

En todos estos ejemplos, al final siempre volvemos a las mismas actividades de base que se dan en un proceso de pruebas: definir una actuación, registrar el resultado obtenido y evaluar si es satisfactorio.

¿Y tú? ¿Qué opinas? Déjame tus impresiones en los comentarios.

A vueltas con la transformación digital

Tiempo estimado de lectura: 8 minutos.

Por si no te habías dado cuenta, la transformación digital es uno de los temas de moda. Un “tema de moda” que ya lleva varios años siendo una realidad para muchas empresas.

La necesidad de afrontar un cambio que les permita adaptarse a los nuevos entornos que han definido empresas de concepción puramente digital y que han revolucionado los rankings de beneficios de las grandes corporaciones, está forzando a las empresas, llamémoslas “tradicionales”, a tener que redefinirse si quieren sobrevivir a esta revolución.

Índice de contenidos

Transformacion digital de tu empresa

¿Necesitas transformar digitalmente tu empresa?

Mensajes en la línea de las empresas que han desaparecido del Fortune 500 en los últimos años por la “uberización” de su sector de actividad, es una mención, al parecer obligada, con la que te van a bombardear cuando empiezas a asistir a conferencias, jornadas, seminarios o cualquier otro tipo de actividad en el que vayas a buscar una solución para transformar digitalmente tu empresa. Por cierto, ¿alguien se ha parado a pensar en la publicidad gratuita que estamos haciendo entre todos a empresas como Uber o AirBnB con todo esto?

Si estás leyendo estas líneas, no te voy a engañar, no hay una solución que transforme digitalmente tu empresa por arte de magia, por mucho que te intenten convencer de lo contrario.

Hay infinidad de soluciones tecnológicas que se adaptan en mayor o menor medida a lo que puedes necesitar, pero al final tu negocio es único. Incluso si no eres el único que ofrece un determinado tipo de producto o servicio, tu proceso de negocio, tus procesos internos, no van a ser exactamente iguales a los de cualquier otra empresa, de ahí que las soluciones integrales que puedas llegar a ver, te van a dar la herramienta, pero no te van a propiciar el cambio.

Es algo que vas a tener que hacer tú, con apoyo, claro, pero debes ser tú el que mire hacia dentro de tu empresa e identifiques qué cosas debes cambiar para no bajarte del tren, para no dejar de ser competitivo.

Las empresas digitales han nacido adaptadas al medio y, en muchos casos, no tienen las mismas infraestructuras que las empresas tradicionales ni las necesitan, lo cuál puede suponer un reto difícil de afrontar cuando nos planteamos transformarnos digitalmente.

Todo se puede hacer en mayor o menor medida. No hay un grado de transformación óptimo. Si me apuras, ni siquiera hay necesidad de que te transformes, pero tanto el grado de transformación a alcanzar, como la necesidad de hacerlo o no, te lo va a dar la visión actual que tienes de tu empresa y la visión que quieres alcanzar a medio plazo.

No debes perder de vista estas líneas de trabajo:

• La evolución de los equipos de trabajo que te va a llevar a plantearte cuestiones complejas como integrar la transformación digital en la cultura de tu empresa y adaptar las capacidades de tu equipo humano al nuevo marco de trabajo.

• Las prácticas de liderazgo que deben introducir aspectos como el coaching. De esto están tomando buena nota los departamentos de Recursos Humanos, ya que surge una oportunidad muy buena para embarcarse en una gestión más “humana” que “de recursos”.

• Potenciar la omnicanalidad que va a permitir a tu empresa, no solo estar presente en los medios al alcance de tu público objetivo si no, además, poder interactuar con él y evolucionar tu producto o servicio a una mayor velocidad, atendiendo a los cambios constantes que se producen en nuestro entorno de competencia.

• Cómo van a ser las relaciones con proveedores y partners ya que cada vez va a estar más extendido el modelo de negocio de pago por uso de los servicios que se ofrecen, por lo que nuestros modelos de negocio, es más que probable, que tengan que cambiar.

Hacer más con menos y hacerlo en tiempo real, va a ser uno de los objetivos que te vas a tener que marcar si quieres transformar digitalmente tu empresa.

En cuanto al enfoque de beneficios para el trabajador, la trasformación digital se plantea como una puerta abierta a cambiar la forma de trabajar, pudiendo realizar nuestra actividad desde cualquier dispositivo y lugar. Esto amplía el rango de oportunidades que nos van a permitir conciliar nuestra vida personal, con la profesional.

Las empresas de producto o servicio físico se han adaptado mejor al entorno digital, aplicando aspectos relacionados con la Internet de las Cosas para optimizar sus procesos y hacerlos más eficientes, así como trasladando al técnico que interactúa con el cliente, la capa más frontal de la empresa.

Ya no es simplemente un técnico que asiste a solucionar una incidencia. Ahora puede interactuar con el cliente más allá de esa gestión, lo que le permite a la empresa crear una imagen de trato personalizado para cada cliente.

Esto nos facilita la recogida de datos de todo tipo y que va a derivar en la aparición de otros conceptos muy repetidos cuando se habla de transformación digital, como es el caso de Big Data, enlazándolo con el Machine Learning. Una nueva versión de Inteligencia Artificial que en esta ocasión sí que está consiguiendo integrarse en los procesos y sistemas de las empresas, para poder comenzar a aprender a partir de la gran cantidad de información recopilada.

Pilares de la transformación digital

Todo proceso de transformación digital se centra en la redefinición de los procesos identificados en tu empresa. Una redefinición enfocada en aumentar su eficacia y eficiencia y que debe estar recogida en un plan estratégico que aplique a todos los departamentos de tu empresa.

Desde el punto de vista de negocio, uno de los principales pilares es la experiencia de usuario o de cliente, según cómo lo estés tratando en tu negocio, en el que se busca su satisfacción para que elija tu producto antes que el de la competencia.

Digitaliza tus procesos

Dentro del marco de empresas que compiten por las posiciones predominantes de un sector, adquiere especial relevancia tomar en consideración la experiencia de cliente/usuario mejorándola y reforzándola con nuevos productos y servicios.

En tu caso, sobre todo si aún no lo tienes claro, puedes enfocar la transformación digital de tu empresa centrándote en optimizar vuestros tiempos de respuesta, o en eliminar el manejo de papel en todos aquellos procesos en los que la tecnología os aporte una solución que lo permita.

Centrarse en estos dos aspectos, por poner solamente los ejemplos más obvios, va a permitir a los diferentes equipos que forman el capital humano de tu empresa que desarrollen su actividad con mayor eficacia y eficiencia, lo que va a reducir vuestros tiempos de respuesta y os va a permitir poder realizar todas esas tareas que actualmente no podéis hacer porque no disponéis de tiempo suficiente.

Otro pilar importante para llevar a cabo una transformación digital es la posibilidad de explotar el talento que contiene tu propia empresa. Tu equipo de trabajo tiene el conocimiento y la experiencia necesaria para poder llevar a cabo la redefinición de vuestros procesos sin perder de vista el objetivo de mejorar el servicio que estáis dando.

Ese talento interno es el que debe ser reforzado por expertos en procesos de transformación digital que orienten el conocimiento de base del que vais a partir, hacia una transformación de procesos eficaz y eficiente.

Una de las claves para lidiar con la resistencia al cambio pasa por conseguir que sean los propios trabajadores los que aporten su visión de cómo transformar sus procesos, aprovechando el talento interno de tu empresa.

No menos importante es el uso de la tecnología, lo que la convierte en el último pilar a tener en cuenta. No es una solución en sí misma, pero sí que os va a proporcionar herramientas para poder llevar a cabo la ejecución de vuestros procesos una vez redefinidos, y van a dar soporte al correcto desarrollo del plan estratégico que hayáis definido para la empresa.

Aterrizando todo esto

Una transformación digital debe ser un plan estratégico propio y específico de cada empresa. No existen soluciones mágicas que se puedan aplicar de manera integral para rediseñar vuestros procesos y que vuestra empresa se convierta en una empresa digital.

El uso de las diferentes tecnologías os va a dotar de elementos facilitadores de esta transformación, pero no implican una transformación en sí.

Debemos redefinir nuestros procesos, apoyándonos en la tecnología para maximizar la eficacia y eficiencia de cada uno de ellos.

Los objetivos de una transformación digital abarcan:

Rediseñar modelos de negocio y optimizar los procesos.

Transformar vuestros modelos de operación internos.

Transformar además, los escritorios de trabajo de tu equipo, así como vuestras infraestructuras.

El enfoque de esta transformación debe estar:

Centrado en la experiencia del cliente/usuario final.

Buscando la eficacia y eficiencia de las operaciones.

Explotando el valor de la información para definir vías de mejora para tu negocio.

Todo ello va a redundar en una mejora de la productividad, lo que va a permitir que el equipo humano de tu empresa pueda llegar a realizar tareas de manera más eficiente y eficaz durante su jornada de trabajo.

Piensa que si eres capaz de conseguir que cada uno de los miembros de tu equipo realice una tarea más a la semana, el incremento de productividad es brutal cuando lo analizas a final de año. Ponles más fácil realizar su labor y estarás en una vía de mejora imparable.

Bueno, lo voy a dejar aquí de momento, pero este tema da para mucho más, así que habrá futuras publicaciones en las que entraré más en detalle sobre los aspectos que hemos ido viendo en este post. Espero que al menos te sirva como introducción a lo que va a suponer transformar digitalmente tu empresa.

No dejes de comentarme tus impresiones o dudas que te puedan surgir. ¿Tienes interés en que tratemos algún aspecto concreto sobre transformación digital?

Qué uso darle a las etiquetas H1, H2 y H3

Tiempo estimado de lectura: 7 minutos.

No es que me guste ponerme especialmente técnico, entre otras cosas porque cuando nos ponemos “especialmente técnicos” los que estamos a este lado de la tecnología, se suelen perder los que están al otro lado y es en ese momento donde pueden surgir los malentendidos, las pérdidas de confianza, los “me estás contando una película”, “esto no es tan complicado”, “me quieres cobrar de más”, etc.

Tampoco es que yo me considere un perfil técnico, pero si que es cierto que a veces es necesario y en el tema que nos ocupa hoy, hay que ponerse el gorro técnico y tratar de dejar las cosas claras para que todos sepamos de qué estamos hablando.

Índice de contenidos

El SEO, la pesadilla de todo negocio que quiera hacerse un lugar en el vasto océano de la red y que a veces nos hace preocuparnos tanto por el posicionamiento que nos dan los buscadores, que nos olvidamos del objetivo real que tiene dotar de contenido tu página web, que no es ni más, ni menos que el de conectar con otras personas y mostrarles aquello a lo que te dedicas.

SEO on page

Como decía, me voy a poner un poco técnico y me voy a meter a hablar de la parte HTML de nuestra página web y en concreto de tres etiquetas que tienen bastante presencia dentro del SEO.

Las etiquetas de encabezado H1, H2, H3, etc. son una de las herramientas más potentes con las que contamos a nivel de SEO para decirle a los buscadores de qué va el contenido de nuestra página web.

Desde que los buscadores son buscadores, las etiquetas de encabezados siempre han tenido una gran importancia y aunque éstos han ido evolucionando, hay ciertos patrones que se conservan, por lo que el uso de estas etiquetas se ha convertido en algo que hay que mimar con esmero, independientemente del rol que tengas en la web en la que estás. Ya puedes ser programador, diseñador o redactor de contenidos, que estos pequeños consejos que os voy a dar a continuación, os aplican por igual.

Empecemos por la etiqueta H1

Sirve para colocar la el título del contenido de una página web. Hay que tener clara la diferencia entre sitio web y página web. Un título H1 hace referencia a una página de vuestro sitio web y no al sitio web en general.

El titular H1 va a resumir en una frase el contenido de la página en la que nos encontramos por lo que no tiene sentido que en una misma página tengamos varias etiquetas H1. No tendría sentido que un libro tuviera varios resúmenes, ¿cierto? Pues esto es igual.

Desde el punto de vista SEO pensando en las personas, cuánto más arriba en el contenido de la página pongamos la etiqueta H1, mejor. Como si del titular de una noticia se tratase, con lo primero que queremos llamar la atención. Con un título con fuerza que anime al lector a seguir leyendo… pues algo muy similar es lo que hacen los buscadores, por lo que cuanto más arriba lo pongamos, mejor que mejor.

Un ejemplo de mal uso puede ser en los blogs en los que en el listado de las últimas publicaciones, cada post lleva un titular H1. Esto no es correcto, ya que lo que debemos hacer en este caso es que el listado los títulos sean H2 (que ya veremos que es la hermana menor de la H1), y cuando accedemos al post completo, el título del post aparecerá como un H1.

Continuando con esto, llegamos a la conclusión de que para cada página que tengamos en nuestro sitio web tendremos una etiqueta H1 que resuma el contenido de cada una de ellas de la mejor manera posible. Si eres de los que utiliza el H1 para poner en todas las páginas tu marca, no lo estás haciendo bien…

Tampoco se trata de que debamos incluir todo lo que consideremos importante dentro de esta etiqueta, ya que no debe ser excesivamente largo. En estas etiquetas, así como por ejemplo en la Title, los buscadores van a dar mayor importancia a las primeras palabras de la frase y como va a ser de cansarse pronto, las últimas palabras le va a costar leerlas, por lo que si ponemos contenido muy extenso en estas etiquetas, estaremos perdiendo posiciones y será más complicado que lleguen a ver nuestro contenido.

No es fácil, lo sé. Tenemos que dar con una frase que tenga información completa por sí misma sobre lo que estamos contando, que le guste a los buscadores, y que le sirva de algo a las personas que nos van a leer… Te voy a dar una pista para esto, las que consideres como palabras clave del contenido de tu página, son buenas candidatas para formar con ellas el contenido de la etiqueta H1. Pero que tenga sentido comprensible por un humano, por favor.

Una última cosa antes de pasar a ver la siguiente etiqueta. Un H1 es importante únicamente para el contenido que estamos viendo. Si nos da por poner un enlace en el H1 le estamos diciendo a los buscadores, y a las personas que nos vayan a leer, que el contenido importante está en la página que enlazamos y no en lo que hay por debajo de lo que están leyendo.

Continuemos con la etiqueta H2

La etiqueta H2 es la hermana pequeña de H1 e indica títulos de importancia para diferentes apartados del contenido que tenemos en la página en la que nos encontramos. Imaginaros un libro en el que tenemos la entrada principal de un tema, que sería la H1 y el encabezamiento de cada uno de sus apartados sería la etiqueta H2. ¿Esto qué quiere decir? Que vamos a poder tener varios dentro de nuestra página. Tantos como apartados importantes necesitemos.

¿Cómo le vamos a dar contenido a esta etiqueta? Nos valen las mismas recomendaciones que hemos visto para su hermana mayor, aunque con la salvedad de que las palabras clave que contenga, las vamos a usar en el texto que viene inmediatamente a continuación y antes de la siguiente etiqueta H2.

Y llegamos a la etiqueta H3

Las etiquetas H3 y siguientes (como la H4) las vamos a usar para definir títulos de dentro de los apartados del contenido de nuestra página o del post que estemos preparando y siempre dentro de un bloque de etiquetas H2.

Aquí ya el SEO tiene poco que decir, por lo que tampoco se nos tiene que ir la cabeza creando una estructura de varias H… anidadas porque no vamos a conseguir que ni el buscador se canse menos leyéndonos, ni mucho menos la persona, que es la que realmente nos tiene que leer.

Por lo tanto, aunque creo que ya te has hecho una idea clara, el orden lógico de los titulares debe ser que aparezca en primer lugar el titular H1, después tantas H2 como podamos necesitar y dentro de cada una de ellas, los H3 con los que queramos terminar de estructurar el texto de nuestra publicación, creando una estructura de capítulos, apartados y epígrafes que podemos encontrar en cualquier libro.

Una recomendación extra, este conjunto de etiquetas tiene que ser capaz de describir por si solo la estructura del post que vayas a realizar, por lo que no está de más, que empieces por él antes de ponerte a redactar.

Consideraciones finales

Si nos ha quedado más o menos clara a todos la jerarquía que tienen estas etiquetas, cuando vayamos a darle una apariencia más estética que un simple texto, deberemos ser cuidadosos y no dar, por ejemplo, un tamaño de letra más grande a la etiqueta H3 que a la H2. Tanto los buscadores, como las personas que nos leen se van a extrañar y es probable que les haga restar atención al resto de nuestro contenido.

Una última cosa, no es buena idea utilizar imágenes para estas etiquetas, ya que los buscadores aún no reconocen textos en imágenes, así que si te has planteado poner una imagen como H1, dale una vuelta porque no te va a venir nada bien. ¿Qué hacer? Seguramente la imagen que querías usar tendrá algo en sus propiedades Alt o Title, pues bien, si no te quedan más opciones, mejor poner lo que tengan esas propiedades en tu H1, que no la imagen en si.

Espero que te sirva, porque a mí si que me ha servido recopilar estos conceptos y ponerlos por escrito.

¿Calidad en código o proyectos zombi?

Tiempo estimado de lectura: 3 minutos y medio.
Tiempo de vídeo: 16 minutos, 53 segundos.

Cuando empiezas a rascar un poco en el mundo de los frameworks ágiles, te encuentras con que esto del #Agile no es una moda nueva, ni tampoco pasajera, si no una forma de ver el desarrollo de software que se aparta de la concepción típica de “proyecto en cascada” donde no pasamos a la siguiente fase hasta no haber completado la anterior… vamos, como si estuviésemos levantando una casa.

Cuando vamos a construir una casa, lo primero son los cimientos pensarás, pero antes de los cimientos tienes que tener el plano de arquitectura y para ello, tienes que tener antes los requisitos cerrados de cómo va a ser la casa y no cambiarlos… Aquí te pegas de bruces con la primera pega y no es otra que la de que en desarrollo de software, ¿cuándo tienes los requisitos cerrados?

Asumiendo esto, el planteamiento de proyecto debe ser diferente, debe ser un “proyecto ágil” y aquí es donde entra la interpretación errónea de #agilidad. Cuando empiezas a contarle al equipo de desarrollo todo lo que hay que hacer dentro de un #sprint, siempre hay quien te dice: “pero es que hacer todo esto… ¡no es ágil!” y lo cierto es que si lo ves así, ¡claro que no es ágil!

Es como si te piden que bajes a la calle desde un cuarto piso y te tiras por la ventana… Esa forma de bajar es ágil si, pero… ¿cómo llegas al suelo?

El concepto de agilidad se enfoca en hacer entregas de funcionalidad operativas (importante el detalle de que sean operativas) en un tiempo más o menos breve.

Tenemos que dejar a un lado la concepción de “proyecto en cascada” en el que vamos a necesitar varios meses para poder entregar una primera versión de la aplicación. ¿Cuántas cosas pueden cambiar en esos meses? Las necesidades del usuario pueden ser diferentes y probablemente lo serán.

Situaciones así acaban degenerando en lo que, en el vídeo que os dejo al final de este post, llaman “proyecto zombi”. Proyectos que no se mueren nunca y que se comen todo lo que se cruza en su camino (equipos, presupuestos, paciencias…).

Hacer una entrega funcional en poco tiempo implica eso, que tiene que funcionar. No tiene por qué tener toda la funcionalidad que nos han pedido, pero si entregar algo con lo que nuestro cliente pueda empezar a trabajar, a ver, a trastear, a usar…

Ya sabemos lo que cuesta tener una idea clara de cómo queremos que sea nuestra aplicación hasta que no la tenemos delante y no empezamos a trabajar con ella, no es fácil que aquellas personas que van a darle uso tengan claro lo que verdaderamente necesitan, pues vamos a darles algo con lo que puedan empezar a trabajar y sobre lo que nos vayan diciendo cómo evolucionarlo.

Una entrega que funcione tiene que haber sido probada, obviamente. Hacer pruebas no te garantiza al 100% que la funcionalidad sea perfecta, pero si que estamos poniendo una red bajo el alambre de funambulista al que nos hemos subido, así que si las dejamos para el final, es bastante probable que nos hayamos comido el tiempo con otras tareas y al final, las pruebas, las haremos deprisa y mal (en el mejor de los casos).

Tener un equipo al margen del de desarrollo, encargado de hacer las pruebas no es la mejor forma de incorporar esta funcionalidad en el ciclo ágil, ya que debemos conseguir integrarlas dentro de la operativa del equipo, como una tarea más dentro de las propias de la evolución de nuestro proyecto.

Si intentamos sacar las tareas de testing de las habituales dentro del sprint, va a suponer una inversión mayor de tiempo, ya que si los que prueban no están inmersos en el desarrollo, ¿cómo obtienen el conocimiento de negocio necesario para poder probar lo que otro equipo está desarrollando? Requeriría definir más los requisitos, elaborar documentación más detallada, definir mejor los criterios de aceptación… esas cosas que tanto cuestan hacer en un proyecto en cascada, sobre todo tiempo que al final no tienes.

Bueno, ya está bien de reflexiones, por este post al menos. Os dejo con el vídeo, no tiene desperdicio…

El Lado Humano de la tecnología

Porque detrás de la tecnología siempre están las personas, nace El Lado Humano de las TI como un blog que tiene el el objetivo de convertirse en mucho más.

Día tras día hacemos uso de dispositivos electrónicos, ya sea por trabajo o por ocio, pero siempre nos vamos a encontrar que detrás de un banner, detrás de un servicio de autenticación, detrás de… cualquier cosa que se os pueda ocurrir, hay un equipo de personas que ha hecho posible que estemos haciendo uso de un determinado recurso tecnológico.

Las personas, el gran valor que hace que la tecnología evolucione.

Aunque cada vez se tiende a hacerse todo más impersonal, aspectos tales como la gestión de proyectos, el gobierno de las tecnologías de la información, el peopleware, la aplicación de metodologías ágiles, el marketing on-line o incluso el uso de las redes sociales en el entorno profesional, acaban girando sobre lo mismo, sobre personas interactuando con personas.

Desde #LadoHumanoTI vamos a enfocarnos en eso, en ver la tecnología desde su lado más humano y en hacer que no pierda valor lo que nos hace seguir evolucionando, personas como tú que estas leyendo estas líneas.

Permanece atento, comenzamos…