Está en la página 1de 9

ARQUITECTURA DE SOFTWARE

las estructuras de un sistema, compuestas de elementos con propiedades visibles de forma


externa y las relaciones que existen entre ellos.
Arquitectura de software. La arquitectura de software es un conjunto de patrones que
proporcionan un marco de referencia necesario para guiar la construccin de un
software,permitiendo a los programadores, analistas y todo el conjunto de desarrolladores
del software compartir una misma lnea de trabajo y cubrir todos los objetivos y
restricciones de la aplicacin.Es considerada el nivel ms alto en el diseo de la
arquitectura de un sistema puesto que establecen la estructura,funcionamiento e interaccin
entre las partes del software.
COMPONENTES E INTERACCIONES
COMPONETENTES
La arquitectura de software se compone por:

clientes y servidores.

bases de datos.

filtos.

niveles en sistemas jerrquico.

INTERACCIONES
Entre los componentes de la arquitectura de software existe un conjunto de interacciones
entre las que sobresalen :

llamadas a procedimientos.

comportamiento de variables.

protocolos cliente servidor.

transmicin asncrona de eventos.

CARACTERSTICAS
La arquitectura de software forma la columna vertebral para construir un sistema de
software,es en gran medida responsable de permitir o no ciertos atributos de calidad del
sistema entre los que se destacan la confiabilidad y el rendimiento del software.Adems es
un modelo abstracto reutilizable[1] que puede transferirse de un sistema a otro y que
representa un medio de comunicacin y discusin entre participantes
del proyecto,permitiendo as la interaccin e intercambio entre los desarrolladores con el
objetivo final de establecer el intercambio de conocimientos y puntos de vista entre ellos.

IMPORTANTANCIA LA ARQUITECTURA DE SOFTWARE


La arquitectura de software es de especial importancia ya que la manera en que se
estructura un sistema tiene un impacto directo sobre la capacidad de este para satisfacer lo
que se conoce como los atributos de calidad del sistema. Ejemplos de atributos de calidad
son el desempeo, que tiene que ver con el tiempo de respuesta del sistema a las peticiones
que se le hacen, la usabilidad, que tiene que ver con qu tan sencillo les resulta a los
usuarios realizar operaciones con el sistema, o bien la modificabilidad, que tiene que ver
con qu tan simple resulta introducir cambios en el sistema. Los atributos de calidad son
parte de los requerimientos (no funcionales) del sistema y son caractersticas que deben
expresarse de forma cuantitativa. No tiene sentido, por ejemplo, decir que el sistema debe
devolver una peticin de manera rpida, o presentar una pgina ligera, ya que no es
posible evaluar objetivamente si el sistema cubre o no esos requerimientos.
la arquitectura de software juega un papel fundamental para guiar el desarrollo. Una de las
mltiples estructuras que la componen se enfoca en partir el sistema en componentes que
sern desarrollados por individuos o grupos de individuos. La identificacin de esta
estructura de asignacin de trabajo es esencial para apoyar las tareas de planeacin del
proyecto.
Finalmente, los diseos arquitectnicos que se crean en una organizacin pueden ser
reutilizados para crear sistemas distintos. Esto permite reducir costos y aumentar la calidad,
sobre todo si dichos diseos han resultado previamente en sistemas exitosos.
MODELOS O VISTAS
Toda arquitectura de software debe describir diversos aspectos del software. Generalmente,
cada uno de estos aspectos se describe de una manera ms comprensible si se utilizan
distintos modelos o vistas. Es importante destacar que cada uno de ellos constituye una
descripcin parcial de una misma arquitectura y es deseable que exista cierto solapamiento

entre ellos. Esto es as porque todas las vistas deben ser coherentes entre s, evidente dado
que describen la misma cosa.
Cada paradigma de desarrollo exige diferente nmero y tipo de vistas o modelos para
describir una arquitectura. No obstante, existen al menos tres vistas absolutamente
fundamentales en cualquier arquitectura:

La visin esttica: describe qu componentes tiene la arquitectura.

La visin funcional: describe qu hace cada componente.

La visin dinmica: describe cmo se comportan los componentes a lo largo del


tiempo y como interactan entre s.

Las vistas o modelos de una arquitectura de software pueden expresarse mediante uno o
varios lenguajes. El ms obvio es el lenguaje natural, pero existen otros lenguajes tales
como losdiagramas de estado, los diagramas de flujo de datos, etc. Estos lenguajes son
apropiados nicamente para un modelo o vista. Afortunadamente existe cierto consenso en
adoptar UML(Unified Modeling Language, lenguaje unificado de modelado) como
lenguaje nico para todos los modelos o vistas. Sin embargo, un lenguaje generalista corre
el peligro de no ser capaz de describir determinadas restricciones de un sistema de
informacin (o expresarlas de manera incomprensible).
TIPOS DE ARQUITECTURAS
Para utilizar la arquitectura de software se sigue un conjunto de patrones
arquitectnicos,entre los cuales podemos encontrar:

Cliente-Servidor

Blackboard.

Modelo entre capas.

