SlideShare a Scribd company logo
1 of 19
Download to read offline
Ciclo conferencias “Gestión de Proyectos” (Abril-Junio 2012)


Ejemplos prácticos de calidad en el
            software

                    2 de Mayo de 2012



                                  jordi.marti@tecdencies.com
                              lleonard.delrio@tecdencies.com
En què consistirà la presentació?


 Tecdencies, Enginyeria de Software
 La qualitat en el software:
    No és fer proves en un moment donat del projecte, s’ha
     d’aplicar en tot l’àmbit del Projecte …
    … però en aquesta sessió ens centrarem en la qualitat
     del codi a desenvolupar: Des del dia 1 que es comença a
     programar, fins que entreguem el producte.




                                                           2
En 10 segundos…



Integración
Proporcionar soluciones                                        Tecdencies
basadas en componentes
y sistemas existentes e                                  Servicios de ingeniería y
integrarlos con los sistemas                             desarrollo de soluciones
actuales de los clientes.                          software basados en personas,
                               Integración                 procesos y tecnología.




Proven Innovation
Innovar de forma segura                                                   Cómo
mediante tecnologías                          Expertos trabajando de forma directa
probadas.                                    con Departamentos de SI, o ayudando
                                                   a las Consultoras TI a alcanzar la
                                                 excelencia en la prestación de sus
                                                                           servicios.
Analysis / Design / Construction / Test / Deploy / Maintain


 ¿Estás seguro?
 •¿Estamos capturando bien los requisitos?
 •¿Estamos traduciéndolos bien en software?
 •¿A qué nos compromete esta arquitectura? ¿No deberíamos estar usando SOA?
 •¿Son estos patrones de diseño los correctos?
 •¿Utilizamos las herramientas correctas?
 •¿Las utilizamos correctamente?
 •¿Qué proceso de pruebas utilizamos?
 •¿Lo revisamos periódicamente?
 •¿Inspeccionamos el código que generamos?
 •¿Utilizamos estándares de codificación?
 •…
Ingeniería del software


 Definición según el IEEE:
   1. La aplicación de un enfoque sistemático, disciplinado y
      cuantificable al desarrollo, operación y mantenimiento
      del software; es decir, la aplicación de la ingeniería al
      software
 Cualquier enfoque de ingeniería debe estar
  sustentado en un compromiso con la calidad

                             Herramientas
                               Métodos
                                Proceso
                           Enfoque de calidad
SWEBOK


 El SoftWare Engineering Body Of Knowledge es un
  proyecto de colaboración entre la IEEE Computer Society y
  la Université du Québec à Montreal, con el fin de definir el
  cuerpo de conocimientos de la ingeniería de software
 Sus objetivos:
     Caracterizar los conocimientos de ingeniería del software
     Aportar un acceso por temas al conocimiento de ingeniería del
      software.
     Promover una visión consistente de la ingeniería del software en
      todo el mundo.
     Clarificar el lugar y el entorno de la ingeniería del software con
      respecto a otros disciplinas (computer science, gestión de
      proyectos, computer engineering, matemáticas).
     Aportar una base para el desarrollo de un currículo material para
      poder certificar y conceder licencia a profesionales.
Áreas de conocimiento (1/2)
Áreas de conocimiento (2/2)
KA: Prueba del software
KA: Calidad del software
Definición de calidad



Concordancia con
   1. los requisitos funcionales y de
      desempeño explícitamente
      establecidos,
   2. estándares de desarrollo
      explícitamente documentados, y
   3. características implícitas que se
      esperan de cualquier software
      desarrollado profesionalmente
CASO PRÁCTICO 1:
CARACTERÍSTICAS IMPLÍCITAS

                             1
Coste de la calidad


 Costes que genera la búsqueda de calidad o que
  demanda el desarrollo de las actividades relacionadas
  con la calidad
 Tipologías
    Costes de prevención: planificación de la calidad, revisiones
     técnicas formales, equipo de pruebas y entrenamiento
    Costes de evaluación: inspección en el proceso, calibración y
     mantenimiento de equipo y pruebas
    Costes de fallas: son los que no existen si no aparecen
     defectos antes de enviar un producto a los clientes
       Costes de fallas internas: detectados en el producto antes del envío
       Costes de fallas externas: detectados después del envío
