You are on page 1of 6

DEFINICION DE INGENIERIA DEL SOFTWARE Una arquitectura de software es la estructura de estructuras de un sistema, la cual abarca componentes de software propiedades

externas visibles a estos componentes. POR QUE ES IMPORTANTE LA ARQUITECTURA 1. Porque las representaciones de la arquitectura del software facilita la comunicacin entre todas las partes interesada, en el desarrollo de un sistema basado en computadoras. 2. Destaca decisiones tempranas de diseo que tendra un profundo impacto de ingeniera. 3. Porque constituye un modelo relativamente pequeo e intelectualmente comprensible de cmo est estructurado el sistema y de cmo trabajan juntos los componentes. Aplicaciones monolticas Son aquellas aplicaciones en las que el software se estructura en grupos funcionales muy acoplados, involucrando los aspectos referidos a la presentacin, procesamiento y almacenamiento de la informacin. En una aplicacin monoltica las tres partes forman un todo y se ejecutan en la misma mquina. Resulta caro y los costos de mantenimiento son tambin altos. Una aplicacin monoltica duplica en cada computadora todos sus elementos: interfaz de usuario, lgica o reglas de negocio y acceso a datos. Es una nica aplicacin de software en niveles en los que la interfaz de usuario y cdigo de acceso a datos se combinan en un solo programa de una plataforma nica. Una aplicacin monoltica computacionales. es autnoma, independiente de otras aplicaciones

La aplicacin no solo es responsable de una determinada tarea si no que ejecuta un conjunto de tarea para completar una funcin en particular. Estas aplicaciones se asocian a veces con ordenadores mainframe. Una aplicacin monoltica tambin se le es llamada de una capa y los datos se encuentran mezclados o altamente mezclados lo que indica que no puede hacerse una separacin fsica o lgica para verificar si alguna de las partes puede ser reutilizable. En las aplicaciones monolticas la interfaz de usuario, la lgica de negocio y los datos forman un todo. Un ejemplo de esto tambin puede ser MS-DOS. Ventajas de las aplicaciones monolticas

1. Funcionan mas rpido 2. Fcil de desarrollar 3. Precisa de cierta potencia de procesamiento Desventajas 1. Requiera mayor hardware en las estaciones de trabajo 2. Son infinitamente mas lentos en el procesamiento de peticiones sencillas 3. Requiere habilitar el acceso real a la carpeta de datos para todos los usuarios de la aplicacin 4. Su actualizacin es mas costosa

5. No permite el acceso en lnea desde fuera de la red local o requieren de implementaciones de soluciones de conectividad muy costosa.

APLICACIONES CLIENTE/SERVIDOR Esta arquitectura consiste bsicamente en un cliente que realiza peticiones a otro programa (el servidor) que le da respuesta. Aunque esta idea se puede aplicar a programas que se ejecutan sobre una sola computadora es ms ventajosa en un sistema operativo multiusuario distribuido a travs de una red de computadoras. En esta arquitectura la capacidad de proceso est repartida entre los clientes y los servidores, aunque son ms importantes las ventajas de tipo organizativo debidas a la centralizacin de la gestin de la informacin y la separacin de responsabilidades, lo que facilita y clarifica el diseo del sistema. La separacin entre cliente y servidor es una separacin de tipo lgico, donde el servidor no se ejecuta necesariamente sobre una sola mquina ni es necesariamente un slo programa. Los tipos especficos de servidores incluyen los servidores web, los servidores de archivo, los servidores del correo, etc. mientras que sus propsitos varan de unos servicios a otros, la arquitectura bsica seguir siendo la misma. Una disposicin muy comn son los sistemas multicapa en los que el servidor se descompone en diferentes programas que pueden ser ejecutados por diferentes computadoras aumentando as el grado de distribucin del sistema.

La arquitectura cliente-servidor sustituye a la arquitectura monoltica en la que no hay distribucin, tanto a nivel fsico como a nivel lgico. La red cliente-servidor es aquella red de comunicaciones en la que todos los clientes estn conectados a un servidor, en el que se centralizan los diversos recursos y aplicaciones con que se cuenta; y que los pone a disposicin de los clientes cada vez que estos son solicitados. Esto significa que todas las gestiones que se realizan se concentran en el servidor, de manera que en l se disponen los requerimientos provenientes de los clientes que tienen prioridad, los archivos que son de uso pblico y los que son de uso restringido, los archivos que son de slo lectura y los que, por el contrario, pueden ser modificados, etc. Este tipo de red puede utilizarse conjuntamente en caso de que se est utilizando en una red mixta. En la arquitectura c/s el remitente de una solicitud es conocido como cliente. Sus caractersticas son: Es quien inicia solicitudes o peticiones, tienen por tanto un papel activo en la comunicacin (dispositivo maestro o amo). Espera y recibe las respuestas del servidor. Por lo general, puede conectarse a varios servidores a la vez. Normalmente interacta directamente con los usuarios finales mediante una interfaz grfica de usuario. Al contratar un servicio de redes , se tiene que tener en la velocidad de conexin que le otorga al cliente y el tipo de cable que utiliza , por ejemplo : cable de cobre ronda entre 1 ms y 50 ms. Al receptor de la solicitud enviada por cliente se conoce como servidor. Sus caractersticas son: Al iniciarse esperan a que lleguen las solicitudes de los clientes, desempean entonces un papel pasivo en la comunicacin (dispositivo esclavo). Tras la recepcin de una solicitud, la procesan y luego envan la respuesta al cliente Por lo general, aceptan conexiones desde un gran nmero de clientes (en ciertos casos el Nmero mximo de peticiones puede estar limitado). No es frecuente que interacten directamente con los usuarios finales. Servidores Dedicados: Solo para servicio de los clientes No dedicados: Son servidores y estaciones de trabajo ARQUITECTURA CLIENTE-SERVIDOR MEJORADA