Intrprete.

Orientado a servicios.

NIVELES DE UN DISEOS DE SOFTWARE


El diseo de software tiene varios niveles los cuales estn relacionados entre s,cada nivel
tiene sus propios problemas,tcnicas de anlisis y componentes los que pueden ser simples
o complejos,reglas de composicin las cuales permiten construir componentes complejos.
MODELOS DE LA ARQUITECTURA DE SOFTWARE
La arquitectura de software cuenta con varios modelos,ellos son:
Modelos estructurales
Son similares a la vista estructural, pero su nfasis primario radica en la (usualmente una
sola) estructura coherente del sistema completo, en vez de concentrarse en su composicin.
Los modelos de framework a menudo se refieren a dominios o clases de problemas
especficos. El trabajo que ejemplifica esta variante incluye arquitecturas de software
especficas de dominios, como CORBA, o modelos basados en CORBA, o repositorios de
componentes especficos, como PRISM.
Modelos dinmicos
Enfatizan la cualidad conductual de los sistemas ,Dinmico puede referirse a los cambios
en la configuracin del sistema, o a la dinmica involucrada en el progreso de
la computacin, tales como valores cambiantes de datos.
Modelos de proceso
Se concentran en la construccin de la arquitectura, y en los pasos o procesos involucrados
en esa construccin. En esta perspectiva, la arquitectura es el resultado de seguir un
argumento (script) de proceso. Esta vista se ejemplifica con el actual trabajo
sobre programacin de procesos para derivar arquitecturas.

NIVELES DEL DISEO DE SOFTWARE


ARQUITECTURA. Los aspectos de diseo involucran la asociacin de la capacidad de
todo el sistema con componentes. Los componentes son mdulos y la interconexin entre
los mdulos se maneja de maneras diferentes. La composicin est orienta hacia
subsistemas.

CDIGO. El diseo involucra algoritmos y estructuras de datos. Los componentes son


primitivas de lenguajes de programacin, tales como nmeros, caracteres, etc. Los
mecanismos de composicin son arreglos, registros, procedimientos, etc.
EJECUTABLE. El diseo involucra mapas de memoria, arreglos de datos, asignaciones
de registros, etc. Los componentes son patrones de bits soportados por el hardware y las
composiciones se escriben en lenguaje de mquina.

Modelo de Vistas de Arquitectura 4+1

Ilustracin del Modelo de Vistas de Arquitectura 4+1

4+1 es un modelo diseado por Philippe Kruchten para "describir la arquitectura de sistemas
software, basados en el uso de mltiples vistas concurrentes". 1 Las vistas suelen describir el
sistema desde el punto de vista de diferentes interesados, tales como usuarios finales,
desarrolladores o directores de proyecto. Las cuatro vistas del modelo son: vista lgica, vista
de desarrollo, vista de proceso y vista fsica. Adems, una seleccin de casos de uso o
escenarios suele utilizarse para ilustrar la arquitectura sirviendo como una vista ms. Por ello
el modelo contiene 4+1 vistas:1

Vista lgica : La vista lgica est enfocada en describir la estructura y funcionalidad


del sistema. Los diagramas UML que se utilizan para representar esta vista son
los Diagrama de Clase, Diagrama de Comunicacin, Diagrama de Secuencia.2

Vista de desarrollo : La vista de desarrollo ilustra el sistema de la perspectiva del


programador y est enfocado en la administracin de los artefactos de software. Esta vista
tambin se conoce como vista de implementacin. Utiliza el Diagrama de
Componentes UML para describir los componentes de sistema. Otro diagrama UML que
se utiliza en la vista de desarrollo es elDiagrama de Paquetes.2

Vista de proceso : La vista de proceso trata los aspectos dinmicos del sistema,
explica los procesos de sistema y cmo se comunican. se enfoca en el comportamiento
del sistema en tiempo de ejecucin. La vista considera aspectos de concurrencia,
distribucin, rendimiento, escalabilidad, etc. En UML se utiliza el Diagrama de
Actividad para representar esta vista.2

Vista fsica : La vista fsica describe el sistema desde el punto de vista de un


ingeniero de sistemas. Est relacionada con la topologa de componentes de software en
la capa fsica, as como las conexiones fsicas entre estos componentes. Esta vista
tambin se conoce como vista de despliegue. En UML se utiliza el Diagrama de
Despliegue para representar esta vista.2

Escenarios : La descripcin de la arquitectura se ilustra utilizando un conjunto


de casos de uso, o escenarios lo que genera una quinta vista. Los escenarios describen
secuencias de interacciones entre objetos, y entre procesos. Se utilizan para identificar y
validar el diseo de arquitectura. Tambin sirven como punto de partida para pruebas de
un prototipo de arquitectura. Esta vista es tambin conocida como vista de casos de uso.

EL ESTADO ACTUAL DE LA TECNOLOGA WEB