Mecanismos para encontrar defectos

                         Posibilidades
                                        Herramientas            Compilador, revisores de código, etc.

                                        Pruebas                 Pruebas unitarias, de integración, etc.

                                        Usuarios                Esperar a que los usuarios los encuentren

                                        Revisiones              Revisar el código fuente

                                        Etc.
Son inspecciones manuales:
Revisión, la realiza uno mismo
Inspección, la realiza una tercera          REVISIÓN DE CÓDIGO                                       [70-80 %]
persona
                                          INSPECCIÓN DE CÓDIGO                                       [50-70 %]


                                                  COMPILACIÓN                                        [50 %]


                                             PRUEBAS UNITARIAS                                       [40-50 %]


                                          PRUEBAS INTEGRACIÓN                                        [45 %]


                                         PRUEBAS DE REQUISITOS                                       [45 %]


                                         PRUEBAS DE ALGORITMO                                        [8 %]
La importancia de las pruebas

      COSTES DE DESARROLLO
                                                               Aún y así, la sensación es que
                                   [30-50 %] (habitualmente)
                                                                    el software no está
                                   Pruebas de Software          suficientemente probado
                                                                 antes de ser distribuido

      Probar software es extremadamente difícil
      Las formas en las que puede comportarse un
                             programa no se pueden cuantificar
      La prueba se hace típicamente sin una
                             metodología clara y sin la necesaria
                             automatización o el soporte de herramientas
Principios de las pruebas

 Principio #1
    Todas las pruebas deben ser rastreables hasta los requisitos del
     cliente
 Principio #2
    Las pruebas se deben planificar mucho antes de que comience el
     proceso de prueba
 Principio #3
    El principio de Pareto es aplicable para las pruebas de software
 Principio #4
    Las pruebas deben comenzar “en lo pequeño” y progresar hacia
     “lo grande”
 Principio #5
    Las pruebas exhaustivas no son posibles
Etapas de las pruebas

 Pruebas de UNIDAD
     “Pronto“ + propio desarrollador
     Verificar los elementos “testeables” más pequeños del software
     El comportamiento se deduce de los casos de uso
 Pruebas de INTEGRACIÓN
     Asegurar que los componentes actúan de la forma adecuada al combinarse para
      la ejecución de un caso de uso
     Verificar paquetes (packages)
 Pruebas de SISTEMA
     Cuando el software funciona como un todo (o cuando subconjuntos de
      comportamiento están implementados)
     Todo el sistema
 Pruebas de ACEPTACIÓN
     Acción final de las pruebas antes de desplegar el software
     Verificar que el software está a punto y puede ser usado por los usuarios finales
CASO PRÁCTICO 2: PRUEBAS CON
VISUAL STUDIO

                               18
¡Gracias!

More Related Content

What's hot

DEFINICION DE CALIDAD Y CALIDAD DE SOFTWARE
DEFINICION DE CALIDAD Y CALIDAD DE SOFTWAREDEFINICION DE CALIDAD Y CALIDAD DE SOFTWARE
DEFINICION DE CALIDAD Y CALIDAD DE SOFTWARELidizz Garcia Alvarado
 
Metodologia web
Metodologia webMetodologia web
Metodologia webAnel Sosa
 
Especificación y resultados de las pruebas de software
Especificación y resultados de las pruebas de softwareEspecificación y resultados de las pruebas de software
Especificación y resultados de las pruebas de softwareJesús E. CuRias
 
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWAREDISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWAREjose_rob
 
Estandares y modelos de calidad del software
Estandares y modelos de calidad del softwareEstandares y modelos de calidad del software
Estandares y modelos de calidad del softwareaagalvisg
 
Plan de Pruebas
Plan de PruebasPlan de Pruebas
Plan de Pruebaschoselin
 
Metodologías de Desarrollo de Software Tradicionales y Emergentes
Metodologías de Desarrollo de Software Tradicionales y EmergentesMetodologías de Desarrollo de Software Tradicionales y Emergentes
Metodologías de Desarrollo de Software Tradicionales y EmergentesMiguel Rodríguez
 
DiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del SoftwareDiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del Softwarelcastillo110
 
Modelo Cascada y Espiral
Modelo Cascada y EspiralModelo Cascada y Espiral
Modelo Cascada y Espiraljuanksi28
 
25 Estandares - IEEE Calidad de Software
25 Estandares - IEEE Calidad de Software25 Estandares - IEEE Calidad de Software
25 Estandares - IEEE Calidad de SoftwareCamila Arbelaez
 
modelos de calidad de software
modelos de calidad de softwaremodelos de calidad de software
modelos de calidad de softwareHernan Espinoza
 
