En el artículo del investigador Robles, publicado el año 2002 con el título “Ingeniería del Software Libre. Una visión alternativa a la ingeniería del software tradicional” se menciona que uno de los grandes problemas de la ingeniería del software ha sido y es que no ha sabido adaptarse consecuentemente a su propia definición. Esto es algo que se puede considerar como una especie de traición a sí misma, a sus propios fundamentos. El enfoque sistemático y cuantificable ha tenido siempre como barreras las propias de las formas en las que el software se ha desarrollado y distribuido. El formato binario del software, la opacidad en los modelos de negocios, los secretos y barreras comerciales se encuentran entre las principales causas que han imposibilitado estudios cuantitativos y cualitativos a gran escala del software cuyos resultados pudieran ser verificados sistemáticamente por equipos de investigación independientes. Y es aquí donde el software libre puede dar nuevos aires a la ingeniería del software. Desde hace más de una década, el software libre ha venido experimentando un gran auge en cuanto a uso, aceptación y, por supuesto, desarrollo. La emergencia de Internet junto con las características de las licencias que “invitan” a todos a formar parte del equipo de desarrollo, han propiciado que no sólo se pueda contar con el código fuente, sino tomar medidas de los archivos de las listas de correo donde viene plasmada la comunicación del proyecto, los repositorios de versiones gracias a los cuales es posible ver la evolución, etc. De todas estas fuentes se puede extraer una gran cantidad de información de interés, en la mayoría de casos incluso de manera automática. Por tanto, el software libre ofrece la oportunidad de conocer más a fondo el proceso de concepción del software, aportando nuevas evidencias y experiencias.
En el reporte técnico sobre ingeniería del software, el investigador Callejas, en el reporte publicado el año 2006 con el título “La ingeniería del software libre y sus herramientas aplicadas a proyectos informáticos”, señala que la ingeniería del software libre permite que la metodología para el desarrollo de aplicaciones se lleve a cabo de manera amplia, ya sea utilizando un enfoque estructurado de análisis y diseño, un enfoque orientado por objetos o algún otro tipo de paradigma; además no limita a los analistas y diseñadores a utilizar una técnica de modelado y diagramación, como el lenguaje de modelado unificado o el modelado estructurado, ni ofrece recomendaciones que permitan evaluar el nivel de calidad de una organización, como lo promueve el modelo de madurez y capacidad del software. Más bien se fundamenta en que se debe trabajar en equipo, con el fin de fomentar una mayor participación de elementos para el desarrollo óptimo de aplicaciones, sin dejar de lado la utilización de técnicas y herramientas. Además, se debe tener en cuenta el tiempo y los recursos asignados para cumplir con las tareas involucradas, evitando la pérdida de tiempo o abandono de los proyectos. Con la ingeniería del software libre se pretende promover el uso de sistemas operativos, lenguajes de programación, bases de datos y demás herramientas de software de carácter libre para la creación de aplicaciones.
Robles, en el artículo mencionado en párrafos anteriores, menciona que la ingeniería del software libre no sólo pretende ser beneficiosa para la ingeniería del software tradicional, también pretende ser en gran medida, para el software libre. Si los cálculos de plazos y de costos en los proyectos de software estudiados tradicionalmente son difícilmente cuantificables, dentro del mundo del software libre son prácticamente utópicos. En cierta medida, la ingeniería del software libre pretende despojar de esa “magia” que parece que es intrínseca a los desarrollos de software libre y cuantificar unos parámetros que permitan predecir con exactitud costos, plazos y talento humano. Como consecuencia, aunque se pueda considerar que el software libre adolece de estos métodos en contraposición a las formas de desarrollo tradicionales, también es cierto que, por los motivos que se están desarrollando, no le falta precisamente potencial para que esta situación cambie en el futuro. La comparación entre diferentes proyectos de software libre, así como el análisis de aquéllos que tienen éxito también debe servir para que la experiencia en la creación de software libre quede plasmada en conocimiento para proyectos futuros. En este sentido, paradójicamente, la ingeniería del software libre puede ser la puerta de entrada de métodos auspiciados por la ingeniería del software tradicional que se muestren exitosos o eficaces en proyectos de software libre.
No hay comentarios:
Publicar un comentario