viernes, 31 de diciembre de 2010

Arquitectura de software

Arquitectura de software

Es la estructura o estructuras del sistema que comprende los componentes de software, las propiedades visibles de esos componentes y las relaciones entre ellos.

Objetivos

· Comprender y mejorar la estructura de las aplicaciones complejas.

· Reutilizar dicha estructura (o partes de ella) para resolver problemas similares.

· Planificar la evolución de la aplicación, identificando las partes mutables e inmutables de la misma, así como los costes de los posibles cambios.

· Analizar la corrección de la aplicación y su grado de cumplimiento respecto a los requisitos iniciales.

· Permitir el estudio de alguna propiedad específica del dominio.

Modelos

Modelos estructurales: Sostienen que la AS está compuesta por componentes, conexiones entre ellos y (usualmente) otros aspectos tales como configuración, estilo, restricciones, semántica, análisis, propiedades, racionalizaciones, requerimientos, necesidades de los participantes.

Modelos de framework: Su énfasis primario radica en la (usualmente una sola) estructura coherente del sistema completo, en vez de concentrarse en su composición.

Modelos dinámicos: Enfatizan la cualidad conductual de los sistemas. “Dinámico” puede referirse a los cambios en la configuración del sistema, o a la dinámica involucrada en el progreso de la computación, tales como valores cambiantes de datos.

Modelos de proceso: Se concentran en la construcción de la arquitectura, y en los pasos o procesos involucrados en esa construcción.

Modelos funcionales: Una minoría considera la arquitectura como un conjunto de componentes funcionales, organizados en capas que proporcionan servicios hacia arriba.

Marcos

Marcos de trabajo: Definen una arquitectura adaptada a las particularidades de un determinado dominio de aplicación, definiendo de forma abstracta una serie de componentes y sus interfaces y estableciendo las reglas y mecanismos de interacción entre ellos.

Marcos de trabajo de caja blanca: Que se extienden mediante herencia, concretamente mediante la implementación de las clases y métodos abstractos definidos como puntos de entrada.

Marcos de trabajo de caja de cristal: Admiten la inspección de su estructura e implementación, pero no su modificación ni extensión, excepto en los puntos de entrada.

Marcos de trabajos horizontales: Válidos para todos los dominios de aplicación concretados en un aspecto del sistema.

Marcos de trabajo verticales: Desarrollados específicamente para un dominio de aplicación.

Patrones de diseño

Un patrón es una solución probada que se puede aplicar con éxito a un determinado tipo de problemas que aparecen repetidamente en algún campo.

No hay comentarios:

Publicar un comentario