Lineas de Producto Software

Hasta este momento había comentado los Modelos de Software Factory ( I , II , III ) en una serie de artículos que aún esta pendiente de cerrarse, en ellos nos centramos en como presentar el modelo al cliente y como gestionar la producción interna así como los éxitos y beneficios de cada uno.

En este artículo vamos a centrarnos en como organizar nuestra producción desde el punto de vista Metodológico y Técnico con dos claros objetivos:

  • Ahorro de costes.
  • Mejora del Time to Market.
  • Alta calidad del producto.
Evidentemente el que encuentre la manera de conseguir este trinomio y mantenerlo en el tiempo ha conseguido encontrar el Santo Grial del Software. No va a ser tan fácil de conseguir como muchos autores promulgan, pero sin duda las Líneas de Productos Software es el camino.

En general los dos sistemas de reutilización más usados, son el Individual que se basa en el Copy & Paste del programador y el Oportunista que ocurre cuando un componente se parece a otro que hicimos en el pasado y lo encajamos con calzador.

Siempre lo que debemos buscar es una reutilización gestionada, basada en una planificación y en la que pensemos desde el principio de los desarrollos.

Las Líneas de Producto Software (LPS) o Software Product Lines (SPL), para el que prefiera documentarse en inglés, proponen un sistema de producción basado en la reutilización de componentes en un determinado dominio. Si nos fijamos en otra industria como puede ser la del automóvil, podemos ver como una misma cadena puede producir hasta automóviles con 1000 diferencias entre si, aplicando este sistema podemos tener un linea de producción capaz de generar multitud de variantes en una tipologia de SW.


Evidentemente montar este sistema no es cosa de un día, ya que tenemos que tener una metodología de desarrollo que nos permita generar activos sw o piezas de la configuración, almacenarlas en un repositorio, para a posteriori poder ensamblarlas para componer otro producto de diferentes requerimientos.

Naturalmente otra necesidad es saber construir una Arquitectura a medida de este paradigma de producción, ya que no tiene sentido tener un repositorio de activos sw, si el coste de ensamblaje de los mismos es más alto que el de construcción..

Queda mucho trabajo por hacer.. y mucho por leer, por eso empecemos cuanto antes..

Bibliografía

http://www.softwareproductlines.com/
http://bradapp.blogspot.com/2008/03/software-product-line-architecture-and.html
http://www.ieee.org.ar/downloads/2006-montilva-productos.pdf
http://www.sei.cmu.edu/productlines/spl_factory.html
http://worldofreuse.blogspot.com/