SlideShare una empresa de Scribd logo
1 de 25
Enfoques de Calidad
El Enfoque hacia el Producto
 El Enfoque hacia el Proceso
   Varios autores han enunciado distintos modelos de
    características de calidad de software o atributos
    que pueden ser útiles para la negociación,
    planificación, y tasación de la calidad de
    productos software (Boehm 78; McCall 77)




       Boehm 78


                                   McCall 77
 ISO/IEC ha definido tres modelos relacionados de
  calidad de productos software (la calidad interna,
  la calidad externa, y la calidad en el empleo)
  (ISO9126-01) y un conjunto de partes relacionadas
  (ISO14598-98)
 NTP-ISO/IEC 17799:2007 (Norma Peruana)
Procesos Principales                    Procesos de Apoyo
                                      1. Adquisición                         1. Documentación

                                       2. Suministro
                                                                       2. Gestión de la Configuración
                3. Desarrollo




                                            4. Operación              3. Aseguramiento de la Calidad

                                                                      4. Verificación     5. Validación
                                          5. Mantenimiento
                                                                            6. Revisión Conjunta
Organizativos




                                             1. Gestión                          7. Auditoría

                                2. Infraestructura        3. Mejora
                                                                         8. Solución de Problemas
                Diseño de Software     4. Recursos Humanos                                                4
 Esto da por consecuencia dos enfoques
  principales para las características de la
  calidad del software, el enfoque hacia
  el producto y el enfoque hacia el
  proceso
 La gestión de la calidad de software y la
  calidad de proceso en la ingeniería de
  software guardan relación directa con
  la calidad del producto software
 El ingeniero de software, ante todo,
  necesita determinar el Objetivo
  verdadero del software
 En cuanto a esto, es de suma
  importancia tener presente los
  requerimientos del cliente y aquellos que
  estos incluyen como requerimientos de
  calidad, no únicamente los
  requerimientos funcionales
   La calidad de un producto no se limita a su
    confiabilidad o corrección, aunque ésta
    debería estar en consonancia con el
    precio y el uso de la aplicación de este
    software
   Atañe a aspectos de similar importancia a
    la confiabilidad, como la seguridad del
    producto, de sus partes, cada vez más
    importante en tanto y cuanto una parte
    del software actual se realiza mediante la
    composición de componentes
    proporcionados bien por el programador,
    bien por el sistema de desarrollo, bien
    suministrado por terceros
   Otros aspectos fundamentales de la
    calidad de un producto de software son
    la facilidad de utilización por los usuarios
    esperados, las prestaciones ofrecidas
    por las aplicaciones, la adaptación a su
    mantenimiento y producción de nuevas
    versiones, la flexibilidad y la
    transportabilidad a sistemas
    hardware/software diferentes, etc.

   Una de las acepciones más utilizadas de
    la calidad es la relacionada con
    modelos de aseguramiento tipo ISO 9000
   El estándar ISO/IEC 9126-01 define, para
    dos de sus tres modelos de calidad,
    características de calidad, Sub-
    características, y las medidas que son útiles
    para Evaluación de calidad de producto
    de software

   Como ejemplos de un producto cabe
    incluir, aunque no con carácter limitativo,
    una completa especificación del sistema,
    una especificación de requerimientos de
    software para un componente de software
    de un sistema, un módulo de diseño,
    código, documentación de prueba, o los
    informes producidos como consecuencia
    de tareas de análisis de calidad
   Mientras la mayor parte del tratamiento de la
    calidad es descrito en términos del software final y
    funcionamiento del sistema, una ingeniería práctica
    responsable requiere que los productos intermedios
    relevantes para la calidad sean evaluados a lo largo
    de todo el proceso de ingeniería de software

   ISO 9000: Calidad de Software
   ISO 8402:1994. Gestión de la calidad y garantía de la
    calidad. Vocabulario.
   ISO 12207:1995. Procesos del ciclo de vida del
    software.
   ISO/IEC 9126:1991. Características de la calidad de
    un producto software.
   ISO/IEC 12119:1995. Productos software: evaluación y
    test.
   ISO/IEC 14102:1995. Guía para la evaluación y
    selección de herramientas CASE.
 Las metodologías de desarrollo nos
  ayudan a realizar este proceso (el de
  desarrollo) reglado y prefijado para
  conseguir productos adecuados
 Dentro de la Ingeniería de Software
  existen multitud de metodologías para el
  desarrollo de productos de software
 Incluso, cada país suele tener su versión
  de metodología obligatoria
  (normalmente en lo relativo a los
  aspectos formales orientados a la
  documentación) en los productos de
  administración pública
   La orientación adecuada consiste en
    partir de una metodología de desarrollo
    suficientemente contrastada y admitida,
    personalizada para la propia
    organización pero sin pérdida de la
    generalidad de la misma (lo que
    consiguen muchas personalizaciones es
    la pérdida de la eficiencia de la
    metodología)
 Un proceso de desarrollo de software
  determina quién debe hacer qué,
  cuándo y cómo
 Un proceso de software define la forma
  en que se organiza el trabajo de un
  equipo de desarrollo y otros grupos de
  apoyo
 Son las actividades que se realizan
  siguiendo métodos y técnicas para
  desarrollar un producto de software
 El proceso de desarrollo recibe como
  entrada requisitos nuevos o modificados
  y genera un sistema nuevo o modificado
   Los procesos de software difícilmente se
    inventan desde cero, más bien recogen las
    mejores prácticas y experiencias de los que
    han tenido éxito en el desarrollo de software
   Actualmente, disponemos de una serie de
    modelos generados por consenso entre
    profesionistas, que podemos tomar como
    modelos de referencia
   Los ejemplos más destacados de estos
    modelos el CMM-SW, el CMMI, el ISO/IEC 12207
    e ISO/IEC 15504
   La confianza en estos modelos se debe al
    hecho de que fueron sustraídos de las
    experiencias de varias empresas y de muchos
    proyectos exitosos desarrollados anteriormente
 Los modelos de referencia mencionados
  muestran, que para tener éxito en el
  proceso de desarrollo de software hay que
  darle la debida importancia no solamente
  a los aspectos técnicos, sino también a los
  aspectos de gestión de un proyecto
 Una organización que quiera medir la
  calidad, o usando los términos de los
  modelos, la capacidad y/o madurez de sus
  procesos, puede comparar su forma de
  trabajar con respecto a lo que sugieren
  estos modelos
 Esto se conoce como evaluación de
  procesos (Process Assessment)
 Esencialmente el proceso está definido
  por un modelo de proceso junto con la
  definición de artefactos, actividades y
  roles
 Además, existe consenso respecto a
  que el proceso de desarrollo debe ser
  iterativo
 En este sentido normalmente se
  combinan una estrategia de desarrollo
  incremental con una de desarrollo en
  espiral
 Una importante característica de un
  proceso iterativo es que la
  especificación del software es
  desarrollada a lo largo del proceso de
  desarrollo de software, es decir, no se
  establece de forma completa e
  inmutable al principio del desarrollo
 Un artefacto es cualquier información
  usada o producida por el proceso de
  desarrollo de software (OMG 2002)
 Ejemplos de artefactos son:
  documentos, modelos, archivos fuente y
  ejecutables
 Un rol es la definición del
  comportamiento y responsabilidades de
  un individuo o conjunto de individuos
  trabajando juntos como un equipo,
  dentro del contexto de la organización
  de ingeniería de software
 Una actividad es una unidad de trabajo
  que puede realizar un determinado rol
 Todo lo anterior se define de acuerdo a
  la terminología utilizada en RUP (Rational
  Unfied Process) que es la versión de la
  empresa Rational del proceso unificado
 No existe un proceso de desarrollo de
  software universal que sea adecuado
  para cualquier proyecto
 Debido a esto, un proceso de desarrollo
  debe ser entendido como un marco de
  trabajo configurable, capaz de ser
  adoptado y escalda según las
  características del proyecto
 En la actualidad, quizá dos de los
  exponentes más representativos de
  procesos en cuanto a su interés
  industrial, son RUP y XP (Extreme
  Programming) (Beck 2000)
 Ambos representan una pugna entre lo
  que se ha clasificado por algunos
  autores como procesos peso pesado
  (heavyweight) y procesos peso ligero
  (lightweight) o también llamados
  metodologías ágiles
 La diferencia más clara entre los
  procesos llamados pesados y los ligeros
  está en la envergadura de los proyectos
  para los cuales están orientados y el
  grado de “ceremonia” o mejor dicho,
  formalidad que el proceso establece
 En RUP se hace mayor hincapié en el
  modelado y hay una precisa definición
  de cada uno de los roles, actividades y
  artefactos que deben formar el proceso
  de desarrollo
 RUP es un marco de trabajo que puede
  ser adaptado a las necesidades del
  proyecto, con lo cual puede
  configurarse para proyectos de distintas
  envergaduras
 XP se orienta fuertemente a la producción
  de código y sus pruebas, restando
  protagonismo al modelado y enfatizando
  aspectos tales como: la satisfacción del
  cliente, el potenciar la capacidad
  individual y promover una estrecha
  colaboración del equipo de desarrollo
 XP debido a sus principios, presenta
  inconvenientes para ser escalado a
  grandes proyectos en condiciones en las
  cuales, por ejemplo, como lo señala Smith
  (2001) hay más de 10 participantes, el
  equipo está distribuido geográficamente,
  el tiempo de desarrollo es de años, etc.
   Se puede resumir todo lo anterior de la
    forma siguiente:
                   Gente




     Tecnología                 Proceso
   Gente
    › Con las habilidades, entrenamiento y
     motivación
   Tecnología
    › Herramientas e Infraestructura
   Proceso
    › Procedimientos y Métodos definiendo las
     relaciones de las tareas

