Gerencia de Proyectos - Roles Funcionales Parte V: Líder de Desarrollo

enero 28, 2010 Posted by gguillenb No comments

Dentro del conjunto de personas que participan en el proceso de desarrollo de software, quien participa en la función de Líder de Desarrollo, es el encargado de realizar el enlace de la arquitectura general creada por el Arquitecto de software,  y los desarrolladores, de este modo se  ensambla la visión de la arquitectura a nivel del código de desarrollo de software.

¿Qué es un Líder de Desarrollo?

 
La gestión del desarrollo es el punto medio en el camino entre ser un desarrollador de soluciones y el arquitecto de software. La actividad principal del líder de desarrollo consiste en orientar a los miembros del equipo de desarrollo sirviendo como mentor y apoyándolos cuando tienen problemas que no les permite continuar con el proceso. En este sentido, utiliza su experiencia a nivel de desarrollo de software en pro de generar aplicaciones de calidad, que permitan optimizar el uso de los recursos de software y hardware, y de igual modo generar código fácil de entender y mantener.


El Desarrollador Líder es el responsable de la creación de las especificaciones del programa de trabajo que los desarrolladores van a utilizar en el proceso de desarrollo tomando como base la arquitectura diseñada. Este proceso refina la visión del Arquitecto de Software con la finalidad de hacerlo práctico para los desarrolladores. Este proceso es muy similar a la selección de materiales para la construcción de una casa, el Arquitecto especifica un exterior resistente para soportar los elementos y el Líder de Desarrollado especifica qué tipo de ladrillo se debe usar. Para un proyecto de desarrollo el Desarrollador Líder elige las metodologías y técnicas que serán utilizados por los desarrolladores para resolver problemas específicos.  


Comenzando como un Líder de Desarrollo

 
La mejor manera de convertirse en un Líder de Desarrollo es  llegar a ser un buen programador, debido principalmente a que está en una constante evaluación de las distintas formas de crear soluciones y de igual modo es capaz de ver los patrones de arquitectura asociados con la programación. El Líder de Desarrollo comienza con el dominio de las competencias clave de un desarrollador, añadiéndose la capacidad de convertir los conceptos, requerimientos y el diseño arquitectónico en soluciones de software. El desarrollador debe tener una visión amplia de las tareas y actividades que se le asignan, enfocándose en la reutilización de los componentes de software a desarrollar.


¿Qué hay en su caja de herramientas?


Las herramientas que el Líder de Desarrollo debe tener o tomar en cuanta están relacionadas con el campo o área del desarrollo de software en la cual se desenvuelve, en este sentido un programador o desarrollador experto en sistemas AS/400 deberá conocer el sistema operativo y todas las herramientas de codificación de programas propias de esta plataforma, lo cual le permitirá fungir como líder de desarrollo para un equipo a nivel de sistemas AS/400, sin embargo no así para un equipo de desarrolladores a nivel de Java. Este conocimiento a nivel de las distintas plataformas, le dará al Líder de Desarrollo el nivel de entendimiento necesario para llevar a cabo las actividades de guía y liderazgo del equipo de desarrollo, y de igual forma para la creación de las especificaciones de programa. Dentro de su caja de herramientas debe tener conocimientos relacionados con diagramas de flujo, diagramas de clases, Diagramas Entidad Relación (ERDs), y una variedad de técnicas visuales para expresar claramente las especificaciones de programa.


Una de las herramientas más utilizadas para llevar a cabo la gestión del desarrollo está relacionada con la gestión de versiones. Este es un sistema de control de código fuente, el cual permite llevar a cabo el seguimiento de las nuevas funcionalidades en el código, quién realizó el cambio y por qué, y mantener las anteriores versiones con las diferencias del código anterior..


Debido al nivel de conocimiento del Líder de Desarrollo, este debe garantizar que el código que se esté generando cumpla con estándares de calidad, lo cual representa una oportunidad para entrenar al equipo de desarrollo en los métodos y estilos de programación. Esto se lleva a cabo mediante la evaluación y revisión del código generado. Este proceso de evaluación y revisión es una parte importante tanto en la calidad del sistema que se está construyendo como para el perfeccionamiento a largo plazo del  equipo de desarrolladores.

 

Dentro del conjunto de herramientas que debe manejar el Líder de Desarrollo se encuentra la gestión de la configuración. Este es el instrumento o conjunto de herramientas que permiten comprobar si los distintos ambientes (desarrollo, calidad y producción) coinciden y están actualizados. Otro aspecto importante de este tipo de herramientas, está relacionado con la facilidad de replicar y mantener actualizados los distintos ambientes. Estás herramientas deben estar en constante actualización con la finalidad de mantener una línea base asegurando de esta forma la salvaguarda de la última imagen de los distintos ambientes.


El Líder de Desarrollo posee un conjunto de técnicas y herramientas que se utilizan para apoyar el diagnóstico y solución de problemas. Con frecuencia apoya en los esfuerzos de solución de problemas en los sistemas de producción, así como también las solicitudes de soporte de los desarrolladores. Estos elementos van desde un conocimiento práctico de las herramientas incorporadas en el sistema operativo, a un conjunto de herramientas de prueba con la finalidad de validar diversos componentes de la infraestructura, a los instrumentos adquiridos para la solución de problemas.


Lo Bueno y Lo Malo

 
Dentro de los actividades y funciones de un Líder de Desarrollo, existen elementos positivos y negativos:

 

Ø  Bueno: Conoce todo el entorno de desarrollo, por lo cual puede llevar a cabo la función de líder.

 

Ø  Bueno: Posee una visión de todo el proceso y como se ven afectadas las aplicaciones en producción.

 

Ø  Malo: Debido al nivel de conocimiento que posee sobre las aplicaciones, se convierte en el “más buscado”.

 

Ø  Malo: Debe mantener un nivel alto de conocimiento no solo sobre las aplicaciones sino también sobre los cambios en la tecnología, lo cual puede tomar bastante tiempo.


Conclusión
El Líder de Desarrollo es una función fundamental en el proceso de desarrollo, ya que debe vigilar y guiar la conversión de la arquitectura en el lenguaje de desarrollo seleccionado.

0 comentarios:

Publicar un comentario

Popular Posts

Recent Posts

Video of the Month

Formulario de contacto

Nombre

Correo electrónico *

Mensaje *