El mal entendido rol del arquitecto de software
Muchas veces tener un rol específico de arquitecto de software perjudica a un proyecto de software
Es un gran error establecer desde un inicio una arquitectura de software fija y estática para todo el proyecto.
Un arquitecto de software profesional debería tener las siguientes peculiaridades:
Mucha experiencia para un nicho específico de la tecnología, es este caso el desarrollo de software.
Ha pasado por muchos roles en su carrera: programador, tester, analista, etc.
Haber trabajado con varias tecnologías y dominarlas.
Capacidad de dirección y liderazgo en el equipo.
Poquísimas personas cuentan con estas características, el desarrollo de software es una carrera que exige mucho a los programadores en cuanto a mantenerse actualizados en las tecnologías, por este motivo muchos optan por un ascenso que involucre más toma de decisiones que aspectos técnicos del proyecto.
En la gran mayoría de los proyectos no se necesita un rol de arquitecto de software.
Plantear una arquitectura fija desde el inicio del proyecto es un grave error.
No confundir el rol de arquitecto con el de responsable técnico, este último es el encargado de escoger técnicamente las herramientas a usarse en el proyecto.
Al desarrollar desconocemos completamente como vamos a resolver ciertos aspectos de la solución hasta que realmente tenemos y entendemos el problema realmente.
Muchas veces se entienden o se toman mal los requerimientos.
El desarrollo ágil viene a mejorar todo esto: más entregas cortas y frecuentes, se avanza con mayor seguridad programando módulos de fácil cambio, entonces la arquitectura va tomando forma a medida que el proyecto avanza.
Una metodología ágil debería estar presente en la mente de cualquier programador profesional.
Desarrollo ágil > Arquitecto de software.
Te dejo el link gratuito de El libro negro de programador por si te intesa leerlo, o dale click a la imagen:
Top comments (0)