El documento describe los conceptos clave de la gestión de proyectos de software. Explica que la gestión de proyectos es un enfoque metódico para planificar y guiar un proyecto desde el inicio hasta el cierre a través de cinco etapas clave. También describe las cuatro P fundamentales de la gestión de proyectos: Personal, Producto, Proceso y Proyecto. Finalmente, resume varias metodologías populares para el desarrollo de software como el modelo en cascada, el modelo iterativo y modelos ágiles como Scrum, Kanban y XP
2. Definición de gestión de proyectos
La gestión de proyectos es un enfoque metódico para planificar y orientar los
procesos del proyecto de principio a fin.
los procesos se guían por cinco etapas: iniciación, planificación, ejecución,
control y cierre.
3. Las 4 P, para una buena gestión de
proyectos
4 p que aseguran la gestión eficaz de un proyecto de software
Las cuatro P de la gestión de proyectos son:
Personal
Producto
Proceso
Proyecto
4. Personal
Factores críticos en la gestión de personal:
Objetividad: el personal se debe valorar de forma equitativa.
Respeto: por las diferentes habilidades de las personas.
Incorporación: considerar las opiniones de todos.
Honestidad: en comunicar lo que va bien y lo que va mal en el equipo.
Factores que determinan la selección del personal:
Experiencia en el dominio de la aplicación.
Experiencia en la plataforma.
Experiencia en el lenguaje de programación.
Habilidad para resolver problemas.
Soporte educativo.
Habilidad de comunicación.
Adaptabilidad.
Actitud.
Personalidad
5. Producto
En primer lugar se debe establecer el ÁMBITO y OBJETIVOS del producto. Se deben
considerar soluciones alternativas e Identificar restricciones técnicas y de control
Para establecer el Ámbito del sw:
1. Contexto
Como encaja el sw que se desarrollara en un sistema más grande, producto o
contexto de negocios?
Que restricciones aparecen como resultado del contexto?
2. Objetivos de información
Que objetos de datos se requieren de entrada?
Que objetos de datos se producen como resultado del sw?
3. Función y desempeño
Que funciones realiza el sw para transformar las entradas en salidas?
Deben abordarse algunas características especiales de desempeño?
6. Proceso
Proporciona el marco de trabajo, desde el cual se puede establecer un
plan detallado para el desarrollo del software. Un pequeño número de
actividades del marco de trabajo es aplicable a todos los proyectos de
software, sin importar su tamaño o complejidad.
La clave para que el proceso funcione es:
seleccionar el modelo de proceso adecuado.
El equipo define un plan de proyecto preliminar.
Se crea un plan completo
La planeación comienza al combinar producto y proceso.
Es la Única forma de gestionar la complejidad: planeación y control
Para evitar el fracaso:
Estar atentos a señales de advertencia comunes.
Comprender los factores críticos de éxito.
Desarrollar un enfoque de sentido común.
7. Proyecto
La gestión de un proyecto de software exitoso requiere entender que puede
salir mal. John Reel define 10 señales que indican que un proyecto de
sistemas de información está en peligro:
1. El personal de software no entiende las necesidades
2. El ámbito del producto está mal debido
3. Los cambios de gestionan mal
4. La tecnología elegida cambia
5. Las necesidades comerciales cambian o están mal definidas
6. Los plazos de entrega no son realistas.
7. Los usuarios se resisten
8. Se pierde o nunca se obtuvo de manera adecuada el patrocinio.
9. El equipo carece de personal con las habilidades apropiadas
10. Los gestores evitan las mejores prácticas y las lecciones aprendida
8. ¿Cómo actúa un gestor para evitar los
problemas mencionados?
Comience con el pie derecho: Entender bien el problema para establecer bien los
objetivos y expectativas. Construir el equipo correcto y darle a éste autonomía,
autoridad y tecnología.
Mantenga el ímpetu: El gestor de proyecto debe proporcionar incentivos, el
equipo debe resaltar la calidad en cada tarea que realiza y los gestores ejecutivos
deben hacer lo posible por mantenerse fuera del camino del equipo.
Rastree el progreso: En un proyecto de software el progreso se rastrea conforme
se elaboran los productos de trabajo(código fuente modelos) y se aprueban como
parte de una actividad de aseguramiento de calidad.
Tomar decisiones inteligentes: Las decisiones del gestor de proyecto y del equipo
de software deben encaminarse para mantenerlo simple.
Realice un análisis de resultados: Establezca un mecanismo consistente para
extraer lecciones aprendidas por cada proyecto. Evalúe la planificación real y la
revista, recolecte y analice métricas, obtenga realimentación por parte del equipo
y de los clientes.
9. Descripción de las etapas del ciclo de
vida de un software
también denominado como el proceso del desarrollo de software, el ciclo de
vida del software nos permite entablar una serie de procedimientos mediante
las cuales se procede para la realización del mismo. De hecho gracias a este
término, es que se han ido creando los métodos del ciclo del software, que no
son otra cosa mas que metodologías que indican distintos pasos a seguir para
el desarrollo de un producto.
12. Modelo Iterativo o por Prototipos
las fases del ciclo de vida del sistema, son las siguientes:
1. Inicialización
2. Iteración
3. Lista de Control
13. Modelos del Ciclo de Vida del Desarrollo
Ágiles
Las tendencias, con el paso del tiempo suelen cambiar para bien y en el caso de las
metodologías del ciclo de vida desarrollo de software no es la excepción. Y un
claro ejemplo de esto, son los modelos de desarrollo ágil. Estos procesos se
caracterizan por estar basados en las etapas del ciclo de vida del software
tradicionales, pero combinándolas con algunas técnicas y siendo aún mas
solapadoras en cuando al orden que se deben ejecutar. Bueno no les diré más,
mejor vamos a ver brevemente cuales son algunas de ellas, las más conocidas y
populares, claro y la mejor de todas.
14. Modelo Scrum
el modelo Scrum, deja de seguir metodologías lineales, podemos despedirnos del modelo
cascada y secuencial, pues ahora procedemos a solapar las fases y no importará en que
momento tengas que volver atrás, siempre habrá un equipo de trabajo de buena calidad,
que tenga ese soporte para aguantar los cambios que son ciertamente normales dentro
de la metodología Scrum. Por último, como ingrediente vital tenemos la comunicación, y
es que acá olvídate de las tendencias de ese jefes que te tienen envuelto en una burbuja
desarrollando. Con el modelo scrum podrás estar comunicado con tu equipo de trabajo
en todo momento, para estar al tanto de los sucesos.
Ahora veremos brevemente, cuales son los procesos que el modelo Scrum utiliza:
1. Product Backlog
2. Sprint Backlog
3. Sprint Planning Meeting
4. Daily Scrum o Stand-up Meeting
5. Sprint Review
6. Sprint Retrospective
15. Modelo Kanban
El modelo Kanban, es uno de los modelos más visuales de las metodologías
ágiles. Consiste en la creación de un tablero con etiquetas, donde se
seccionan cada una de las fases de su desarrollo, además se clasifica de
acuerdo a los equipos de trabajo y se les asignan objetivos a corto, mediano y
largo plazo.
Por supuesto, la metodología Kanban, también requiere de un equipo
totalmente capacitado, pues solamente de esta forma se podrán lograr los
objetivos. Así que aquí les muestro las fases del proceso del ciclo de vida de
un sistema, mediante la metodología japonesa Kanban:
1. Definir el Flujo de Trabajo
2. Fases del Ciclo de Producción
3. Stop Starting, start finishing
4. Tener un Control
16. Modelo XP o Programación extrema
Posiblemente la más destacada de las metodologías ágiles para los ciclos de vida
de un software, es la metodología XP o modelo de programación extrema. A
diferencia del resto de las metodología del mundo, habidas y por haber, esta es
adaptable de acuerdo a las necesidades y requerimientos que se tengan que
implementar, con la ventaja de que podemos hacer uso de cualquier modelo
anterior para el desarrollo y de inmediato salirnos y programar otras cosas, es muy
solapador y permite mucha más libertad en el equipo de trabajo que el resto de
los modelos.
Los valores que componen a al modelo de programación extrema, son los
siguientes:
1. Comunicación
2. Simplicidad
3. Retroalimentación
4. Valentía
5. Respeto