Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Wird geladen in …3
×

Hier ansehen

1 von 40 Anzeige

Weitere Verwandte Inhalte

Diashows für Sie (20)

Andere mochten auch (20)

Anzeige

Ähnlich wie Administración de Proyectos en la Ingeniería de Software (20)

Aktuellste (20)

Anzeige

Administración de Proyectos en la Ingeniería de Software

  1. 1. ING. GALO VALVERDE L. •MSC, MDEI, MCSE, CLP •PMI, ACM, IEEE MEMBER 10/29/2014 1 Administración de Proyectosen Ingeniería de Software
  2. 2. 10/29/2014 2
  3. 3. HoyendíalasOrganizacionescompranodesarrollanproductosdesoftwareparaapoyarlosprocesosdenegocio. Grannúmerodeempresas,buenasymalas,grandesypequeñas,tienenamenudounfactorcomún.SonlosPROYECTOSPESADILLA:proyectosconfechasimposiblesdecumplir,generandoproductosdecepcionantesparasususuariosyconsumiendoingenteshorasdemantenimiento Las Normas internacionales de Ingeniería del software brindanlas mejores prácticas para la adquisición y desarrollo de productos con calidad con el objetivo de satisfacer las necesidades y expectativasdel Cliente. 10/29/2014 3
  4. 4. 4 Implicaciones de un Proyecto Tiene un Propósito definido. Es un Proceso Organizado. Son actividades temporales (inicio y fin claros) Costo y recursos presupuestados Involucra Riesgo. Planificación según un desempeño esperado Variabilidad (de actividades, personal, gastos) Impacto!!!
  5. 5. Crisis del Software Según el Centro Experimental de Ingeniería de Software (CEIS), el estudio de mercado Reporte Chaos realizado por Standish Group Internacional en 2013, Concluyó que sólo: • 39% de los proyectos de software son exitosos.(Terminan dentro de plazos y costos y cumplen los requerimientos acordados). • 43% sobrepasa costos y plazos y cumple parcialmente los requerimientos. • 18% Ni siquiera llega al término.
  6. 6. Problemas típicos en Desarrollo de Software Escasa o tardía validación con el cliente. Inadecuada gestión de los requisitos y equipos de desarrollo No existe medición del proceso ni registro de datos históricos. Estimaciones imprevistas de plazos y costos. Excesiva e irracional presión en los plazos. Escaso o deficiente control en el progreso del proceso de desarrollo. No se hace gestión de riesgos formalmente. No se realiza un proceso formal de pruebas. No se realizan revisiones técnicas formales e inspecciones de código. Excesivo Uso de tecnología novedosa El CHAOS StandishGroup, indica que los mayores problemas están relacionados con la especificación, la gestión y la documentación de los proyectos de software.
  7. 7. Impacto de Equipos de proyectos Ad- Hoc de Software EQUIPODDDCCC Dificultad Alta Baja Baja Tamaño Pequeño Grande Grande Tiempo Equipo Largo Corto Corto Modularidad Baja Alta Alta Fiabilidad Alta Alta Baja Fecha de Entrega Flexible Flexible Estricta Comunicación Alta Baja Baja 10/29/2014 7 DD: Descentralizado Democrático DC: Descentralizado Controlado CC: Centralizado Controlado
  8. 8. Paradigmas de Estrategias de Equipos de Desarrollo Software Las estrategias Agile y Lean son más efectivas que las estrategias tradicionales de Cascada Los equipos de proyectos ad-hoc (sin proceso definido) y proyectos tradicionales tienen tasas de éxito más bajas que los equipos de proyectos ágiles / iterativos 10/29/2014 8
  9. 9. Éxito de Desarrollo de Software Tiempo / horario, 16% prefiere a entregar a tiempo de acuerdo con el calendario, 39% prefiere entregar cuando el sistema está listo para ser enviado, y el 42% dice que ambos son igualmente importantes Rendimiento de la inversión, el 13% prefiere entregar dentro del presupuesto, el 60% prefiere proporcionar un buen retorno de la inversión (ROI), y el 23% dice que ambos son igualmente importantes Valor para los interesados, 4% prefiere construir el sistema de acuerdo a las especificaciones y el 86% prefiere satisfacer las necesidades reales de las partes interesadas, y el 10% dice que ambos son igualmente importantes Calidad, el 10% prefiere entregar a tiempo y dentro del presupuesto y el 56% prefiere ofrecer alta calidad, fácil de mantener los sistemas, y el 34% dice que ambos son igualmente importantes 10/29/2014 9
  10. 10. 10 Desarrollo de Productos de Software Ingeniería de Software Administración de Proyectos Métodos Productos
  11. 11. Top 10 lenguajes de programación más usados en desarrollo 10/29/2014 11 Fuente: IEEE Spectrum 2014 Metho ds P r o d u c t s Met hods P r o d u c t s Ideas Productos
  12. 12. Ciclo de Vida de Desarrollo de Software (Muench) 12
  13. 13. La Administración de Proyectos mitiga los Riesgos Copyright © 2002 Linda and Don Shafer 13 Concept Definition Needs Assessment Plan Project Plans Specifications Databases ROI Analysis Risk Analysis Analyze Management Plan Market and System Requirements Candidate Architecture Identification
  14. 14. ADMINISTRACION DE PROYECTOS SOFTWARE Metodologías Modelos Herramientas y técnicas de administración Estimación y planificación de proyectos software COCOMO II Plan de contingencia Gestión de calidad
  15. 15. Gestión de Software –4P PERSONAL –Esfuerzo humano intenso -> Ingeniería de SW eficaz PROBLEMA –Plan Organizado . Mal Inicio-Problema Equivocado PROCESO –Modelo -> Ciclo de Vida 10/29/2014 15 Personal Proyecto Proceso Producto Gestión Eficaz
  16. 16. Normalización de procesos, herramientas y tecnologías de soporte para la ingeniería de productos de software y sistemas buscando las mejores prácticas JTC1/SC 7 -Software and systemsengineering CT 27 -Sistemas de Informacion Regional Internacional Normalización Evaluación del producto de software NA -ISO/IEC 14598 ISO/IEC 14598 Calidad del producto de software NA –ISO/IEC 9126 ISO/IEC 9126ISO / IEC TR 19759 norma internacional: 2005
  17. 17. La nueva ISO 21500 Comité de Proyecto ISO/PC 236 40 países Diversas Industrias Publicada en Marzo del 2013 Recoge los aspectos destacables y los aspectos comunes de otras normas relacionadas (PMI, Prince2): ◦PMBOK®ProjectManagement Body of Knowledge ◦ICB International CompetenceBaseline ◦PRINCE2 Project in Controlled Environments ◦BS 6079 partes 1 a 4. Guideto Project Management ◦DIN 69901 partes 1 a 5. Project Management. Project Management Systems ◦ISO 10006 Quality Management Systems. Guideline for Quality Management in Project La ISO 21500 describe los Procesos y establece Entradas y Salidas. •NO establece Técnicas y Herramientas. •La Guía del PMBOK®SÍ proporciona Técnicas y Herramientas. 10/29/2014 17 grupo de procesos área de conocimiento proceso de gestión _pertenece_ _agrupa_
  18. 18. 18 PMBOK Procesos de Gestión de Proyectos Los procesos de gestión de proyectos: ◦contienen las “bestpráctices” de gestión ◦se pueden adaptar a cada disciplina, pero sin dejar de lado la esencia de su singularidad y del conjunto ◦se describen en el PMBOK en función de entradas, salidas, y herramientas/técnicas involucradas en transformar las entradas en salidas. Áreas de Conocimiento: ◦4. Gestión de Integración del Proyecto ◦5. Gestión del Alcance del Proyecto ◦6. Gestión de Tiempos del Proyecto ◦7. Gestión de Costos del Proyecto ◦8. Gestión de la Calidad del Proyecto ◦9. Gestión de los Recursos Humanos del Proyecto ◦10. Gestión de las Comunicaciones del Proyecto ◦11. Gestión de Riesgos del Proyecto ◦12. Gestión de las Adquisiciones del Proyecto grupo de procesos área de conocimiento proceso de gestión _pertenece_ _agrupa_
  19. 19. Lagestióndelproyectosedefineenlaedición2000delaGuíadelosFundamentosdelaGestióndeProyectosdelConocimiento(PMBOK®)publicadoporelPMIyadoptadocomoIEEEStd1490-2003,como"laaplicacióndeconocimientos,habilidades,herramientas,ytécnicasalasactividadesdeproyectosparacumplirlosrequisitosdelproyecto”. LagestióndelaIngenieríadelSoftware(SWBOK)puededefinirsecomolaaplicacióndeactividadesadministrativas–planeación,coordinación,medición,monitorización,controlyreporte-paraasegurarqueeldesarrolloyelmantenimientodesoftwareseasistemático,disciplinadoycuantificable.(IEEE610.12-90). LaIEEEcreóenMayode1993sucomitéparalacoordinacióndelaingenieríadesoftware(SoftwareEngineeringCoordinatingCommittee)dedicadoaevaluar,planearycoordinaraccionesrelacionadasparaestablecerlaIngenieríadeSoftwarecomounaprofesión Estecomitépublicóen2001laGuiadelCuerpodeConocimientodeIngenieríadeSoftware(GuidetotheSoftwareEngineeringBodyofKnowledge)oSWEBOK,comocomplementalPMBOK Estedocumentotienecomopropósitoproveerunconsensosobreloslímitesdelaingenieríadesoftwareyaccesoalcuerpodeconocimientodeladisciplina Elcuerpodeconocimientodelaingenieríadesoftware(SWBOK-2004)sedivideen10áreasdeconocimiento(KnowledgeareaoKA) Afinalesde2013,SWEBOKV3fueaprobadoparasupublicaciónypuestoenlibertad.
  20. 20. Requisitos de software Diseño de software Construcción de software Pruebas de software Mantenimiento de software Gestión de la configuración de software Gestión de (Proyectos) la ingeniería de software Proceso de ingeniería de software Herramientas y métodos de la ingeniería de software Calidad de software 10/29/2014 20
  21. 21. Áreas de conocimiento necesarias para la Gerencia de Proyectos de Software:
  22. 22. Administración de Proyectos de Software (APS)? Lagestióndeproyectosimplicalaplanificación,supervisión,ycontroldelpersonal,delprocesoydeloseventosqueocurrenmientrasevolucionaelsoftwaredesdelafasepreliminaralaimplementaciónoperacional.(Pressman)
  23. 23. Proceso de Administración de Proyectos de Software (APS)? LaAPSPlanifica,dirigeycontrolaeldesarrollodeunsistemaaceptableconuncostemínimoydentrodeunperíododetiempoespecífico. •Modelo de Proceso Seleccionado •Plan de Proyecto Preliminar Establecido •Proceso de Descomposición Fin
  24. 24. 24 Iniciación Cierre Control Ejecución Planificación Etapas del proceso de gestión Cada etapa se compone de varios procesos de gestión Error fatal: pensar que esto es el proyecto
  25. 25. Ciclos de Vida del SOFTWARE Metodologías de desarrollo de Software Metodologías o Ciclo de Vida . ¿Qué necesito? Funciones básicas de APS en Desarrollo de Software •Planificación de las tareas del proyecto y selección del equipo de proyecto. •Organización y definición de calendario para el proyecto •Dirección y control del proyecto •Si el ámbito del proyecto tiende a crecer, el administrador debe tomar una decisión.
  26. 26. Levantamiento de RequisitosSWEBOK y CMMI 10/29/2014 26
  27. 27. Procesos de la APS 10/29/2014 27
  28. 28. 10/29/2014 28
  29. 29. Metodologías? Conjuntodeprocedimientos,técnicas, herramientasysoportedocumentalparalarealizacióndenuevosoftware. ¿Cómosedivideelproyecto? ¿Quétareasencadaetapa? ¿Quésalidasycuándoseproducen? ¿Restricciones? ¿Herramientas? ¿Cómogestionar,cómocontrolar?
  30. 30. Metodologías estructuradas MERISE (Francia) Gane & Sarson Yourdon& DeMarco
  31. 31. Metodología Ágiles Extreme Programming Proceso Unificado Rational Open SourceSoftware Development •Entrega pequeñas de software con ciclos rápidos Incremental •cliente y desarrolladores trabajan juntos Cooperativo •Fácil de aprender y modificar, bien documentado sencillo •Permite realizar cambios de último momento) adaptable
  32. 32. Gestión de los Recursos Humanos Personal Instituto de Ingeniería del Software MMCGP (Modelo de Madurez de la Capacidad de la Gestión de Personal) Seleccionar profesionales altamente calificados En un proyecto Software el factor humano es esencial
  33. 33. Proceso Software Soporte Desarrollo Definición
  34. 34. Caracterízaciónde lasherramientasSCM 10/29/2014 34
  35. 35. Administración de Calidad de Proyectos de Software Calidad concepto presente en el mundo globalizado ◦“el producto desarrollado cumple su especificación” (Crosby, 1979) EL MODELO DE CALIDAD DE SOFTWARE es un conjunto de buenas prácticas para el ciclo de vida del software, enfocado en los procesos de gestión y desarrollo de proyectos Como se aplica a la IS? problemas UNPSJB 2005 35 •La especificación se orienta hacia las características del producto que el consumidor quiere, pero la organización tiene requerimientos que no se incluyen en la especificación (ej. Mantenimiento) •No se sabe como especificar ciertas características de calidad de una forma no ambigua •Es difícil redactar especificaciones concretas del software. Por esto aunque el producto esté acorde con la especificación, los usuarios no lo consideran un producto de calidad.
  36. 36. Administración de Calidad Tres actividades principales ◦Aseguramiento de calidad ◦Establecer un marco de trabajo de procedimientos y estándares organizacionales que conduce a software de alta calidad ◦Planeación de la calidad: la selección de procedimientos y estándares adecuados a partir de este marco de trabajo y la adaptación de éstos para un proyecto específico. ◦Control de calidad: definición y promulgación de los procesos que aseguran que los procedimientos y estándares para la calidad del proyecto son seguidos por el equipo de desarrollo de software. ◦Estándares ◦Del producto: se aplican sobre el elemento a desarrollar. Se incluye ◦Estándares de documentos ◦Estructuras del documento de requerimiento ◦Estándares de codificación, etc. ◦Del proceso: definen los procesos a seguir durante el desarrollo del SW. Incluyen ◦Procesos de especificación, diseño y validación ◦Documentación asociada con lo anterior 36
  37. 37. Cuáles son las consecuencias de una deficiente APS? Necesidades no satisfechas o no identificadas Cambio incontrolado del ámbito del proyecto Exceso de costo Retrasos en la entrega
  38. 38. Conclusiones No existe la “bala de plata” ◦El SW es complejo por su tamaño ◦El SW es invisible y abstracto ◦El SW no se fabrica, se hace Análisis y modelado temprano es importante ◦Los defectos se remueven en forma más barata Modelado y análisis temprano no es suficiente ◦Se necesita comunicar los requerimientos a todos ◦Se necesitan congeniar múltiples agentes involucrados ◦Se necesitan entender el contexto del sistema 38
  39. 39. Conclusiones El Cuerpo del Conocimiento de Ingeniería de Software (SWEBOK) es más apropiado que el cuerpo de Dirección de Proyectos (PMBOK) como una guía para los gestores de proyectos de software. PMBOK tiene una tendencia a hacer hincapié en la gestión del alcance y de la descomposición de tareas, mientras que SWEBOK se centra en el análisis de requisitos y diseño arquitectónico Los desarrollos y metodologías recientes en la ingeniería de software orientada a objetos (Agile) muestran que el énfasis en los requisitos en vez de alcance, y sobre la arquitectura en lugar de las tareas lleva a procesos de desarrollo de software de calidad superior En los casos de desarrollo de aplicaciones de nuevas herramientas, el Análisis de Requisitos y la Arquitectura del Sistema deben ampliarse a un contexto más amplio. Es recomendable quelas organizaciones exijan planificaciones detalladas de alcance, costos y cronogramas al comienzo de esfuerzo de desarrollo de software críticos 10/29/2014 39
  40. 40. Preguntas 10/29/2014 40

×