Sunteți pe pagina 1din 19

CALIDAD EN LA INGENIERIA DE

SOFTWARE
Actividad 3°

ANÁLISIS Y DESARROLLO DE SISTEMAS DE INFORMACIÓN


COD. 2141449ª
GAES 11
Factores de calidad en el desarrollo del
SW
Calidad del software
La calidad del software es la “concordancia con los requisitos
funcionales y de rendimiento, con los estándares de desarrollo y
con las características implícitas que se espera del software
desarrollado profesionalmente”

No existe una definición única de calidad, ya que:


•Es un concepto relativo (es una compleja mezcla de factores que
varía para las diferentes aplicaciones y los clientes que las
solicitan).
•Es un concepto multidimensional, referido a muchas cualidades.
•Está ligada a restricciones (por ejemplo, el presupuesto).
•Está ligada a compromisos aceptables (por ejemplo, plazos de
fabricación).
•No es ni totalmente subjetiva ni objetiva.
la calidad del SW debe tenerse
en cuenta a dos niveles

A nivel de empresa: para A nivel de proyecto: se trata de


conseguir software de calidad, las llevar a la práctica en las
organizaciones deben tener una actividades cotidianas las
estructura organizativa apropiada disposiciones fijadas en el sistema
para fomentar el trabajo por la de calidad. Se aplica durante todo el
calidad de todas las personas y proceso de ingeniería del software,
departamentos de la empresa, es decir, en Análisis, Diseño,
además de fomentar procesos Codificación y Prueba.
específicos para asegurar la
calidad.
Calidad de sw a nivel de empresa

La calidad del software a nivel de empresa se refiere a las acciones que se


tomas de forma común para asegurar que se desarrolla software de calidad en
todos los proyectos. Se divide en dos tipos de procesos:

•Gestión de la Calidad del SW: aspecto de la función general de la gestión


que determina y aplica la política de calidad (objetivos y directrices generales
de calidad de una empresa). Incluye planificación estratégica, asignación de
recursos, etc.

•Aseguramiento o garantía de la Calidad del SW: conjunto de actividades


planificadas y sistemáticas necesarias para aportar la confianza en que el
producto satisfará los requisitos dados de calidad. Incluye evaluaciones,
auditorías, revisiones, etc.
Estándares de Calidad para el desarrollo de Software.
Los estándares de calidad de software son normas emitidas por organismos
específicos, que sirven para sentar un marco con el que comparar si un
proceso de desarrollo es o no de calidad. Las normas de calidad del software
más conocidas han sido desarrolladas por ISO, y son la serie ISO-9000.

ISO 9000
Las normas ISO-9000 son un estándar de calidad para todo tipo de
industrias. Contiene una normativa específica para el desarrollo de software,
la ISO-9003. Consiste en una serie de cláusulas que deben aplicarse en el
marco de trabajo, en el ciclo de vida del proyecto y en las actividades de
apoyo al mismo.

Marcos de trabajo de calidad del software.


Los marcos de trabajo recogen una serie de metas y procesos comunes que
debe cumplir una organización. A diferencia de los estándares, dicen qué se
debe hacer a nivel general, no cómo. Por ejemplo, una directiva de un marco
de trabajo (simplificada) sería: “se prueban las aplicaciones antes de
entregarlas
Marcos de trabajo de calidad del software
CMMI
fue desarrollado por el Software Engineering Institute en estados unidos, y sirve
para comprobar la habilidad de los procesos de las organizaciones para realizar
determinados proyectos. Se desarrolló a petición del departamento de defensa de
USA, y servía para evaluar a sus proveedores.

SPICE
es el modelo de madurez propuesto por ISO, similar a CMMI. Clasifica las
organizaciones en seis niveles de madurez, desde 0-incompleto hasta 5-
optimizado.

Factores de calidad del software.

Los factores de calidad del software sirven para descomponer el concepto


genérico de “calidad” en otros más sencillos, para facilitar su control y su
medición.

Dado que la división en factores es una división subjetiva, existen varias


clasificaciones de los factores de calidad. Veremos la de McCall, que los agrupa
en tres perspectivas: operativa, de mantenimiento y evolutiva.
Factores operativos de la calidad del software.
Los factores operativos son aquellos que afectan al uso del software:
•Corrección: el software cumple las especificaciones
•Fiabilidad: grado en el que el software es confiable, es decir, no tiene
fallos
•Eficiencia: necesidad de recursos software y hardware del producto
•Seguridad: grado en el que puede controlarse el acceso al software y a
los datos
•Facilidad de uso: grado de esfuerzo necesario para utilizar el software
Factores de mantenimiento de la calidad del software.
Los factores de mantenimiento son aquellos que se aplican a la capacidad
de modificación del software:
•Flexibilidad: esfuerzo necesario para modificar un programa
•Facilidad de prueba: esfuerzo requerido para realizar las pruebas de un
programa
•Facilidad de mantenimiento: esfuerzo requerido para localizar y reparar un
error.

