archivo

Archivos Mensuales: abril 2010

Me ha dado por mirar el grado de cumplimiento del principio de Pareto en mi blog y los resultados hablan por sí solos:

El 20% de los artículos publicados proporcionan el 82’90% del total del número de visitas al conjunto de artículos publicados.

O lo que es lo mismo, el principio de Pareto prácticamente lo clava.

¿Sucede lo mismo en tu blog o en tu web?

Nota: En los cálculos no he tenido en cuenta ni las visitas a la página principal del blog, ni las suscripciones.

El principio de Pareto es muy conocido y está basado en la falta de equilibrio o proporcionalidad que existe entre dos variables, de manera que se establecen entre las mismas, relaciones de poco-mucho y mucho-poco. También se le conoce como regla del 80-20 (o al revés).

Este principio se aplica en muchos ámbitos de la vida, uno de ellos es la proporción entre esfuerzo y resultado, de manera que según este principio con el 20% de esfuerzo total para realizar una actividad se alcanza el 80% de la misma.

¿Estoy de acuerdo con eso? Es difícil dar una respuesta, en cualquier caso, sí que creo que es cierto que no existe una proporción entre el esfuerzo y la consecución de objetivos (o estado de finalización de una determinada tarea), de manera que el coste de llegar hasta el final crece casi exponencialmente. ¿Es la proporción 80-20? No lo sé, creo que incluso eso es lo menos importante, lo significativo es que si se sabe enfocar adecuadamente los esfuerzos se puede mejorar la productividad.

Por tanto, quienes son capaces de identificar cuál es el 80% “bueno” son personas, equipos u empresas altamente productivas, ya que consiguen más con menos. Independientemente de que la habilidad y experiencia permitan conseguir cada vez más esta aproximación, los métodos de trabajo personales y de una organización influyen sobre manera en el rendimiento y la productividad.

Desde mi punto de vista, uno de los aspectos que te puede servir para seguir avanzando en tu desarrollo personal y profesional consiste en estar dispuesto a analizar o interiorizar visiones, aspectos, circunstancias, hechos, situaciones, comportamientos, experiencias o conocimientos que te suponen una ruptura de los esquemas, una ruptura de la forma en que sueles hacer las cosas o incluso de concebirlas.

El gran problema es que no siempre tenemos la mente (y el ego) abierto para reconocer que hay ciertos aspectos de nuestra vida, de la forma en que hacemos las cosas en el trabajo, etc… que son mejorables, de hecho como todos sabemos todo es susceptible de mejorar.

¿Por qué esas soluciones distintas a lo que solemos hacer no van a ser buenas?, ¿por qué eso que le funciona a tal persona o a tal organización no me va a funcionar a mi?, ¿por qué una visión distinta debe ser peor? No digo que se tenga que aceptar cualquier cosa por el simple hecho de ser diferente, sino que por lo menos le demos la oportunidad de analizar o aplicar a aquellas que consideremos lo suficientemente relevantes.

Para seguir mejorando hay que tener la mente abierta a sondear otras posibilidades, otra forma de hacer las cosas. Yo soy la primera persona a la que le cuesta mucho aceptar situaciones o soluciones que supongan una ruptura de mis esquemas, pero también he aprendido que si se quiere evolucionar hay que analizar y aplicar alternativas y que muchas veces estas requieren un cambio de algunas ideas o pensamientos que creíamos totalmente consolidados o lo que es lo mismo, una ruptura de los esquemas, de no ser así, estaríamos autolimitados por nuestra particular forma de ver las cosas y nos perderíamos toda la riqueza de conocimientos y experiencias que nos rodea.

Cuanto mayor sea el arsenal de posibilidades a utilizar para una posible venta y mejor se use, más probabilidad de éxito habrá para que el negocio se consume.

Un elemento de ese arsenal al que muchos no le suelen prestar excesiva atención son las referencias. Es cierto que hay clientes que no le echan excesiva cuenta a eso, pero hay otros que sí lo valoran especialmente (por ese motivo insisto tanto que hay que intentar conocer lo mejor posible a posibles clientes y que tal vez antes de lograr una primera venta con él, es necesario trabajarse el terreno desde mucho antes, a veces se consigue tener éxito rápido, pero en otras ocasiones se requiere todo un proceso).

Dado que van a existir clientes que van a valorar las referencias es necesario tenerlas todas bien organizadas (por temáticas, importes, tecnologías, clientes, sector del cliente, tipologías de servicio, duración de la prestación del servicio, año de contratación, etc…) y no menospreciar ninguna, ni tan siquiera las de menor valor, ya será decisión de la persona que va a tratar de hacer el negocio, en función de su instinto, de lo que se pretende vender y de su conocimiento del cliente, la que decidirá qué tipo de referencias incluye (si las tiene organizadas, podrá, de manera muy fácil e incluso automáticamente, si se ha desarrollado el software adecuado, construirse el portfolio adecuado).

Hay un aspecto que resulta impactante, tanto para los clientes que no prestan mucho atención a las referencias como los que sí y son las referencias en vivo, es decir, la posibilidad de que el posible proveedor concierte con el posible cliente la visita y entrevista con un cliente que ha tenido un caso de éxito con el servicio o con el producto. Si esa entrevista sale bien, las posibilidades de negocio se multiplican, por ese motivo tener una serie de clientes a los que se les pueda pedir el favor de atender a posibles clientes resulta también muy importante (tampoco es cuestión de que se les esté molestando continuamente, por lo que hay que sabar elegir muy bien las ocasiones para utilizar este as bajo la manga).