Más contenido relacionado

La actualidad más candente

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
 
Calidad del software
Calidad del softwareCalidad del software
Calidad del softwareReivaj Sagarv
 
Ensayo de calidad
Ensayo de calidadEnsayo de calidad
Ensayo de calidadpancho
 
CALIDAD DE SOFTWARE-SOLO SEPTIMO SEMESTRE
CALIDAD DE SOFTWARE-SOLO SEPTIMO SEMESTRECALIDAD DE SOFTWARE-SOLO SEPTIMO SEMESTRE
CALIDAD DE SOFTWARE-SOLO SEPTIMO SEMESTREJuan Raul Vergara
 
Diapositiva de calidad del software
Diapositiva de calidad del softwareDiapositiva de calidad del software
Diapositiva de calidad del softwareJhonatan Villada Gil
 
Ejemplos práctios de calidad en el software tecdencies
Ejemplos práctios de calidad en el software tecdenciesEjemplos práctios de calidad en el software tecdencies
Ejemplos práctios de calidad en el software tecdenciesMICProductivity
 
Calidad Del Producto Software
Calidad Del Producto SoftwareCalidad Del Producto Software
Calidad Del Producto Softwarealbert317
 
4. introduccion a los modelos de calidad
4. introduccion a los modelos de calidad4. introduccion a los modelos de calidad
4. introduccion a los modelos de calidadJuan Pablo Carvallo
 
