Estándar IEEE reemplazado para describir la arquitectura de software
IEEE 1471 es un estándar IEEE reemplazado para describir la arquitectura de un "sistema intensivo en software", también conocido como arquitectura de software .
En 2011 fue reemplazada por ISO/IEC/IEEE 42010 , Ingeniería de sistemas y software - Descripción de la arquitectura .
Descripción general
IEEE 1471 es el nombre corto de un estándar conocido formalmente como ANSI/IEEE 1471-2000, Práctica recomendada para la descripción de arquitectura de sistemas intensivos en software. En el lenguaje del Instituto de Ingenieros Eléctricos y Electrónicos (IEEE), esta es una "práctica recomendada", la menos normativa de sus estándares. En 2007, ISO/IEC JTC1/SC7 adoptó esta norma como ISO/IEC 42010:2007 , Ingeniería de sistemas y software: práctica recomendada para la descripción arquitectónica de sistemas intensivos en software . [1]
Ha sido reconocido desde hace mucho tiempo [ ¿por quién? ] que la "arquitectura" tiene una fuerte influencia sobre el ciclo de vida de un sistema. Sin embargo, hasta hace relativamente poco tiempo, [ ¿cuándo? ] Los problemas de hardware han tendido a dominar el pensamiento arquitectónico, y los aspectos de software, cuando se consideran, suelen ser los primeros en verse comprometidos bajo las presiones del desarrollo. [1] IEEE 1471 se creó para proporcionar una base para pensar en la arquitectura de sistemas intensivos en software.
Las contribuciones de IEEE 1471 se pueden resumir de la siguiente manera (en esta lista, los elementos en cursiva son términos definidos y utilizados en el estándar):
- Proporciona definiciones y un metamodelo para la descripción de la arquitectura.
- Afirma que una arquitectura debe abordar las preocupaciones de las partes interesadas de un sistema.
- Afirma que las descripciones de la arquitectura son inherentemente multivista , ninguna vista captura adecuadamente todas las preocupaciones de las partes interesadas.
- Especifica las nociones de vista y punto de vista , donde un punto de vista identifica el conjunto de preocupaciones y las representaciones / técnicas de modelado , etc. utilizadas para describir la arquitectura para abordar esas preocupaciones y una vista es el resultado de aplicar un punto de vista a un sistema particular.
- Establece requisitos de contenido para las descripciones de arquitectura y la idea de que una descripción de arquitectura conforme tiene una correspondencia 1 a 1 entre sus puntos de vista y sus vistas .
- Proporciona orientación para capturar la lógica de la arquitectura e identificar inconsistencias/problemas no resueltos entre las vistas dentro de una descripción de la arquitectura.
IEEE 1471 proporciona anexos informativos que relacionan sus conceptos con conceptos de arquitectura en otros estándares, incluidos RM-ODP e IEEE 12207 .
Historia
En agosto de 1995, el Comité de Estándares de Ingeniería de Software (SESC) del IEEE creó un Grupo de Planificación de Arquitectura (APG) del IEEE para establecer la dirección para incorporar el pensamiento arquitectónico en los estándares del IEEE. En abril de 1996, se creó el Grupo de Trabajo de Arquitectura (AWG) para implementar las recomendaciones hechas por la APG al SESC. El GTE estuvo presidido por Basil Sherlund, los vicepresidentes Ronald Wade y David Emery y la especificación fue editada por Rich Hilliard. El GTE tenía 25 miembros. Los borradores de la especificación fueron votados y comentados por 130 revisores internacionales. En septiembre de 2000, la Junta de Normas IEEE-SA aprobó la especificación como IEEE Std 1471-2000.
En 2006, el Comité Técnico Conjunto 1 (JTC1) de ISO/IEC, Tecnología de la información/Subcomité SC 7, Ingeniería de software y sistemas, adoptó la especificación como ISO/IEC 42010, bajo un "procedimiento rápido" especial, en paralelo con su aprobación. por organismos nacionales de ISO e IEC. En 2006 se inició una revisión coordinada de esta norma por parte de ISO/IEC JTC1/SC7/WG42 e IEEE CS, tras la exitosa votación acelerada de ISO/IEC y en línea con la revisión de 5 años de la norma IEEE.
En noviembre de 2011, [2] IEEE 1471-2000 e ISO/IEC 42010:2007 fueron reemplazadas por ISO/IEC/IEEE 42010:2011 , Ingeniería de sistemas y software - Descripción de la arquitectura .
Objetivo
Según IEEE 1471 [1] [3] [4] se puede utilizar una descripción de arquitectura para lo siguiente:
- Expresión del sistema y su evolución.
- Comunicación entre los actores del sistema.
- Evaluación y comparación de arquitecturas de forma consistente.
- Planificar, gestionar y ejecutar las actividades de desarrollo del sistema.
- Expresión de las características persistentes y principios de apoyo de un sistema para guiar un cambio aceptable.
- Verificación del cumplimiento de la implementación de un sistema con una descripción arquitectónica.
- Registro de contribuciones al conjunto de conocimientos sobre arquitectura de sistemas intensivos en software.
Terminología
Según el Glosario estándar de terminología de ingeniería de software del IEEE [5], se utilizan las siguientes definiciones:
- arquitecto : la persona, equipo u organización responsable de diseñar la arquitectura de sistemas.
- Descripción arquitectónica (AD): Una colección de productos para documentar una arquitectura.
- arquitectura : La organización fundamental de un sistema incorporada en sus componentes, sus relaciones entre sí y con el medio ambiente, y los principios que guían su diseño y evolución.
- diseño : Las actividades de definir, documentar, mantener, mejorar y certificar la implementación adecuada de una arquitectura.
- sistema : Colección de componentes organizados para cumplir una función específica o un conjunto de funciones. El término sistema abarca aplicaciones individuales, sistemas en el sentido tradicional, subsistemas, sistemas de sistemas, líneas de productos, familias de productos, empresas enteras y otras agregaciones de interés.
- Parte interesada del sistema : Un individuo, equipo u organización (o clases de ellos) con intereses o inquietudes relativas a un sistema.
- vista : Una representación de un sistema completo desde la perspectiva de un conjunto relacionado de preocupaciones.
- punto de vista : Una especificación de las convenciones para construir y usar una vista. Un patrón o plantilla a partir del cual desarrollar vistas individuales estableciendo los propósitos y la audiencia de una vista y las técnicas para su creación y análisis.
Marco conceptual
IEEE 1471 utiliza el siguiente marco conceptual. [1] [3] [6]
- El entorno o contexto de un sistema puede influir en ese sistema. El entorno puede incluir otros sistemas que interactúan con el sistema de interés, ya sea directamente a través de interfaces o indirectamente de otras maneras. El entorno determina los límites que definen el alcance del sistema de interés en relación con otros sistemas.
- Un sistema tiene uno o más interesados . Por lo general, cada parte interesada tiene intereses o inquietudes relativas a ese sistema.
- Las preocupaciones son aquellos intereses que pertenecen al desarrollo del sistema, su operación o cualquier otro aspecto que sea crítico o importante para una o más partes interesadas. Las preocupaciones incluyen consideraciones del sistema como rendimiento, confiabilidad, seguridad, distribución y capacidad de evolución.
- Un sistema existe para cumplir una o más misiones en su entorno. Una misión es un uso u operación para el cual uno o más interesados pretenden que un sistema cumpla algún conjunto de objetivos .
- Todo sistema tiene una arquitectura , se comprenda o no; ya sea grabado o conceptual. Una arquitectura puede registrarse mediante una descripción arquitectónica .
- Una descripción arquitectónica se organiza en uno o más componentes llamados vistas (arquitectónicas) . Cada vista aborda una o más de las preocupaciones de las partes interesadas del sistema. Una vista es una expresión parcial de la arquitectura de un sistema con respecto a un punto de vista particular .
- Un punto de vista establece las convenciones mediante las cuales se crea, representa y analiza una vista. De esta manera, una vista se ajusta a un punto de vista. El punto de vista determina los lenguajes (incluidas notaciones, modelos o tipos de productos) que se utilizarán para describir la vista, y cualquier método de modelado o técnica de análisis asociado que se aplicará a estas representaciones de la vista. Estos lenguajes y técnicas se utilizan para producir resultados relevantes para las preocupaciones abordadas por el punto de vista.
- Una descripción arquitectónica selecciona uno o más puntos de vista para su uso. La selección de puntos de vista generalmente se basa en la consideración de las partes interesadas a quienes se dirige el DA y sus preocupaciones. Una definición de punto de vista puede originarse en un AD o puede haberse definido en otro lugar (un punto de vista de biblioteca ).
- Una vista puede constar de uno o más modelos arquitectónicos . Cada uno de estos modelos arquitectónicos se desarrolla utilizando los métodos establecidos por su punto de vista arquitectónico asociado. Un modelo arquitectónico puede participar en más de una vista.
Conformidad
IEEE 1471 [1] define un conjunto de requisitos normativos para conformar descripciones de arquitectura, incluidos los siguientes:
- Identificación de AD, versión e información general (cláusula 5.1)
- Identificación de las partes interesadas del sistema y sus inquietudes consideradas relevantes para la arquitectura (cláusula 5.2)
- Especificaciones de cada mirador que ha sido seleccionado para organizar la representación de la arquitectura y el fundamento de esas selecciones (cláusula 5.3)
- Una o más vistas arquitectónicas (cláusula 5.4)
- Un registro de todas las inconsistencias conocidas entre los componentes requeridos de la descripción arquitectónica (cláusula 5.5)
- Justificación de la selección de la arquitectura (cláusula 5.6)
Ver también
Referencias
- ^ abcde ISO/IEC 42010:2007, Ingeniería de software y sistemas - Descripción de la arquitectura
- ^ ISO/IEC/IEEE 42010:2011, Ingeniería de software y sistemas: descripción de la arquitectura, la última edición de la norma IEEE Std 1471:2000 original, última actualización el 5 de febrero de 2014
- ^ ab Arquitectura y cambio Archivado el 19 de junio de 2009 en la Wayback Machine.
- ^ Descripción de IEEE 1471
- ^ IEEE Std 610.12−1990, Glosario estándar IEEE de terminología de ingeniería de software.
- ^ Marco conceptual IEEE 1471
- 1471-2000: Práctica recomendada por IEEE para la descripción arquitectónica de sistemas intensivos en software . 2000. doi :10.1109/IEEESTD.2000.91944. ISBN 0-7381-2518-0.
enlaces externos
- Sitio web IEEE 1471
- MEGAF es una infraestructura para realizar marcos de arquitectura que se ajustan a la definición de marco de arquitectura proporcionada en el estándar ISO/IEC 42010.