La siguiente pregunta se ha convertido ya en todo un clásico ¿es el software un arte o una industria?
Si entendemos una industria como un conjunto de procesos y actividades bien definidos encaminado a obtener un producto con la calidad que el usuario requiere, empleando unos recursos de manera eficiente… no tendremos otro remedio que admitir que no, que el desarrollo de software no es una industria. Algunos lo llaman arte, otros artesanía, que según la Wikipedia, artesanía se refiere a lo»realizado de forma manual por una persona en el que cada pieza es distinta a las demás»
- En primer lugar, precisamente, su juventud. Realmente todavía no tenemos una metodología y un proceso de producción de software maduro y asentado.
- En segundo lugar, la construcción a medida. En las grandes corporaciones no hay un software estándar. Todo se hace a medida según los requirimientos del negocio. Precisamenete porque las reglas de negocio de cada empresa son distintas ya que en ellas se basa su diferenciación y know how respecto a la competencia.
- En tercer lugar la poca reutilizacion del software ya existente. Aunque existen herramientas de gestión de activos (RAS) y la arquitecturas SOA Se van implantando paulatinamente (tiene en la reutilizacion de servicios de negocio ya existentes uno de sus principales objetivos)
La situación del día a día se muestra en la siguiente tira humorística (vía sinergiasincontrol.com)
En la práctica las metodologías no están bien implantadas, tampoco ampliamente difundidas. Esto hace que este sector se parezca más a la artesanía, donde predomina el trabajo «hecho a mano», que una industría con unos procesos de fabricación claros, unos planos y diseños de los que partir, un control de calidad efectivo y un producto bien hecho con garantías empleando los recursos de manera eficiente.
El primer objetivo de una Arquitectura y Metodología debe ser la industrialización del software, para ello:
1.- deben ser sencillas de explicar y de entender
2.- deben asegurar una reutilizacion real de los activos sotware. Me temo que en la práctica apenas se consigue.
3.- deben reducir los skills necesarios en los desarrolladores
4.- deben permitir cambios rápidos en la especificaciones, diseño e implementación para conseguir un rápido time to marketing
Veremos su evolución con el paso de los años…
15/02/2010 at 18:56
Estoy contigo en que, a día de hoy, la informática todavía tiene mucho de arte y poco de industria. Si fuese una industria uno esperaría siempre resultados deterministas: 1 1 = 2. Los que trabajamos en esto sabemos que casi siempre no es así. 1 1 vale 2 pero a veces tres, y si aplicamos el workaround de turno volvemos a conseguir que valga 2, pero con la siguiente versión del producto / framework / etc. entonces vale 4 y hay quehacer una migración…
Los que venden el ‘pescado’ en este sector nos siguen intentando hacer creer que ellos tienen la metodología / producto / framework / etc. definitivo…. y picamos, pero con el tiempo se demuestra que no….
Espero que esto mejore con el tiempo, si con todos estos problemas nuestro sector es de los que mas avanzan tanto tecnologicamente como económicamente no quiero imaginar cómo será esto cuando se convierta en una industria y deje de ser un arte. Los desarrollos actuales nos parecerán pinturas rupestres 😉
bye!
PD: sigue publicando más temas interesantes como este.