Qué es una Arquitectura Software

La definición oficial de Arquitectura del Software en la IEEE Std 1471-2000 reza así: “La Arquitectura del Software es la organización fundamental de un sistema formada por sus componentes, las relaciones entre ellos y el contexto en el que se implantarán, y los principios que orientan su diseño y evolución”.

· La Arquitectura del Software es el diseño de más alto nivel de la estructura de un sistema, programa o aplicación y tiene la responsabilidad de:

o Definir los módulos principales

o Definir las responsabilidades de cada uno de estos módulos

o Definir la interacción que existirá entre dichos módulos:

§ Control y flujo de datos

§ Secuenciación de la información

§ Protocolos de interacción y comunicación

§ Ubicación en el hardware

· La Arquitectura del Software aporta una visión abstracta de alto nivel, posponiendo el detalle de cada uno de los módulos definidos a pasos posteriores del diseño.

· La Arquitectura representa la base de un sistema software y debe ser construida pensando en satisfacer las necesidades actuales y en proporcionar al software las capacidades necesarias para permitir su mantenimiento y evolución de acuerdo a las necesidades de negocio y a las solicitudes de los clientes

· La Arquitectura debe ser una respuesta no una imposición. Necesitamos soluciones para problemas reales, no inventar problemas para poder empatar con las nuevas soluciones

· El Arquitecto:

o https://unpocodejava.wordpress.com/2012/05/28/que-es-un-arquitecto-software/

o Se debe contar con un conjunto de habilidades y conocimientos para ejercer la rol de arquitecto: Cada escenario plantea retos, condiciones y necesidades diferentes

o El arquitecto software es el encargado de establecer a qué nivel, con qué estrategia y que herramientas son necesarias para realizar una implementación que satisfaga los requisitos funcionales y no funcionales de los sistemas

o El arquitecto debe ser una persona capaz de identificar las necesidades de los negocios, las habilidades de su equipo de trabajo y la viabilidad de las tecnologías disponibles para el desarrollo del software.

Suele compararse la labor de una Arquitectura Software con la construcción de un edificio, me gusta mucho el ejemplo de la Mansión Winchester:

Ahí va lo que salió!!

Pues bien, decidme: si comparamos la arquitectura software con la arquitectura de edificios, os habéis encontrado con alguna arquitectura como la de la Mansión Winchester? A que sí!!! 😀 😀

A %d blogueros les gusta esto: