{"id":169,"date":"2012-09-23T11:08:15","date_gmt":"2012-09-23T10:08:15","guid":{"rendered":"http:\/\/dev.qualilogy.com\/es\/?p=169"},"modified":"2013-01-05T11:08:44","modified_gmt":"2013-01-05T10:08:44","slug":"el-futuro-de-la-calidad-de-software","status":"publish","type":"post","link":"http:\/\/qualilogy.com\/es\/el-futuro-de-la-calidad-de-software\/","title":{"rendered":"El futuro de la Calidad de software"},"content":{"rendered":"<p><a href=\"http:\/\/vicken.deviantart.com\/\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-full wp-image-2321\" title=\"FutureOfQuality\" src=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/09\/FutureOfQuality.jpg\" alt=\"\" width=\"240\" height=\"360\" \/><\/a>Volv\u00ed a pensar en el <a title=\"Estimation de l'effort\" href=\"http:\/\/qualilogy.com\/es\/evaluar-el-esfuerzo-antes-del-proyecto\" target=\"_blank\">post anterior <\/a>sobre las medidas del esfuerzo de proyecto, y la estimaci\u00f3n de los costes de desarrollo y de QA antes del inicio del proyecto, cuando encontr\u00e9 un anuncio en un foro donde se habla de medici\u00f3n de la Calidad de software, para una conferencia sobre el mismo tema.<\/p>\n<p>Ya sabes, uno de esos eventos en los que diferentes expertos hacen una presentaci\u00f3n sobre temas tales como \u2018\u00bfqu\u00e9 m\u00e9tricas para evaluar los proyectos\u2019 o mesas redondas para hablar de \u2018m\u00e9todos para la estimaci\u00f3n de los costes de desarrollo y de mantenimiento\u2019.<\/p>\n<p>El autor de este anuncio pidi\u00f3 a los miembros del foro qu\u00e9 temas de debate les gustar\u00eda que se trataran en esta conferencia, y esa pregunta ha desencadenado una serie de respuestas y reacciones que voy a resumir brevemente:<\/p>\n<ul>\n<li>Basta, stop, alto, ya, deje las presentaciones y los &#8216;papers&#8217; en \u00ab \u00bfC\u00f3mo medir la productividad en el mantenimiento de software? \u00bb, \u00ab Medidas efectivas de riesgo \u00bb o \u00ab Uso de Function Points en la industria aeroespacial \u00bb.<\/li>\n<li>Hace ya m\u00e1s de 35 a\u00f1os que usamos m\u00e9tricas y sin embargo los departamentos de TI contin\u00faan ignorando las medidas de Calidad de software y el n\u00famero de proyectos que fallan o se retrasan es siempre mayor.<!--more--><\/li>\n<\/ul>\n<p>Y esos comentarios: \u00ab la industria de la medici\u00f3n de la Calidad de software se encuentra en un estado lamentable \u00bb y \u00ab podemos aprender de la comunidad Agile que ha integrado estas medidas en sus pr\u00e1cticas \u00bb.<\/p>\n<p>Estoy totalmente de acuerdo con esta afirmaci\u00f3n, y me record\u00f3 una presentaci\u00f3n por Olivier Gaudin, co-fundador y CEO de SonarSource, que encontrar\u00e1s aqu\u00ed : <a title=\"Continuous Inspection with Sonar\" href=\"http:\/\/www.sonarsource.com\/company\/events\/webinar-take-continuous-inspection-to-your-enterprise-with-sonar-3-0\/\" target=\"_blank\">Webinar: Take Continuous Inspection to Your Enterprise with Sonar 3.0. <\/a><\/p>\n<p>Un extracto de esta presentaci\u00f3n: la diapositiva que me parece la m\u00e1s importante a nivel de visi\u00f3n de nuestro mercado de Calidad de software, y que coincide completamente con los comentarios anteriores:<\/p>\n<p><a href=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/09\/QualFuture.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-2328\" title=\"QualFuture\" src=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/09\/QualFuture.jpg\" alt=\"\" width=\"469\" height=\"349\" \/><\/a><\/p>\n<p>Nota: a izquierda se encuentra el estado actual del mercado y a derecha, lo que deber\u00eda ser.<\/p>\n<p>An\u00e1lisis de c\u00f3digo, an\u00e1lisis de la calidad de la aplicaci\u00f3n, medici\u00f3n de la calidad del software, de la calidad del c\u00f3digo &#8230; Hay diversos nombres casi tantos como herramientas, gracias a la f\u00e9rtil imaginaci\u00f3n de los departamentos de marketing. Pero todas estas herramientas hacen lo mismo: an\u00e1lisis de c\u00f3digo para identificar violaci\u00f3nes de buenas pr\u00e1cticas de programaci\u00f3n y agregar diferentes m\u00e9tricas en indicadores que se presentan en un dashboard.<\/p>\n<p>Hace 5 a\u00f1os, habia menos herramientas en el mercado, por lo general se limitaban al an\u00e1lisis de dos o tres tecnolog\u00edas, eran dif\u00edciles de poner en pr\u00e1ctica y su uso era restringido a los equipos de Calidad. Ellos trataron de implementar procesos de auditor\u00eda de aplicaciones, pero estos esfuerzos fueron a menudo infructuosos sin un empujo fuerte de los directores de TI para generalizar estos procesos en los proyectos, sino tambi\u00e9n, por la desconfianza de los desarrolladores a ser controlados.<\/p>\n<p>Hoy en d\u00eda, me encuentro a menudo con responsables de Calidad, algunos de los cuales yo conozco como clientes anteriores, y les veo contandome, con una mirada muy molesta, que la herramienta de an\u00e1lisis de c\u00f3digo que ellos compraron a precios altos no se utiliza, pero que los equipos de proyectos han implementado un proceso de Integraci\u00f3n Continua basada en herramientas Open Source como Sonar y Jenkins.<\/p>\n<p>Primera lecci\u00f3n importante: la calidad de las aplicaciones proviene de los desarrolladores. Controlar los desarrolladores y medir la calidad de su producci\u00f3n tiene pocas posibilidades de \u00e9xito si ellos no est\u00e1n completamente convencidos del valor de este proceso. Claro, es m\u00e1s f\u00e1cil controlar el c\u00f3digo proporcionado por una empresa de servicios, pero da resultados solamente si el proveedor implanta en sus propios equipos un proceso de Integraci\u00f3n Continua. O bien, puedes prepararte para cambiar de proveedor, lo que no es tan f\u00e1cil cuando el es el \u00fanico con el conocimiento de tu c\u00f3digo, conocimiento que perdiste cuando se decidi\u00f3 externalizar tus aplicaciones.<\/p>\n<p>Pues primera conclusi\u00f3n: los desarrolladores son los principales usuarios de una herramienta de an\u00e1lisis de c\u00f3digo y esta debe ser integrada en una cadena de softwares, desde la herramienta de desarrollo hasta un repositorio de gesti\u00f3n de la configuraci\u00f3n. Si los consultores de Calidad quieren quedarse solo en el mando de una herramienta de an\u00e1lisis de c\u00f3digo para comprobar el trabajo de los desarrolladores, sus esfuerzos ser\u00e1n en vano y se encontrar\u00e1n aislados. Su papel es de empujar las herramientas y procesos de calidad dentro de los equipos.<\/p>\n<p>Esto nos lleva a la segunda pregunta importante: \u00bfpor qu\u00e9 el trabajo de los equipos de Calidad es ignorado por los departamentos de TI? Porque la gran mayor\u00eda de los consultores de Calidad no sabe c\u00f3mo vender el valor de la informaci\u00f3n que pueden entregar a los departamentos de TI y a los usuarios.<\/p>\n<p>Los consultores de Calidad son muy a menudo m\u00e1s interesados en la propia m\u00e9trica que en su uso y su valor. Eso lo estoy experimentando constantemente, cada vez que hablo de LOC \u2013 la m\u00e9trica Lines Of Code \u2013 en un foro: inmediatamente, unos expertos me dicen que el uso de este indicador es una &#8216;malpractice&#8217; y s\u00f3lo los Puntos de Funci\u00f3n permiten medir el tama\u00f1o de una aplicaci\u00f3n. Y luego tengo que demostrar tesoros de diplomacia y largas explicaciones para justificar el uso de este indicador: no para medir el tama\u00f1o funcional de la aplicaci\u00f3n, s\u00f3lo para medir el n\u00famero de l\u00edneas de c\u00f3digo.<\/p>\n<p>Cuando conoces a alguien por primera vez, \u00bfqu\u00e9 es lo primero que se nota? Su tama\u00f1o. \u00bfEs peque\u00f1o, mediano o grande? Lo mismo sucede con una aplicaci\u00f3n, primero voy a ver su tama\u00f1o. Luego puedo usar medidas de peso funcional para verificar si esta persona, perd\u00f3n esta aplicaci\u00f3n, tiene sobrepeso o no.<\/p>\n<p>Pero los consultores de Calidad prefieren perderse en querellas de expertos sobre la utilidad o no de una medida en lugar de pensar en el uso que se puede hacer de esta m\u00e9trica y su valor para los equipos de proyecto, los stakeholders y los responsables de TI. \u00bfCu\u00e1ntos &#8216;papers&#8217; para explicar las diversas y complejas variantes de calculo de puntos de funci\u00f3n en tal aplicaci\u00f3n o tal tipo de programaci\u00f3n? \u00bfC\u00f3mo los CIOs pueden ser capaces de entender estos c\u00e1lculos y usarlos para los negocios?<\/p>\n<p>Conozco Directores de CPD que tienen constantemente en su mesa una pantalla con todas las alertas para todas las aplicaciones instaladas en la infraestructura de que son responsables. Si una aplicaci\u00f3n cr\u00edtica \u2013 por ejemplo, de pagos bancarios \u2013 encuentra un problema \u2013 por ejemplo, en los archivos con los datos de pago \u2013 esta aparecer\u00e1 en rojo en la pantalla, lo que le permite reaccionar de inmediato, incluso antes que los usuarios tengan conocimiento del problema.<\/p>\n<p>\u00bfCuantos CIOs, responsable de sistemas aplicativos, responsables de un conjunto de aplicaciones tienen un panel de control en su pantalla?<\/p>\n<p>Yo no conozco a ninguno. \u00bfPor qu\u00e9? Porque la mayor\u00eda de las herramientas son complicadas de usar, con m\u00e9tricas complejas de entender, y sobre todo, no se puede personalizar el dashboard de acuerdo a los deseos del usuario (excepto Sonar). Por eso se necesita un consultor de Calidad para interpretar estos indicadores y proporcionar una informaci\u00f3n valiosa para los directores.<\/p>\n<p>Hoy hay m\u00e1s herramientas que en el pasado, pero veo muy pocas que:<\/p>\n<ol>\n<li>Pueden integrarse eficientemente en la cadena de producci\u00f3n de software desde el puesto de trabajo del desarrollador.<\/li>\n<li>Pueden mejorar la eficiencia de los desarrolladores para producir c\u00f3digo de calidad sin ning\u00fan coste \/ carga de trabajo adicional.<\/li>\n<li>Tienen una interfaz bastante sencilla y personalizable, que permite que diferentes usuarios tengan su propio panel de control con los indicadores que consideren pertinentes para su trabajo.<\/li>\n<\/ol>\n<p>Yo sigo viendo proveedores de software explicar las complejas t\u00e9cnicas que llevan a cabo sus herramientas para detectar m\u00e1s defectos y enumerar la larga lista de m\u00e9tricas que s\u00f3lo tienen sus productos, pero que s\u00f3lo sirven para un arquitecto J2EE o un consultor de Calidad. Y el mercado sigue siendo, como se\u00f1ala Olivier Gaudin, un mercado peque\u00f1o de herramientas con precios altos.<\/p>\n<p>Y consultores de Calidad siguen pregunt\u00e1ndose por qu\u00e9 no les llaman cuando tantos proyectos se retrasan o fracasan.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Volv\u00ed a pensar en el post anterior sobre las medidas del esfuerzo de proyecto, y la estimaci\u00f3n de los costes de desarrollo y de QA antes del inicio del proyecto, cuando encontr\u00e9 un anuncio en un foro donde se habla de medici\u00f3n de la Calidad de software, para una conferencia sobre el mismo tema. Ya [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-169","post","type-post","status-publish","format-standard","hentry","category-calidad-de-aplicaciones"],"_links":{"self":[{"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/posts\/169"}],"collection":[{"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/comments?post=169"}],"version-history":[{"count":1,"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/posts\/169\/revisions"}],"predecessor-version":[{"id":170,"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/posts\/169\/revisions\/170"}],"wp:attachment":[{"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/media?parent=169"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/categories?post=169"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/qualilogy.com\/es\/wp-json\/wp\/v2\/tags?post=169"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}