Factores evolutivos
Los factores evolutivos son aquellos que indican si el software se puede
trasladar con facilidad a otra máquina o a otro producto de base (SO,
SGBD, etc.), o incrementar sus prestaciones:
•Portabilidad: facilidad para migrar el software de un entorno de operación
a otro
•Capacidad de reutilización: grado en el que un programa o parte del
mismo se puede utilizar en otras aplicaciones.
•Capacidad de interoperación: esfuerzo necesario para que un software
opere conjuntamente con otros sistemas.
Métricas para medir la calidad del software

Las métricas del software se aplican para valorar cualitativamente algún


factor relativo al mismo. No existen métricas generales y únicas, aún
menos para la calidad, ya que se puede examinar el software a través de
múltiples perspectivas y con diferentes objetivos.
En lo que sí que hay acuerdo es en las características que debe tener una
buena métrica :

•Simple y fácil de calcular


•Empírica
•Consistente y objetiva
•Independiente del lenguaje de programación
•Que proporcione información útil
Veremos las más representativas en cada fase del ciclo de vida.
Estrategias de prueba del software

Las pruebas son un método para determinar si el sistema funciona


correctamente. Si examinamos un ciclo de vida en V, se puede ver que
existen diferentes niveles de prueba, en base a la etapa de desarrollo que
se deba probar: desde las de validación, que prueban que el sistema se
comporta como se esperaba (alto nivel conceptual) a las unitarias, que
prueban que una codificación cumple las especificaciones (bajo nivel
conceptual):
Calidad de sw a nivel de proyecto
se trata de llevar a la práctica en las actividades cotidianas las
disposiciones fijadas en el sistema de calidad. Se aplica durante todo
el proceso de ingeniería del software, es decir, en Análisis, Diseño,
Codificación y Prueba.

1. Identificar la necesidad
2. Definir los requisitos
3. Establecer el alcance del plan
4. Preparación del plan
5. Contenido del plan de calidad
6. Revisión e implementación
Problemas al desarrollar un software
Requisitos deficientes- si éstas no son claras, son incompletas, demasiado generales o no son
comprobables, puede haber problemas.
• Calendario poco realista – si demasiado trabajo es abarrotado en muy poco tiempo, los
problemas son inevitables y las entregas llegan tarde.
• Pruebas inadecuadas – nadie sabrá si el software es bueno o no hasta que los clientes se quejan
o se bloquean los sistemas.
• Falta de funcionalidad y solicitudes para agregar nuevas características después de que se
acuerden las metas de desarrollo.
• Falta de comunicación – si los desarrolladores no saben lo que se necesita o los clientes tienen
expectativas erróneas, se pueden esperar problemas.
• Llegar a explotación con defectos graves.
• Cómo hacer que un equipo se entienda bien.
• problemas de escalado.
• Problemas para rentabilizar proyectos.
• Hacer el software tan complicado, que se hace imposible de mantener.
• Las desviaciones son difíciles de asumir, por lo que no se afronta bien el riesgo.
• Falta de flexibilidad. No tiene sentido desarrollar algo aunque esté acordado, si realmente ahora
ya no tiene sentido.
Factor Característica
Corrección El grado en que una aplicación satisface sus especificaciones y
¿Hace lo que se le pide? consigue los objetivos encomendados por el cliente.
Fiabilidad
El grado que se puede esperar de una aplicación lleve a cabo las
¿Lo hace de forma fiable operaciones especificadas y con la presión requerida.
todo el tiempo?
Eficiencia La cantidad de recursos hardware y software que necesita una
¿Qué recursos hardware y aplicación para realizar las operaciones con los tiempos de
software necesito? respuesta adecuados.

Integridad El grado con que puede controlarse el acceso al software o a los


¿Puedo controlar su uso? datos a personal no autorizado.

Facilidad de uso
El esfuerzo requerido para aprender el  manejo de una aplicación,
¿Es fácil y como de trabajar con ella, introducir datos y conseguir resultados.
manejar?
Revisión del productor: capacidad para soportar cambios.
Facilidad de
mantenimiento El esfuerzo requerido para localizar y reparar errores.
¿Puedo localizar los fallos?
Flexibilidad
El esfuerzo requerido para modificar una aplicación en
¿Puedo añadir nuevas funcionamiento.
opciones?
Facilidad de prueba El esfuerzo requerido para probar una aplicación de forma que
cumpla con lo especificado en los requisitos.
¿Puedo probar todas las
opciones? Transición del producto: adaptable a nuevos entornos.
Portabilidad
El esfuerzo requerido para transferir la aplicación a otro hardware
¿Podré usarlo en otra o sistema operativo.
máquina?
Grado en que partes de una aplicación pueden utilizarse en otras
Reusabilidad
aplicaciones. Interoperabilidad (¿Podrá comunicarse con otras
¿Podré utilizar alguna aplicaciones o sistemas informáticos?).
parte del software en otra
El esfuerzo necesario para comunicar la aplicación con otras
aplicación?
aplicaciones o sistemas informáticos.