Se aplica la lgica de negocios en BD, existen clientes pesados, aunque tambin no es un estndar. las conexiones a las BD se convierten en conexiones dedicadas, el rendimiento en esta arquitectura es mejor. Existen una alta administracin, baja escalabilidad, flexibilidad y portabilidad. Aplicaciones que utilicen Arquitectura cliente servidor mejorada Ejemplo: Los sistemas cliente/servidor estn construidos de tal modo que la base de datos puede residir en un equipo central, llamado servidor y ser compartida entre varios usuarios. Los usuarios tienen acceso al servidor a travs de una aplicacin de cliente o de servidor: En un sistema cliente/servidor de dos capas, los usuarios ejecutan una aplicacin en su equipo local, llamado cliente, que se conecta a travs de la red con el servidor que ejecuta SQL Server. La aplicacin de cliente ejecuta las reglas de la compaa y el cdigo necesario para presentar el resultado al usuario; tambin se conoce como cliente amplio. En un sistema cliente/servidor de varios componentes, la lgica de la aplicacin de cliente se ejecuta en dos capas: El cliente reducido se ejecuta en el equipo local del usuario y se encarga de presentar los resultados al usuario. La lgica de la compaa se encuentra en aplicaciones de servidor que se ejecutan en un servidor. Los clientes reducidos solicitan funciones a la aplicacin de servidor, que, a su vez, es una aplicacin multiproceso capaz de operar con varios usuarios simultneos. La aplicacin de servidor es la que abre las conexiones con el servidor de la base de datos y se puede ejecutar en el mismo servidor que la base de datos, o se puede conectar a travs de la red con otro servidor que opere como servidor de base de datos. ste es el escenario tpico de las aplicaciones de Internet. Por ejemplo, una aplicacin de servidor se puede ejecutar en un equipo con Microsoft Internet Information Services (IIS) y dar servicio a miles de clientes reducidos que se ejecuten en Internet o en una Intranet. La aplicacin de servidor utiliza un grupo de conexiones para comunicarse con una copia de SQL Server. SQL Server puede estar instalado en el mismo equipo que el IIS o en otro servidor de la red.

Arquitectura Cliente-Servidor Mejorada Lgica de negocios en BD Clientes pesados, no estndar. Conexiones dedicadas a la BD. Mejora en rendimiento

Alta administracin Baja escalabilidad Baja flexibilidad Baja portabilidad

ARQUITECURA DE 3 NIVELES Reutilizacin de la lgica de negocios para diferentes clientes o sistemas son aplicables en este enfoque, se mejora la escalabilidad, la flexibilidad de las aplicaciones. Existe una total independencia de la BD. La arquitectura de tres capas son:

Nivel

de

aplicacin

la diferencia de este nivel aplicado ahora en una arquitectura de tres capas es que solo tiene que trabajar con la semntica propia de aplicacin, sin tener que preocuparse de cmo esta implementado este ni de su estructura fsica. Nivel de dominio de la aplicacin.

En cambio este nivel se encarga de toda la estructura fsica y el dominio de aplicacin. algo muy importante y que es la mayor ventaja de esta arquitectura es que ahora nicamente se cambia la regla en el servidor de aplicacin y esta actuar en todos los clientes, cosa que ni suceda con la arquitectura en dos capas que si alguna regla se la cambia, se tena que ir a cada cliente a realizar el cambio. Nivel de repositorio. Sigue siendo la capa en donde se almacenan los datos y toda la informacin.

Las

herramientas

para

el

desarrollo

de

tres

capas

son:

visual basic en lo que se refiere a la capa de aplicacin sql server en lo que se refiere al repositorio de datos. mts en lo que se refiere al nivel del dominio de aplicacin

Aplicaciones que utilicen arq de 3 niveles: La arquitectura de tres niveles es lgica y no fsica. Se preocupa con las funciones y no con la implantacin.

La arquitectura puede ser utilizada para desarrollar sistemas Centralizados o Distribuidos. La arquitectura facilitar la distribucin de los componentes del sistema.

APLICACIN DE N CAPAS. En una aplicacin distribuida en n capas, los diferentes procesos estn distribuidos en diversas capas, no solo lgicas, sino tambin fsicas, los procesos se ejecutan en diferentes equipos, que pueden incluso recibir diferentes plataformas o sistemas operativos. Cada equipo posee una configuracin distinta y esta optimizada para realizar el papel que se le ha asignado dentro de la estructura de la aplicacin, de modo que tanto los recursos, como la eficiencia global del sistema se optimicen. El surgimiento de la tecnologa de componentes distribuidos es la clase de las arquitecturas de n capas, estos sistemas de computacin utilizan un numero de variables individuales que se comunican entre ellos utilizando estndares predefinidos de comunicacin para lograr la conexin con todos los usuarios y frameworks de comunicacin como: corba: (common object request broker architecture) del object management group (omg). dna : (distributed network applications) de microsoft (incluye com/dcom y com+ adems de mts, msmq, etc. ejb : (enterprise java beans) de sun microsystems xml : (extensible markup language) del world wide web consortium (w3 .net: de microsoft que incluye nuevos lenguajes como visual basic.net, c#.

You might also like