Requisitos arquitectónicamente significativos

Tipo de requerimiento en ingeniería de sistemas

Los requisitos arquitectónicamente significativos son aquellos requisitos que tienen un efecto mensurable en la arquitectura de un sistema informático . [1] Esto puede incluir tanto requisitos de software como de hardware. Son un subconjunto de requisitos , el subconjunto que afecta la arquitectura de un sistema de maneras identificables y mensurables.

Relación con requisitos no funcionales y atributos de calidad

Los requisitos arquitectónicamente significativos fueron reconocidos recientemente, a partir de 2016, como un concepto importante. Cuando se habla de arquitectura, a menudo se utilizan los términos requisitos no funcionales o atributos de calidad . [2] Sin embargo, estudios empíricos recientes muestran que, para un sistema de software , no todos los requisitos no funcionales afectan su arquitectura , y los requisitos funcionales también pueden afectar su arquitectura. [1] [3] Esta investigación sugiere que, cuando se habla de arquitectura de software, vale la pena distinguir qué requisitos de software son arquitectónicamente significativos, así como si son funcionales. [3]

Características

Los requisitos arquitectónicamente significativos se pueden caracterizar a partir de los siguientes aspectos. [1]

Características descriptivas

Los requisitos arquitectónicamente significativos suelen ser difíciles de definir y articular, tienden a expresarse de manera vaga, tienden a descuidarse inicialmente, tienden a estar ocultos dentro de otros requisitos y son subjetivos, variables y situacionales. Otros requisitos también podrían mostrar estas características descriptivas. Sin embargo, la importancia de los requisitos arquitectónicamente significativos hizo que estas manifestaciones fueran únicas y desafiantes.

Indicadores

Es probable que un requisito que tenga un efecto amplio, apunte a puntos de equilibrio, sea estricto (restrictivo, limitante, no negociable), rompa suposiciones o sea difícil de lograr sea arquitectónicamente significativo.

Los indicadores de importancia arquitectónica que se han reportado en la literatura incluyen:

  • El requisito está asociado con un alto valor comercial y/o riesgo técnico.
  • Esta exigencia es una preocupación de una parte interesada particularmente influyente.
  • El requisito tiene carácter único, es decir, ninguna de las responsabilidades de los componentes ya existentes en la arquitectura lo aborda.
  • El requisito tiene características de QoS/SLA que se desvían de todas las que ya satisface la arquitectura en evolución.
  • El requisito ha provocado sobrecostes presupuestarios o insatisfacción del cliente en un proyecto anterior con un contexto similar.

OpenUP [4] y Peter Eeles [5] analizan criterios adicionales de importancia arquitectónica en varios artículos y presentaciones. En la Conferencia Europea sobre Arquitectura de Software de 2020 se analizaron siete criterios de importancia arquitectónica: valor/riesgo empresarial, preocupación de las partes interesadas, nivel de calidad, dependencias externas, transversalidad, novedad y fuente de problemas en proyectos anteriores. Estos criterios se describen en una "Prueba de importancia arquitectónica".

Heurística

Cuando un requisito especifica los atributos de calidad de un sistema de software , se refiere a sus características principales, le impone restricciones o define el entorno en el que se ejecutará, es probable que sea arquitectónicamente significativo.

Consulte la discusión sobre diseño versus arquitectura en arquitectura de software para obtener criterios adicionales de importancia arquitectónica.

Sonsacamiento

Al igual que todos los requisitos no funcionales y los requisitos de atributos de calidad [6] , los requisitos arquitectónicamente significativos deben especificarse de manera SMART . Los escenarios de atributos de calidad [2] son ​​una forma de lograr los criterios S (específicos) y M (medidos) en SMART. El Instituto de Ingeniería de Software recomienda talleres de atributos de calidad para este esfuerzo. [7] Se ha sugerido mantener el análisis y el diseño de la arquitectura livianos y flexibles; los árboles de atributos de calidad para ciertos géneros de aplicaciones y dominios tecnológicos pueden respaldar dichos enfoques. [8]

Es importante comunicar los requisitos arquitectónicamente significativos obtenidos, y cualquier otro artefacto arquitectónico, en una notación y un lenguaje que sean comprensibles para el público objetivo (en particular, las partes interesadas comerciales ). [9]

Impacto

Los requisitos arquitectónicamente significativos se utilizan en el diseño de software para impulsar y justificar decisiones arquitectónicas ; si no se satisfacen adecuadamente, contribuyen a la acumulación de deuda técnica . Por ejemplo, el incumplimiento de los requisitos de seguridad y cumplimiento complica las auditorías de aseguramiento de sistemas y procesos y aumenta el riesgo de hallazgos de auditoría. [10] En la literatura se encuentran consejos ejemplares sobre cómo abordar los atributos de calidad del sistema (incluidos los requisitos arquitectónicamente significativos). [11] [12]

Véase también

Referencias

  1. ^ abc Chen, Lianping; Ali Babar, Muhammad; Nuseibeh, Bashar (2013). "Caracterización de requisitos arquitectónicamente significativos". IEEE Software . 30 (2): 38–45. doi :10.1109/MS.2012.174. hdl : 10344/3061 . S2CID  17399565.
  2. ^ ab Bass, Len; Clements, Paul (2003). Arquitectura de software en la práctica . Addison Wesley. ISBN 978-0321154958.
  3. ^ ab Eckhardt, Jonas; Vogelsang, Andreas; Fernández, Daniel (2016). ¿Son los requisitos "no funcionales" realmente no funcionales? - Una investigación de los requisitos no funcionales en la práctica (PDF) . La 38.ª Conferencia Internacional sobre Ingeniería de Software. Association for Computing Machinery.
  4. ^ "Concepto: Requisitos arquitectónicamente significativos". Archivado desde el original el 17 de octubre de 2016 . Consultado el 19 de agosto de 2016 .
  5. ^ "Peter Eeles en ResearchGate".
  6. ^ "Atributos de calidad" (PDF) .
  7. ^ "El taller sobre atributos de calidad del SEI".
  8. ^ Keeling, Michael (2015). "Ligero y flexible: tendencias emergentes en arquitectura de software de las conferencias SATURN". IEEE Software . 32 (3): 7–11. doi : 10.1109/MS.2015.65 .
  9. ^ Schulenklopper, Jochem (2016). "Por qué no lo entienden: cómo comunicarse sobre arquitectura con las partes interesadas del negocio". IEEE Software . 33 (3): 13–19. doi :10.1109/MS.2016.67. S2CID  1309474.
  10. ^ K. Julisch et al., Compliance by design - Bridging the chasm between auditors and IT architects (Cumplimiento por diseño: cerrando la brecha entre auditores y arquitectos de TI) Archivado el 21 de septiembre de 2017 en Wayback Machine. Computers & Security 30(6-7): 410-426 (2011)
  11. ^ "Implementación de atributos de calidad del sistema".
  12. ^ A. Rotem-Gal-Oz, Patrones SOA, Manning, 2012.
Obtenido de "https://es.wikipedia.org/w/index.php?title=Requisitos_arquitectónicamente_importantes&oldid=1232804122"