Interoperabilidad
¿Podrá comunicarse con El esfuerzo necesario para comunicar la aplicación con otras
otras aplicaciones o aplicaciones o sistemas informáticos.
sistemas informáticos?
Ciclo de vida del software bajo la
norma ISO 12207
La norma ISO/IEC 12207:2008 la cual será tomada como referencia para elaborar el
estándar de aplicación de desarrollo de software, implanta un marco común para los procesos
de ciclo de vida de software, estableciendo dentro de estos procesos, terminologías bien
definidas que hacen referencia a la industria del software. Está conformada por procesos,
actividades y tareas que se deben aplicar durante la adquisición, suministros, desarrollo,
operación, mantenimiento y eliminación de productos o servicios de software.
Esta norma se emplea para definir, controlar y mejorar los procesos del ciclo de vida de
software, su aplicación se puede realizar sola o en conjunto con otras normas, dependiendo de
las necesidades existentes.

Propósito

es proporcionar un conjunto de procesos bien definidos, que permitan facilitar la comunicación


entre compradores, proveedores y demás inmersos en el ciclo de vida del software
Está escrita, encaminada a los adquirientes de sistemas, productos de software y servicios,
proveedores, desarrolladores, operadores, gerentes, directores de control de calidad y usuarios.
Está propuesta, para ser aplicada en una situación en la cual participan dos partes, donde
ambas partes pertenecen a la misma organización, dicha situación puede variar desde un
simple acuerdo informal, hasta un contrato que este jurídicamente establecido, también puede
ser establecida en una única parte a través de la auto imposición establecida de los procesos
Uso Correcto

La aplicación de esta norma en general,


consiste en seleccionar un conjunto de
procesos y adecuarlos para determinada
Limitaciones
organización o proyecto, en vista de que no en
toda organización o proyecto será necesaria la
inclusión de todos los procesos establecidos en No detalla el ciclo de vida de los procesos,
la norma. en términos de métodos o procedimientos
Existen dos formas en las cuales se puede necesarios para cumplir con los requisitos y
afirmar que una implementación se ajusta a los resultados de un proceso.
esta norma. Cualquier declaración de No posee documentación detallada en
conformidad puede ser citada en una sola de términos de nombre, formato, contenido
las dos formas que se muestran a explícito y medios de grabación, puede
continuación: requerir de la elaboración de documentos
Conformidad Completa adicionales de características semejantes a
Se denomina una conformidad completa, la norma, sin embargo, esto no implica que
cuando se demuestra que todos los procesos la documentación sea desarrollada por
establecidos por la norma, han sido separada o en conjunto, de alguna manera,
satisfechos usando los resultados como esta decisión queda a criterio del usuario de
evidencia de esto. la norma; la norma ISO/IEC 15289 aborda
Conformidad a la Medida contenido de elementos de información para
Se denomina conformidad a la medida, cuando el proceso de ciclo de vida
(documentación).
esta norma utiliza como base un conjunto de
procesos específicos, y estos han sido satisfechos
usando los resultados como evidencia de esto.
Categorías del Proceso de Ciclo de Vida del
Software
 
La ISO/IEC 12207:2008, agrupa las actividades que se pueden realizar durante el
proceso de ciclo de vida, de un sistema de software en siete (7) etapas, cada uno de
estos grupos, se describen en función del propósito y resultados que se desean
obtener, se enumeran las actividades y tareas que se deben seguir para el
cumplimiento de dichos resultados.
 
Procesos de Acuerdo.
 
Procesos Organizativos de Habilitación del Proyecto.
 
Procesos de Proyecto.
 
Procesos Técnicos.
 
Procesos de Implementación del Software.
 
Procesos de Soporte de Software.
Preguntas e inquietudes...

Gracias !!!
!
Referencias bibliográficas
https://oposicionestic.blogspot.com/2013/03/calidad-del-software-factores-y.html
https://www.isotools.org/2015/07/24/un-ejemplo-sobre-como-elaborar-el-plan-de-calidad-de-un-proyec
to/
https://www.redalyc.org/jatsRepo/2654/265452747018/html/index.html
https://es.slideshare.net/ymartinez2190/proyecto-final-calidad-de-software
http://www.monografias.com/trabajos55/proceso-de-desarrollo-software/Image11993.gif
https://normasyestandaresproyectosti.wordpress.com/2015/01/29/iso-12207/

S-ar putea să vă placă și