Вы находитесь на странице: 1из 5

Una aproximacin a La arquitectura de software

ALEXANDRA ABUCHAR PORRAS


UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS

RESUMEN
La estructura de este artculo est basada fundamentalmente en una aproximacin a la arquitectura de Software y organizado en cuatro partes: Parte 1: Antecedentes de la arquitectura del Software, situando la arquitectura del Software dentro de un contexto histrico identificando algunos personajes que contribuyeron a su organizacin. Parte 2: Definicin de arquitectura de Software y vistas diseo de la arquitectura de Software. La arquitectura de software debe describir diversos aspectos del mismo y la de manera ms comprensible es la utilizacin de las vistas. Parte 3. Aproximacin a algunas arquitecturas de Software ms utilizadas. Parte 4: Contiene las conclusiones de este artculo Palabras Clave arquitectura del Software, vistas del software, modelos de arquitectura,

Pero se tardaron tres dcadas y en 1992 se establece La dcada de 1990, creemos, ser la dcada de la arquitectura de software. Usamos el trmino arquitectura en contraste con diseo , para evocar nociones de codificacin, de abstraccin, de estndares, de entrenamiento formal (de los arquitectos de software) y de estilo. Es tiempo de re-examinar el papel de la arquitectura de software en el contexto ms amplio del proceso de software y de su administracin, as como sealar las nuevas tcnicas que han sido adoptadas [2]. Y es, en ese momento donde comienza un auge en el estudio de la arquitectura del software , mas sin embargo an est en una etapa formativa ya que falta consenso para ahondar en ella; ya que la arquitectura de software esta muy relacionada con otras disciplinas como son: el diseo de software , la reutilizacin , la elicitacin , arquitectura empresarial , ingeniera inversa , ingeniera y arquitectura de sistemas , calidad , etc. En el desarrollo y evolucin de la arquitectura de software , varios personajes y estudiosos del tema han aportado a su desarrollo: Mary Shaw , David Garlan , Edsger Dijkstra , David Parnas , Fred Brooks , Perry, Alexander Wolf , Paul Clements , Robert Allen , Christopher Alexander , Roy Fielding y muchos mas han permitido el avance y de la arquitectura de Software. Muchos de estos personajes establecen en 1994 como el ao de oro de la arquitectura de software , ya que se introducen nuevos conceptos y roles a la misma ; como el del arquitecto del software ,lenguajes de descripcin arquitectnica (ADLS), adems se moduralizan las de herramientas , diseo de diagramas y representacin semntica , tambin en 1995 Garlan y Perry aaden a la arquitectura de software: principios y reglas que se realizan en su diseo y su evolucin en el tiempo . Luego en 1996 , Paul Clements ,

Primer Autor: Alexandra Abuchar Porras, alexandraabuchar@yahoo.com.mx, Ingeniera de Sistemas, Especialista en Docencia Universitaria , Especialista en Multimedia para la Docencia , Profesor, Universidad Distrital Francisco Jos de Caldas

INTRODUCCIN Antecedentes de la arquitectura del Software La ingeniera del software como disciplina es muy reciente en 1968 [1]. Bauer y Distktra realiza una reflexin sobre la necesidad de un mtodo que estructurara el Software desde el mismo momento de empezar a programar y solo un ao mas tarde en la OTAN: Sharp, establece que existe algo que va evolucionando con el mismo quehacer del desarrollo de software y establece que existe una diferencia entre ingeniera y la arquitectura del software.

