Vous êtes sur la page 1sur 2

QUE ES CALIDAD?

Para la ISO 8402 (International Standard Organization), define La Calidad como: "El conjunto de caractersticas de una entidad que le confieren la aptitud para satisfacer las necesidades establecidas e implcitas. Tambin podra decirse que es la conformidad con los requisitos y el grado de excelencia. DEFINICIN DE CALIDAD DE SOFTWARE La calidad de software es el conjunto de cualidades que lo caracterizan y determinan su utilidad y existencia. Segn R. Pressman: La calidad del software se define como la concordancia con los requisitos funcionales y de rendimiento explcitamente establecidos, con los estndares y procesos de desarrollo explcitamente documentados y con las caractersticas implcitas que se espera de todo software desarrollado profesionalmente. 1 Requisitos del Software, 2 Los estndares especificados y 3 Requisitos implcitos (no funcionales). La Calidad del Software es medible y vara de un sistema a otro o de un programa a otro. La Calidad del Software puede medirse despus de elaborado el producto. Pero esto puede resultar muy costoso si se detectan problemas derivados de imperfecciones en el diseo, por lo que es imprescindible tener en cuenta tanto la obtencin de la calidad como su control durante todas las etapas del ciclo de vida del software. Codificar y corregir (Code-and-Fix) Este es el modelo bsico utilizado en los inicios del desarrollo de software. Contiene dos pasos: Escribir cdigo y Corregir problemas. Se trata de primero implementar algo de cdigo y luego pensar acerca de requisitos, diseo, validacin, y mantenimiento. Modelo en Cascada El primer modelo de desarrollo de software que se public se deriv de otros procesos de ingeniera. ste toma las actividades fundamentales del proceso de especificacin, desarrollo, validacin y evolucin y las representa como fases separadas del proceso. El modelo en cascada consta de las siguientes fases: 1. Definicin de los requisitos: Los servicios, restricciones y objetivos son establecidos con los usuarios del sistema. Se busca hacer esta definicin en detalle. 2. Diseo de software: Se particiona el sistema en sistemas de software o hardware. Se establece la arquitectura total del sistema. Se identifican y describen las abstracciones y relaciones de los componentes del sistema. 3. Implementacin y pruebas unitarias: Construccin de los mdulos y unidades de software. Se realizan pruebas de cada unidad. 4. Integracin y pruebas del sistema: Se integran todas las unidades. Se prueban en conjunto. Se entrega el conjunto probado al cliente. 5. Operacin y mantenimiento: Generalmente es la fase ms larga. El sistema es puesto en marcha y se realiza la correccin de errores descubiertos. Se realizan mejoras de implementacin. Se identifican nuevos requisitos. Desarrollo Evolutivo La idea detrs de este modelo es el desarrollo de una implantacin del sistema inicial, exponerla a los comentarios del usuario, refinarla en N versiones hasta que se desarrolle el sistema adecuado. Desarrollo Exploratorio: El objetivo de este enfoque es explorar con el usuario los requisitos hasta llegar a un sistema final. El desarrollo comienza con las partes que se tiene ms claras. El sistema evoluciona conforme se aaden nuevas caractersticas propuestas por el usuario. Enfoque utilizando prototipos: El objetivo es entender los requisitos del usuario y trabajar para mejorar la calidad de los requisitos. A diferencia del desarrollo exploratorio, se comienza por definir los requisitos que no estn claros para el usuario y se utiliza un prototipo para experimentar con ellos. El prototipo ayuda a terminar de definir estos requisitos. Este modelo es efectivo en proyectos pequeos (menos de 100.000 lneas de cdigo) o medianos (hasta 500.000 lneas de cdigo) con poco tiempo para su desarrollo y sin generar documentacin para cada versin. Para proyectos largos es mejor combinar lo mejor del modelo de cascada y evolutivo: se puede hacer un prototipo global del sistema y posteriormente reimplementarlo con un acercamiento ms estructurado. Los subsistemas con requisitos bien definidos y estables se pueden programar utilizando cascada y la interfaz de usuario se puede especificar utilizando un enfoque exploratorio. Desarrollo Formal de Sistemas Este modelo se basa en transformaciones formales de los requisitos hasta llegar a un programa ejecutable. Permite demostrar la correccin del sistema durante el proceso de transformacin. As, las pruebas que verifican la correspondencia con la especificacin no son necesarias. Es atractivo sobre todo para sistemas donde hay requisitos de seguridad y confiabilidad importantes. Requiere desarrolladores especializados y experimentados en este proceso para llevarse a cabo. Desarrollo Basado en Reutilizacin Como su nombre lo indica, es un modelo fuertemente orientado a la reutilizacin. 1 Anlisis de componentes 2 Modificacin de requisitos 3 Diseo del sistema con reutilizacin 4 Desarrollo e integracin. Ventajas: Disminuye el costo y esfuerzo de desarrollo. Reduce el tiempo de entrega. Disminuye los riesgos durante el desarrollo. Procesos Iterativos Desarrollo Incremental Mills sugiri el enfoque incremental de desarrollo como una forma de reducir la repeticin del trabajo en el proceso de

