Ingeniería del Software de Sala Limpia
La tecnología de dotación lógica de Cleanroom es un acercamiento al desarrollo del Software lógico, que mejora calidad y reduce costos. El acercamiento toma su nombre de los cuartos limpios usados en la fabricación de la precisión, donde las técnicas estadísticas del control de calidad acentúan la prevención del defecto concluido el retiro del defecto.
Las mismas prácticas se pueden aplicar al desarrollo del Software lógico. En la tecnología de dotación lógica de Cleanroom, un proceso fiable y manejable substituye la codificación.
El desarrollo incremental permite la mejora de proceso continua. Los equipos de diseño aplican el desarrollo y las técnicas de revisión basadas en métodos formales a los sistemas del producto que son casi sin defecto incluso antes de probar comienzan. Los equipos de la prueba utilizan control de calidad estadístico para certificar la calidad del sistema, en términos cliente significativos.
Definicion de Sala Limpia
El Enfoque de Sala Limpia
La Estrategia de Sala Limpia
- Usa una versión especial del modelo incrementalde software.
- Cuando se certifica cada incremento se integra al todo y la funcionalidad del sistema va creciendo.
Tareas de Sala Limpia
La sucesión de tareas de sala limpia para cada incremento, se manifiesta mediante unos requisitos globales del sistema o producto que se van desarrollando empleando los métodos de ingeniería de sistemas. Una vez que se han asignado una funcionalidad al elemento de Software del sistema el tubo de la sala limpia comienza sus incrementos y se producen las siguientes tareas.
- Planificación de Incrementos. La planificación incremental permite calidad temprana y continua interacción con el usuario. Facilita mejoras de proceso mientras el desarrollo progresa. El acercamiento incremental evita los riesgos inherentes integración tardía en el ciclo de desarrollo.
- Recolección de requisitos. El propósito del proceso del análisis de requisitos es 1) definir requisitos para el producto de software, incluyendo función, uso, ambiente, y funcionamiento, y 2) obtener un acuerdo con el cliente en los requisitos como la base para la función y especificación del uso.
- Especificación de la estructura de cajas. Tres tipos especiales de funciones matemáticas son importantes en el desarrollo a Sala limpia, debido a su correspondencia y correlación en el proceso de descomposición y verificación. Estas funciones son conocidas como la caja negra, la caja de estado y caja limpia. En la estructura de las cajas se pueden aplicar una variedad de estrategias de descomposición, además se puede incluir funcionabilidad y orientación a objeto.
- Diseño Formal. Mediante el uso del enfoque de estructura de cajas, el diseño de sala limpia es una extensión natural y sin discontinuidades de la especificación. Dan los objetivos, los participantes, los criterios de entrada, las tareas, la verificación, las medidas y los criterios comunes de la salida en los procesos, así como elementos de proceso común.
- Verificación de Corrección. El equipo de sala limpia lleva a cabo una serie de rigurosas actividades de verificación de corrección aplicadas primero al diseño y después al código. El propósito del proceso de la verificación de la corrección, es verificar la corrección del incremento del software usando técnicas matemáticas.
- Generación de Código, inspección y verificación. Las especificaciones de estructura de caja que se representan mediante un lenguaje especializado se traducen la lengua de programación mas adecuado.
- Planificación de la comprobación estadística, Comprobación estadística de utilización y Certificación. El propósito del proceso estadístico de prueba y de certificación es demostrar la aptitud del software para el uso en un experimento estadístico formal. La "aptitud para el uso" se define con respecto a los modelos de uso y a las metas de la certificación empleados en el proceso de prueba. Las metas de certificación, primero establecidas en el plan de medida y refinadas en el plan de prueba de incremento, se pueden expresar en términos tales como índice de confiabilidad del software.
Modelo de Proceso de Sala Limpia
¿Diferenciar de Sala Limpia?
Existen diversos métodos o paradigmas que nos reflejan la diferencia notoria de que sea sala limpia.
- Hace uso explícito del control estadístico de calidad.
- Verifica la especificación del diseño empleando una demostración de corrección basada en las matemáticas.
- Hace mucho uso de la comprobación estadística de utilización para descubrir errores de especial incidencia.
Especificación Funcional
- Satisface los principios de análisis operacional, empleando un método denominado “especificación de estructura de cajas”.
- Una caja encapsula al sistema con cierto grado de detalle.
- Mediante el refinamiento progresivo forma una jerarquía, donde cada caja tiene transferencia referencial.
Se utilizan tres tipos de cajas:
- Caja Negra. Especifica el comportamiento del sistema, o de una parte de un sistema.
- Caja de Estado. Esta caja encapsula los datos de estados y de servicios (operaciones) de forma análoga a los objetos. En esta vista de especificación, se representan las entradas de la caja de estados y sus salidas.
- Caja Transparente. Las funciones de transición que están implicadas en la caja de estados se definen en la caja transparente.
Verificación de diseño
El diseño que se utiliza en la ingeniería del Software de sala limpia hace mucho uso de la filosofía de programación estructurada. Son realmente las funciones básicas de procesamiento, se refinan ahora utilizando una expansión progresiva de funciones matemáticas en estructuras de conectivas lógicas.
Especificación de caja negra
Caja negra •Es una abstracción que describe la forma en los que un sistema responde a los estímulos.
•f se describe empleando el lenguaje natural.
•Las cajas de nivel inferior heredan las propiedades de las cajas de nivel superior.
•La función f se aplica a una sentencia S de entradas y esta se transforma en una salida R.
Caja de Estado
•Es una generalización sencilla de una máquina de estado.
•Se producen transiciones entre el estado actual y el nuevo utiliza una transacción de datos para determinar el estado siguiente.
•Función de caja negra:
Caja Transparente
•Relacionada con los procedimientos y la programación estructurada.
•Refina las funciones mediante la expansión progresiva de funciones matemáticas de conectivas lógicas.
Refinamiento progresivo
Raíz cuadrada
•La condición bucle se puede encontrar en el comienzo y a través del control de flujo de la condición cont.
•Se llega a la condición cont. Después de incrementar en 1 el valor de y.
•La condición si se comprueba en la lógica condicional que se muestra.
•La condición x exige que x no haya cambiado.
Ventajas de la verificación del diseño
•Se reduce la verificación a un proceso finito.
•Da lugar a un nivel de defectos próximo a cero
•Produce un código mejor que la comprobación unitaria
•Es escalable
•Permite que los equipos de sala limpia verifiquen todas las líneas
de diseño y de código
Comprobación de Sala Limpia
Objetivo: Validar los requisitos de software mediante la demostración de una muestra estadística de casos prácticos.
Equivale: A comprobar el software en la forma en los que el usuario tienen intención de utilizarlo.
Determina: La distribución de probabilidad de utilización correspondiente al software.
Analiza: La especificación (caja negra) de c/incremento del software para definir los estímulos (entradas o procesos) que dan lugar a modificar el comportamiento del software.
Desarrolla: Un incremento del software que gestione la interacción del usuario con el teclado del sistema de seguridad.
Genera: Una serie de números aleatorios entre 1 y 99, correspondiente al intervalo de la probabilidad.
Certificacion
•1. Es preciso crear escenarios de utilización
•2. Se especifica un perfil de utilización
•3Se generan casos de prueba a partir del perfil
•4. Se ejecutan pruebas y los datos de los fallos se registran
•5. Se calcula y se certifica la fiabilidad
La certificacion requiere de tres modelos:
•Modelo de muestreo : Ejecuta m casos de pruebas aleatorias y especifica si produce ó no un fallo.
•Modelo de componentes: Certifica un sistema de n componentes y determina la probabilidad de fallo del componente i.
•Modelo de certificación: Estima y certifica la fiabilidad global del sistema.
La ingeniería del software de sala limpia es un enfoque formal para el desarrollo de software de calidad alta.
Emplea la estructura de caja (métodos formales) para el modelado de análisis y diseño, haciendo hincapié en la verificación de la coreccion.
Aplica una comprobación estadística de utilización de la tasa de fallos para certificar la fiabilidad del software
El resultado final son unas tasas de fallos bajas difíciles de conseguir empleando métodos menos formales.
No hay comentarios:
Publicar un comentario