El proceso de ingeniería de software de sala limpia es un proceso de desarrollo de software destinado a producir software con un nivel certificable de fiabilidad . El proceso de sala limpia fue desarrollado originalmente por Harlan Mills y varios de sus colegas, incluido Alan Hevner en IBM . [1] El enfoque del proceso de sala limpia está en la prevención de defectos, más que en la eliminación de defectos. El nombre "sala limpia" fue elegido para evocar las salas blancas utilizadas en la industria electrónica para evitar la introducción de defectos durante la fabricación de semiconductores.. El proceso de sala limpia se utilizó por primera vez a mediados y finales de la década de 1980. Los proyectos de demostración dentro del ejército comenzaron a principios de la década de 1990. [2] Un trabajo reciente sobre el proceso de la sala limpia ha examinado la fusión de la sala limpia con las capacidades de verificación automatizadas proporcionadas por las especificaciones expresadas en CSP . [3]
Principios centrales
Los principios básicos del proceso de sala limpia son
- Desarrollo de software basado en métodos formales
- El soporte de herramientas de software basado en algún formalismo matemático incluye verificación de modelos , álgebras de procesos y redes de Petri . El método de estructura de caja podría ser uno de esos medios para especificar y diseñar un producto de software. [4] La verificación de que el diseño implementa correctamente la especificación se realiza mediante una revisión en equipo, a menudo con soporte de herramientas de software.
- Implementación incremental bajo control estadístico de calidad
- El desarrollo de salas blancas utiliza un enfoque iterativo , en el que el producto se desarrolla en incrementos que aumentan gradualmente la funcionalidad implementada. La calidad de cada incremento se mide en comparación con los estándares preestablecidos para verificar que el proceso de desarrollo avanza de manera aceptable. El incumplimiento de los estándares de calidad da como resultado el cese de las pruebas para el incremento actual y el regreso a la fase de diseño.
- Pruebas estadísticamente sólidas
- Las pruebas de software en el proceso de sala limpia se llevan a cabo como un experimento estadístico. Con base en la especificación formal, se selecciona y prueba un subconjunto representativo de trayectorias de entrada / salida de software. Luego, esta muestra se analiza estadísticamente para producir una estimación de la confiabilidad del software y un nivel de confianza en esa estimación.
Referencias
- ^ Molinos, H .; M. Dyer; R. Linger (septiembre de 1987). "Ingeniería de software de sala limpia" (PDF) . Software IEEE . 4 (5): 19-25. doi : 10.1109 / MS.1987.231413 . S2CID 383170 .
- ^ Capataz, John (2005). "Referencia de ingeniería de software de sala limpia" . Hoja de ruta de la tecnología de software . Instituto de Ingeniería de Software (SEI) . Consultado el 27 de abril de 2006 .
- ^ Guy H. Broadfoot y PJ Hopcroft (2005). "Introducción de métodos formales en la industria utilizando Cleanroom y CSP". Revista electrónica de sistemas dedicados. S2CID 14066854 . Cite journal requiere
|journal=
( ayuda ) - ^ Linger, R. (abril de 1994). "Modelo de proceso de sala blanca". Software IEEE . 11 (2): 50–58. CiteSeerX 10.1.1.130.8642 . doi : 10.1109 / 52.268956 . S2CID 206447346 .
Otras lecturas
- Stavely, Allan (1999). Hacia una programación sin defectos . Addison-Wesley.
- Stacy J. Prowell y Carmen J. Trammell y Richard C. Linger y Jesse H. Poore (1999). Ingeniería de Software de Sala Limpia: Tecnología y Procesos . Addison-Wesley.
- Jesse H. Poore y Carmen J. Trammell (1996). Ingeniería de software de sala limpia: un lector . NCC Blackwell.