Metodologias para el desarrollo del software
Metodologias para el desarrollo del softwareMetodologias para el desarrollo del software
Metodologias para el desarrollo del softwareyeltsintorres18
 

What's hot (20)

DEFINICION DE CALIDAD Y CALIDAD DE SOFTWARE
DEFINICION DE CALIDAD Y CALIDAD DE SOFTWAREDEFINICION DE CALIDAD Y CALIDAD DE SOFTWARE
DEFINICION DE CALIDAD Y CALIDAD DE SOFTWARE
 
Metodologia web
Metodologia webMetodologia web
Metodologia web
 
Rup disciplinas
Rup disciplinasRup disciplinas
Rup disciplinas
 
Especificación y resultados de las pruebas de software
Especificación y resultados de las pruebas de softwareEspecificación y resultados de las pruebas de software
Especificación y resultados de las pruebas de software
 
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWAREDISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
 
Estandares y modelos de calidad del software
Estandares y modelos de calidad del softwareEstandares y modelos de calidad del software
Estandares y modelos de calidad del software
 
Plan de Pruebas
Plan de PruebasPlan de Pruebas
Plan de Pruebas
 
GESTIÓN DE LA CONFIGURACIÓN DEL SOFTWARE (GCS)
GESTIÓN DE LA CONFIGURACIÓN DEL SOFTWARE (GCS)GESTIÓN DE LA CONFIGURACIÓN DEL SOFTWARE (GCS)
GESTIÓN DE LA CONFIGURACIÓN DEL SOFTWARE (GCS)
 
Diseño de sistemas
Diseño de sistemasDiseño de sistemas
Diseño de sistemas
 
Metodologías de Desarrollo de Software Tradicionales y Emergentes
Metodologías de Desarrollo de Software Tradicionales y EmergentesMetodologías de Desarrollo de Software Tradicionales y Emergentes
Metodologías de Desarrollo de Software Tradicionales y Emergentes
 
Roles desarrollo del software
Roles desarrollo del softwareRoles desarrollo del software
Roles desarrollo del software
 
Proyecto final de software
Proyecto final de softwareProyecto final de software
Proyecto final de software
 
DiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del SoftwareDiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del Software
 
Modelo Cascada y Espiral
Modelo Cascada y EspiralModelo Cascada y Espiral
Modelo Cascada y Espiral
 
25 Estandares - IEEE Calidad de Software
25 Estandares - IEEE Calidad de Software25 Estandares - IEEE Calidad de Software
25 Estandares - IEEE Calidad de Software
 
Rational rose
Rational roseRational rose
Rational rose
 
Calidad en el desarrollo del software
Calidad en el desarrollo del softwareCalidad en el desarrollo del software
Calidad en el desarrollo del software
 
Estimación de Proyectos de Software
Estimación de Proyectos de SoftwareEstimación de Proyectos de Software
Estimación de Proyectos de Software
 
modelos de calidad de software
modelos de calidad de softwaremodelos de calidad de software
modelos de calidad de software
 
Metodologias para el desarrollo del software
Metodologias para el desarrollo del softwareMetodologias para el desarrollo del software
Metodologias para el desarrollo del software
 

Similar to Ejemplos práctios de calidad en el software tecdencies

Desarrollando software de calidad
Desarrollando software de calidadDesarrollando software de calidad
Desarrollando software de calidadEQ SOFT EIRL
 
Aseguramiento de la Calidad del Software II
Aseguramiento de la Calidad del Software IIAseguramiento de la Calidad del Software II
Aseguramiento de la Calidad del Software IITensor
 
Sesión Nº 13 - CALIDAD DE SW.pptx
Sesión Nº 13 - CALIDAD DE SW.pptxSesión Nº 13 - CALIDAD DE SW.pptx
Sesión Nº 13 - CALIDAD DE SW.pptxClaudioIbarraRios
 
Curso Basico-Testing-03r003.pdf
Curso Basico-Testing-03r003.pdfCurso Basico-Testing-03r003.pdf
Curso Basico-Testing-03r003.pdfBarcodeBarcode
 
Temas Unidad 2
Temas Unidad 2Temas Unidad 2
Temas Unidad 2wiso08
 
Lexi herrera fundamentos del diseno de software
Lexi herrera  fundamentos del diseno de softwareLexi herrera  fundamentos del diseno de software
Lexi herrera fundamentos del diseno de softwarelexiherrera
 
