Es bien reconocido en la industria del software que la ingeniería de
requisitos es crítica para el éxito de cualquier proyecto de desarrollo
importante. Los requisitos de seguridad a menudo se identifican durante el ciclo vital del sistema. Sin embargo, los requisitos tienden a ser mecanismos generales como la protección de contraseña, Cortafuegos, y herramientas de detección de virus. A menudo se desarrollan los requisitos de seguridad independientemente del resto de la actividad de ingeniería de requisitos y, por lo tanto, no están integrados en la corriente principal de las actividades de los requisitos. Como resultado, los requisitos de seguridad que son específicos El sistema y que prevén la protección de servicios y activos esenciales a menudo se descuidan. La obtención de requisitos y el análisis que se necesita para obtener un mejor conjunto de requisitos de seguridad rara vez tiene lugar. El programa CERT del Carnegie Mellon® Software Engineering Institute ha desarrollado una metodología para ayudar a las organizaciones a construir la seguridad en las primeras etapas del ciclo de vida de la producción. La metodología de Ingeniería de Requisitos de Calidad (SQUARE) consta de nueve pasos que generan un entregable final de requisitos de seguridad categorizados y priorizados. Aunque La metodología SQUARE probablemente podría generalizarse a cualquier proyecto de diseño a gran escala, ya que se diseñó para su uso con sistemas de tecnología de la información. El proceso SQUARE implica la interacción de un equipo de ingenieros de requisitos y las partes interesadas de un proyecto informático. El equipo de ingeniería de requisitos puede considerarse como consultores externos, aunque a menudo el equipo está compuesto por uno o más desarrolladores internos del proyecto. Cuando Se aplica PLAZA, los interesados pueden esperar que resulte en la identificación, documentación, e inspección de los requisitos de seguridad relevantes para el sistema o software que se está desarrollando. SQUARE puede ser más adecuado para un sistema en desarrollo o uno en desarrollo Modificación de una que ya se ha desplegado, aunque se ha utilizado en ambos sentidos. Los modelos de ciclo de vida del software describen las fases del ciclo del software y el orden de ejecución de esas fases Muchas compañías de software están adoptando muchos modelos, pero la mayoría de ellos tienen aplicaciones similares patrones. Típicamente, cada fase produce los entregables requeridos por la siguiente fase en el ciclo de vida. Los requisitos se traducen en diseño. El código se produce durante la fase de implementación y es impulsado por el diseño. El código finalmente se prueba contra los requisitos para garantizar la calidad. Esta El informe se centra en incorporar SQUARE con modelos estándar de ciclo de vida, ya que SQUARE puede ser más efectivo cuando se ajusta al proceso de desarrollo existente de una organización. Lo mas común adoptó modelos de ciclo de vida y metodologías de proceso, a saber, el modelo de cascada, Rational Proceso unificado (modelo iterativo e incremental), modelo en espiral y desarrollo dinámico de sistemas El método (metodología ágil, modelo iterativo e incremental) se considera y Se explica en detalle.