Showing posts with label calidad-codigo. Show all posts
Showing posts with label calidad-codigo. Show all posts

Friday, May 25, 2018

"Tirar Código"


Entre los años 1999 y 2000 me inicie en el mundo del desarrollo de software. Desde esos años vengo escuchando la frase “tirar código”. La misma hace referencia al acto de escribir código fuente o “programar”. No tengo claro de dónde viene la frase, ya que en el idioma Ingles (lingua franca de la Ingeniería de Software), se utilizan las frases “to code”, “to write code”, las cuales podrían traducirse como “codificar” (programar) y “escribir código”. 

“Tirar código” es una frase común entre profesionales de distintas edades, se la he escuchado a personas nacidas en los 60 y llegando hasta el 2000. Un día, reflexionando sobre temas de calidad del software y mejores prácticas, me llego a la mente la frase y de pronto sonó inapropiada. En la República Dominicana cuando algo o alguien es “tirado” (adjetivo) tiene una connotación negativa: descuidado. “Pedro trabaja todo tirado”, o su versión más coloquial “Pedro trabaja to’ tira’o”, significa “Pedro es poco profesional o descuidado, no pone atención en los detalles”. 

Anoche mientras le hacia la observación, repetida en muchos círculos, a un grupo de estudiantes universitarios de que cambien la frase “tirar código” por “escribir código”; me puse a pensar sobre cuales podrían ser los orígenes de la frase. Realmente me da mucha curiosidad el saber 

¿Cómo pasamos de “to code / to write code” a “tirar código”?

Si alguien tiene, o cree tener, la respuesta o una idea favor escribir en los comentarios.

Sunday, June 12, 2016

Profesionalismo o Suicido de Clases

En SoftTopia cada producto de software, desde la más pequeña utilería hasta la aplicación empresarial más grande, cuentan con un Sello de Calidad. Ese sello mide la calidad del release del producto tanto interna como externa. La externa indica el grado de cumplimiento de las funcionalidades del paquete comparado con los requisitos de los clientes. La interna indica que tan fácil es de mantener vivo el proyecto respetando los parámetros de tiempo y costo esperados por los involucrados (mantenedores, clientes, propietarios, etc.).
Software Package Grade A


Supongamos que ese “sello” es una normativa obligada en SoftTopia, por tanto, ningún software puede ser liberado sin esta información.

Caso A

SoftTopia implemento esa normativa desde la creación del primer paquete de software pues ellos ya tenían una cultura orientada a la calidad cuando los alcanzo la revolución tecnológica.

Caso B (nuestro)

El primer programa de computadoras en SoftTopia fue creado en los 1840s. 175 años después, y con millones de productos de software en uso, los líderes de SoftTopia lanzan la normativa de calidad. SoftTopia es una sociedad de libre comercio, así que solo exigen que la etiqueta de calidad este presente, pero son los clientes quienes deciden cual software comprar y utilizar. Sin embargo, algunas industrias son reguladas por su impacto en los procesos sociales, algunas de esas son: el sector salud, hidrocarburos, gobierno, producción de alimentos, transporte público, aviación civil e instituciones de defensa.

¿Que pasara luego?

  • ¿Qué harán los profesionales y empresas de desarrollo de software que no puedan crear productos con un nivel de calidad aceptable para el cliente regular?
  • ¿Cómo manejara una empresa del estado al darse cuenta que casi todos sus suplidores entregan paquetes de software con una calidad por debajo de la exigida por la nueva regulación? 
  • ¿Qué harán las empresas privadas cuando sus clientes se den cuenta que un gran porcentaje de sus costos operativos son causados por los costos de mantenimiento de software sin calidad?
  • ¿Cómo venderán sus programas de clases las universidades e instituciones de formación para ingenieros de software al darse cuenta de que sus egresados no están capacitados para cumplir la nueva normativa?


Rompamos ahora el cuento de SoftTopia

Si poco a poco, los propios profesionales del software y las empresas del sector empezaran a publicar, voluntariamente, el nivel de calidad interno de sus productos: ¿Seria esto profesionalismo o suicidio? 

¿Qué piensas? …

Saturday, June 4, 2016

Ideas Locas

Imagina que los Dioses del Código te dieron una varita
Varita mágica
mágica*. Esta impresionante herramienta te permite analizar, instantáneamente, una base de código y darle una puntación de 0 a 10 acerca de su mantenibilidad; donde cero (0) significa imposible de cambiar y diez (10) realmente fácil de cambiar.

De repente, recibes tres propuestas de consultorías de clientes distintos (A, B y C). Ellos te están requiriendo la implementación de nuevas funcionalidades en su producto principal. Utilizando tu varita mágica determinas que:

  • El Producto A tiene un índice de mantenibilidad de 6,
  • El Producto B tiene uno de 1.5, y
  • El Producto C tiene un índice de mantenibilidad de 9

Tus clientes potenciales te aclaran que sus respectivos productos son de misión critica y que el impacto de introducir nuevos defectos podría ser catastrófico. Por tanto, ellos van a transferir ese riesgo a ti: cualquier defecto encontrado durante un periodo de validación de dos meses deberá ser resuelto lo antes posible y sin costo alguno.

Asumiendo una estrategia de precios X (basada en tiempo, basada en esfuerzo, etc.), ¿podríamos
  • Cobrarle al Cliente C la tarifa regular?
  • Cobrarle al Cliente A la tarifa regular ajustada (multiplicada) por algún factor basado en el riesgo (inversamente proporcional al índice de mantenibilidad)?
  • Simplemente descartar el Cliente B y evitar el riesgo?

¿Me sigues?

  • ¿Podríamos educar a nuestros clientes utilizando una estrategia de precios la cual refleje directamente el nivel de riesgo y esfuerzo que debamos asumir al trabajar con productos de software desordenados (baja mantenibilidad)?
  • Con el tiempo, y algunas experiencias duras, ¿Estarán nuestros clientes más vigilantes acerca de la calidad de su base de código, y tal vez comiencen a requerir mayor calidad a todos los desarrolladores, tanto a lo interno como fuera de su organización?

* No esperes a los Dioses, puedes utilizar SonarQube, PMD, ReSharper, Checkstyle, y muchas otras.

Subscribe to our mailing list

* indicates required
Email Format