lunes, septiembre 10, 2007

¿Debería un arquitecto programar?

lunes, septiembre 10, 2007 por Martín

Sin duda, éste es el tema que más tinta levanta y ha levantado dentro del mundo de la arquitectura del software. ¿Debería un arquitecto programar? ¿Debería mancharse las manos o quizás debería permanecer distante trabajando en los aspectos funcionales y no funcionales de la aplicación?

Desde luego, opiniones hay para todos los gustos. Hay quien aconseja huir de los denominados ivory-tower architects o que no se corta en afimar que los arquitectos ágiles escriben código. Hay incluso famosos arquitectos que no se cortan en afirmar que un arquitecto debe escribir código.

En el otro lado del ring están las personas que piensan que los arquitectos deben saber cómo programar, deben tener bastantes años de experiencia, pero a la hora de la verdad deben actuar más como estrategas de la compañía mezclando diferentes roles como visión empresarial, liderazgo, análisis financiero, sin necesidad de tener que escribir código.

El caso es que la asociación internacional de software architects (IASA) ha publicado tiene una encuesta online en la que pregunta cuanto debería programar un arquitecto de software. Y el resultado hasta ahora es este:



¿Qué os parece? ¿Coincidís?

comments

5 Respuestas a "¿Debería un arquitecto programar?"
Ferdy dijo...
2:50

Je, je, en la opción c debe estar mi voto. Por cierto, tu no te has mojado. ¿Cual es tu elección?

Te recomiendo la lectura del post de Simon Brown al respecto (de hecho te recomiendo todo el blog en si), que también aparece en la encuesta de IASA como foro de discusión (si no recuerdo mal, la encuesta la inició el mismo). Lo más interesante son las diversas opiniones que aparecen, algunas de ellas muy interesantes.

PD: esta encuesta la vi hace un año más o menos, y las cifras de votos eran mucho mayores que las actuales, aunque la distribución, si no recuerdo mal, era similar. Algo raro debe haber pasado.


Martín dijo...
9:57

La verdad que el post de Simon Brown estaba en los enlaces de mi entrada, lo que pasa es que me equivoque con un tag href y salia el enlace apuntando a mi blog, ahora ya está arreglado.

Sobre la encuesta, pues no lo sé, yo he llegado a ella por un post reciente en otro blog. Quizás la hayan reseteado.

Y sobre mi opinión, yo me situaría en la posición gallega de que depende mucho de la compañía. Pero bueno, olvidándo matices e imaginando una empresa de tamaño neutro, yo votaría por la del 20%. Me inclinaría también por la de "cuando sea necesario" pero me parece una opción demasiado ambigua, porque el "cuando" no está nada claro.

Claro que mi 20% no sería directamente código del proyecto sino más bien pruebas de concepto, pequeñas larvas de proyectos futuros, evaluaciones, en fin, código real que demuestre que la arquitectura no es simplemente humo o un montón de hojas de papel sino que se ha hecho trabajo de campo detrás de ella.


josé M. Aguilar dijo...
22:09

Hola. Interesante pregunta, Martín.

Aunque la analogía con el mundo de la construcción es directa ("un arquitecto no pone ladrillos"), creo que estamos ante un caso bastante diferente.

En el mundo del software, un arquitecto debería conocer con un cierto nivel de profundidad la tecnología sobre la que se construirán sus soluciones para no tomar decisiones incorrectas.

Por tanto, la programación debe ser importante para el arquitecto como forma de permanecer en contacto con la vida real y poder diseñar soluciones desde un punto de vista más práctico. Alquien que no desarrolle casi nunca no dará la talla "cuando sea necesario" (opción c), a no ser que sea necesario muy a menudo, claro!

Así que, en mi opinión, el arquitecto debería desarrollar siempre que le sea posible, si es posible en proyectos reales y como mínimo, coincidiendo con Martín, debería desarrollar pruebas de concepto, esqueletos o plantillas.

De esta forma, a la vez de mantenerse actualizado técnicamente, las tareas de más alto nivel propias de su puesto se verían enriquecidas con su experiencia en desarrollo, dando lugar a planteamientos más reales.

(uff, perdón por la extensión del comentario, me parece un tema muy interesante)


CarlosBlanco dijo...
0:16

Imaginemos el arquitecto de la nueva torre CAJASOL, próximo rascacielos de Sevilla y ve como uno de los albañiles pone una pared de forma que no le gusta, y decide hacerla el mismo lo que le lleva apenas 8 horas. Probablemente este arquitecto ponga los ladrillos como nadie, y esa paré sea fotografiada por todos los japoneses que vengan de excursión, pero en mi simple opinión, esa no era su función, pero llegado el caso podríamos suponer que como nuestro arquitecto es un superfiera poniendo ladrillos, lo que está haciendo para mostrar a un par de albañiles becarios como se hace, con lo que esa paré (que en un futuro será fotografiada por los japos anteriores), será una clase magistral que conseguiran que esos becarios albañiles pasen a becarios senior con lo que en ese caso está casi justificado.
Pero, si para dicho rascacielos están trabajando 2000 personas (un poné) a un sueldo medio de 1.000€ (mas que medio bajo, por unas 160 horas mensuales) durante las 8 horas que ha estado creando su superpared, no ha estado comprobando que el resto de la obra ha seguido según lo planeado con sus controles de calidad y seguridad.
Y ahora haciendo cuentas, si 1.000€ son por 160horas y 2000 personas han trabajado durante 8 horas son 16000 horas de trabajo sin control, entre 160 horas son el equivalente de 100 meses de un trabajador a 1.000€ son 100.000€ con lo que la pared tiene que ser una pared SUPERCOJONUDA para pagarla a ese precio.
No digo que no se hagan cosas pero hay que tener en cuenta en el contexto que trabajamos.
Por supuesto por si alguno de había despistado hablaba de código y siempre en su justa medida, si lo que necesitamos para terminar la torre es la pared, y los que firman el cheque de la obra vienen dentro de 8 horas la tendrá que hacer quien mejor y mas rápido la haga, eso si, sabiendo que nos va a costar los 100.000€

(p.d. me reservo el derecho de publicarlo en mi blog)
saludos.


Martín dijo...
8:32

Gracias por vuestros comentarios.

José, no te preocupes, cuanto más extenso e interesante mejor.

Carlos, cualquier cosa que comentes puedes publicarla en tu blog, y en cualquier parte. ¡Faltaría más!