Mostrando entradas con la etiqueta Escenarios. Mostrar todas las entradas
Mostrando entradas con la etiqueta Escenarios. Mostrar todas las entradas

viernes, 6 de octubre de 2017

Arquitectura de software - Parte 1

¡Hola a todos!

Tal como mencioné en el post anterior hoy comenzaré con un acercamiento al tema Arquitectura de software. Como introducción voy a compartir una definición de arquitectura, siguiendo por cual es su propósito, quienes la influencian y finalmente el rol del arquitecto.

Tiempo de lectura estimado: 5-6 minutos.

Una de las definiciones modernas de arquitectura de software y que a mi entender es simple y clara es la del Software Engineering Institute (SEI) de la Universidad de Carnegie-Mellon “...es la estructura o estructuras del sistema, que comprende elementos de software, las propiedades visibles externamente de dichos elementos y la relación entre ellos”, basada en el libro Software Architecture in Practice.
Desde una visión no tan conceptual, se puede decir que la arquitectura es estructura y comportamiento, se enfoca en elementos significativos o relevantes, se presenta a un alto nivel de abstracción, está presente en cualquier sistema y balancea necesidades de los involucrados.
Su propósito es comprender el sistema y organizar el desarrollo, fomentar la reutilización de componentes y facilitar la evolución del sistema

Generalmente, la arquitectura se ve influenciada por distintos factores que afectan significativamente tanto su definición como su mantenimiento, algunos de ellos se pueden clasificar en:
  • los stakeholders (involucrados)
  • la organización que desarrolla el sistema
  • el ambiente tecnológico 
  • la experiencia del arquitecto