pruebas de calidad.pdf
pruebas de calidad.pdfpruebas de calidad.pdf
pruebas de calidad.pdfChirmi1
 
Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1Eddie Malca
 
Calidad de software
Calidad de softwareCalidad de software
Calidad de softwareyecka25
 
Trabajo investigacion (jeiner gonzalez.b)
Trabajo investigacion (jeiner gonzalez.b)Trabajo investigacion (jeiner gonzalez.b)
Trabajo investigacion (jeiner gonzalez.b)Jeiner Gonzalez Blanco
 
Mule investigation (jeiner gonzalez.b)
Mule investigation (jeiner gonzalez.b)Mule investigation (jeiner gonzalez.b)
Mule investigation (jeiner gonzalez.b)Jeiner Gonzalez Blanco
 
Mule investigation (jeiner gonzalez.b)
Mule investigation (jeiner gonzalez.b)Mule investigation (jeiner gonzalez.b)
Mule investigation (jeiner gonzalez.b)Jeiner Gonzalez Blanco
 
Fundamento del Diseño de Software
Fundamento del Diseño de SoftwareFundamento del Diseño de Software
Fundamento del Diseño de SoftwareGlamisleidys Chourio
 
Productividad en el Equipo de Desarrollo de Software
Productividad en el Equipo de Desarrollo de SoftwareProductividad en el Equipo de Desarrollo de Software
Productividad en el Equipo de Desarrollo de Softwarejuliocasal
 

Similar to Ejemplos práctios de calidad en el software tecdencies (20)

Calidad de software y TDD
Calidad de software y TDDCalidad de software y TDD
Calidad de software y TDD
 
Desarrollando software de calidad
Desarrollando software de calidadDesarrollando software de calidad
Desarrollando software de calidad
 
Gestion De Calidad Cap 26
Gestion De Calidad Cap 26Gestion De Calidad Cap 26
Gestion De Calidad Cap 26
 
Aseguramiento de la Calidad del Software II
Aseguramiento de la Calidad del Software IIAseguramiento de la Calidad del Software II
Aseguramiento de la Calidad del Software II
 
Sesión Nº 13 - CALIDAD DE SW.pptx
Sesión Nº 13 - CALIDAD DE SW.pptxSesión Nº 13 - CALIDAD DE SW.pptx
Sesión Nº 13 - CALIDAD DE SW.pptx
 
Curso Basico-Testing-03r003.pdf
Curso Basico-Testing-03r003.pdfCurso Basico-Testing-03r003.pdf
Curso Basico-Testing-03r003.pdf
 
Temas Unidad 2
Temas Unidad 2Temas Unidad 2
Temas Unidad 2
 
Lexi herrera fundamentos del diseno de software
Lexi herrera  fundamentos del diseno de softwareLexi herrera  fundamentos del diseno de software
Lexi herrera fundamentos del diseno de software
 
Como medir la calidad de software
Como medir la calidad de softwareComo medir la calidad de software
Como medir la calidad de software
 
pruebas de calidad.pdf
pruebas de calidad.pdfpruebas de calidad.pdf
pruebas de calidad.pdf
 
Capacitacitación Tester - QA 1
Capacitacitación Tester - QA 1Capacitacitación Tester - QA 1
Capacitacitación Tester - QA 1
 
Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1Curso de Ingeniería de Software - Capítulo 1
Curso de Ingeniería de Software - Capítulo 1
 
Calidad de software
Calidad de softwareCalidad de software
Calidad de software
 
Trabajo investigacion (jeiner gonzalez.b)
Trabajo investigacion (jeiner gonzalez.b)Trabajo investigacion (jeiner gonzalez.b)
Trabajo investigacion (jeiner gonzalez.b)
 
Mule investigation (jeiner gonzalez.b)
Mule investigation (jeiner gonzalez.b)Mule investigation (jeiner gonzalez.b)
Mule investigation (jeiner gonzalez.b)
 
Mule investigation (jeiner gonzalez.b)
Mule investigation (jeiner gonzalez.b)Mule investigation (jeiner gonzalez.b)
Mule investigation (jeiner gonzalez.b)
 
Las Mediciones de Software y sus Aplicaciomes
Las Mediciones de Software y sus AplicaciomesLas Mediciones de Software y sus Aplicaciomes
Las Mediciones de Software y sus Aplicaciomes
 