Calidad del Software en Proyectos Open Source
Calidad del Software en Proyectos Open SourceCalidad del Software en Proyectos Open Source
Calidad del Software en Proyectos Open SourceMarcos Blanco Galán
 
Aseguramiento de la Calidad del Proceso.
Aseguramiento de la Calidad del Proceso.Aseguramiento de la Calidad del Proceso.
Aseguramiento de la Calidad del Proceso.Manuel García Marcelli
 
evaluacion de la calidad en la tecnologia educativa. Maestria udes.
evaluacion de la calidad en la tecnologia educativa. Maestria udes.evaluacion de la calidad en la tecnologia educativa. Maestria udes.
evaluacion de la calidad en la tecnologia educativa. Maestria udes.Lorena Isabel Mejía Cadavid
 
265570212 ensayo-debilidades-de-la-norma-iso-9126
265570212 ensayo-debilidades-de-la-norma-iso-9126265570212 ensayo-debilidades-de-la-norma-iso-9126
265570212 ensayo-debilidades-de-la-norma-iso-9126Andreita Guevara Trujillo
 
MCCALL, ISO 9126, ISO 25000
MCCALL, ISO 9126, ISO 25000MCCALL, ISO 9126, ISO 25000
MCCALL, ISO 9126, ISO 25000Oscar Limachi
 
Calidad del producto ISO 9126
Calidad del producto ISO 9126Calidad del producto ISO 9126
Calidad del producto ISO 9126JekittaB
 

La actualidad más candente (20)

Calidad De Software Diapositivas
Calidad De Software DiapositivasCalidad De Software Diapositivas
Calidad De Software Diapositivas
 
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
 
Calidad del software
Calidad del softwareCalidad del software
Calidad del software
 
Ensayo de calidad
Ensayo de calidadEnsayo de calidad
Ensayo de calidad
 
ISO/IEC 14598
ISO/IEC 14598ISO/IEC 14598
ISO/IEC 14598
 
CALIDAD DE SOFTWARE-SOLO SEPTIMO SEMESTRE
CALIDAD DE SOFTWARE-SOLO SEPTIMO SEMESTRECALIDAD DE SOFTWARE-SOLO SEPTIMO SEMESTRE
CALIDAD DE SOFTWARE-SOLO SEPTIMO SEMESTRE
 