argumenta que La Arquitectura de Software es, una vista del sistema que incluye los componentes principales del mismo, la conducta de esos componentes segn se la percibe desde el resto del sistema y las formas en que los componentes interactan y se coordinan para alcanzar la misin del sistema. La vista arquitectnica es una vista abstracta, aportando el ms alto nivel de comprensin y la supresin o diferimiento del detalle inherente a la mayor parte de las abstracciones [3]-[4] En el 2000 se presenta el modelo Rest (arquitectura de software para sistemas hipermedias distribuidos como la Web [5]. Para expresarlo de una manera mas sencilla es utilizado actualmente para describir cualquier interfaz web simple como: Extensible Markup Language ( XML ) y HyperText Transfer Protocol HTTP. La definicin estandarizada de Arquitectura de Software La Arquitectura del Software es la organizacin fundamental de un sistema formada por sus componentes, las relaciones entre ellos y el contexto en el que se implantarn, y los principios que orientan su diseo y evolucin [6]

Por lo tanto se puede determinar que la arquitectura del Software tiene su eje fundamental en la Ingeniera del Software, y en particular en el diseo de Software, por consiguiente la arquitectura del software esta orientada a la organizacin de alto nivel del sistema de software a construir; incluyendo las etapas de : descripcin y anlisis de propiedades relativas a su estructura global, de la comunicacin y sus protocolos , de la distribucin fsica del sistema y sus componentes. El diseo arquitectnico del software es hoy en da lo que se conoca tradicionalmente como diseo preliminar o diseo de alto nivel, frente al nivel de diseo detallado. Este tambin define los tems para desarrollar la arquitectura de software representados as: Seleccin de la arquitectura, Presensacin de la arquitectura, Evaluacin, Anlisis de la misma Para establecer una proyeccin evolutiva se podra representar en la siguiente figura.

Representacin bsica evolutiva de la arquitectura del software

Definicin de arquitectura de Software y vistas diseo de la arquitectura de Software. La palabra arquitectura trae el concepto de estructura y organizacin , y en el software no es distinto a este concepto la arquitectura del software , se podra entrar a decir que la arquitectura del software constituye un modelo intelectualmente comprensible de forma en que esta estructurado el sistema y como se relacionan sus diferentes componentes. Jacobson define la arquitectura del software la . Como un edificio, un sistema de software es una nica entidad, pero al arquitecto del software y a los desarrolladores les resulta til presentar el sistema desde diferentes perspectivas para comprender mejor el diseo. Estas perspectivas son vistas del modelo del sistema. todas juntas representan la arquitectura [7] En la arquitectura del software , siguiendo las ideas de Parnas , reconocen la necesidad de ver el sistema con diversos tipos de vistas arquitectnicas entre ellas tenemos como lo muestra la figura :

Hasta aqu no se ha ahondado el tema de metodologas y modelamiento ya que son temas de otro articulo mas sin embargo citaremos, como metodologa RUP ingls Rational Unified Process) , y como modelamiento el UML, Lenguaje Unificado de Modelamiento. Conceptos Bsicos del Lenguaje Unificado de
Modelado. Es un leguaje visual orientado al modelado de sistemas facilitando la notacin1 que visualiza la complejidad de un sistema , proyecto u organizacin, UML es la recopilacin de muchas metodologas , como lo muestra la siguiente figura.

Meyer Pre. Y Post Condiciones

Harel Diagrama de estado

Gamma
Frameworks y Patrones

Modelo De Booch

UML

HP Fusin Descripcin de operacin y numeracin de mensajes

Rumbaugh

OOSE

Conceptual
|

Diseo
OMT

Jacobson

Vistas del Software

El Lenguaje Unificado de Modelado , permite ver el sistema desde varios puntos de vistas segn Booch, J. Rumbaugh, I. Jacobson. Llamados los tras amigos establecen estas vistas as: vista conceptual,

vista de diseo, vista de implementacin, vista fsica y de despliegue. La representacin se realiza por medio de diagramas su conjunto y su conjunto da la arquitectura del sistema [8].

Implementacin

Fsica

Vistas arquitectnicas segn UML Vista Conceptual: En esta vista se determinan los requerimientos funcionales y no funcionales del sistema: se pautan las reglas del negocio y representa los subsistemas y mdulos.

Entonces el Rol del arquitecto de software es muy importante en el negocio ya que debe lograr la conceptualizacin del negocio y llevarlo a las vistas de alto nivel para luego analizar , modelar, disear, implementar y validar la arquitectura de software a utilizar la cual va de acuerdo a los requerimientos o elicitacin junto con las restricciones del negocio.

Forma de representar , con smbolos o caracteres el conjunto de artefactos que configuran un dominio restringido , siguiendo una reglas de ordenacin concretas

ya que estn fuertemente ligados y pueden modelar la arquitectura si se utilizara estos anteriores estara representados en el modelado del negocio, en los procesos del negocio, , diagramas de casos de uso , diagramas de actividades , entidades del negocio y procesos del mismo. Vista de diseo: En esta vista se mapean las relaciones de manera totalmente independiente de detalles tcnicos y como funcionara en la implementacin en su modelamiento se puede ver en el diagrama de clases. Vista de implementacin: Se ilustra el mapeo de los paquetes y clases del modelado de diseo a subsistemas y componentes fsicos Vista Fsica: Muestra la distribucin del procesamiento entre los distintos equipos que integran la solucin