Fundamento del Diseño de Software
Fundamento del Diseño de SoftwareFundamento del Diseño de Software
Fundamento del Diseño de Software
 
Sqm
SqmSqm
Sqm
 
Productividad en el Equipo de Desarrollo de Software
Productividad en el Equipo de Desarrollo de SoftwareProductividad en el Equipo de Desarrollo de Software
Productividad en el Equipo de Desarrollo de Software
 

More from MICProductivity

Webinar eada: Adopción y Gestión del Cambio en Office 365
Webinar eada: Adopción y Gestión del Cambio en Office 365Webinar eada: Adopción y Gestión del Cambio en Office 365
Webinar eada: Adopción y Gestión del Cambio en Office 365MICProductivity
 
Dossier compañía y servicios MICProductivity
Dossier compañía y servicios MICProductivityDossier compañía y servicios MICProductivity
Dossier compañía y servicios MICProductivityMICProductivity
 
Comunicaciones eficientes con Microsoft Teams - MICProductivity
Comunicaciones eficientes con Microsoft Teams   - MICProductivityComunicaciones eficientes con Microsoft Teams   - MICProductivity
Comunicaciones eficientes con Microsoft Teams - MICProductivityMICProductivity
 
Recursos online sobre Microsoft Teams y Office 365
Recursos online sobre Microsoft Teams y Office 365Recursos online sobre Microsoft Teams y Office 365
Recursos online sobre Microsoft Teams y Office 365MICProductivity
 
Gestión de documentos online con OneDrive (MICProductivity)
Gestión de documentos online con OneDrive (MICProductivity)Gestión de documentos online con OneDrive (MICProductivity)
Gestión de documentos online con OneDrive (MICProductivity)MICProductivity
 
Gestión de tareas y proyectos online con Planner (MICProductivity)
Gestión de tareas y proyectos online con Planner (MICProductivity)Gestión de tareas y proyectos online con Planner (MICProductivity)
Gestión de tareas y proyectos online con Planner (MICProductivity)MICProductivity
 
Trabajo en equipo (colaboración y comunicación) con Teams (MICProductivity)
Trabajo en equipo (colaboración y comunicación) con Teams (MICProductivity)Trabajo en equipo (colaboración y comunicación) con Teams (MICProductivity)
Trabajo en equipo (colaboración y comunicación) con Teams (MICProductivity)MICProductivity
 
Comunicaciones eficaces con Microsoft Skype Empresarial (MICProductivity)
Comunicaciones eficaces con Microsoft Skype Empresarial (MICProductivity)Comunicaciones eficaces con Microsoft Skype Empresarial (MICProductivity)
Comunicaciones eficaces con Microsoft Skype Empresarial (MICProductivity)MICProductivity
 
Gestió eficient del temps amb Outlook (curs avançat)
Gestió eficient del temps amb Outlook (curs avançat)Gestió eficient del temps amb Outlook (curs avançat)
Gestió eficient del temps amb Outlook (curs avançat)MICProductivity
 
Treballar en mobilitat amb ipad, office i dropbox (UEA - Igualada, 20/1/2016)
Treballar en mobilitat amb ipad, office i dropbox (UEA - Igualada, 20/1/2016)Treballar en mobilitat amb ipad, office i dropbox (UEA - Igualada, 20/1/2016)
Treballar en mobilitat amb ipad, office i dropbox (UEA - Igualada, 20/1/2016)MICProductivity
 
Metodología AGC Office365 - MICProductivity
Metodología AGC Office365 - MICProductivityMetodología AGC Office365 - MICProductivity
Metodología AGC Office365 - MICProductivityMICProductivity
 
Marco Habilidades Digitales para Directivos
Marco Habilidades Digitales para DirectivosMarco Habilidades Digitales para Directivos
Marco Habilidades Digitales para DirectivosMICProductivity
 
Material taller "Gestió Eficient Correu Electrònic" (Cibernarium, 23-9)
Material taller "Gestió Eficient Correu Electrònic" (Cibernarium, 23-9)Material taller "Gestió Eficient Correu Electrònic" (Cibernarium, 23-9)
Material taller "Gestió Eficient Correu Electrònic" (Cibernarium, 23-9)MICProductivity
 
Digital Life: Nuevas formas de aprendizaje
Digital Life: Nuevas formas de aprendizajeDigital Life: Nuevas formas de aprendizaje
Digital Life: Nuevas formas de aprendizajeMICProductivity
 
Redes Sociales Corporativas -. Una vision global de Yanmmer
Redes Sociales Corporativas -. Una vision global de YanmmerRedes Sociales Corporativas -. Una vision global de Yanmmer
Redes Sociales Corporativas -. Una vision global de YanmmerMICProductivity
 
Colaboracion 2.0 - Tendencias para las Organizaciones
Colaboracion 2.0 - Tendencias para las OrganizacionesColaboracion 2.0 - Tendencias para las Organizaciones
Colaboracion 2.0 - Tendencias para las OrganizacionesMICProductivity
 
Guia Rapida inicio - usar Office365 en Windows Phone
Guia Rapida inicio - usar Office365 en Windows PhoneGuia Rapida inicio - usar Office365 en Windows Phone
Guia Rapida inicio - usar Office365 en Windows PhoneMICProductivity
 
Guia rápida de inicio de Microsoft - configurar office365 en windows phone
Guia rápida de inicio de Microsoft - configurar office365 en windows phoneGuia rápida de inicio de Microsoft - configurar office365 en windows phone
Guia rápida de inicio de Microsoft - configurar office365 en windows phoneMICProductivity
 
Guia Rápida de Microsoft - Usar Office 365 en iphone-ipad
Guia Rápida de Microsoft - Usar Office 365 en iphone-ipadGuia Rápida de Microsoft - Usar Office 365 en iphone-ipad
Guia Rápida de Microsoft - Usar Office 365 en iphone-ipadMICProductivity
 
Guía Rápida de Microsoft - Usar Office 365 en Android
Guía Rápida de Microsoft - Usar Office 365 en AndroidGuía Rápida de Microsoft - Usar Office 365 en Android
Guía Rápida de Microsoft - Usar Office 365 en AndroidMICProductivity
 

More from MICProductivity (20)

Webinar eada: Adopción y Gestión del Cambio en Office 365
Webinar eada: Adopción y Gestión del Cambio en Office 365Webinar eada: Adopción y Gestión del Cambio en Office 365
Webinar eada: Adopción y Gestión del Cambio en Office 365
 
Dossier compañía y servicios MICProductivity
Dossier compañía y servicios MICProductivityDossier compañía y servicios MICProductivity
Dossier compañía y servicios MICProductivity
 
Comunicaciones eficientes con Microsoft Teams - MICProductivity
Comunicaciones eficientes con Microsoft Teams   - MICProductivityComunicaciones eficientes con Microsoft Teams   - MICProductivity
Comunicaciones eficientes con Microsoft Teams - MICProductivity
 
Recursos online sobre Microsoft Teams y Office 365
Recursos online sobre Microsoft Teams y Office 365Recursos online sobre Microsoft Teams y Office 365
Recursos online sobre Microsoft Teams y Office 365
 
Gestión de documentos online con OneDrive (MICProductivity)
Gestión de documentos online con OneDrive (MICProductivity)Gestión de documentos online con OneDrive (MICProductivity)
Gestión de documentos online con OneDrive (MICProductivity)
 
Gestión de tareas y proyectos online con Planner (MICProductivity)
Gestión de tareas y proyectos online con Planner (MICProductivity)Gestión de tareas y proyectos online con Planner (MICProductivity)
Gestión de tareas y proyectos online con Planner (MICProductivity)
 
Trabajo en equipo (colaboración y comunicación) con Teams (MICProductivity)
Trabajo en equipo (colaboración y comunicación) con Teams (MICProductivity)Trabajo en equipo (colaboración y comunicación) con Teams (MICProductivity)
Trabajo en equipo (colaboración y comunicación) con Teams (MICProductivity)
 
Comunicaciones eficaces con Microsoft Skype Empresarial (MICProductivity)
Comunicaciones eficaces con Microsoft Skype Empresarial (MICProductivity)Comunicaciones eficaces con Microsoft Skype Empresarial (MICProductivity)
Comunicaciones eficaces con Microsoft Skype Empresarial (MICProductivity)
 
Gestió eficient del temps amb Outlook (curs avançat)
Gestió eficient del temps amb Outlook (curs avançat)Gestió eficient del temps amb Outlook (curs avançat)
Gestió eficient del temps amb Outlook (curs avançat)
 
Treballar en mobilitat amb ipad, office i dropbox (UEA - Igualada, 20/1/2016)
Treballar en mobilitat amb ipad, office i dropbox (UEA - Igualada, 20/1/2016)Treballar en mobilitat amb ipad, office i dropbox (UEA - Igualada, 20/1/2016)
Treballar en mobilitat amb ipad, office i dropbox (UEA - Igualada, 20/1/2016)
 