desarrollo y dar oportunidad de retrasar la toma de decisiones en los requisitos hasta adquirir experiencia con el sistema. Es una combinacin del Modelo de Cascada y Modelo Evolutivo. Reduce el rehacer trabajo durante el proceso de desarrollo y da oportunidad para retrasar las decisiones hasta tener experiencia en el sistema. Durante el desarrollo de cada incremento se puede utilizar el modelo de cascada o evolutivo, dependiendo del conocimiento que se tenga sobre los requisitos a implementar. Si se tiene un buen conocimiento, se puede optar por cascada, si es dudoso, evolutivo. Desarrollo en Espiral El modelo de desarrollo en espiral es actualmente uno de los ms conocidos y fue propuesto por Boehm. El ciclo de desarrollo se representa como una espiral, en lugar de una serie de actividades sucesivas con retrospectiva de una actividad a otra. 1 Definicin de objetivos 2 Evaluacin y reduccin de riesgos 3 Desarrollo y Validacin 4 Planificacin Cul es el modelo de proceso ms adecuado? Cada proyecto de software requiere de una forma de particular de abordar el problema. Las propuestas comerciales y acadmicas actuales promueven procesos iterativos, donde en cada iteracin puede utilizarse uno u otro modelo de proceso, considerando un conjunto de criterios (Por ejemplo: grado de definicin de requisitos, tamao del proyecto, riesgos identificados, entre otros). En la Tabla 2 se expone un cuadro comparativo de acuerdo con algunos criterios bsicos para la seleccin de un modelo de proceso, la medida utilizada indica el nivel de efectividad del modelo de proceso de acuerdo al criterio (Por ejemplo: El modelo Cascada responde con un nivel de efectividad Bajo cuando los Requisitos y arquitectura no estn predefinidos)

Verificacin Segn la ISO-IEC 12207, la Verificacin es el proceso para determinar si los productos software de una actividad cumplen con los requerimientos o condiciones que tienen impuestas por las actividades precedentes. La verificacin permite comprobar que el artefacto producido en un proceso corresponde con el que se utiliz a la entrada del proceso. La verificacin permite responder la pregunta: Estamos construyendo el producto en forma correcta? La verificacin se orienta al proceso. Validacin Segn la ISO-IEC 12207, la Validacin es el proceso para determinar si los requerimientos y el sistema o producto software, tal como se ha construido, cumple con su uso especfico previsto. La validacin se puede llevar a cabo en etapas tempranas. La validacin permite comprobar si el artefacto producido es lo que el usuario necesita. La validacin permite responder la pregunta: Estamos construyendo el producto correcto? La validacin se orienta al producto.

Vous aimerez peut-être aussi