domingo, 22 de enero de 2012

Arquitectura del software

Ayer estuve en mi clase de diplomado de software y tratamos un tema muy interesante “la arquitectura de software”, para los que entienden un poquito del software y de todas las complicaciones que se pueden presentar a la hora de la creación del mismo, sabemos que en ocasiones la tarea es tan enredada que necesitamos la ayuda de modelos y patrones para guiarnos y así lograr un producto de calidad.

Definiremos de manera sencilla cada concepto tratado.
El proceso de creación de software es complejo por esto no es raro encontrarnos con que los conceptos relacionados se tornen confusos.

Arquitectura del software

Existe un gran número de definiciones de la arquitectura del software pero entre las más relevantes podemos encontrar la definición de Clements que nos dice:

“La AS es, a grandes rasgos, una vista del sistema que incluye los componentes principales del mismo, la conducta de esos componentes según se la percibe desde el resto del sistema y las formas en que los componentes interactúan y se coordinan para alcanzar la misión del sistema. La vista arquitectónica es una vista abstracta, aportando el más alto nivel de comprensión y la supresión o diferimiento del detalle inherente a la mayor parte de las abstracciones.”

También encontramos la definición de la IEEE Std 1471-2000 que dice: “La Arquitectura de Software es la organización fundamental de un sistema encarnada en sus componentes, las relaciones entre ellos y el ambiente y los principios que orientan su diseño y evolución”.

Rol del arquitecto de software
El arquitecto de software debe ser una persona con amplios conocimientos técnicos, algunas de sus responsabilidades es estar al tanto de los diseños, la arquitectura y los asuntos técnicos de los proyectos.
El rol del arquitecto de software incluye las siguientes tareas.
·         Definición de las vistas de la arquitectura de una aplicación.
·         Dar soporte técnico-tecnológico a desarrolladores, clientes y expertos en negocios.
·         Conceptualizar y experimentar con distintos enfoques arquitectónicos;
·         Crear documentos de modelos y componentes y especificaciones de interfaces,
·         validar la arquitectura contra requerimientos, suposiciones.
·         Tener una dosis de estrategia y política.

Todas estas tareas son tan importantes para el inicio del proyecto que si algo sale mal acá se ve en peligro todo el proyecto.

Nuestra profesora menciono que iniciar un proyecto software sin los diseños, documentos, modelos y requerimientos. Es como si la construcción de un edificio se iniciara sin los planos y los estudios del terreno.

No hay comentarios:

Publicar un comentario