Metodología AGC Office365 - MICProductivity
Metodología AGC Office365 - MICProductivityMetodología AGC Office365 - MICProductivity
Metodología AGC Office365 - MICProductivity
 
Marco Habilidades Digitales para Directivos
Marco Habilidades Digitales para DirectivosMarco Habilidades Digitales para Directivos
Marco Habilidades Digitales para Directivos
 
Material taller "Gestió Eficient Correu Electrònic" (Cibernarium, 23-9)
Material taller "Gestió Eficient Correu Electrònic" (Cibernarium, 23-9)Material taller "Gestió Eficient Correu Electrònic" (Cibernarium, 23-9)
Material taller "Gestió Eficient Correu Electrònic" (Cibernarium, 23-9)
 
Digital Life: Nuevas formas de aprendizaje
Digital Life: Nuevas formas de aprendizajeDigital Life: Nuevas formas de aprendizaje
Digital Life: Nuevas formas de aprendizaje
 
Redes Sociales Corporativas -. Una vision global de Yanmmer
Redes Sociales Corporativas -. Una vision global de YanmmerRedes Sociales Corporativas -. Una vision global de Yanmmer
Redes Sociales Corporativas -. Una vision global de Yanmmer
 
Colaboracion 2.0 - Tendencias para las Organizaciones
Colaboracion 2.0 - Tendencias para las OrganizacionesColaboracion 2.0 - Tendencias para las Organizaciones
Colaboracion 2.0 - Tendencias para las Organizaciones
 
Guia Rapida inicio - usar Office365 en Windows Phone
Guia Rapida inicio - usar Office365 en Windows PhoneGuia Rapida inicio - usar Office365 en Windows Phone
Guia Rapida inicio - usar Office365 en Windows Phone
 
Guia rápida de inicio de Microsoft - configurar office365 en windows phone
Guia rápida de inicio de Microsoft - configurar office365 en windows phoneGuia rápida de inicio de Microsoft - configurar office365 en windows phone
Guia rápida de inicio de Microsoft - configurar office365 en windows phone
 
Guia Rápida de Microsoft - Usar Office 365 en iphone-ipad
Guia Rápida de Microsoft - Usar Office 365 en iphone-ipadGuia Rápida de Microsoft - Usar Office 365 en iphone-ipad
Guia Rápida de Microsoft - Usar Office 365 en iphone-ipad
 
Guía Rápida de Microsoft - Usar Office 365 en Android
Guía Rápida de Microsoft - Usar Office 365 en AndroidGuía Rápida de Microsoft - Usar Office 365 en Android
Guía Rápida de Microsoft - Usar Office 365 en Android
 