Arquitectura de software monoltica: Sistemas altamente acoplados dentro de la misma estructura es un solo programa que integra todas las funcionalidades, como son la GUI , lgica de la aplicacin y el repositorio de datos. Mas sin embargo son sistemas muy eficientes ya que no producen cambios de contexto, mas sin embargo son muy difciles de depurar, de ampliar . En esta arquitectura podemos existen tres capas y un solo nivel decir que

Capa lgica de la presentacin Capa acceso a datos o recursos

Arquitectura del software Cliente Servidor. Diagramas lenguaje de modelado Unificado Diagramas2 de comportamiento Diagramas de interaccin Diagramas de estructura Se origina por la necesidad de realizar operaciones de manera ms eficiente, y se separo la capa de presentacin a otro nivel por lo tanto es una relacin entre procesos que se ejecutan en maquinas diferentes la del servidor y la del cliente. En esta arquitectura podemos existen tres capas y dos niveles decir que

Aproximacin a algunas arquitecturas de Software La arquitectura del software trae en si una variedad de terminologa tal como: estilos, patrones antipatrones , lenguajes arquitectnicos, escenarios y los diferentes modelos, los mas usados se tienen. Monolticas Cliente servidor Tres niveles o capas N- capas

Nota: Es importante diferenciar lo que e s una capa y lo que es nivel en lo referente a la arquitectura del software. Capa se maneja
para referenciar las distintas parte en que una aplicacin desde el punto de vista lgico; y nivel corresponde a la forma fsica en que se organiza una aplicacin

Diagrama sirve para documentar un aspecto del sistema; para contar algo importante del modelo.

Arquitectura de software Modelo 3 capas:

momento de la concepcin del negocio y su posterior desarrollo en un proyecto de software. Adems esta disciplina involucra el factor humano y su organizacin a la hora de realizar el proyecto incluyendo al cliente y por ende a todo el grupo de desarrollo, originando esto organizacin metodolgica en el equipo de trabajo y dando un rol importante el arquitecto de software , ya que es el quien conoce , o maneja las reglas del negocio, y centra su diseo en la representacin de los componentes de datos de la arquitectura.

La capa de acceso a datos

La capa de datos

Se caracteriza por el desacoplar aun ms el software en su concepcin, La capa presentacin reside en el cliente, la capa lgica reside en el nivel intermedio, y la capa de datos reside en el nivel de recursos. Cabe connotar que este modelo separa el nivel lgico de datos conocidos como recursos, por lo que es fcilmente escalable. Arquitectura N capas: Todo este desacople permite que el sistema sea mas confiable , robusto que los procesos sean hacia afuera , haciendo el software mas escalable , seguro etc. La arquitectura de N-capas presenta al menos tres capas separadas, cada una de ellas con su responsabilidad y est localizada en diferentes servidores por lo general.

Referencias [1] Ian Somerville, ingeniera del software sptima edicin ao 2006 [2] IEEE Std 1471-2000 IEEE Recommended Practice for Architectural Description of Software-Intensive Systems Description [3]-[4] Len Bass , Paul Clements, Rick Kazman.. 2003. Software Architecture in Practice, 2 edicin. [5]Roy T. Fielding , "Architectural Styles and the Design of Network-based Software Architectures", PhD thesis, UC Irvine , 2000 . [6]Dewayne Perry, Alexander Wolf Foundations for the study of software architecture 1992. [7] Ivar Jacobson , Martin Griss & Patrik Jonsson , la Arquitectura , el Proceso y la Organizacin para el xito del Negocio, Addison Wesley 1997. [8] El Lenguaje Unificado de Modelado. G. Booch, J. Rumbaugh , I. Jacobson. Addison Wesley Iberoamericana , 1999.

Conclusiones Este articulo recoge una conceptos que ilustran diferentes aspectos sobre La arquitectura del Software es una disciplina muy reciente en lo referente a su estudio, ha permitido un desarrollo logrando una estructura de cocimiento, mas sin embargo, aun falta conceso para facilitar su aplicabilidad , pero se ha determinado que surge desde el

Вам также может понравиться