ISO/CEI 12207
ISO/IEC/IEEE 12207 Ingeniería de software y sistemas: procesos del ciclo de vida del software es un estándar internacional para los procesos del ciclo de vida del software. Introducido por primera vez en 1995, pretende ser un estándar primario que defina todos los procesos necesarios para desarrollar y mantener sistemas de software, incluidos los resultados y/o actividades de cada proceso.
Historial de revisiones
ISO/IEC/IEEE 12207:2017 es la versión más reciente, publicada en noviembre de 2017. IEEE Computer Society se unió directamente a ISO/IEC JTC 1/SC 7/WG 7 en el proceso de edición de esta versión. Un cambio significativo es que adopta un modelo de proceso idéntico al modelo de proceso ISO/IEC/IEEE 15288:2015 (hay un cambio de nombre, el proceso 15288 "Definición de requisitos del sistema" pasa a llamarse " ;Proceso de definición de requisitos del sistema/software" Esta armonización de los dos estándares llevó a la eliminación de procesos separados de desarrollo de software y reutilización de software, lo que redujo el número total de 43 procesos de 12207 a los 30 procesos definidos en 15288. También provocó cambios en las actividades de los procesos de gestión y aseguramiento de la calidad. y resultados. Además, la definición de "auditoría" y se actualizaron las actividades de auditoría relacionadas. El Anexo I de ISO/IEC/IEEE 12207:2017 proporciona un mapeo de procesos entre la versión 2017 y la versión anterior, incluidas las alineaciones de procesos principales entre las dos versiones; esto tiene como objetivo permitir la trazabilidad y facilitar la transición para los usuarios de la versión anterior.
Las versiones anteriores incluyen:
- ISO/IEC 12207:2008, publicado en febrero de 2008
- ISO/IEC 12207:1995/Amd 2:2004, versión modificada del anterior, publicada en noviembre de 2004
- ISO/IEC 12207:1995/Amd 1:2002, versión modificada del anterior, publicada en mayo de 2002
- ISO/IEC 12207:1995, la primera iteración, publicada en julio de 1995; originalmente se dividió en cinco procesos primarios (adquisición, suministro, desarrollo, operación y mantenimiento), con ocho procesos de apoyo y cuatro ciclos de vida organizativos
Versión IEEE
Antes de que IEEE Computer Society se uniera formalmente al proceso de edición (convirtiéndose en una parte interesada importante) para la versión de 2017, IEEE mantuvo sus propias versiones de ISO/IEC 12207, inicialmente con modificaciones realizadas conjuntamente con Electronic Industries Alliance (EIA). . Con la actualización de 2008 surgió una "estrategia compartida de ISO/IEC JTC 1/SC 7 y el IEEE para armonizar sus respectivas colecciones de estándares", dijo. dando lugar a normas idénticas al respecto, pero con nombres ligeramente diferentes. Esas versiones de IEEE incluían:
- IEEE Std. 12207-2008: "integra ISO/IEC 12207:1995 con sus dos enmiendas y se coordinó con la revisión paralela de ISO/IEC 15288:2002 (Procesos de ciclo de vida del sistema) para alinear la estructura, los términos y los correspondientes procesos organizativos y de proyecto"; superado por ISO/IEC/IEEE 12207:2017
- IEEE/EIA 12207.2-1997: "proporciona orientación de consideración de implementación para las cláusulas normativas de IEEE/EIA 12207.0"; supersed/made obsolete por IEEE Std. 12207-2008, que luego fue superpuesto por ISO/IEC/IEEE 12207:2017
- IEEE/EIA 12207.1-1997: "proporciona orientación para la grabación de datos del ciclo de vida resultantes de los procesos del ciclo de vida de IEEE/EIA 12207.0"; superada por ISO/IEC/IEEE 15289:2011, que luego fue superada por ISO/IEC/IEEE 15289:2017
- IEEE/EIA 12207.0-1996: "Consiste en las aclaraciones, adiciones y cambios [a ISO/IEC 12207:1995 para la implementación de la industria] aceptados por el Instituto de Ingenieros Eléctricos y Electrónicos (IEEE) y la Alianza de Industrias Electrónicas (EIA) como formulado por un proyecto conjunto de las dos organizaciones"; superpuesto por IEEE Std. 12207-2008, que fue reemplazado por ISO17
También vale la pena señalar que IEEE/EIA 12207 reemplazó oficialmente a MIL-STD-498 (lanzado en diciembre de 1994) para el desarrollo de sistemas de software del Departamento de Defensa el 27 de mayo de 1998.
Procesos, no etapas
El estándar establece un conjunto de procesos para gestionar el ciclo de vida del software. El estándar "no prescribe un modelo de ciclo de vida del software, una metodología de desarrollo, un método, un enfoque de modelado o una técnica específicos". En cambio, el estándar (así como ISO/IEC/IEEE 15288) distingue entre una "etapa" y "procesar" como sigue:
- etapa: "período dentro del ciclo de vida de una entidad que se relaciona con el estado de su descripción o realización". Una etapa es típicamente un período de tiempo y termina con una "puerta de decisión primaria".
- proceso: "conjunto de actividades interrelacionadas o interrelacionadas que transforman insumos en salidas". El mismo proceso suele repetirse en diferentes etapas.
Las etapas (también conocidas como fases) no son lo mismo que los procesos, y este estándar solo define procesos específicos, no define ninguna etapa en particular. En cambio, el estándar reconoce que los ciclos de vida del software varían y pueden dividirse en etapas (también llamadas fases) que representan períodos importantes del ciclo de vida y dan lugar a puertas de decisión primarias. Ningún conjunto particular de etapas es normativo, pero sí menciona dos ejemplos:
- Las etapas del ciclo de vida del sistema de ISO/IEC TS 24748-1 podrían utilizarse (concepto, desarrollo, producción, utilización, apoyo y jubilación).
- También observa que un conjunto común de etapas para el software es la exploración del concepto, el desarrollo, el mantenimiento y la jubilación.
Los procesos del ciclo de vida que define el estándar no están alineados con ninguna etapa específica del ciclo de vida del software. De hecho, los procesos del ciclo de vida que implican planificación, desempeño y evaluación "deben considerarse para su uso en cada etapa". En la práctica, los procesos ocurren siempre que son necesarios dentro de cualquier etapa.
Procesos
ISO/IEC/IEEE 12207:2017 divide los procesos del ciclo de vida del software en cuatro grupos de procesos principales: acuerdo, habilitación de proyectos organizacionales, gestión técnica y procesos técnicos. Bajo cada uno de esos cuatro grupos de procesos hay una variedad de subcategorías, incluidas las actividades primarias de adquisición y suministro (acuerdo); configuración (gestión técnica); y operación, mantenimiento y eliminación (técnico).
Procesos de acuerdo
Aquí ISO/IEC/IEEE 12207:2017 incluye los procesos de adquisición y suministro, que son actividades relacionadas con el establecimiento de un acuerdo entre un proveedor y un adquirente. La adquisición cubre todas las actividades involucradas en el inicio de un proyecto. La fase de adquisición se puede dividir en diferentes actividades y entregables que se completan cronológicamente. Durante la fase de suministro se desarrolla un plan de gestión del proyecto. Este plan contiene información sobre el proyecto, como los diferentes hitos que deben alcanzarse.
Procesos organizacionales que habilitan proyectos
Aquí se detallan los procesos de gestión del modelo de ciclo de vida, gestión de infraestructura, gestión de cartera, gestión de recursos humanos, gestión de calidad y gestión del conocimiento. Estos procesos ayudan a una empresa u organización a habilitar, controlar y respaldar el ciclo de vida del sistema y los proyectos relacionados. La gestión del modelo de ciclo de vida ayuda a garantizar que se respalden los esfuerzos de adquisición y suministro, mientras que la gestión de infraestructura y cartera respalda iniciativas comerciales y específicas de proyectos durante todo el ciclo de vida del sistema. El resto garantiza que existan los recursos y controles de calidad necesarios para respaldar la actividad empresarial. esfuerzos del proyecto y del sistema. Si una organización no tiene un conjunto apropiado de procesos organizacionales, un proyecto ejecutado por la organización puede aplicar esos procesos directamente al proyecto.
Procesos de gestión técnica
ISO/IEC/IEEE 12207:2017 coloca aquí ocho procesos diferentes:
- [Planificación de proyectos]
- Evaluación y control de proyectos
- Gestión de decisiones
- Gestión de riesgos
- Gestión de configuración
- Gestión de la información
- Medición
- Garantía de calidad
Estos procesos se refieren a la planificación, evaluación y control de software y otros proyectos durante el ciclo de vida, asegurando la calidad a lo largo del camino.
Procesos técnicos
Los procesos técnicos de ISO/IEC/IEEE 12207:2017 abarcan 14 procesos diferentes, algunos de los cuales provienen de los antiguos procesos específicos de software que fueron eliminados de la versión 2008.
La lista completa incluye:
- Análisis de empresas o misiones
- Definición de necesidades y requisitos de los interesados
- Definición de los requisitos de sistemas y software
- Definición de arquitectura
- Definición de diseño
- Análisis de sistemas
- Aplicación
- Integración
- Verificación
- Transición
- Validación
- Operación
- Mantenimiento
- Eliminación
Estos procesos involucran actividades técnicas y personal (tecnología de la información, solucionadores de problemas, especialistas en software, etc.) durante el pre, post y durante la operación. Los procesos de análisis y definición desde el principio sientan las bases para cómo se implementan el software y los proyectos. Los procesos adicionales de integración, verificación, transición y validación ayudan a garantizar la calidad y la preparación. Las fases de operación y mantenimiento ocurren simultáneamente; la fase de operación consta de actividades como ayudar a los usuarios a trabajar con el producto de software implementado y la fase de mantenimiento consta de tareas de mantenimiento para mantener el producto en funcionamiento. El proceso de eliminación describe cómo se retirará y limpiará el sistema/proyecto, si es necesario.
Conformidad
La cláusula 4 describe el uso previsto y los requisitos de conformidad del documento. Se espera que determinados proyectos "quizás no necesiten utilizar todos los procesos proporcionados en este documento". En la práctica, cumplir con esta norma normalmente implica seleccionar y declarar el conjunto de procesos adecuados. Esto se puede hacer mediante "plena conformidad" o "conformidad personalizada".
"Plena conformidad" se puede reclamar de dos maneras. "Plena conformidad con las tareas" Se puede reclamar si se cumplen todos los requisitos de los procesos declarados. Se cumplen las actividades y tareas. "Plena conformidad con los resultados" se puede reclamar si se cumplen todos los resultados requeridos de los procesos declarados. Este último permite una mayor variación.
"Conformidad personalizada" podrán declararse cuando se seleccionen o modifiquen cláusulas específicas mediante el proceso de adaptación también definido en el documento.
Contenido relacionado
Spl (Unix)
Tabla de métodos virtuales
ALGOL Y
Hacer bucle while
API de repositorio de contenido para Java