Errores Software

2
La lista es una recopilación del gran Steve Mcconnell que desarrolló en su famoso libro Rapid Development todo un clásico de la gestión de proyectos de desarrollo de software y que te recomiendo desde aquí. La lista está agrupada en 4 grupos en función de a que está relacionado el fracaso: las Personas, los Procesos, el Producto o la Tecnología. Relativos a las Personas 1. Motivación inadecuada. El equipo no está suficiente o adecuadamente motivado. 2. Personal inadecuado. Las personas no están preparadas adecuadamente para el proyecto. 3. Inadecuada gestión de los empleados problemáticos. No se gestiona correctamente el impacto de los empleados problemáticos en el resto del equipo ni en el proyecto. 4. Heroicidades. Surgen héroes que son los que se echan a la espalda el proyecto ignorando al resto. 5. Incorporar más personas a un proyecto retrasado. Un caso clásico, lo que se consigue es que el proyecto se retrase aún más debido a la curva de aprendizaje y a la dedicación del personal actual a formarlos. 6. Oficinas abarrotadas y ruidosas. Baja la productividad y entorpece el desarrollo del proyecto. 7. Roces entre los desarrolladores y el cliente 8. Expectativas poco realistas. Llevan a que haya roces entre el cliente y los desarrolladores. 9. Falta de un patrocinador del proyecto eficaz 10. Falta de compromiso por parte de los interesados 11. Falta de participación del usuario 12. Anteponer decisiones políticas sobre el objetivo del proyecto 13. Pensamiento ilusorio. Actuar pensando lo que nos gustaría que ocurriese en lugar de pensar en lo que es más probable que suceda. Relativos al Proceso 14. Planificaciones excesivamente optimistas 15. Gestión de los riesgos insuficiente 16. Fallo de los proveedores 17. Planificación insuficiente 18. Abandono de la planificación bajo presión 19. Desperdiciar el tiempo antes del kickoff del proyecto 20. Acortar las tareas de alto nivel. Generalmente las tareas que no generan código pero que su reducción tiene un impacto importante en las fases posteriores. 21. Diseño inadecuado 22. Reducción de las tareas de control de la calidad 23. Insuficientes controles desde la dirección del proyecto. Se establecen desde la dirección del proyecto pocos controles que permitan detectar los problemas a tiempo y realizar acciones correctivas. 24. Se prepara el producto para su liberación demasiado pronto o demasiadas veces. Se realizan las tareas de pruebas de rendimiento, impresión de la documentación final, etc. demasido pronto o con demasiada frecuencia. 25. Omitir tareas de estimación necesarias 26. Planificar pensando en que recuperaremos el retraso acumulado más tarde. Si en el primer hito de entrega nos retrasamos 1 mes, volvemos a planificar pensando que ese tiempo lo recuperaremos más tarde. 27. Programar a cualquier precio. Se piensa que codificar a cualquier precio es un método más rápido de desarrollo, hecho que se demuestra que es un error. Relativos al Producto 28. Añadir requisitos no solicitados por el cliente. Conocido como gold-plating. 29. Corrupción del alcance. Añadir, cambiar, modificar contínuamente los requisitos del proyecto sin importar en que fase del desarrollo nos encontremos. 30. Los desarrolladores añaden características no solicitadas. Durante la codificación se añaden características que no se solicitaron por parte del cliente. 31. Negociaciones de tira y afloja. Se concede un retraso en la planificación (asumiendo un error en la misma) pero a cambio se añaden nuevos requisitos (por lo que se comente un nuevo error).

description

SOFTWARE COMUNICACION

Transcript of Errores Software

La lista es una recopilacin del gran Steve Mcconnell que desarroll en su famoso libro Rapid Development todo un clsico de la gestin de proyectos de desarrollo de software y que te recomiendo desde aqu.

