cleanroom.docx

4
La Ingeniería del Software designa el conjunto de técnicas destinadas a la producción de un producto software, más allá de la sola actividad de programación. A su vez el software es el conjunto de instrucciones que permite al hardware de la computadora desempeñar trabajo útil. En los primeros años del presente siglo, las reducciones de costo en hardware llevaron a que el software fuera un componente que participa en muchos de los dispositivos usados por las sociedades industrializadas. Asimismo, se considera parte del software a la documentación generada durante el desarrollo del proyecto. El modelo de métodos formales acompaña a un conjunto de actividades que conducen a la especificación matemática del software. Los métodos formales permiten que un Ingeniero especifique, desarrolle y verifique un sistema aplicando una notación rigurosa y matemática. Hay una variación, que se utiliza por algunos ingenieros del software conocida como: “Ingeniería del Software de sala limpia”. Cuando se utilizan métodos formales, se eliminan muchos de los problemas que son difíciles de superar con las metodologías habituales: la ambigüedad, la completitud y la inconsistencia se descubren y se corrigen de manera más sencilla, mediante la aplicación del análisis matemático. La tecnología de dotación lógica de sala limpia 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 producto software. En la tecnología de dotación lógica de sala limpia, el desarrollo incremental permite la mejora continua del proceso. Los equipos de diseño aplican el desarrollo y las técnicas de revisión basadas en métodos formales a los sistemas, obteniendo productos que son casi sin defecto incluso antes de realizar las respectivas pruebas. Los equipos de la prueba utilizan control de calidad estadístico para certificar la calidad del sistema, en términos significativos para el cliente. La ingeniería del software de sala limpia es un enfoque formal para el desarrollo del software, que pueda dar lugar a un software

Upload: edgar-nava

Post on 29-Dec-2014

135 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: cleanroom.docx

La Ingeniería del Software designa el conjunto de técnicas destinadas a la producción de un producto software, más allá de la sola actividad deprogramación. A su vez el software es el conjunto de instrucciones que permite al hardware de la computadora desempeñar trabajo útil. En los primeros años del presente siglo, las reducciones de costo en hardware llevaron a que el software fuera un componente que participa en muchos de los dispositivos usados por las sociedades industrializadas. Asimismo, se considera parte del software a la documentación generada durante el desarrollo del proyecto.El modelo de métodos formales acompaña a un conjunto de actividades que conducen a la especificación matemática del software. Los métodos formalespermiten que un Ingeniero especifique, desarrolle y verifique un sistema aplicando una notación rigurosa y matemática. Hay una variación, que se utilizapor algunos ingenieros del software conocida como: “Ingeniería del Software de sala limpia”. Cuando se utilizan métodos formales, se eliminan muchos de los problemas que son difíciles de superar con las metodologías habituales: la ambigüedad, la completitud y la inconsistencia se descubren y se corrigen de manera más sencilla, mediante la aplicación del análisis matemático.

La tecnología de dotación lógica de sala limpia 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óndel defecto concluido el retiro del defecto. Las mismas prácticas se pueden aplicar al desarrollo del producto software. En la tecnología de dotación lógica de sala limpia, el desarrollo incremental permite la mejora continua del proceso. Los equipos de diseño aplican el desarrollo y las técnicas de revisión basadas en métodos formales a los sistemas, obteniendo productos que son casi sin defecto incluso antes de realizar las respectivas pruebas. Los equipos de la prueba utilizan control de calidad estadístico para certificar la calidad del sistema, en términos significativos para el cliente.

La ingeniería del software de sala limpia es un enfoque formal para el desarrollo del software, que pueda dar lugar a un software con una calidad notablemente alta. Emplea la especificación de estructura de cajas para el modelado de análisis y diseño, haciendo hincapié en la verificación de la corrección, más que en la comprobación, como mecanismo fundamental para encontrar y eliminar errores. Se aplica una comprobación estadística de uso para desarrollar la información relativa a la tasa de fallos necesaria para certificar la fiabilidad del producto software. El resultado final es una tasa de fallo extremadamente baja, que sería difícil o imposible de conseguir empleando métodos menos formales.

Una vez asignada la 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.-Permite la calidad temprana y continua interacción con el usuario. Facilita mejoras de proceso mientras progresa el desarrollo. El acercamiento incremental evita los riesgos inherentes a la integración tardía en el ciclo de desarrollo.

Recolección de requisitos.- Define requisitos para el producto software, incluyendo función, uso, ambiente, y funcionamiento; la parte complementaria constituye el obtener

Page 2: cleanroom.docx

un acuerdo con el cliente en los requisitos como base para la función y especificación de uso.

Especificación de la estructura de cajas.- Tres tipos especiales de funciones matemáticas son importantes en el desarrollo de 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 funcionalidad 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. Los participantes proporcionan los objetivos, 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, las cuales se aplican primero al diseño y después al código. El propósito del proceso de verificación de la corrección, es verificar la corrección del incremento asociado al producto de software utilizando 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 en un lenguaje de programación adecuado.

Planificación de la comprobación estadística.- El propósito es demostrar la aptitud del software para el uso en un experimento estadístico formal. Se la 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 el índice de confiabilidad del software.

Mediante un proceso de refinamiento progresivo, se van refinando las cajas para formar una jerarquía en la cual cada caja tiene una transferencia. Para esto, al interior de la ingeniería del software de sala limpia, 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 de forma análoga a los objetos. En esta vista de especificación, se representan las entradas a 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.

La ingeniería del software de sala limpia se diferencia de otros métodos o paradigmas por las siguientes razones:

Page 3: cleanroom.docx

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.