PROCESOS DE INGENIERIA DEL SW

12,755 views

Published on

describe los proceso, modelos y métodos principales que se sigue durante el ciclo de vida del software

Published in: Education, Technology, Business
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
12,755
On SlideShare
0
From Embeds
0
Number of Embeds
386
Actions
Shares
0
Downloads
551
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide
  • PROCESOS DE INGENIERIA DEL SW

    1. 1. <ul><li>Mayra Montalván </li></ul><ul><li>Raquel Solano </li></ul>
    2. 2. CONTENIDO
    3. 3. PROCESOS DE INGENIERIA DEL SOFTWARE PROCESO SW Que hacer? Como hacerlo? Qué va a utilizar para hacerlo?? Quien lo va a hacer?? Personal Herramientas y Metodologías. Métodos y Procedimientos que definen la relaciones entre las Tareas. B A D C
    4. 4. INTRODUCCIÓN <ul><li>El proceso de ingeniería del software puede ser visto desde dos enfoques: </li></ul><ul><ul><li>El primero: ciclo de vida del software, procesos durante la adquisición, desarrollo, mantenimiento y cierre. </li></ul></ul><ul><ul><li>El segundo con definición, implementación, evaluación, manejo, cambio y mejora del ciclo de vida del software </li></ul></ul><ul><li>El objetivo del manejo del proceso de vida de software es implementar nuevos o mejores procesos en practicas actuales </li></ul>
    5. 5. ¿Que es el proceso de Ingeniería del Software? <ul><li>Según Piatini [9] El proceso de ingeniería de software es u n conjunto coherente de: </li></ul><ul><ul><li>políticas, </li></ul></ul><ul><ul><li>estructuras organizacionales, </li></ul></ul><ul><ul><li>tecnologías, </li></ul></ul><ul><ul><li>procedimientos y artefactos, </li></ul></ul><ul><ul><li>Son necesarios para: </li></ul></ul><ul><ul><li>concebir, </li></ul></ul><ul><ul><li>desarrollar, </li></ul></ul><ul><ul><li>instalar y mantener un producto software. </li></ul></ul>
    6. 7. PROCESO DE IMPLEMENTACIÓN Y CAMBIO <ul><li>Se refiere al cambio organizacional </li></ul><ul><li>Describe infraestructura, modelos y actividades </li></ul><ul><li>Los procesos son desarrollados por primera vez </li></ul><ul><li>Proceso actual cambiado </li></ul>
    7. 8. Proceso de Infraestructura <ul><li>Infraestructura apropiada para el ciclo de vida del software. </li></ul><ul><li>Existen 2 tipos de infraestructura: </li></ul><ul><ul><li>Grupo de Proceso de Ingeniería del Software(SEPG).- Enfoque central del proceso de ingeniería del software </li></ul></ul><ul><ul><li>Experiencia de Fabrica(EF).- Tiene que ver con mejora en el proceso de IS, intención del aprendizaje colectivo de una organización por el desarrollo, entregar a la organización paquetes de experiencia </li></ul></ul>
    8. 9. Proceso del ciclo de manejo del software <ul><li>Cuatro actividades secuenciales </li></ul><ul><ul><li>Establecer el proceso de infraestructura </li></ul></ul><ul><ul><li>Planificación </li></ul></ul><ul><ul><li>Proceso de implementación y cambio </li></ul></ul><ul><ul><li>Proceso de evaluación </li></ul></ul>
    9. 10. Modelos para procesos de implementación y cambio <ul><li>Existen dos modelos: </li></ul><ul><ul><li>Mejoramiento de la Calidad del paradigma (QIP) “ Quality Improvement Paradigm&quot; </li></ul></ul>Fig. 3: Modelo IDEAL [7] Fig. 2: Modelo QIP [8] <ul><ul><li>Modelo IDEAL </li></ul></ul>
    10. 12. DEFINICIÓN DE PROCESOS <ul><li>Procedimiento, política o estándar. </li></ul><ul><li>Razones del ciclo de vida del software: </li></ul><ul><ul><li>Incremento de calidad del producto, </li></ul></ul><ul><ul><li>Facilidad de entendimiento humano y comunicación, </li></ul></ul><ul><ul><li>Mejora en los procesos de soporte, </li></ul></ul><ul><ul><li>Procesos automatizados, </li></ul></ul><ul><ul><li>Soporte en la gestión de procesos, </li></ul></ul>
    11. 13. Modelos del ciclo de vida del software… <ul><ul><li>Modelo Cascada </li></ul></ul>Sirven como definición de alto nivel de las fases que se producen durante el desarrollo: <ul><ul><li>Prototipado </li></ul></ul>Fig 4. Modelo en Cascada [1] Fig 5. Modelo Prototipado [1]
    12. 14. Modelos del ciclo de vida del software… <ul><ul><li>Incremental </li></ul></ul><ul><ul><li>En espiral </li></ul></ul>Fig 6. Modelo Incremental [1] Fig 7. Modelo en Espiral [1]
    13. 15. Modelos del ciclo de vida del software… <ul><ul><li>Modelo de software reutilizable </li></ul></ul><ul><ul><li>Síntesis Automática </li></ul></ul>Fig 8. Modelo de Reutilización [1] Fig 9. Modelo Síntesis Automática [1]
    14. 16. Procesos del ciclo de vida del software… <ul><li>El estándar IEEE provee procesos del ciclo de vida del software. </li></ul><ul><ul><li>El estándar IEEE 1074 puede ser usado para construir procesos de acuerdo a cualquier modelo del ciclo de vida. </li></ul></ul><ul><li>Estándares que se enfocan en procesos de mantenimiento son: IEEE 1219-1998 y ISO 14764: 1998. </li></ul><ul><ul><li>ISO/IEC 90003 interpreta los requerimientos anteriores para organizaciones de desarrollo de software </li></ul></ul>
    15. 17. … Procesos del ciclo de vida del software <ul><li>Otros estándares que proveen definiciones de procesos: </li></ul><ul><ul><li>IEEE Std 1540: Manejo de Riesgos del SW </li></ul></ul><ul><ul><li>IEEE Std 1517: Procesos de rehúso del software </li></ul></ul><ul><ul><li>ISO/IEC 15939: Define el proceso de medición, identifica actividades y tareas. </li></ul></ul><ul><ul><li>ISO 9001: Provee requerimientos para el manejo de calidad </li></ul></ul>
    16. 18. Notaciones para definiciones de procesos <ul><li>Varios elementos de un proceso pueden ser definidos por ejemplo: actividades, productos y recursos. </li></ul><ul><li>La ingeniería del software debería enfocarse en: Diagramas de flujo de datos, lista de procesos descompuestos en actividades y tareas definidas en lenguaje natural </li></ul>
    17. 19. Adaptación de procesos <ul><li>Es importante notar que los procesos y estándares deberían ser adaptables a necesidades como: </li></ul><ul><ul><li>contexto organizacional, </li></ul></ul><ul><ul><li>tamaño del proyecto, </li></ul></ul><ul><ul><li>requerimientos regulatorios, </li></ul></ul><ul><ul><li>practicas industriales y culturas corporativas. </li></ul></ul><ul><ul><li>Los estándares como IEEE/EIA 12207, contiene mecanismos y recomendaciones para lograr la adaptación </li></ul></ul>
    18. 21. EVALUACIÓN DEL PROCESO <ul><li>La evaluación del proceso se lleva mediante modelos y métodos de evaluación. </li></ul><ul><li>Analiza y evalúa el proceso con el propósito general de buscar debilidades y problemas referentes a la inefectividad o ineficiencia </li></ul><ul><li>Sirve para lograr las metas del proceso establecidas. </li></ul><ul><li>Los resultados obtenidos de la evaluación facilitan el rediseño del proceso </li></ul>
    19. 22. Modelos de Evaluación del Proceso … <ul><li>Estos modelos de evaluación, pertenecen a técnicas de actividades de ingeniería del software, por ejemplo: gestión, ingeniería de sistemas y gestión de recursos humanos. </li></ul><ul><li>Los modelos de evaluación son: </li></ul><ul><ul><li>Sw-CMM </li></ul></ul><ul><ul><li>CMMi </li></ul></ul><ul><ul><li>Bootstrap </li></ul></ul>
    20. 23. … Modelos de Evaluación del Proceso <ul><li>Han sido diseñados para diseño, documentación y métodos formales. </li></ul><ul><li>Arquitecturas para el modelo de evaluación: continúa y en escena, son diferentes y deberían ser aplicadas considerando las necesidades y objetivos de la organización. </li></ul>
    21. 24. Métodos de evaluación del proceso <ul><li>Un método de evaluación necesita ser seguido para reducir una puntuación cuantitativa que caracteriza la capacidad del proceso. </li></ul><ul><li>Los métodos son: </li></ul><ul><ul><li>CBA-IPI [4]: Se centra en la mejora de proceso. </li></ul></ul><ul><ul><li>SCE [5]: Se centra en evaluar la capacidad de los proveedores. </li></ul></ul><ul><ul><li>SCAMPI [6]: Gira en torno a las valororaciones CMMI. </li></ul></ul>
    22. 26. MEDIDAS DE PROCESOS Y PRODUCTOS <ul><li>La aplicación de estos procesos puede ser complejo sobre todo en métodos de modelado y análisis. </li></ul><ul><li>El logro de mejoras de proceso y producto pueden ser evaluados si un conjunto de medidas de referencia han sido establecidas. </li></ul><ul><li>Los métodos de medida y medición han sido definidas en ISI/IEC 15939 en base a la ISO internacional, provee procesos de estándares para medición de características de proceso y producto. </li></ul>
    23. 27. <ul><li>Qué se puede Medir? </li></ul><ul><li>El proceso del software. </li></ul><ul><li>Calidad del producto. </li></ul><ul><li>Los esfuerzos para mejorar el logro de procesos y productos sólo pueden valorarse si se han establecido un conjunto de medidas base . </li></ul><ul><li>La ISO/IEC 15939 basados en el vocabulario ISO internacional de metrología. </li></ul>Medición del Proceso y Producto
    24. 28. Medición del Proceso <ul><li>[ISO 15539-02] </li></ul><ul><li>Identificar las fuerzas y las debilidades de los procesos. </li></ul><ul><li>Evaluar los procesos después de que hayan sido implementados y/o cambiados. </li></ul><ul><li>Gestionar un proyecto de ingeniería de software. </li></ul>
    25. 29. Medición del Proceso En la mayoría de los proyectos de ingeniería del software, se indica que normalmente el proceso tiene un impacto muy grande en los resultados de un proyecto. PROCESO CONTEXTO RESULTADOS
    26. 30. Medición del Proceso <ul><li>No todo proceso va a tener un impacto positivo en todas sus salidas. </li></ul><ul><li>Las principales mediciones del interés son la productividad de los equipos o procesos y sus niveles asociados de experiencia en la ingeniería del software en general. </li></ul><ul><li>Las salidas del proceso pueden ser: </li></ul><ul><ul><li>Calidad del producto o Punto Función. </li></ul></ul><ul><ul><li>Mantenibilidad. </li></ul></ul><ul><ul><li>Productividad. </li></ul></ul><ul><ul><li>Satisfacción del cliente. </li></ul></ul><ul><li>Otros factores como la capacidad del equipo y las herramientas que utilizan juegan un importante papel. </li></ul>
    27. 31. <ul><li>[ISO9126-01] </li></ul>Medición de un Producto Software
    28. 32. <ul><li>Es evaluado por: </li></ul><ul><ul><li>Medidas de longitud. (directo) </li></ul></ul><ul><ul><li>Funcionalidad. (indirecto) </li></ul></ul><ul><li>El Estándar IEEE Std 13 14143.1 proporciona los principios de medición funcional del software. Con base en este estándar se han declarado, como métodos estándares de recuento, los siguientes: </li></ul><ul><ul><li>ISO/IEC 20926:2003 IFPUG 4.1 </li></ul></ul><ul><ul><li>ISO/IEC 19761:2003 COSMIC-FFP </li></ul></ul><ul><ul><li>ISO/IEC 20968 </li></ul></ul><ul><ul><li>ISO/IEC 24570:2004 </li></ul></ul>Medición del Tamaño
    29. 33. <ul><li>Problemas de la utilización de LDC: </li></ul><ul><ul><li>No existe definición estándar de LDC (p.ej., ¿se consideran LDC los comentarios?). </li></ul></ul><ul><ul><li>Líneas físicas o lógicas. </li></ul></ul><ul><ul><li>Contabilización del código reutilizable. </li></ul></ul><ul><ul><li>Aplicaciones en diferentes lenguajes. </li></ul></ul><ul><ul><li>Estilos individuales de programación. </li></ul></ul>Medición del Tamaño
    30. 34. <ul><li>Flujo de control </li></ul><ul><li>Flujo de datos </li></ul><ul><li>Estructura de datos </li></ul><ul><li>Complejidad ciclomática: (complejidad computacional) </li></ul><ul><li>Sirve para predecir los módulos que son más propensos a errores. Predecir el esfuerzo en mantenimiento. Predecir la reutilización. </li></ul><ul><li>Determina el número de casos de prueba para asegurarse que todas las sentencia de un componente han sido ejecutadas al menos una vez. </li></ul>Medición de la Estructura
    31. 35. Medición de la Estructura
    32. 36. <ul><li>La medida de calidad es menos fácil de definir que las anteriores, algunas mediciones de calidad probablemente van a requerir una forma de medición cualitativa más que cuantitativa. </li></ul><ul><li>ISO 9126: es un estándar internacional para la evaluación del Software, está dividido en cuatro partes: </li></ul><ul><ul><li>Modelo de calidad, </li></ul></ul><ul><ul><li>Métricas externas, </li></ul></ul><ul><ul><li>Métricas internas y </li></ul></ul><ul><ul><li>Calidad en las métricas de uso. </li></ul></ul>Medición de la Calidad
    33. 37. <ul><li>Funcionalidad: Un conjunto de atributos que se relacionan con la existencia de un conjunto de funciones y sus propiedades específicas, implica necesidades de: Idoneidad, Exactitud, Interoperabilidad, Seguridad y Cumplimiento de normas. </li></ul><ul><li>Fiabilidad: conjunto de atributos relacionados con la capacidad del software de mantener su nivel de prestación bajo condiciones establecidas durante un período de tiempo establecido: Madurez, Recuperabilidad, Tolerancia a fallos y Conformidad de Fiabilidad. </li></ul>Modelo de la Calidad
    34. 38. <ul><li>Usabilidad: conjuntos de atributos relacionados con el esfuerzo necesitado para el uso, y en la valoración individual de tal uso, por un establecido o implicado conjunto de usuarios: Aprendizaje, Comprensión, Operatividad, Atractividad y Conformidad de Usabilidad. </li></ul><ul><li>Eficiencia: Conjunto de atributos relacionados con la relación entre el nivel de desempeño del software y la cantidad de recursos necesitados bajo condiciones establecidas. Comportamiento en el tiempo, Comportamiento de recursos, conformidad de Eficiencia. </li></ul>Modelo de la Calidad
    35. 39. <ul><li>Mantenibilidad: Conjunto de atributos relacionados con la facilidad de extender, modificar o corregir errores en un sistema software: Estabilidad, Facilidad de análisis, Facilidad de cambio, Facilidad de pruebas y Conformidad de facilidad de mantenimiento. </li></ul><ul><li>Portabilidad : Conjunto de atributos relacionados con la capacidad de un sistema software para ser transferido desde una plataforma a otra: Capacidad de instalación, Capacidad de reemplazamiento, Adaptabilidad, Co-Existencia y Conformidad de Portabilidad. </li></ul>Modelo de la Calidad
    36. 40. <ul><li>Métricas internas son aquellas que no dependen de la ejecución del software (medidas estáticas). </li></ul><ul><li>Métricas externas son aquellas aplicables al software en ejecución. </li></ul>Métricas Internas y Externas
    37. 41. La calidad en las métricas de uso están sólo disponibles cuando el producto final es usado en condiciones reales. IMPORTANTE: Idealmente, la calidad interna determina la calidad externa y esta a su vez la calidad en el uso. Calidad en las Métricas de Uso
    38. 42. <ul><li>Dentro del proceso de Ingeniería del Software los tres factores más importantes son: Personal, Métodos y Procedimientos y Herramientas y Técnicas. </li></ul><ul><li>El proceso de ingeniería del software esta basado en procesos y modelos a la definición, evaluación y medición del software. </li></ul><ul><li>Existen modelos y procesos aplicados en las diferentes etapas del proceso de software. </li></ul><ul><li>La facilidad de entendimiento humano y comunicación, ayuda a llevar una buena definición de los procesos. </li></ul>Conclusiones
    39. 43. REFERENCIAS <ul><li>[1] http://personales.unican.es/ruizfr/is1/doc/teo/02/is1-t02-trans.pdf </li></ul><ul><li>[2]http://se.sjtu.edu.cn/sites/se/gb/CCSE/Swebok_Ironman_June_23_%202004.pdf </li></ul><ul><li>[3] Roger S.Pressman, Ingeniería del Software, Un enfoque practico, Sexta Edición </li></ul><ul><li>[4]http://www.geocities.com/SiliconValley/Lab/3629/cbaipi.htm </li></ul><ul><li>[5]http://en.wikipedia.org/wiki/Standard_CMMI_Appraisal_Method_for_Process_Improvement </li></ul><ul><li>[6]http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.23.5716 </li></ul><ul><li>[7]https://www.mytconsulting.com/principal/images/12207_5.png </li></ul><ul><li>[8]http://www.cs.umd.edu/users/basili/qip/img007.gif </li></ul><ul><li>[9]http://www.aemes.org/rpm/descargar.php?volumen=4&numero=2&articulo=1 </li></ul>
    40. 44. Referencias [10] Departamento de Lenguajes y Sistemas Informáticos, Gestión de Proyectos Software Métricas, http://www.lsi.us.es/docencia/get.php?id=2271 [11] ISO/IEC 9126, http://es.wikipedia.org/wiki/ISO_9126

    ×