Es realmente notorio el impacto creciente de Internet en todos los aspectos de la Sociedad
de la Informacin. En particular, las implicaciones sociolgicas del advenimiento de
Internet revisten una importancia especial. Internet representa un estadio muy avanzado en
el contexto de la rpida evolucin de las tecnologas de comunicaciones e informtica; a
este respecto, no hay que perder de vista el hecho de que esta evolucin ha tenido lugar
exhibiendo
una
notoria
caracterstica:
la
digitalizacin.
En el mbito de Internet -igual que sucede en otras reas de las tecnologas de la
informacin- revisten una relevancia especial los problemas relativos a bases de datos. En
particular, cabe subrayar la importancia creciente del llamado mining (refinamiento o
seleccin
)
de
datos.
A ttulo de ejemplo con respecto a bases de datos, podemos mencionar los sistemas de

informacin cultural. A travs de estos se puede acceder por medio de Internet a un


patrimonio documental constituido por descripciones de documentos y copias digitales de
dichos documentos. As, este patrimonio puede estar custodiado por los centros de una red
creada al efecto. Esta red surge con el propsito de establecer una coordinacin continua
entre sus miembros a fin de mejorar procedimientos y metodologas, as como permitir el
desarrollo
de
proyectos
cooperativos.
De este modo, es posible el acceso a inventarios de colecciones de archivo, a catlogos de
monografas , colecciones de revistas, a versiones digitales de documentos primarios de
todo tipo y, algunas veces, acceso a transcripciones de estos documentos.
En lo que sigue, pasaremos revista al estado actual de la tecnologa Web, describiendo los
aspectos fundamentales relacionados con la WWW y las redes sociales, as como los
aspectos relativos a mining de datos para inteligencia de la Web. En especial, haremos
nfasis en la temtica relativa al mining de datos para inteligencia de la Web. En lo
referente a este tipo de mining de datos, hay que decir que, a medida que los investigadores
continen desarrollando tcnicas de refinamiento de datos, la tecnologa de mining de datos
para inteligencia de la Web desempear un papel de importancia creciente para satisfacer
los retos relativos al desarrollo de la Web inteligente. En este marco de referencia, las
cuestiones relativas a motores de bsqueda, indexado en general as como a XML y HTML
cobran
una
importancia
singular.
Consideraciones
generales
Es casi ocioso hablar del crecimiento imparable de Internet y de la elevada velocidad a la
que tiene lugar dicho crecimiento. En este contexto se inscriben los aspectos ms notorios
del comercio electrnico y de la Sociedad de la Informacin. Esta se puede concebir como
una sociedad de economa digital que, a grandes rasgos, se debe constituir en la generacin
de
un
entorno
avanzado
y
favorable
para
los
individuos.
Podemos afirmar que esta sociedad de economa digital ofrece el avance cientfico como
capa subyacente. De hecho, la digitalizacin de este tipo de sociedad se puede considerar
inscrita en el avance de la ciencia puesto que, hoy da, ciencia y tecnologa son conceptos
suficientemente relacionados entre s, de forma que se puede llegar a considerarlos
indistintamente. Es cierto que el avance cientfico no se puede emplear en contra del
individuo; de lo contrario, dicho avance perdera el sentido de su propia concepcin. Un
nuevo entorno, basado en una economa digital de la que obviamente no se tienen
referencias histricas, implica un riesgo suficientemente elevado de que se instauren
mecanismos que podramos calificar de antidemocrticos, cuya potencia deriva
principalmente de que se desenvuelven en un medio(la tecnologa), que resulta asequible a
pocos y que muy poco tiene que ver, dada su complejidad, con el sentido comn que ha
caracterizado
a
los
entornos
industriales
que
nos
han
precedido.
En otras palabras, no se trata de reconciliar tecnologa y sociedad o bien tecnologa y
democracia, como se ha venido diciendo. La tecnologa/ciencia constituye el motor del
avance del individuo y de la sociedad; de lo que se trata es que la sociedad pueda controlar

el uso que se hace de la tecnologa. A este respecto, la tecnologa Web es un ejemplo


significativo de lo que estamos afirmando. La tecnologa/ciencia constituye el motor del
avance del individuo y, en el contexto de la Web, es evidente que la tecnologa est
representada por la informtica y la electrnica de comunicaciones.
Est claro que Internet presenta una naturaleza intrnsicamente global; de hecho, desde la
concepcin de Internet, surge este enfoque global que ha ido aumentando sin cesar a
medida que aumenta el crecimiento de la propia Red. Precisamente, es ah donde radica lo
que se podra denominar la ventaja competitiva. De esta forma, mediante Internet las
fronteras entre pases desaparecen, a bajo precio y con mnima infraestructura de usuario.
Otro aspecto ligado a Internet es el del mining de datos. Las estrategias de mining de datos
permiten identificar las posibles relaciones existentes dentro de grandes volmenes de
informacin. Ello est relacionado con el mining de datos para inteligencia de la Web; en
esta problemtica, juegan un importante papel los motores de bsqueda. La informacin
almacenada en la Web da lugar a una problemtica que presenta un significativo reto, de
forma que los datos resultan ms sofisticados y dinmicos que las bases de datos
comerciales de informacin.

También podría gustarte