Diapositiva de calidad del software
Diapositiva de calidad del softwareDiapositiva de calidad del software
Diapositiva de calidad del software
 
Ejemplos práctios de calidad en el software tecdencies
Ejemplos práctios de calidad en el software tecdenciesEjemplos práctios de calidad en el software tecdencies
Ejemplos práctios de calidad en el software tecdencies
 
Calidad Del Producto Software
Calidad Del Producto SoftwareCalidad Del Producto Software
Calidad Del Producto Software
 
Conceptos basicos calidad software
Conceptos basicos calidad softwareConceptos basicos calidad software
Conceptos basicos calidad software
 
4. introduccion a los modelos de calidad
4. introduccion a los modelos de calidad4. introduccion a los modelos de calidad
4. introduccion a los modelos de calidad
 
Calidad del Software en Proyectos Open Source
Calidad del Software en Proyectos Open SourceCalidad del Software en Proyectos Open Source
Calidad del Software en Proyectos Open Source
 
Aseguramiento de la Calidad del Proceso.
Aseguramiento de la Calidad del Proceso.Aseguramiento de la Calidad del Proceso.
Aseguramiento de la Calidad del Proceso.
 
evaluacion de la calidad en la tecnologia educativa. Maestria udes.
evaluacion de la calidad en la tecnologia educativa. Maestria udes.evaluacion de la calidad en la tecnologia educativa. Maestria udes.
evaluacion de la calidad en la tecnologia educativa. Maestria udes.
 
Capitulo 1 completo
Capitulo 1 completoCapitulo 1 completo
Capitulo 1 completo
 
265570212 ensayo-debilidades-de-la-norma-iso-9126
265570212 ensayo-debilidades-de-la-norma-iso-9126265570212 ensayo-debilidades-de-la-norma-iso-9126
265570212 ensayo-debilidades-de-la-norma-iso-9126
 
Ensayo
EnsayoEnsayo
Ensayo
 
MCCALL, ISO 9126, ISO 25000
MCCALL, ISO 9126, ISO 25000MCCALL, ISO 9126, ISO 25000
MCCALL, ISO 9126, ISO 25000
 
Calidad del producto ISO 9126
Calidad del producto ISO 9126Calidad del producto ISO 9126
Calidad del producto ISO 9126
 
Como se mide la Calidad de software
Como se mide la Calidad de softwareComo se mide la Calidad de software
Como se mide la Calidad de software
 

Similar a Fundamentos de la calidad del software

Gestión de la Calidad
Gestión de la CalidadGestión de la Calidad
Gestión de la CalidadMarcel Aponte
 
Actividad semana 04 ciclo de vida software
Actividad semana  04   ciclo de vida softwareActividad semana  04   ciclo de vida software
Actividad semana 04 ciclo de vida softwareMauricio Durán
 
PROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWPROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWRaquel Solano
 
2.1 proyecto software
2.1 proyecto software2.1 proyecto software
2.1 proyecto softwaremigmol
 
Estándares de calidad, ISO/IEC por Edinson Barrera
Estándares de calidad, ISO/IEC por Edinson BarreraEstándares de calidad, ISO/IEC por Edinson Barrera
Estándares de calidad, ISO/IEC por Edinson BarreraDavid Lugo
 
Normas y estándares de calidad para el desarrollo
Normas y estándares de calidad para el desarrolloNormas y estándares de calidad para el desarrollo
Normas y estándares de calidad para el desarrolloMonicaGaitnRivera
 
Actividad 2-aseguramiento-de-la-calidad-del-software nataly
Actividad 2-aseguramiento-de-la-calidad-del-software natalyActividad 2-aseguramiento-de-la-calidad-del-software nataly
Actividad 2-aseguramiento-de-la-calidad-del-software natalynataly duque
 
1 u2 calidad_productoproceso
1 u2 calidad_productoproceso1 u2 calidad_productoproceso
1 u2 calidad_productoprocesoAndrei Hortúa
 
Normas ISO en los procesos del Software
Normas ISO en los procesos del SoftwareNormas ISO en los procesos del Software
Normas ISO en los procesos del Softwarealejandrocubillos9
 
Calidad de software_Rup_ISO
Calidad de software_Rup_ISOCalidad de software_Rup_ISO
Calidad de software_Rup_ISOAndres_Felipe_D
 
Calidad de software alex
Calidad de software alexCalidad de software alex
Calidad de software alexAlexander Ortis
 
