1 calidad de_software1

25
Desarrollo de Desarrollo de Aplicaciones Aplicaciones CALIDAD DE CALIDAD DE SISTEMAS SISTEMAS

Transcript of 1 calidad de_software1

Page 1: 1 calidad de_software1

Desarrollo de AplicacionesDesarrollo de Aplicaciones

CALIDAD DE CALIDAD DE SISTEMASSISTEMAS

Page 2: 1 calidad de_software1

Evaluación de ProductosEvaluación de Productos• Los productos se evalúan, de esta se Los productos se evalúan, de esta se

genera apreciaciones que genera apreciaciones que representan características para la representan características para la aceptación o rechazo del producto.aceptación o rechazo del producto.

• Determinación de Aceptabilidad de Determinación de Aceptabilidad de un Producto:un Producto:– La aceptabilidad depende de la fusión La aceptabilidad depende de la fusión

de normas generales con opiniones de normas generales con opiniones personalespersonales

Page 3: 1 calidad de_software1

Normas Generales

Opiniones Personales

Criterios a favor del producto

Criterios en contra del producto

Evaluación deaceptabilidad

Page 4: 1 calidad de_software1

AntecedentesAntecedentes• Los primeros modelos para evaluar Los primeros modelos para evaluar

software estaban basados en técnicas software estaban basados en técnicas probabilísticas.probabilísticas.

• Se definían medidas cuantitativas que Se definían medidas cuantitativas que le dan objetividad a la evaluación.le dan objetividad a la evaluación.

• Se miden aspectos de rendimiento.Se miden aspectos de rendimiento.• Se realizan esfuerzos para que el Se realizan esfuerzos para que el

software incorpore directamente software incorpore directamente procesos de evaluaciónprocesos de evaluación

Page 5: 1 calidad de_software1

Modalidades de ControlModalidades de Control1. Al Final del Proceso de 1. Al Final del Proceso de

Desarrollo:Desarrollo:

- Para no invertir recursos extras , muchas - Para no invertir recursos extras , muchas veces se realizan solo pruebas de producto veces se realizan solo pruebas de producto terminado para conocer la calidad del terminado para conocer la calidad del software y tomar medidas correctivas.software y tomar medidas correctivas.

- Se realizan pruebas de correctitud de - Se realizan pruebas de correctitud de programas e interfaces.programas e interfaces.

Page 6: 1 calidad de_software1

• Desventaja:Desventaja:– Hacer inspecciones finales se puede Hacer inspecciones finales se puede

traducir en un desperdicio de traducir en un desperdicio de recursos, lo que generara un producto recursos, lo que generara un producto mediocre que requerirá de recursos mediocre que requerirá de recursos adicionales para ser restaurado.adicionales para ser restaurado.

• Ventaja:Ventaja:– Disminuye los costos cuando el Disminuye los costos cuando el

producto generado resulta ser producto generado resulta ser aceptable.aceptable.

Page 7: 1 calidad de_software1

2. En tres Puntos Críticos 2. En tres Puntos Críticos del Desarrollo:del Desarrollo: - Propone realizar el control de calidad - Propone realizar el control de calidad

después de la implementación completa después de la implementación completa de módulos individuales, de la integración de módulos individuales, de la integración de dichos módulos en subsistemas y de dichos módulos en subsistemas y hacer la integración completa del hacer la integración completa del sistema. sistema.

- Si al determinar la calidad de los - Si al determinar la calidad de los módulos, estos no satisfacen los módulos, estos no satisfacen los estándares, se corrigen los errores y no estándares, se corrigen los errores y no se integran hasta no tener la calidad se integran hasta no tener la calidad deseadadeseada

Page 8: 1 calidad de_software1

• Ventaja:Ventaja:– Con un buen particionamiento del Con un buen particionamiento del

sistema en módulos se puede sistema en módulos se puede lograr, con respecto a la calidad, lograr, con respecto a la calidad, una cobertura aceptable del ciclo una cobertura aceptable del ciclo de vida del software. de vida del software.

Page 9: 1 calidad de_software1

3. Durante todo el proceso de 3. Durante todo el proceso de

Desarrollo: Desarrollo:• Control completo es el secreto para Control completo es el secreto para

obtener un producto de calidad.obtener un producto de calidad.

• Se debe verificar a lo largo de todas las Se debe verificar a lo largo de todas las fases de ciclo de vida del software fases de ciclo de vida del software empezando con los requerimientos hasta empezando con los requerimientos hasta la integración y validaciones finales.la integración y validaciones finales.

Page 10: 1 calidad de_software1

¿ Por qué se requiere un control tan ¿ Por qué se requiere un control tan riguroso?riguroso?

