Kendra ML Cooper La Universidad de Texas en Dallas, EE.UU
Un Estudio de Arquitectura de Software Enfoques
Kendra ML Cooper
La Universidad de Texas en Dallas, EE.UU.
Lirong Dai
La Universidad de Seattle, EE.UU.
Renee Steiner
Intervoice, Inc., EE.UU.
Rym Zalila Mili
La Universidad de Texas en Dallas, EE.UU.
En este capítulo se presenta un estudio de los enfoques de la arquitectura de software. Está dirigido a una amplia audienciade estudiantes, profesionales e investigadores, en particular, aquellos que pueden ser nuevas para el área de la arquitectura de software. El capítulo comienza con una breve historia de la arquitectura de software como una disciplina. Esto es seguido por un estudio de arquitectura de software enfoques establecidos y emergentes. En la sección sobre los enfoques establecidos conceptos dearquitectura de software se presentan, que incluyen visitas de software de arquitectura, estrategias de descomposición, lenguajes de descripción, y los patrones; Se proporcionan una visión general de dos enfoques establecidos (diseño estructurado y diseño orientado a objetos). En la sección sobre los enfoques emergentes, agente-, aspect- y enfoques orientado a componentes están incluidos. Para cada uno deestos enfoques una visión general, se presentan estudio de la literatura en la zona, y una discusión. El debate incluye temas de investigación actuales en la comunidad. Las conclusiones proporcionan un resumen del capítulo; futuras líneas de investigación siguen.
Copyright © 2009, IGI Global, distribuyendo en forma impresa o electrónica, sin la autorización por escrito de IGI Global estáprohibido.
Un Estudio de Arquitectura de Software Enfoques
INTRODUCCIÓN
La ingeniería de software tiene una serie de actividades establecidos utilizados en el desarrollo de sistemas que incluye la ingeniería de requisitos, diseño del software en múltiples niveles de abstracción, la implementación, las pruebas, y así sucesivamente. Una de las actividades de diseño es la creación de una arquitectura desoftware, lo que da cuenta de los requisitos funcionales y no funcionales para el sistema. Hoy en día, una arquitectura de software en general se entiende que es una colección de componentes, que tienen propiedades visibles externamente (es decir, los servicios prestados, las características de rendimiento, gestión de errores, uso de recursos compartidos, etc) y las relaciones entre loscomponentes (Abowd, 1998; Clements, 2003; IEEE 1471, 2000; Shaw y Garlan, 1996). El concepto de arquitectura de software va más allá de los algoritmos y estructuras de datos de la computación y se centra en el diseño y la especificación de organización bruto de todo el sistema y la estructura de control global;protocolos de comunicación, sincronización y acceso a los datos; asignación de funcionalidad aelementos de diseño; distribución física; la composición de los elementos de diseño; escala y el rendimiento y la selección entre alternativas de diseño.
La disciplina de la arquitectura de software tiene sus raíces en los primeros trabajos de Dijkstra (1968) y Parnas (1972), donde se describe la importancia de bien estructurado, o modular, sistema. La arquitectura término fue utilizado porBrooks y Iverson en la década de 1960 (1969); se definen como la "estructura conceptual de una computadora ... como se ve por el programador." Este trabajo ha hecho una clara distinción entre la descripción de lo que cada módulo debe hacer y su implementación, una distinción que permanece en su lugar hoy. Como la disciplina madurado, por temas en la arquitectura de software han recibido una atenciónconsiderable, incluyendo la definición de estilos arquitectónicos, o patrones, descripción arquitectura lenguajes y enfoques para analizar arquitecturas de software. Un amplio estudio de la historia de la disciplina está disponible en Shaw y Garlan (2006), que proporciona una
valiosa organización y presentación de los trabajos de arquitectura de software. Debido a su amplitud, sin embargo, las...
Regístrate para leer el documento completo.