Ejemplos práctios de calidad en el software tecdencies

  • 1. Ciclo conferencias “Gestión de Proyectos” (Abril-Junio 2012) Ejemplos prácticos de calidad en el software 2 de Mayo de 2012 jordi.marti@tecdencies.com lleonard.delrio@tecdencies.com
  • 2. En què consistirà la presentació?  Tecdencies, Enginyeria de Software  La qualitat en el software:  No és fer proves en un moment donat del projecte, s’ha d’aplicar en tot l’àmbit del Projecte …  … però en aquesta sessió ens centrarem en la qualitat del codi a desenvolupar: Des del dia 1 que es comença a programar, fins que entreguem el producte. 2
  • 3. En 10 segundos… Integración Proporcionar soluciones Tecdencies basadas en componentes y sistemas existentes e Servicios de ingeniería y integrarlos con los sistemas desarrollo de soluciones actuales de los clientes. software basados en personas, Integración procesos y tecnología. Proven Innovation Innovar de forma segura Cómo mediante tecnologías Expertos trabajando de forma directa probadas. con Departamentos de SI, o ayudando a las Consultoras TI a alcanzar la excelencia en la prestación de sus servicios.
  • 4. Analysis / Design / Construction / Test / Deploy / Maintain ¿Estás seguro? •¿Estamos capturando bien los requisitos? •¿Estamos traduciéndolos bien en software? •¿A qué nos compromete esta arquitectura? ¿No deberíamos estar usando SOA? •¿Son estos patrones de diseño los correctos? •¿Utilizamos las herramientas correctas? •¿Las utilizamos correctamente? •¿Qué proceso de pruebas utilizamos? •¿Lo revisamos periódicamente? •¿Inspeccionamos el código que generamos? •¿Utilizamos estándares de codificación? •…
  • 5. Ingeniería del software  Definición según el IEEE: 1. La aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación y mantenimiento del software; es decir, la aplicación de la ingeniería al software  Cualquier enfoque de ingeniería debe estar sustentado en un compromiso con la calidad Herramientas Métodos Proceso Enfoque de calidad
  • 6. SWEBOK  El SoftWare Engineering Body Of Knowledge es un proyecto de colaboración entre la IEEE Computer Society y la Université du Québec à Montreal, con el fin de definir el cuerpo de conocimientos de la ingeniería de software  Sus objetivos:  Caracterizar los conocimientos de ingeniería del software  Aportar un acceso por temas al conocimiento de ingeniería del software.  Promover una visión consistente de la ingeniería del software en todo el mundo.  Clarificar el lugar y el entorno de la ingeniería del software con respecto a otros disciplinas (computer science, gestión de proyectos, computer engineering, matemáticas).  Aportar una base para el desarrollo de un currículo material para poder certificar y conceder licencia a profesionales.
  • 9. KA: Prueba del software
  • 10. KA: Calidad del software
  • 11. Definición de calidad Concordancia con 1. los requisitos funcionales y de desempeño explícitamente establecidos, 2. estándares de desarrollo explícitamente documentados, y 3. características implícitas que se esperan de cualquier software desarrollado profesionalmente
  • 13. Coste de la calidad  Costes que genera la búsqueda de calidad o que demanda el desarrollo de las actividades relacionadas con la calidad  Tipologías  Costes de prevención: planificación de la calidad, revisiones técnicas formales, equipo de pruebas y entrenamiento  Costes de evaluación: inspección en el proceso, calibración y mantenimiento de equipo y pruebas  Costes de fallas: son los que no existen si no aparecen defectos antes de enviar un producto a los clientes  Costes de fallas internas: detectados en el producto antes del envío  Costes de fallas externas: detectados después del envío
  • 14. Mecanismos para encontrar defectos  Posibilidades  Herramientas Compilador, revisores de código, etc.  Pruebas Pruebas unitarias, de integración, etc.  Usuarios Esperar a que los usuarios los encuentren  Revisiones Revisar el código fuente  Etc. Son inspecciones manuales: Revisión, la realiza uno mismo Inspección, la realiza una tercera REVISIÓN DE CÓDIGO [70-80 %] persona INSPECCIÓN DE CÓDIGO [50-70 %] COMPILACIÓN [50 %] PRUEBAS UNITARIAS [40-50 %] PRUEBAS INTEGRACIÓN [45 %] PRUEBAS DE REQUISITOS [45 %] PRUEBAS DE ALGORITMO [8 %]
  • 15. La importancia de las pruebas COSTES DE DESARROLLO Aún y así, la sensación es que [30-50 %] (habitualmente) el software no está Pruebas de Software suficientemente probado antes de ser distribuido  Probar software es extremadamente difícil  Las formas en las que puede comportarse un programa no se pueden cuantificar  La prueba se hace típicamente sin una metodología clara y sin la necesaria automatización o el soporte de herramientas
  • 16. Principios de las pruebas  Principio #1  Todas las pruebas deben ser rastreables hasta los requisitos del cliente  Principio #2  Las pruebas se deben planificar mucho antes de que comience el proceso de prueba  Principio #3  El principio de Pareto es aplicable para las pruebas de software  Principio #4  Las pruebas deben comenzar “en lo pequeño” y progresar hacia “lo grande”  Principio #5  Las pruebas exhaustivas no son posibles
  • 17. Etapas de las pruebas  Pruebas de UNIDAD  “Pronto“ + propio desarrollador  Verificar los elementos “testeables” más pequeños del software  El comportamiento se deduce de los casos de uso  Pruebas de INTEGRACIÓN  Asegurar que los componentes actúan de la forma adecuada al combinarse para la ejecución de un caso de uso  Verificar paquetes (packages)  Pruebas de SISTEMA  Cuando el software funciona como un todo (o cuando subconjuntos de comportamiento están implementados)  Todo el sistema  Pruebas de ACEPTACIÓN  Acción final de las pruebas antes de desplegar el software  Verificar que el software está a punto y puede ser usado por los usuarios finales
  • 18. CASO PRÁCTICO 2: PRUEBAS CON VISUAL STUDIO 18