• Porque en cada fase se pueden dar Porque en cada fase se pueden dar errores por omisión, concepto o errores por omisión, concepto o técnicos que pueden ser arrastrados técnicos que pueden ser arrastrados hasta el final del producto donde serían hasta el final del producto donde serían más difíciles de detectar.más difíciles de detectar.

• No se pasara a la siguiente fase a No se pasara a la siguiente fase a menos que el producto generado por la menos que el producto generado por la fase actual sea un producto de calidad.fase actual sea un producto de calidad.

Page 11: 1 calidad de_software1

Revisiones Técnicas:Revisiones Técnicas:• Es una actividad de control de calidad Es una actividad de control de calidad

que permite detectar errores que permite detectar errores funcionales, de lógica o de implantación, funcionales, de lógica o de implantación, verificar la satisfacción de los verificar la satisfacción de los requerimientos.requerimientos.

• La idea es someter el producto a crítica La idea es someter el producto a crítica técnica para determinar la calidad en técnica para determinar la calidad en términos de las medidas términos de las medidas preestablecidas, detectar sus errores, preestablecidas, detectar sus errores, proponer mejoras y determinar el proponer mejoras y determinar el progreso general del proyecto. progreso general del proyecto.

Page 12: 1 calidad de_software1

• Ventaja:Ventaja:– Permitirá al equipo de trabajo Permitirá al equipo de trabajo

decidir sobre el nivel de calidad decidir sobre el nivel de calidad deseado (o diseñado) y obtener deseado (o diseñado) y obtener dicho nivel de calidad en el dicho nivel de calidad en el producto final. producto final.

• Desventaja:Desventaja:– Puede aumentar el costo inicial y Puede aumentar el costo inicial y

demanda una gran disciplina y demanda una gran disciplina y organización.organización.

Page 13: 1 calidad de_software1

4. El Enfoque Individualista:4. El Enfoque Individualista:• Cada desarrollador define Cada desarrollador define

subjetivamente las medidas de subjetivamente las medidas de calidad para las tareas que le calidad para las tareas que le corresponden y además las verifica corresponden y además las verifica por sí mismo.por sí mismo.

• Ventaja:Ventaja:– Reside en su eficacia cuando los Reside en su eficacia cuando los

desarrolladores son personas con desarrolladores son personas con gran experiencia y capacidad. gran experiencia y capacidad.

Page 14: 1 calidad de_software1

5. El Enfoque Orientado al 5. El Enfoque Orientado al Usuario Final: Usuario Final:

• La calidad del proceso de desarrollo y La calidad del proceso de desarrollo y del producto es medida sólo en términos del producto es medida sólo en términos de la satisfacción del usuario final.de la satisfacción del usuario final.

• No importa tanto si el producto es lo No importa tanto si el producto es lo mejor posible, lo importante es que el mejor posible, lo importante es que el usuario este satisfecho.usuario este satisfecho.

Page 15: 1 calidad de_software1

• Ventaja:Ventaja:– Sensibiliza al usuario final con Sensibiliza al usuario final con

respecto a la problemática del respecto a la problemática del proceso de desarrollo.proceso de desarrollo.

• Desventaja:Desventaja:– Puede provocar descuidos en la Puede provocar descuidos en la

calidad técnica del producto.calidad técnica del producto.

Page 16: 1 calidad de_software1

6. El enfoque Orientado a los 6. El enfoque Orientado a los Procedimientos: Procedimientos:• Se establecen estándares sobre los Se establecen estándares sobre los

pasos a seguir durante el proceso de pasos a seguir durante el proceso de desarrollo y sobre los documentos desarrollo y sobre los documentos que debe generara cada etapa.que debe generara cada etapa.

• Ventajas:Ventajas:– Se sistematiza el procesoSe sistematiza el proceso– El costo asociado al enfoque se reduce a El costo asociado al enfoque se reduce a

la inversión en el desarrollo de un buen la inversión en el desarrollo de un buen manual de procedimientos.manual de procedimientos.

Page 17: 1 calidad de_software1

7. Enfoque Orientado al 7. Enfoque Orientado al Producto:Producto:• Se basa en el control de la calidad Se basa en el control de la calidad

técnica del producto.técnica del producto.• Se establecen estándares de Se establecen estándares de

codificación, modulación, interfaz codificación, modulación, interfaz persona-máquina, eficiencia del código persona-máquina, eficiencia del código y otros.y otros.

• La ventaja es que propicia un fácil La ventaja es que propicia un fácil mantenimiento del software y el uso mantenimiento del software y el uso posterior de los módulos creados.posterior de los módulos creados.

Page 18: 1 calidad de_software1

8. Enfoque Jerárquico:8. Enfoque Jerárquico:

• Considera que debe existir una Considera que debe existir una jerarquía de control de calidad bien jerarquía de control de calidad bien definida.definida.