Calidad de software septimo semestre
Calidad de software septimo semestreCalidad de software septimo semestre
Calidad de software septimo semestrerodrigoarriagasalinas
 
Calidad de software ii
Calidad de software iiCalidad de software ii
Calidad de software iiCamilo Andres
 
Calidad de software ii
Calidad de software iiCalidad de software ii
Calidad de software iiCamilo Andres
 
Calidad de software
Calidad de softwareCalidad de software
Calidad de softwareandimoreno
 

Similar a Fundamentos de la calidad del software (20)

Gestión de la Calidad
Gestión de la CalidadGestión de la Calidad
Gestión de la Calidad
 
Actividad semana 04 ciclo de vida software
Actividad semana  04   ciclo de vida softwareActividad semana  04   ciclo de vida software
Actividad semana 04 ciclo de vida software
 
Normas y estandares
Normas y estandaresNormas y estandares
Normas y estandares
 
PROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SWPROCESOS DE INGENIERIA DEL SW
PROCESOS DE INGENIERIA DEL SW
 
2.1 proyecto software
2.1 proyecto software2.1 proyecto software
2.1 proyecto software
 
Estándares de calidad, ISO/IEC por Edinson Barrera
Estándares de calidad, ISO/IEC por Edinson BarreraEstándares de calidad, ISO/IEC por Edinson Barrera
Estándares de calidad, ISO/IEC por Edinson Barrera
 
Normas y estándares de calidad para el desarrollo
Normas y estándares de calidad para el desarrolloNormas y estándares de calidad para el desarrollo
Normas y estándares de calidad para el desarrollo
 
Actividad 2-aseguramiento-de-la-calidad-del-software nataly
Actividad 2-aseguramiento-de-la-calidad-del-software natalyActividad 2-aseguramiento-de-la-calidad-del-software nataly
Actividad 2-aseguramiento-de-la-calidad-del-software nataly
 
1 u2 calidad_productoproceso
1 u2 calidad_productoproceso1 u2 calidad_productoproceso
1 u2 calidad_productoproceso
 
S7-CDSQA.pptx
S7-CDSQA.pptxS7-CDSQA.pptx
S7-CDSQA.pptx
 
Normas ISO en los procesos del Software
Normas ISO en los procesos del SoftwareNormas ISO en los procesos del Software
Normas ISO en los procesos del Software
 
Calidad de software_Rup_ISO
Calidad de software_Rup_ISOCalidad de software_Rup_ISO
Calidad de software_Rup_ISO
 
Rup
RupRup
Rup
 
Calidad de software alex
Calidad de software alexCalidad de software alex
Calidad de software alex
 
Calidad de software septimo semestre
Calidad de software septimo semestreCalidad de software septimo semestre
Calidad de software septimo semestre
 
metodologia
metodologiametodologia
metodologia
 
Calidad de software ii
Calidad de software iiCalidad de software ii
Calidad de software ii
 
Calidad de software ii
Calidad de software iiCalidad de software ii
Calidad de software ii
 
Calidad del Software
Calidad del SoftwareCalidad del Software
Calidad del Software
 
Calidad de software
Calidad de softwareCalidad de software
Calidad de software
 

Más de Jonathan

Cliente servidor
Cliente servidorCliente servidor
Cliente servidorJonathan
 
BASE DE DATOS: sistemas_clienteservidor
BASE DE DATOS: sistemas_clienteservidorBASE DE DATOS: sistemas_clienteservidor
BASE DE DATOS: sistemas_clienteservidorJonathan
 
Base de datos: sistemas_clienteservidor
Base de datos: sistemas_clienteservidorBase de datos: sistemas_clienteservidor
Base de datos: sistemas_clienteservidorJonathan
 
Especialista dba sql server 2008
Especialista dba sql server 2008Especialista dba sql server 2008
Especialista dba sql server 2008Jonathan
 
Desarrollo de aplicaciones empresariales con visual 2010
Desarrollo de aplicaciones empresariales con visual 2010Desarrollo de aplicaciones empresariales con visual 2010
Desarrollo de aplicaciones empresariales con visual 2010Jonathan
 
Business ProcessManagement BPM: 9 y 10
Business ProcessManagement BPM: 9 y 10Business ProcessManagement BPM: 9 y 10
Business ProcessManagement BPM: 9 y 10Jonathan
 
Business ProcessManagement BPM: 4, 5, 6_y_7
Business ProcessManagement BPM: 4, 5, 6_y_7Business ProcessManagement BPM: 4, 5, 6_y_7
Business ProcessManagement BPM: 4, 5, 6_y_7Jonathan
 
