Calidad de software

La calidad del software es una preocupación a la que se dedican muchos esfuerzos. Sin embargo, el software casi nunca es perfecto. Todo proyecto tiene como objetivo producir software de la mejor calidad posible, que cumpla, y si puede supere las expectativas de los usuarios.

Standares de calidad para hacer desarrollo de software(cumplimiento de aspectos)

Tres normas
  • ISO 9000
  • CMM
  • ISO IRT 15504(SPICE)  


    ISO(International Standar Organization)

    Características:
    • Es un modelo internacional,apropiado por casi 140 países
    • ISO Busca normalizar el contenido de sus normas con cada país.En colombia ISO se traduce en NTC(Norma técnica calidad)
    • ISO sugiere un plan de atención de calidad,deja en libertad a las propietarios de las empresas para adaptarse o modificar el plan  
    ISO:

    Etapas:
    1. Control de calidad
    2. Gestión de calidad
    3. Calidad total 

    1. Control de calidad
    Determina los puntos de medida(Hitos de control),para verificar las existencia del producto o entregables para el cliente

    Quien hace el control de calidad?
    • Los analistas y desarrolladores del software
    El control de calidad es un producto técnico
    Ejemplo: (UP) entregables


    • Contrato de desarrollo:Documento legal que hace parte integral del análisis de requisitos
    • Análisis de requisitos
    • Documento Diseño
    • Generacion de pruebas


         2. Gestión de calidad

    Proceso mediante el cual se garantiza que las entregables lleguen a un punto y fecha determinados previamente. 

    No es un proceso tecnico,es administrativo

    Quien hace la gestion de calidad? 

    La desarrolla el lider del proyecto (Management)
    Ejemplo:(UP)
    • Satisfacccion del cliente

         3. Calidad total(mejora continua)

    Es un proceso que determina las condiciones para comprobar la satisfaccion total del cliente en términos de:
    • Requisitos: contrato de desarrollo(requisitos de software)
    • Proceso: análisis y diseño
    • Producto: terminacion proceso: Documentos,código,pruebas
    Quien hace la calidad total?

    Los desarrolladores y los clientes  
    es un proceso de alta gerencia

    Norma que propone ISO


      Normas contractuales
      Normas no contractuales

      “Hacia los clientes”

      Obligatorio cumplimiento


      “Hacia el interior de la organización”

      Patrones de referencia

      ISO 9000_1

      ISO 9000_3



      ISO 90002




      Proceso para adaptar ISO a una empresa
      1. Adquirir la norma de terminologia  y conceptos básicos  Norma 1243
      2. Adquirir la norma de implantación Norma 15400(Software)
      3. Adquirir la norma de duplicación,despacho y entrega de producto software Norma 15600(Software)


      Modelo CMM: Modelo de Capacidad y Madurez 

      Caracteristica,en el área de software
      • Es especifica para evaluar calidad en productos software
      CMM mide la capacidad que tiene un empresa para producir software con altos estandares de calidad de manera predecible(CMM es un modelo americano)

      5. Niveles (en orden )
      1. Inicial
      2. Repetitivo
      3. Definición
      4. Administrativo
      5. Optimizado
      2 Usos
      1. Certificaciones evaluaciones de CMM
      2. Auditorías
      1. Nivel inicial

      La compañía desarrolla avanza en el proceso de standarizacion de calidad

        Condiciones
        • Asignación del 25% del total de los activos de la empresa destinados exclusivo/c
        • Contratación de infraestructura
        • Contratación de personal 
        El nivel se supera cuando una entidad externa certifica por medio de póliza la asignación del presupuesto

        2. Nivel repetitivos

        La compañía debe garantizar el funcionamiento de la oficina de desarrollo de software
        • Debe tener recurso humano capacitado para hacer desarrollo
        • Debe tener un recurso humano para garantizar duplicación,despacho y entrega
        La creación de la oficina debe estar respaldada pro un ente certificado externo

        3. Definición   

        La compañía orienta el perfil de desarrollo o aplicacion que se van a distribuir.
        La compañía especializa su producción 

        4. Administrativo 

        Se alcanza la perfección del proceso

        1. Disminución de riesgos
        2. Aumento sustancial de ganancias
        3. Disminuir el gasto para relizar un producto
        5. Optimizado

        La optimizacion busca definir estrategias para diversificar el mercado

        http://es.wikipedia.org/wiki/Modelo_de_Capacidad_y_Madurez



        Modelo SPICE 

        ISO LRT 15-504
                LER 15-504

        SPICE software procesos improvement capability dEtermination

        Caracteristicas
        Aplicativo especificacion o procesos software.
        Actividades del SPICE  funcionamiento y aspectos del modelo

        Actividades
        • Sala de introducción y conceptos generales
        • Proceso de medición de calidad al interior de la empresa
        • Guia de autoevaluacion
        • Determinación para la selección de clientes y proveedores
        • Guia para la selección de evaluadores
        • Guia para mejora de procesos(Plan de mejoramiento)
        • Guia de vocabulario
        Determinar para la selección de clientes y proveedores


        Planificar:
        Mirar con prospectiva(visión del futuro).Se realiza para los clientes y proveedores tratando de buscar nuevos elementos

        Hacer:
        Busca realizar las actividades propuestas  en la fase de plantificación

        Verificar:
        Realimentación de las salidas para hacer ajustes en las entradas de los procesos

        Activar:
        Buscar condiciones de mejora 


        Procesos deSPICE
        • Procesos CUS: custom
        • Procesos ENG
        • Procesos SUP
        • Procesos MAN
        • Procesos ORG
        CUSTOM:
        Procesos relacionados con los usuarios y proveedores
        • Soporte legal: Documento firmado por la empresa y el cliente mediante el cual se establece una relación contractual,para el desarrollo de una actividad
         
         ENG: Engenering
        procesos relacionados con la ingeniería
        • Utilizacion de procesos metodologicos
        • Utilizacion de herramientas CASE
        • Actualizacion de herramientas de desarrollo
        SUP: Support: Procesos relacionados con el soporte y atención a usuarios
        • Garantizar por parte del equipo de desarrollo la garantía de calidad del producto software 
        -Manual de instalación(Manual técnico)
        -Manual de usuario

        MAN Management(Alta gerencia)

        Los procesos MAN
        Se realiza con base en los resultados que se obtiene del SI (sistema de información),siempre el SI requiere de una  TI(tecnología de información)

        ORG Organization

        Los procesos ORG están relacionados con el funcionamiento  al interior de la empresa
        • Contratación
        • Asignación salarial