• Es el enfoque que presenta mayor Es el enfoque que presenta mayor complejidad, pero minimiza la complejidad, pero minimiza la presencia de errores y el esfuerzo presencia de errores y el esfuerzo para modificar el producto. para modificar el producto.

Page 19: 1 calidad de_software1

Aceptabilidad en Aceptabilidad en Términos de CalidadTérminos de Calidad

1. Concepto de Calidad: 1. Concepto de Calidad:

• Conjunto de características, Conjunto de características, deseable o no, presentes en un deseable o no, presentes en un producto de software o en el producto de software o en el proceso que lo genera.proceso que lo genera.

Page 20: 1 calidad de_software1

La calidad se refiere a:La calidad se refiere a:• Calidad con respecto a Productividad: se Calidad con respecto a Productividad: se

refiere al tiempo y al costo de refiere al tiempo y al costo de producción.producción.

• Calidad del Método de Desarrollo: Calidad del Método de Desarrollo: naturaleza de los procedimiento durante naturaleza de los procedimiento durante el diseño y construcción del software. el diseño y construcción del software.

• Calidad del Producto: Características del Calidad del Producto: Características del producto de software, con respecto a un producto de software, con respecto a un método dado.método dado.

Page 21: 1 calidad de_software1

2. Medidas de Calidad:2. Medidas de Calidad:

• ConfiabilidadConfiabilidad• GradoGrado• CorrectitudCorrectitud• EficienciaEficiencia• FlexibilidadFlexibilidad• IntegridadIntegridad

• IntegraciónIntegración• UsabilidadUsabilidad• MantenimientoMantenimiento• PortabilidadPortabilidad• ReusoReuso• SeparaciónSeparación

Un primer nivel de medidas pueden Un primer nivel de medidas pueden ser:ser:

Page 22: 1 calidad de_software1

• AuditoriaAuditoria• PrecisiónPrecisión• ComunicacionesComunicaciones• EstructurasEstructuras• CompletitudCompletitud• ConsistenciaConsistencia• TamañoTamaño• ErroresErrores• EficienciaEficiencia• AmpliaciónAmpliación

• GeneralidadGeneralidad• HardwareHardware• ModularidadModularidad• OperaciónOperación• SeguridadSeguridad• AutodocumentaciónAutodocumentación• SimplicidadSimplicidad• IndependenciaIndependencia• SeguimientoSeguimiento• EntrenamientoEntrenamiento

Un segundo nivel de medidas Un segundo nivel de medidas (menos abstracto) incluiría: (menos abstracto) incluiría:

Page 23: 1 calidad de_software1

3. Mediciones de las Medidas3. Mediciones de las MedidasLa manera en que se efectúa una La manera en que se efectúa una

medición medición depende entre otros de:depende entre otros de:• Las características de los métodos de Las características de los métodos de

desarrollo y mantenimiento empleados.desarrollo y mantenimiento empleados.• Las herramientas de desarrollo y Las herramientas de desarrollo y

control de calidad que apoyan la labor control de calidad que apoyan la labor del ingeniero del software.del ingeniero del software.

• El presupuesto asignado al proyecto El presupuesto asignado al proyecto • La organización de los participantes en La organización de los participantes en

el proyecto.el proyecto.

Page 24: 1 calidad de_software1

4. Aceptabilidad del Software4. Aceptabilidad del Software• Se define en términos de si satisface o no los Se define en términos de si satisface o no los

estándares fijados.estándares fijados.• Se expresa asignándole al software un estado Se expresa asignándole al software un estado

de aceptabilidad de acuerdo con estas de aceptabilidad de acuerdo con estas definiciones: definiciones: – Dudoso: la medición muestra que la mayoría Dudoso: la medición muestra que la mayoría

de estándares no se alcanzaron.de estándares no se alcanzaron.– Insatisfactorio: muestra que ningún estandar Insatisfactorio: muestra que ningún estandar

se alcanzó.se alcanzó.– Aceptable: muestra que la mayoría de los Aceptable: muestra que la mayoría de los

estándares se alcanzaron.estándares se alcanzaron.– Satisfactorio: muestra que todos los Satisfactorio: muestra que todos los

estándares se alcanzaron. estándares se alcanzaron.

Page 25: 1 calidad de_software1

El Universo de AceptabilidadEl Universo de Aceptabilidad

• En este es posible desarrollar un En este es posible desarrollar un argumento basado en apreciaciones argumento basado en apreciaciones sobre aspectos particulares de un sobre aspectos particulares de un sistema, determinar el estado de sistema, determinar el estado de aceptabilidad de cada aspecto y aceptabilidad de cada aspecto y deducir el estado de aceptabilidad del deducir el estado de aceptabilidad del sistema a partir de los estados sistema a partir de los estados particulares.particulares.