domingo, 22 de agosto de 2021

 La planificación y gestión de proyectos


La planificación y gestión de proyectos incluye implementar planes de acción para todas las fases del proyecto. En este sentido, decimos organización sistemática porque requiere una serie de pasos para ejecutarse. Además, necesita saber lo que tiene o puede tener para lograr su objetivo, en este caso estaremos mencionando la estimación de proyectos y la organización del equipo de trabajo

Estimación

La estimación es un proceso analítico imparcial con un objetivo de exactitud y para poder planificar y gestionar un proyecto se debe tener en cuenta las estimaciones de diversos factores como los costos, duracion, metas, compromiso, etc. 


Consideraciones basadas en estimaciones precisas: 

  •     Crear un cronograma detallado 
  •     Identificar el camino crítico 
  •     Priorizar la funcionalidad a entregar 
  •     Partir el proyecto en iteraciones

Factores importantes en la estimación:

  • No incluir alcance de proyecto
  • Estimar tamaños 
  • Economía a escala, al producir en mayor cantidad se reducen los costos
  • Factores del personal


Lenguaje de programación

La experiencia del equipo en el lenguaje y herramientas - 40% de impacto en productividad general. 

Herramientas de soporte y ambiente de programación – hasta 50% de impacto. 

Algunos lenguajes generan más funcionalidad por LOC (Líneas de Código).

Trabajar en lenguajes interpretados tiende a ser (hasta 2 veces) más productivo que en lenguajes compilados.

No existe una forma sencilla de estimar el esfuerzo requerido para desarrollar un sistema de forma precisa: 

1. Las estimaciones iniciales parten de la definición imprecisa de requisitos por parte del usuario. 

2. El software a desarrollar a menudo se ejecutará sobre entornos desconocidos por el equipo de desarrollo o bien utilizará tecnología de punta. 

3. Las personas que van a formar parte del proyecto (y sus habilidades) pueden ser desconocidas.

La productividad de los programadores en los proyectos es muy difícil de saber, pero se puede realizar una medición, y se hace por medio de las líneas de código.

Esta forma de medición tiene sus ventajas y desventajas como:

Ventajas:

Fácil de medir automáticamente a partir del código. 

Permite comparar proyectos y estimar proyectos futuros basándose en datos de proyectos pasados. 

La mayoría de las herramientas de estimación basan sus estimaciones de esfuerzo y duración en LOCs.

Desventajas:

Para medir se precisa que el código esté construido

Sujeto a variaciones personales/grupales y estilos de programación. 

Deseconomía de escala 

Productividad varía según tipo de sw. 

No pueden usarse para estimar asignaciones de tareas, porque productividad varía entre programadores. 

Requisitos, diseño y testing no producen LOCs 

Depende del lenguaje: 

  • Dificultad para medir productos implementados en más de un lenguaje. 
  • Difícil comparar proyectos en distintos lenguajes.

La organización y recursos humanos.

Para determinar el calendario del proyecto y estimar el esfuerzo y costo asociados, debemos saber: 

Cuánta gente va a estar trabajando en el proyecto

Qué tareas van a desarrollar y 

Qué habilidades y experiencia deben tener. 

Otro factor a tener en cuenta con las estimaciones son los equipos de trabajo o mas bien la selección de equipos de trabajo.


Para seleccionar personal y crear los equipos de trabajo se tiene que pasar por muchas muchas pruebas entre ellas, revisión de CV, entrevistas, y referencias del trabajador aspirante.

En la entrevista el aspirante tiene que mostrar algunas características para desempeñar el trabajo como:

  • Capacidad para desempeñar una tarea  
  • Interés en el trabajo 
  • Experiencia con aplicaciones similares, herramientas, lenguajes, técnicas y ambiente de desarrollo • Capacitación - estudios 
  • Capacidad para comunicarse con otros y compartir la responsabilidad 
  • Capacidad de supervisión 
  • Capacidad para resolver problemas 
  • Adaptabilidad – Capacidad de aprender, aceptar y asimilar cambios. 
  • Capacidad para resistir cierta cantidad de tensión. 
  • Personalidad
Una vez seleccionados los trabajadores se tiene que formar los equipos de trabajo, lo mas importante es que el grupo tenga un buen equilibrio en la mayoría de aspectos posibles.













un grupo de trabajo donde solo existen lideres no funciona de manera correcta, lo mas recomendables es que en el grupo solo exista un líder y este vaya enfocado a las tareas a realizar.

El lides del grupo estará obligado a realizar diversas actividades como:
  • Organización del modo de trabajo. 
  • Asignar el personal 
  • Asignar/ajustar los roles y responsabilidades
  • Definir/comunicar los objetivos 
  • Estimación del trabajo que puede realizar el personal 
  • Planificación de las tareas a realizar por cada miembro del equipo. 
  • Control de las actividades del personal 
  • Motivar 
  • Facilitar la comunicación entre los integrantes 
  • Resolución de problemas haciendo uso del personal disponible 
  • Brindar retroalimentación respecto a los logros
Los grupos de trabajos tiene que se creados de tal manera que este puede hacer una buena cohesión y así poder actuar siempre a favor del grupo de trabajo y de los objetivos planteados.