Business ProcessManagement BPM: 01, 02, 03
Business ProcessManagement BPM: 01, 02, 03Business ProcessManagement BPM: 01, 02, 03
Business ProcessManagement BPM: 01, 02, 03Jonathan
 
Student sub network book
Student sub network bookStudent sub network book
Student sub network bookJonathan
 
Analisis de protocolos tcp ip
Analisis de protocolos tcp ipAnalisis de protocolos tcp ip
Analisis de protocolos tcp ipJonathan
 
Presentacin7a
Presentacin7aPresentacin7a
Presentacin7aJonathan
 
Exploration routing chapter2
Exploration routing chapter2Exploration routing chapter2
Exploration routing chapter2Jonathan
 
Capa de enlace de datos
Capa de enlace de datosCapa de enlace de datos
Capa de enlace de datosJonathan
 
Presentacin7a
Presentacin7aPresentacin7a
Presentacin7aJonathan
 
Modelo de referencia osi 2
Modelo de referencia osi 2Modelo de referencia osi 2
Modelo de referencia osi 2Jonathan
 
Modelo de referencia osi
Modelo de referencia osiModelo de referencia osi
Modelo de referencia osiJonathan
 
Exploration routing chapter2
Exploration routing chapter2Exploration routing chapter2
Exploration routing chapter2Jonathan
 
Capa de enlace de datos
Capa de enlace de datosCapa de enlace de datos
Capa de enlace de datosJonathan
 
Exploration routing chapter2
Exploration routing chapter2Exploration routing chapter2
Exploration routing chapter2Jonathan
 
Enrutamiento
EnrutamientoEnrutamiento
EnrutamientoJonathan
 

Más de Jonathan (20)

Cliente servidor
Cliente servidorCliente servidor
Cliente servidor
 
BASE DE DATOS: sistemas_clienteservidor
BASE DE DATOS: sistemas_clienteservidorBASE DE DATOS: sistemas_clienteservidor
BASE DE DATOS: sistemas_clienteservidor
 
Base de datos: sistemas_clienteservidor
Base de datos: sistemas_clienteservidorBase de datos: sistemas_clienteservidor
Base de datos: sistemas_clienteservidor
 
Especialista dba sql server 2008
Especialista dba sql server 2008Especialista dba sql server 2008
Especialista dba sql server 2008
 
Desarrollo de aplicaciones empresariales con visual 2010
Desarrollo de aplicaciones empresariales con visual 2010Desarrollo de aplicaciones empresariales con visual 2010
Desarrollo de aplicaciones empresariales con visual 2010
 
Business ProcessManagement BPM: 9 y 10
Business ProcessManagement BPM: 9 y 10Business ProcessManagement BPM: 9 y 10
Business ProcessManagement BPM: 9 y 10
 
Business ProcessManagement BPM: 4, 5, 6_y_7
Business ProcessManagement BPM: 4, 5, 6_y_7Business ProcessManagement BPM: 4, 5, 6_y_7
Business ProcessManagement BPM: 4, 5, 6_y_7
 
Business ProcessManagement BPM: 01, 02, 03
Business ProcessManagement BPM: 01, 02, 03Business ProcessManagement BPM: 01, 02, 03
Business ProcessManagement BPM: 01, 02, 03
 
Student sub network book
Student sub network bookStudent sub network book
Student sub network book
 
Analisis de protocolos tcp ip
Analisis de protocolos tcp ipAnalisis de protocolos tcp ip
Analisis de protocolos tcp ip
 
Presentacin7a
Presentacin7aPresentacin7a
Presentacin7a
 
Exploration routing chapter2
Exploration routing chapter2Exploration routing chapter2
Exploration routing chapter2
 
Capa de enlace de datos
Capa de enlace de datosCapa de enlace de datos
Capa de enlace de datos
 
Presentacin7a
Presentacin7aPresentacin7a
Presentacin7a
 
Modelo de referencia osi 2
Modelo de referencia osi 2Modelo de referencia osi 2
Modelo de referencia osi 2
 
Modelo de referencia osi
Modelo de referencia osiModelo de referencia osi
Modelo de referencia osi
 
Exploration routing chapter2
Exploration routing chapter2Exploration routing chapter2
Exploration routing chapter2
 
Capa de enlace de datos
Capa de enlace de datosCapa de enlace de datos
Capa de enlace de datos
 
Exploration routing chapter2
Exploration routing chapter2Exploration routing chapter2
Exploration routing chapter2
 