La lista est agrupada en 4 grupos en funcin de a que est relacionado el fracaso: las Personas, los Procesos, el Producto o la Tecnologa.Relativos a las Personas1. Motivacin inadecuada. El equipo no est suficiente o adecuadamente motivado.2. Personal inadecuado. Las personas no estn preparadas adecuadamente para el proyecto.3. Inadecuada gestin de los empleados problemticos. No se gestiona correctamente el impacto de los empleados problemticos en el resto del equipo ni en el proyecto.4. Heroicidades. Surgen hroes que son los que se echan a la espalda el proyecto ignorando al resto.5. Incorporar ms personas a un proyecto retrasado. Un caso clsico, lo que se consigue es que el proyecto se retrase an ms debido a la curva de aprendizaje y a la dedicacin del personal actual a formarlos.6. Oficinas abarrotadas y ruidosas. Baja la productividad y entorpece el desarrollo del proyecto.7. Roces entre los desarrolladores y el cliente8. Expectativas poco realistas. Llevan a que haya roces entre el cliente y los desarrolladores.9. Falta de un patrocinador del proyecto eficaz10. Falta de compromiso por parte de los interesados11. Falta de participacin del usuario12. Anteponer decisiones polticas sobre el objetivo del proyecto13. Pensamiento ilusorio. Actuar pensando lo que nos gustara que ocurriese en lugar de pensar en lo que es ms probable que suceda.Relativos al Proceso14. Planificaciones excesivamente optimistas15. Gestin de los riesgos insuficiente16. Fallo de los proveedores17. Planificacin insuficiente18. Abandono de la planificacin bajo presin19. Desperdiciar el tiempo antes del kickoff del proyecto20. Acortar las tareas de alto nivel. Generalmente las tareas que no generan cdigo pero que su reduccin tiene un impacto importante en las fases posteriores.21. Diseo inadecuado22. Reduccin de las tareas de control de la calidad23. Insuficientes controles desde la direccin del proyecto. Se establecen desde la direccin del proyecto pocos controles que permitan detectar los problemas a tiempo y realizar acciones correctivas.24. Se prepara el producto para su liberacin demasiado pronto o demasiadas veces. Se realizan las tareas de pruebas de rendimiento, impresin de la documentacin final, etc. demasido pronto o con demasiada frecuencia.25. Omitir tareas de estimacin necesarias26. Planificar pensando en que recuperaremos el retraso acumulado ms tarde. Si en el primer hito de entrega nos retrasamos 1 mes, volvemos a planificar pensando que ese tiempo lo recuperaremos ms tarde.27. Programar a cualquier precio. Se piensa que codificar a cualquier precio es un mtodo ms rpido de desarrollo, hecho que se demuestra que es un error.Relativos al Producto28. Aadir requisitos no solicitados por el cliente. Conocido como gold-plating.29. Corrupcin del alcance. Aadir, cambiar, modificar contnuamente los requisitos del proyecto sin importar en que fase del desarrollo nos encontremos.30. Los desarrolladores aaden caractersticas no solicitadas. Durante la codificacin se aaden caractersticas que no se solicitaron por parte del cliente.31. Negociaciones de tira y afloja. Se concede un retraso en la planificacin (asumiendo un error en la misma) pero a cambio se aaden nuevos requisitos (por lo que se comente un nuevo error).32. Desarrollo enfocado a la investigacin. Cuando el proyecto debe desarrollar algoritmos o mtodos que nunca antes se han utilizado en lugar de desarrollo de software estamos en una investigacin y las estimaciones de las investigaciones no estn tan claras ni definidas.Relativos a la Tecnologa33. Soluciones mgicas (silver-bullet). Confiar demasiado en que una nueva tecnologa, metodologa, lenguaje, plataforma, etc. resolver grandes problemas de un plumazo.34. Sobreestimacin del ahorro por la utilizacin de nuevas herramientas o mtodos. Obtener el mximo rendimiento de una nueva herramienta o mtodo lleva un tiempo entre que aprendemos a usarlo (curva de aprendizaje) y lo usamos de la forma correcta.35. Cambiar las herramientas en mitad del proyecto36. Falta de automatizacin del control del Cdigo Fuente