Ciclo de vida del software ieee12207 2011

  • 646 views
Uploaded on

 

More in: Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
646
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
28
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Ciclo de vida del software IEEE12207
    Marcos Raúl Córdova Bayas
    ESCUELA POLITÉCNICA NACIONAL
    2011
  • 2. 14/09/2011
    Ing. Raúl Córdova
    2
    OBJETO Y CAMPO DE APLICACIÓN
    Objeto:
    Esta norma establece un marco de referencia común para los procesos del ciclo de vida del software, con una terminología bien definida a la que puede hacer referencia la industria del software.
    Contiene procesos, actividades y tareas para aplicar durante la adquisición de un sistema que contiene software, un producto software puro o un servicio software, y durante el suministro, desarrollo, operación y mantenimiento de productos software. El software incluye la parte software del firmware.
    Esta norma incluye también un proceso que puede emplearse para definir, controlar y mejorar los procesos del ciclo de vida del software.
  • 3. 14/09/2011
    Ing. Raúl Córdova
    3
    Campo de aplicación
    Esta norma es aplicable a la adquisición de sistemas, productos y servicios software, al suministro, desarrollo, operación y mantenimiento de productos software, y a la parte software del firmware, independientemente de que sea hecho interna o externamente a una organización.
    Incluye también aquellos aspectos de la definición del sistema necesario para proporcionar el contexto de los productos y servicios software.
    NOTA - Es necesario que los procesos usados durante el ciclo de vida del software sean compatibles con los procesos usados durante el ciclo de vida del sistema.
  • 4. 14/09/2011
    Ing. Raúl Córdova
    4
    Campo de aplicación
    Esta norma está orientada para ser usada en situaciones en las que haya dos partes, incluido el caso en que estas dos partes pertenezcan a la misma organización.
    La situación puede ir desde un acuerdo informal, hasta un contrato con responsabilidades legales.
    Esta norma puede ser usada por una sola parte como una auto imposición.
  • 5. 14/09/2011
    Ing. Raúl Córdova
    5
    Campo de aplicación
    Esta norma no está dirigida a productos software preelaborados, a no ser que formen parte de un producto entregable.
    Esta norma está escrita para adquisidores de sistemas y productos y servicios software, y para suministradores, desarrolladores, operadores, mantenedores, gerentes, responsables de aseguramiento de calidad y usuarios de productos software.
  • 6. 14/09/2011
    Ing. Raúl Córdova
    6
    Cumplimiento
    Se define como cumplimiento de esta norma la ejecución de todos los procesos, actividades y tareas seleccionados de esta norma para el proyecto software, mediante el Proceso de Adaptación.
    La ejecución de un proceso o una actividad es completa cuando todas las tareas requeridas por el proceso o actividad se llevan a cabo de acuerdo con los criterios preestablecidos y los requisitos especificados en el contrato como aplicables.
  • 7. 14/09/2011
    Ing. Raúl Córdova
    7
    Cumplimiento
    Cualquier organización (nacional, asociación industrial, compañía, etc.) que imponga esta norma como condición para tener relaciones comerciales, es responsable de especificar y hacer público el conjunto mínimo de procesos, actividades y tareas que constituyen el cumplimiento de esta norma por parte del suministrador.
  • 8. 14/09/2011
    Ing. Raúl Córdova
    8
    Limitaciones
    Esta norma describe la arquitectura de los procesos del ciclo de vida del software, pero no especifica los detalles de cómo implementar o llevar a cabo las actividades y tareas incluidas en los procesos.
    Esta norma no pretende prescribir el nombre, el formato o el contenido explícito de la documentación que se genere.
    Si bien esta norma puede requerir la elaboración de diversos documentos de parecido tipo o clase (un ejemplo son los distintos tipos de planes), esto no implica que dichos documentos se desarrollen, agrupen o se mantengan separados de alguna manera.
    Estas decisiones se dejan para el usuario de esta norma.
  • 9. 14/09/2011
    Ing. Raúl Córdova
    9
    Limitaciones
    Esta norma no prescribe un método o un modelo de ciclo de vida concreto para el desarrollo del software. Las partes en esta norma son las responsables de seleccionar un modelo de ciclo de vida para el proyecto software, y de elaborar una correspondencia entre los procesos, actividades y tareas de esta norma y los de dicho modelo.
    Las partes son también responsables de seleccionar y aplicar los métodos de desarrollo del software, y de llevar a cabo las actividades y tareas adecuadas para el proyecto software.
  • 10. 14/09/2011
    Ing. Raúl Córdova
    10
    Limitaciones
    Esta norma no pretende entrar en conflicto con las políticas, normas o procedimientos actualmente en vigor en ninguna organización. Sin embargo, es necesario resolver cualquier conflicto que surja, documentando por escrito en forma de excepción cualquier incumplimiento autorizado de esta norma.
  • 11. 14/09/2011
    Ing. Raúl Córdova
    11
    Limitaciones
    A lo largo de esta norma, “deberá” se usa para expresar una disposición obligatoria entre dos o más partes, otros verbos en futuro se usan para expresar una declaración de propósitos o intenciones por una de las partes. “Debería” o “conviene que” se emplea para expresar una recomendación habiendo otras posibilidades, y “puede” o “podría” para expresar algo permisible dentro de los límites de esta norma.
    En esta norma hay una cierta cantidad de listas de tareas; ninguna de ellas se pretende que sea exhaustiva, sino que se dan como ejemplos.
  • 12. 14/09/2011
    Ing. Raúl Córdova
    12
    Procesos del ciclo de vida
    Esta norma agrupa las actividades que pueden llevarse a cabo durante el ciclo de vida del software en cinco procesos principales, ocho procesos de apoyo y cuatro procesos organizativos.
    Cada proceso del ciclo de vida está dividido en un conjunto de actividades; cada actividad se subdivide a su vez en un conjunto de tareas.
    Los apartados numerados a.b identifican procesos, los numerados a.b.c, actividades y los numerados a.b.c.d, tareas.
    A continuación se hace una introducción de cada proceso, apareciendo representados en la figura 1
  • 13. 14/09/2011
    Ing. Raúl Córdova
    13
    Figura 1. Esquema Estructural del IEEE 12207
  • 14. 14/09/2011
    Ing. Raúl Córdova
    14
    Procesos principales del ciclo de vida
    Los procesos principales del ciclo de vida son cinco procesos que dan servicio a las partes principales durante el ciclo de vida del software.
    Una parte principal es la que inicia o lleva a cabo el desarrollo, operación o mantenimiento de productos software.
    Estas partes principales son el adquisidor, el suministrador, el desarrollador, el operador y el mantenedor de productos software.
  • 15. 14/09/2011
    Ing. Raúl Córdova
    15
    Procesos principales del ciclo de vida
    1) Proceso de adquisición. Define las actividades del adquisidor, organización que adquiere un sistema, producto software o servicio software.
    2) Proceso de suministro. Define las actividades del suministrador, organización que proporciona el sistema, producto software o servicio software al adquisidor.
    3) Proceso de desarrollo. Define las actividades del desarrollador, organización que define y desarrolla el producto software.
  • 16. 14/09/2011
    Ing. Raúl Córdova
    16
    Procesos principales del ciclo de vida
    4) Proceso de operación. Define las actividades del operador, organización que proporciona el servicio de operar un sistema informático en su entorno real, para sus usuarios.
    5) Proceso de mantenimiento. Define las actividades del mantenedor, organización que proporciona el servicio de mantenimiento del producto software; esto es, la gestión de las modificaciones al producto software para mantenerlo actualizado y operativo. Este proceso incluye la migración y retirada del producto software
  • 17. 14/09/2011
    Ing. Raúl Córdova
    17
    Procesos de apoyo del ciclo de vida
    Hay ocho procesos de apoyo del ciclo de vida.
    Un proceso de apoyo es el que apoya a otro proceso como parte esencial del mismo, con un propósito bien definido, y contribuye al éxito y calidad del proyecto software.
    Un proceso de apoyo se emplea y ejecuta por otro proceso según sus necesidades.
  • 18. 14/09/2011
    Ing. Raúl Córdova
    18
    Procesos de apoyo del ciclo de vida
    1) Proceso de documentación. Define las actividades para el registro de la información producida por un proceso del ciclo de vida.
    2) Proceso de gestión de la configuración. Define las actividades de gestión de la configuración.
    3) Proceso de aseguramiento de la calidad. Define las actividades para asegurar, de una manera objetiva, que los productos software y los procesos son conformes a sus requisitos especificados y se ajustan a sus planes establecidos. Se pueden emplear Revisiones Conjuntas, Auditorías, Verificación y Validación como técnicas de Aseguramiento de la Calidad.
  • 19. 14/09/2011
    Ing. Raúl Córdova
    19
    Procesos de apoyo del ciclo de vida
    4) Proceso de verificación. Define las actividades (para el adquisidor, suministrador o una parte independiente) para verificar hasta un nivel de detalle dependiente del proyecto software, los productos software.
    5) Proceso de validación. Define las actividades (para el adquisidor, suministrador o parte independiente) para validar los productos software del proyecto software.
    6) Proceso de revisiones conjuntas. Define las actividades para evaluar el estado y productos de una actividad. Este proceso puede ser empleado por dos partes cualesquiera, donde una de las partes (la revisora) revisa a la otra parte (la revisada), de una manera conjunta.
  • 20. 14/09/2011
    Ing. Raúl Córdova
    20
    Procesos de apoyo del ciclo de vida
    7) Proceso de auditoría. Define las actividades para determinar el cumplimiento de los requisitos, planes y contrato. Este proceso puede ser empleado por dos partes cualesquiera, donde una parte (la auditora) audita los productos software o actividades de otra parte (la auditada).
    8) Proceso de solución de problemas. Define un proceso para analizar y eliminar los problemas (incluyendo las no conformidades) que sean descubiertos durante la ejecución del proceso de desarrollo, operación, mantenimiento u otros procesos, cualesquiera que sea su naturaleza o causa.
  • 21. 14/09/2011
    Ing. Raúl Córdova
    21
    Procesos organizativos del ciclo de vida
    Los procesos organizativos del ciclo de vida, son cuatro.
    Se emplean por una organización para establecer e implementar una infraestructura constituida por procesos y personal asociados al ciclo de vida, y para mejorar continuamente esta estructura y procesos.
    Se usan habitualmente fuera del ámbito de proyectos y contratos específicos; sin embargo, la experiencia adquirida mediante dichos proyectos y contratos contribuye a la mejora de la organización.
  • 22. 14/09/2011
    Ing. Raúl Córdova
    22
    Procesos organizativos del ciclo de vida
    1) Proceso de gestión. Define las actividades básicas de gestión, incluyendo la gestión de proyectos, durante un proceso del ciclo de vida.
    2) Proceso de infraestructura. Define las actividades básicas para establecer la infraestructura de un proceso del ciclo de vida.
    3) Proceso de mejora. Define las actividades básicas que una organización (adquisidor, suministrador, desarrollador, operador, mantenedor o el gestor de otro proceso) lleva a cabo para establecer, medir, controlar y mejorar su proceso del ciclo de vida.
    4) Proceso de formación. Define las actividades para conseguir personal adecuadamente formado.
  • 23. 14/09/2011
    Ing. Raúl Córdova
    23
    Definiciones
    acuerdo: Definición de los términos y condiciones bajo las cuales se ha de desarrollar una relación de trabajo.
    adquisición: Proceso de obtener un sistema, producto software o servicio software.
    adquisidor: Organización que adquiere u obtiene un sistema, producto software o servicio software, de un suministrador.
    aseguramiento de la calidad: Todas las actividades planificadas y sistemáticas, implementadas dentro del sistema de calidad, y que se demuestren como necesarias para proporcionar la confianza adecuada en que una entidad cumplirá los requisitos de calidad.
  • 24. 14/09/2011
    Ing. Raúl Córdova
    24
    Definiciones
    NOTAS
    1 Hay motivos tanto internos como externos para el aseguramiento de la calidad:
    a) Aseguramiento de la calidad interno: dentro de una organización, el aseguramiento de la calidad proporciona confianza a los gerentes; o
    b) Aseguramiento de la calidad externo: en situaciones contractuales, el aseguramiento de la calidad proporciona confianza al cliente o a otros.
    2 Hay actividades de aseguramiento de la calidad interrelacionadas con actividades de control de la calidad.
    3 A no ser que los requisitos de calidad reflejen completamente las necesidades de los usuarios, el aseguramiento de la calidad puede no proporcionar la confianza adecuada.
  • 25. 14/09/2011
    Ing. Raúl Córdova
    25
    Definiciones
    auditoría: Conducida por una persona autorizada con el propósito de proporcionar una evaluación independiente de productos y procesos software, con el fin de evaluar cumplimiento de requisitos.
    calificación: Proceso para demostrar si una entidad es capaz de cumplir requisitos especificados
    cobertura de las pruebas: Grado en que los casos de prueba prueban los requisitos del sistema o producto software.
  • 26. 14/09/2011
    Ing. Raúl Córdova
    26
    Definiciones
    contrato: Acuerdo vinculante entre dos partes, especialmente exigible por ley, o acuerdo del mismo estilo totalmente interno a una organización, para el suministro de un servicio software, o para el suministro, desarrollo, producción, operación o mantenimiento de un producto software.
  • 27. 14/09/2011
    Ing. Raúl Córdova
    27
    Definiciones
    desarrollador: Organización que lleva a cabo actividades de desarrollo (incluyendo análisis de los requisitos, diseño y pruebas hasta la aceptación) durante el proceso del ciclo de vida del software.
    elemento de la configuración: Entidad dentro de una configuración que satisface una funcionalidad de uso, y que puede ser unívocamente identificada en un punto de referencia dado.
  • 28. 14/09/2011
    Ing. Raúl Córdova
    28
    Definiciones
    elemento no entregable: Producto hardware o software cuya entrega no está requerida por el contrato, pero que puede ser empleado en el desarrollo de un producto software.
    especificación del trabajo: Documento usado por el adquisidor como medio de describir y especificar las tareas a llevar a cabo bajo contrato.
  • 29. 14/09/2011
    Ing. Raúl Córdova
    29
    Definiciones
    evaluación: Determinación sistemática del grado en que una entidad cumple con los criterios especificados para ella.
    firmware: Combinación de un dispositivo hardware e instrucciones o datos de computadora que residen como software de solo lectura en el dispositivo hardware. Este software no puede modificarse fácilmente bajo el control del programa.
  • 30. 14/09/2011
    Ing. Raúl Córdova
    30
    Definiciones
    liberación: Versión concreta de un elemento de la configuración que se hace disponible para un propósito determinado (por ejemplo, liberación para pruebas).
    línea de referencia: Versión formalmente aprobada de un elemento de la configuración, independientemente del soporte, formalmente identificada y fijada en un momento dado de su ciclo de vida.
  • 31. 14/09/2011
    Ing. Raúl Córdova
    31
    Definiciones
    mantenedor: Organización que lleva a cabo actividades de mantenimiento.
    modelo de ciclo de vida: Marco de referencia que contiene los procesos, actividades y tareas involucradas en el desarrollo, operación y mantenimiento de un producto software, y que abarca toda la vida del sistema, desde la definición de sus requisitos hasta el final de su uso.
  • 32. 14/09/2011
    Ing. Raúl Córdova
    32
    Definiciones
    operador: Organización que opera el sistema.
    petición de ofertas [licitación]: Documento usado por el adquisidor como mecanismo para anunciar su intención a potenciales ofertantes, de adquirir un sistema especificado, un producto software o un servicio software.
  • 33. 14/09/2011
    Ing. Raúl Córdova
    33
    Definiciones
    proceso:Conjunto de actividades interrelacionadas que transforman entradas en salidas.
    NOTA - El término “actividades” incluye uso de recursos.
    producto preelaborado: Producto ya desarrollado y disponible, utilizable “tal cual” o con modificaciones.
  • 34. 14/09/2011
    Ing. Raúl Córdova
    34
    Definiciones
    producto software: Conjunto de programas de computadora, procedimientos y posiblemente documentación y datos asociados.
    pruebas de calificación: Pruebas, llevadas a cabo por el desarrollador y presenciadas por el adquisidor (como proceda), para demostrar que el producto software cumple sus especificaciones y está listo para ser usado en su entorno de destino.
  • 35. 14/09/2011
    Ing. Raúl Córdova
    35
    Definiciones
    requisitos de calificación: Conjunto de criterios o condiciones que deben cumplirse para calificar que un producto software cumple con sus especificaciones y está listo para ser usado en su entorno de destino
  • 36. 14/09/2011
    Ing. Raúl Córdova
    36
    Definiciones
    retirada: Cese del soporte activo por parte de la organización de operación y mantenimiento, sustitución total o parcial por un nuevo sistema, o instalación de un sistema mejorado.
    seguridad de acceso: Protección de información y datos de manera que las personas o sistemas no autorizados no puedan leerlos o modificarlos, al tiempo que no se deniega el acceso a las personas o sistemas autorizados.
  • 37. 14/09/2011
    Ing. Raúl Córdova
    37
    Definiciones
    servicio software: Ejecución de actividades, trabajos o tareas ligadas a un producto software, tales como su desarrollo, operación y mantenimiento.
    sistema: Agregado de elementos consistente en uno o más de los procesos, hardware, software, instalaciones y personal que proporcionan la capacidad de satisfacer una necesidad u objetivo definido.
  • 38. 14/09/2011
    Ing. Raúl Córdova
    38
    Definiciones
    software: Soporte lógico.
    suministrador: Organización que contrata con el adquisidor el suministro de un sistema, producto software o servicio software, bajo los términos del contrato.
    NOTAS
    1 El término “suministrador” es sinónimo de contratista, fabricante, productor o vendedor.
    2 El adquisidor puede designar a parte de su organización como suministrador.
  • 39. 14/09/2011
    Ing. Raúl Córdova
    39
    Definiciones
    supervisión: Examen del estado de las actividades de un suministrador y de sus resultados, por el adquisidor o una tercera parte.
    testabilidad: Grado en que es posible definir una prueba objetiva y viable, que permita determinar si se cumple un requisito.
    unidad software: Pieza de código compilable por separado.
  • 40. 14/09/2011
    Ing. Raúl Córdova
    40
    Definiciones
    usuario: Individuo u organización que usa un sistema en operación para llevar a cabo una función específica.
    NOTA - El usuario puede llevar a cabo otros papeles tales como el de adquisidor, desarrollador o mantenedor.
  • 41. 14/09/2011
    Ing. Raúl Córdova
    41
    Definiciones
    validación: Confirmación mediante el examen y la aportación de evidencia objetiva, de que se cumplen los requisitos particulares para un uso previsto específico.
    NOTAS
    1 En el diseño y el desarrollo, la validación se refiere al proceso de examinar un producto para determinar su conformidad con las necesidades del usuario.
    2 La validación se lleva normalmente a cabo sobre el producto final bajo condiciones de operación definidas. Puede ser necesaria también en etapas anteriores.
    3 El término “validado” se usa para designar el estado correspondiente.
    4 Se pueden llevar a cabo múltiples validaciones si hay diferentes usos previstos.
  • 42. 14/09/2011
    Ing. Raúl Córdova
    42
    Definiciones
    verificación: Confirmación mediante el examen y la aportación de evidencias objetivas, de que se han satisfecho unos requisitos especificados.
    NOTAS
    1 En el diseño y el desarrollo, la verificación se refiere al proceso de examinar el resultado de una actividad dada, para determinar su conformidad con los requisitos establecidos para dicha actividad.
    2 El término “verificado” se usa para designar el estado correspondiente.
  • 43. 14/09/2011
    Ing. Raúl Córdova
    43
    Definiciones
    versión: Ejemplar identificado de un elemento.
    NOTA - Modificar una versión de un producto software dando como resultado una nueva versión, requiere una actuación de gestión de la configuración.