Enrutamiento
EnrutamientoEnrutamiento
Enrutamiento
 

Fundamentos de la calidad del software

  • 1. Enfoques de Calidad El Enfoque hacia el Producto El Enfoque hacia el Proceso
  • 2. Varios autores han enunciado distintos modelos de características de calidad de software o atributos que pueden ser útiles para la negociación, planificación, y tasación de la calidad de productos software (Boehm 78; McCall 77) Boehm 78 McCall 77
  • 3.  ISO/IEC ha definido tres modelos relacionados de calidad de productos software (la calidad interna, la calidad externa, y la calidad en el empleo) (ISO9126-01) y un conjunto de partes relacionadas (ISO14598-98)  NTP-ISO/IEC 17799:2007 (Norma Peruana)
  • 4. Procesos Principales Procesos de Apoyo 1. Adquisición 1. Documentación 2. Suministro 2. Gestión de la Configuración 3. Desarrollo 4. Operación 3. Aseguramiento de la Calidad 4. Verificación 5. Validación 5. Mantenimiento 6. Revisión Conjunta Organizativos 1. Gestión 7. Auditoría 2. Infraestructura 3. Mejora 8. Solución de Problemas Diseño de Software 4. Recursos Humanos 4
  • 5.  Esto da por consecuencia dos enfoques principales para las características de la calidad del software, el enfoque hacia el producto y el enfoque hacia el proceso  La gestión de la calidad de software y la calidad de proceso en la ingeniería de software guardan relación directa con la calidad del producto software
  • 6.  El ingeniero de software, ante todo, necesita determinar el Objetivo verdadero del software  En cuanto a esto, es de suma importancia tener presente los requerimientos del cliente y aquellos que estos incluyen como requerimientos de calidad, no únicamente los requerimientos funcionales
  • 7. La calidad de un producto no se limita a su confiabilidad o corrección, aunque ésta debería estar en consonancia con el precio y el uso de la aplicación de este software  Atañe a aspectos de similar importancia a la confiabilidad, como la seguridad del producto, de sus partes, cada vez más importante en tanto y cuanto una parte del software actual se realiza mediante la composición de componentes proporcionados bien por el programador, bien por el sistema de desarrollo, bien suministrado por terceros
  • 8. Otros aspectos fundamentales de la calidad de un producto de software son la facilidad de utilización por los usuarios esperados, las prestaciones ofrecidas por las aplicaciones, la adaptación a su mantenimiento y producción de nuevas versiones, la flexibilidad y la transportabilidad a sistemas hardware/software diferentes, etc.  Una de las acepciones más utilizadas de la calidad es la relacionada con modelos de aseguramiento tipo ISO 9000
  • 9. El estándar ISO/IEC 9126-01 define, para dos de sus tres modelos de calidad, características de calidad, Sub- características, y las medidas que son útiles para Evaluación de calidad de producto de software  Como ejemplos de un producto cabe incluir, aunque no con carácter limitativo, una completa especificación del sistema, una especificación de requerimientos de software para un componente de software de un sistema, un módulo de diseño, código, documentación de prueba, o los informes producidos como consecuencia de tareas de análisis de calidad
  • 10. Mientras la mayor parte del tratamiento de la calidad es descrito en términos del software final y funcionamiento del sistema, una ingeniería práctica responsable requiere que los productos intermedios relevantes para la calidad sean evaluados a lo largo de todo el proceso de ingeniería de software  ISO 9000: Calidad de Software  ISO 8402:1994. Gestión de la calidad y garantía de la calidad. Vocabulario.  ISO 12207:1995. Procesos del ciclo de vida del software.  ISO/IEC 9126:1991. Características de la calidad de un producto software.  ISO/IEC 12119:1995. Productos software: evaluación y test.  ISO/IEC 14102:1995. Guía para la evaluación y selección de herramientas CASE.
  • 11.  Las metodologías de desarrollo nos ayudan a realizar este proceso (el de desarrollo) reglado y prefijado para conseguir productos adecuados  Dentro de la Ingeniería de Software existen multitud de metodologías para el desarrollo de productos de software  Incluso, cada país suele tener su versión de metodología obligatoria (normalmente en lo relativo a los aspectos formales orientados a la documentación) en los productos de administración pública
  • 12. La orientación adecuada consiste en partir de una metodología de desarrollo suficientemente contrastada y admitida, personalizada para la propia organización pero sin pérdida de la generalidad de la misma (lo que consiguen muchas personalizaciones es la pérdida de la eficiencia de la metodología)
  • 13.  Un proceso de desarrollo de software determina quién debe hacer qué, cuándo y cómo  Un proceso de software define la forma en que se organiza el trabajo de un equipo de desarrollo y otros grupos de apoyo  Son las actividades que se realizan siguiendo métodos y técnicas para desarrollar un producto de software  El proceso de desarrollo recibe como entrada requisitos nuevos o modificados y genera un sistema nuevo o modificado
  • 14. Los procesos de software difícilmente se inventan desde cero, más bien recogen las mejores prácticas y experiencias de los que han tenido éxito en el desarrollo de software  Actualmente, disponemos de una serie de modelos generados por consenso entre profesionistas, que podemos tomar como modelos de referencia  Los ejemplos más destacados de estos modelos el CMM-SW, el CMMI, el ISO/IEC 12207 e ISO/IEC 15504  La confianza en estos modelos se debe al hecho de que fueron sustraídos de las experiencias de varias empresas y de muchos proyectos exitosos desarrollados anteriormente
  • 15.
  • 16.  Los modelos de referencia mencionados muestran, que para tener éxito en el proceso de desarrollo de software hay que darle la debida importancia no solamente a los aspectos técnicos, sino también a los aspectos de gestión de un proyecto  Una organización que quiera medir la calidad, o usando los términos de los modelos, la capacidad y/o madurez de sus procesos, puede comparar su forma de trabajar con respecto a lo que sugieren estos modelos  Esto se conoce como evaluación de procesos (Process Assessment)
  • 17.  Esencialmente el proceso está definido por un modelo de proceso junto con la definición de artefactos, actividades y roles  Además, existe consenso respecto a que el proceso de desarrollo debe ser iterativo  En este sentido normalmente se combinan una estrategia de desarrollo incremental con una de desarrollo en espiral
  • 18.  Una importante característica de un proceso iterativo es que la especificación del software es desarrollada a lo largo del proceso de desarrollo de software, es decir, no se establece de forma completa e inmutable al principio del desarrollo  Un artefacto es cualquier información usada o producida por el proceso de desarrollo de software (OMG 2002)  Ejemplos de artefactos son: documentos, modelos, archivos fuente y ejecutables
  • 19.  Un rol es la definición del comportamiento y responsabilidades de un individuo o conjunto de individuos trabajando juntos como un equipo, dentro del contexto de la organización de ingeniería de software  Una actividad es una unidad de trabajo que puede realizar un determinado rol  Todo lo anterior se define de acuerdo a la terminología utilizada en RUP (Rational Unfied Process) que es la versión de la empresa Rational del proceso unificado
  • 20.  No existe un proceso de desarrollo de software universal que sea adecuado para cualquier proyecto  Debido a esto, un proceso de desarrollo debe ser entendido como un marco de trabajo configurable, capaz de ser adoptado y escalda según las características del proyecto  En la actualidad, quizá dos de los exponentes más representativos de procesos en cuanto a su interés industrial, son RUP y XP (Extreme Programming) (Beck 2000)
  • 21.  Ambos representan una pugna entre lo que se ha clasificado por algunos autores como procesos peso pesado (heavyweight) y procesos peso ligero (lightweight) o también llamados metodologías ágiles  La diferencia más clara entre los procesos llamados pesados y los ligeros está en la envergadura de los proyectos para los cuales están orientados y el grado de “ceremonia” o mejor dicho, formalidad que el proceso establece
  • 22.  En RUP se hace mayor hincapié en el modelado y hay una precisa definición de cada uno de los roles, actividades y artefactos que deben formar el proceso de desarrollo  RUP es un marco de trabajo que puede ser adaptado a las necesidades del proyecto, con lo cual puede configurarse para proyectos de distintas envergaduras
  • 23.  XP se orienta fuertemente a la producción de código y sus pruebas, restando protagonismo al modelado y enfatizando aspectos tales como: la satisfacción del cliente, el potenciar la capacidad individual y promover una estrecha colaboración del equipo de desarrollo  XP debido a sus principios, presenta inconvenientes para ser escalado a grandes proyectos en condiciones en las cuales, por ejemplo, como lo señala Smith (2001) hay más de 10 participantes, el equipo está distribuido geográficamente, el tiempo de desarrollo es de años, etc.
  • 24. Se puede resumir todo lo anterior de la forma siguiente: Gente Tecnología Proceso
  • 25. Gente › Con las habilidades, entrenamiento y motivación  Tecnología › Herramientas e Infraestructura  Proceso › Procedimientos y Métodos definiendo las relaciones de las tareas