Altenwald Blog
Blog sobre programación, software libre, redes, servidores, ...
Menú
Acerca de... ¿Quiénes somos? RSS
Categorías
sistemas (70) desarrollo (128) historias (25) productividad (49) seguridad (10) libros (25) noticias (45) opinión (35) humor (3)
Etiquetas
programación (111) desarrollo de software (79) erlang (75) opinión (37) noticia (36) libros (28) servidores (26) desarrollo web (24) base de datos (24) administración de sistemas (23) php (22) desarrollo ágil (22) empresa (21) otp (20) ruby (19) ingeniería de negocio (18) elixir (18) desarrollo profesional (16) redes (16) seguridad (14)
2009-07-30
3 min opinión
¿Ingeniería del Software?
[ opinión ]  [ desarrollo ] 

El creador de menéame, Ricardo Gallí, escribió hace unos días un artículo en su blog bastante interesante sobre lo que respecta a la llamada Ingeniería del Software. Ricardo sostiene que el título de "ingeniería" ha sido dado de forma errónea al desarrollo de software y, en muchos aspectos, tiene razón.

Rescato la lista que él mismo recopiló de Tom DeMarco, sobre un artículo de opinión publicado bajo el título Software Engineering: An Idea Whose Time Has Come and Gone? (Ingeniería del Software: ¿Una idea cuyo tiempo pasó?), hablando de su libro:

Esto nos indica que el software debe de realizarse con un fin concreto, con una utilidad en mente y, el hecho de prefijar, fijar o realizar unos requisitos sobre él, no son más que el ejercicio de la práctica y las necesidades reales que quieran cubrirse de forma eficiente. Cambiando algo significativamente.

Otro aspecto que se enfatiza es el tema del control. ¿El control excesivo es perjudicial para un proyecto de "ingeniería" del software?

Lo que es casi obvio para la mayoría de profesionales, es que el desarrollo de proyectos en cadena es bueno emplear metodologías tradicionales, puesto que son cosas que se han podido medir durante mucho tiempo, no suelen cambiar mucho y se realizan siempre de la misma forma. E igualmente, el equipo humano, su creatividad y destreza no son tan importantes como el procedimiento marcado para realizar el programa en el tiempo estimado.

Por otro lado, los proyectos a medida, que se realizan con una especificación de requisitos variable y que pueden ir modificándose en el tiempo con la necesidad del cliente, requieren de otro tipo de metodologías que den otro tipo de control a los desarrolladores y mayor libertad a los programadores. En este caso sí es muy importante que los desarrolladores (analistas) sepan cercanamente lo que se hace y cómo se hace, que sepan lo que cuesta realizar el trabajo y, sobre todo, que sean los programadores los que digan lo que van a tardar en cada tarea. Aproximadamente.

Esta última forma es el que más proyectos genera para la industria de creación de software y, dado que la llamada ingeniería es tan liviana en este caso, quizás sí, quizás el nombre no sea todo lo acertado que debiera... quizás necesitemos otro nombre para nombrar lo que hacemos.

Autor
Manuel Rubio
Programación Concurrente & Erlanger