En resumen, cuando se trata de vender, creo que no hay que menospreciar ningún elemento que pueda facilitar la consecución del negocio, lo que implica por supuesto que se le dé a las referencias, la importancia que se merecen.

Tampoco descubro nada nuevo si os hablo en este artículo sobre los beneficios que tiene la utilización de un software para la realización de comunicaciones electrónicas internas, ya que al igual que el Portafirmas Electrónico permitirá una mejora en la eficiencia de los procesos, entre otros motivos por el simple hecho de evitar buena parte del trasiego de papeles, lo que tendrá consecuencias económicas positivas para la organización (algo siempre importante, pero más todavía en los tiempos actuales) y también, y por qué no decirlo, en las políticas medioambientales que se definan en el organismo.

Un sistema de comunicaciones electrónicas internas es funcionalmente muy sencillo, básicamente consiste en el envío desde un origen a un destino (o conjunto de destinos) de un documento o una serie de documentos (firmados electrónicamente o no). Sobre este esquema básico se pueden definir diferentes circuitos para el tránsito de papeles en función de determinadas necesidades.

Mi recomendación es que el sistema de comunicaciones electrónicas internas, esté integrado con una solución de Portafirmas Electrónico, ya que de esta manera se centraliza la gestión de la firma electrónica de documentos para cada persona en un único punto (independientemente de la aplicación origen), el cual a su vez se tiene que integrar con un sistema de autenticación y firma electrónica. Además es conveniente que el sistema de comunicaciones electrónicas internas esté integrado con un sistema de gestión documenta para que este sirva de repositorio de los documentos asignándosele a los mismos la información pertinente en sus correspondientes metadatos.

El combo plataforma de autenticación y firma electrónica, Portafirmas Electrónico, Sistema de comunicaciones electrónicas internas y sistema de gestión documental, conforman un conjunto de soluciones que no requieren de una gran inversión y que permitirá obtener retornos prácticamente desde el momento de su implantación y puesta en marcha.

Este plugin de Sonar me ha parecido muy interesante ya que permite definir diferentes vistas agregadas de los resultados, de manera que podemos obtener vistas por proveedor, departamento de la organización, equipo de trabajo, responsable del proyecto, etc…

Se trata, por tanto, de una forma de poder obtener conclusiones globales sobre la calidad del código y de la programación de manera objetiva (según las reglas Sonar) en función de las variables que se definan, de manera que, por ejemplo, podamos tener métricas sobre la calidad del código de las aplicaciones entregadas por los distintos proveedores de servicios de desarrollo de software o si fuéramos proveedores de estos servicios podríamos identificar qué técnicos o equipos de trabajo son los que realizan mejor código.

Se trata de un plugin de pago, 1800 USD por instancia de Sonar y año. También se puede solicitar una licencia de evaluación.

Os dejo un par de direcciones, la primera contiene la descripción del plugin y la segunda un Sonar de ejemplo donde se puede ver el resultado de utilizarlo.

Desde hace unas semanas tenemos en marcha Sonar en nuestra organización para recoger métricas realizando una revisión estática del código. Estamos muy contentos con la implantación de la herramienta y realmente le estamos viendo bastantes posibilidades de cara a un futuro, no obstante es algo que tenemos que tomarnos con prudencia, ya que cada programa es un mundo y no podemos juzgar de antemano y sin un estudio en profundidad de las métricas y de las circunstancias del producto si el mismo a nivel de codificación ha resultado de calidad o no. Hay mucho que trabajar en este sentido, ya que independientemente de lo anterior, una vez analizadas sus bondades y defectos nos permitirá por un lado mejorar la mantenibilidad de los sistemas y la calidad general del producto.

Uno de las cosas que más nos llamó la atención fue que para casi todos los proyectos para los que recogíamos métricas el valor de Cobertura era 0% o lo que es lo mismo, que el 0% del código de gran parte de los sistemas de información de la casa no esta cubierto por pruebas unitarias.

Una vez descubierto esto (no es que hayamos descubierto ninguna maravilla, simplemente es algo que con el día a día no se prestaba atención, pero que sin embargo son tan obvios y llamativos los datos que nos da Sonar que no podemos dejar pasarlo por alto), vamos a meter mano en este tema, porque muchos errores que se detectan en la fase de pruebas del producto o en producción se podían haber detectado previamente con unas sencillas pruebas unitarias, de esta manera mejoraremos la eficiencia de funcionamiento de nuestra Oficina de Calidad, ya que tendrán que dedicar menos tiempo a detectar y reportar este tipo de incidencias y por supuesto reduciremos el número de errores que nos llegan a producción.

De las pruebas unitarias se habla mucho, incluidos los propios proveedores de servicios de desarrollo de software, pero después queda demostrado que del dicho al hecho hay mucha distancia.

La clave de todo está en el equilibrio, si intentamos cubrir con pruebas unitarias todo el código, lo mismo cuesta más el collar que el perro, pero no verificar nada tiene tan poco equilibrio como lo anterior. Por lo menos sería necesario que se verificasen los métodos más conflictivos, comprobando si en función de distintas posibilidades se ejecuta o no el código contenido en los mismos. Como esto dependerá mucho de la complejidad de las aplicaciones, el factor de cobertura será distinto entre ellas, pero una cosa es esa y otra cosa la nada.