GallegO escribió:
Hola Diego:

Interesante si, controversial por qué? No debería ser la producción de software como lo dice en el articulo?

No se si debería ser así, eso es lo controversial ;) Los puntos interesantes y controversiales son:

  • No necesitan ni quieren creatividad en los desarrolladores a la hora de "codificar". Si quizás a la hora de mejorar el proceso.
  • Utilizan prácticas estándar que se usan en cualquier otra ingeniería, salvo en la "ingeniería de software".
  • Tomando el costo de dolar por línea, tienen un costo muy grande (si bien se contradice un poco en los últimos 3 párrafos).
Creo que la conclusión que se puede sacar es que lo que este grupo hace es verdadera ingeniería de software.

La pregunta es: ¿Se construyen mejores sistemas usando ingeniería de software? Seguramente la respuesta a esta pregunta dependa del tipo de sistema. Los puntos interesantes que se me ocurren que ayudan a responder esta pregunta son:
  • Hacer software no es como hacer un edificio, o un avión, o un coche. Con Smalltalk se ve bien esta diferencia creo, ya que el mismo proceso de diseño, como resultado, te deja no un plano sino el software funcionando. Podes tirar, romper, volver a construir sin problemas y con costos ínfimos comparados con probar un diseño de edificio y tirarlo abajo si no sirve.
  • En la gran mayoría de los casos, el software que hacemos no mata gente si funciona mal. Esto esta asociado también a que, en caso que nuestro software genere daño, es muy poco probable que los programadores sean penalmente responsables por ello, a diferencia con lo que ocurre con otras disciplinas. Si  un ingeniero civil hace un puente y este después se cae, el ingeniero va preso o en el mejor de los casos tiene que responder económicamente por ello.
  • Los sistemas que hacemos admiten entregas y funcionalidad parcial. Esto es uno de los puntos que hace viable el "release early, release often" de XP. Algunas veces no sirve esto, ya que no se puede hacer un uso significativo del sistema si no esta todo terminado.
Todos estos puntos, sumado al muy interesante comentario de Sergio acerca de la gran necesidad que hay hoy en día de informatización, hace que nos toleren nuestras metodologías y formas de trabajar. No se si toleren es un buen término, ya que en el caso particular de laburar bien con una metodología ágil como XP terminas dando un buen producto a tu usuario, pero siempre que se den los supuestos que antes nombraba.
Quizás, haciendo una hipótesis no muy útil sobre un posible futuro, cuando ya no sean tolerables entregas parciales, corrección de bugs despues de entregado, y seamos penalmente responsables por los daños que produzca nuestro soft, no nos quede otra que hacer ingeniería de software para poder vivir del desarrollo. Obviamente uno podrá seguir programando en el debugger y haciendo XP, pero quizás no para proyectos significativos. Seguramente que hacer soft en este escenario va a ser algo mucho menos interesante y menos divertido para nosotros que lo que es hoy en día.

Saludos,

Diego.

P.D.: Gracias Fedi por el link original ;)


--~--~---------~--~----~------------~-------~--~----~
  Ha recibido este mensaje porque está suscrito a Grupo "clubSmalltalk" de Grupos de Google.
 Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a [email protected]
 Para anular la suscripción a este grupo, envíe un mensaje a [EMAIL PROTECTED]
 Para obtener más opciones, visita este grupo en http://groups-beta.google.com/group/clubSmalltalk?hl=es.
-~----------~----~----~----~------~----~------~--~---

Responder a