viernes, 10 de abril de 2009

Factores económicos y Humanos de la Ingeniería de Software

Software Capital Intelectual de la empresa

Hoy, más que nunca, la economía más productiva depende de la infraestructura y los sistemas técnicos. Dentro de este panorama, la infotecnología, por ella misma y por su papel instrumental en las demás tecnologías, juega un rol principal. Y dentro de la infotecnología, el software siempre está presente.
Hay una forma brutal de comprender esta función, mirando su lado oscuro, observando por ejemplo lo que sucede cuando alguna pieza de software, por error, avería o sabotaje, decae bruscamente, falla, se interrumpe o se bloquea. Las consecuencias económicas pueden ser muy importantes, cuando no desastrosas, valorables en miles de millones de dólares en todo el mundo, monto que no hace más que aumentar debido a la creciente capilaridad de la informática.
Pero, más allá del plano económico, lo peor es que, a veces, las consecuencias afectan a una parte más general del flujo de actividades sociales, incluyendo pérdidas de vidas humanas, lo que demuestra la trascendental clase de rol que juega el software en las sociedades desarrolladas. 

el conjunto de conocimientos precisos para desarrollar software es algo difícilmente disponible y por ello el proceso de acopiarlo, estructurarlo e implementarlo es un proceso de descubrimiento y de diálogo, es decir, de aprendizaje. No es éste un proceso individual, sino un entramado de procesos individuales, porque interviene mucha gente con diferentes intereses y especialidades, trabajando generalmente en grupos, que intercambian conocimientos, aprendiendo unos de otros.
• Se requiere un diálogo entre el equipo de diseño y los usuarios, entre otras cosas para descubrir y definir los requisitos. Es preciso que los usuarios se apliquen a comprender mejor lo que necesitan.
Planteando que el diseño mismo ha de ser evolutivo, debería haber un diálogo entre el equipo de diseño y el diseño propiamente dicho, lo mismo que entre los usuarios y el diseño 

Los desarrolladores deben trabajar para comprender mejor cómo construir sus sistemas de forma efectiva.
El aprendizaje se potencia en la medida en que las herramientas de desarrollo ayuden a diseñadores y programadores a comprender mejor lo que están haciendo. Estas herramientas deberían estar construidas como herramientas para pensar.
Al mismo tiempo, se requieren herramientas que contribuyan al proceso de comunicación interpersonal, puesto que estamos comprometidos en un proceso social de aprendizaje o construcción colectiva de conocimiento.

Desde un punto de vista económico, mantener software significa aportar esfuerzos (costes) para conservar y, si es posible, acrecentar el valor de este bien de capital. Pero dado que, como se dijo, la estructura del capital de producción cambia constantemente, el diseño de bienes de capital debe evolucionar para encajar con las nuevas estructuras del capital, y, aún mejor, debería contener el embrión de los cambios previsibles. Esta estrategia del embrión es imprescindible para minimizar los esfuerzos (tiempo, costes) necesarios para hacer evolucionar el software.

En el caso del software, una parte importantísima de la estructura de capital es la tecnología conexa: sistemas operativos, plataformas de hardware, capacidades de red, otros sistemas y herramientas de software, los progresos de orden metodológico, etcétera. Sus cambios implican un cambio del entorno propio del ciclo de vida del software. Así, el cambio del software es coevolutivo con su entorno propio y en buena medida es impredecible. Tome nota el lector de que un peligro difícil de evitar es el de buscar la optimización del software desarrollado con respecto a algún apartado muy concreto del entorno, por ejemplo, el sistema de gestión de base de datos. Tal proceder puede ir en contra de la evolutividad de este software, teniendo en cuenta que el software es un bien duradero, de desarrollo lento y muy costoso.

No hay comentarios:

Publicar un comentario

De Interés.!