Está en la página 1de 6

Ingeniera de Software

Captulo 12

Resolucin de ejercicios del libro de Somerville

Miguel Betancourt Alexis Tacuri Fernando Salas

03/12/2013

Ingeniera de Software

Captulo 12
12.1 Explique por qu los sistemas distribuidos son intrnsecamente ms escalables que los sistemas centralizados. Cules son los Lmites ms probables de la escalabilidad del sistema? Un sistema distribuido es escalable si sigue siendo eficaz como el nmero de usuarios y / o recursos aumento Control de costos de los recursos o El nmero de usuarios aumenta Control de la prdida de rendimiento o Aumenta el nmero de usuarios o Estructuras jerrquicas tienen mejores tiempos de bsqueda que las estructuras lineales Prevencin de los recursos o Difcil de predecir Evitar los cuellos de botella de rendimiento o Los recursos se utilizan frecuentemente o Descentralizar algoritmos.

12.2. Cules la diferencia fundamental entre una aproximacin de cliente rico y una de cliente ligero para el desarrollo de sistemas cliente servidor? Explique porqu el uso de Java como lenguaje de implementacin atena la diferencia entre estas aproximaciones. En un sistema de cliente rico, parte del procesamiento de aplicaciones se realiza en el cliente, mientras que en un sistema de cliente ligero slo se muestra la interfaz de usuario en el cliente y todo el procesamiento de la solicitud se lleva a cabo en el servidor. Java borra la distincin, ya que permite el desarrollo de applets que pueden ser descargados en el cliente en tiempo de ejecucin. Dependiendo de la funcionalidad del applet, esto permite un grado de control sobre el procesamiento que se lleva a cabo en el cliente 12.3 Su cliente quiere desarrollar un sistema para almacenar informacin en donde los distribuidores pueden acceder a la informacin de las compaas, y pueden evaluar varios escenarios de inversin usando un sistema de simulacin. Cada distribuidor usa esta simulacin de forma diferente, de acuerdo con su experiencia y el tipo de almacenes con los que trabaja. Sugiera una arquitectura cliente-servidor para este sistema que muestre dnde se localiza la funcionalidad. Justifique el modelo cliente-servidor que usted ha elegido. Dado que la simulacin se lleva a cabo de manera diferente entre los distribuidores y todas las partes cruciales son los datos de cada poblacin y de informacin de la compaa, es eficaz el desarrollo de un modelo de cliente-gordo donde el servidor guarda los datos y de la aplicacin se encuentra en el escritorio del usuario. Es un mtodo rpido donde el usuario puede solicitar un conjunto de datos consistentes y simular que bajo la aplicacin que reside en el equipo de un usuario.

Ingeniera de Software

12.4 Haciendo referencia al modelo de aplicacin mostrado en la Figura 12.4, comente los problemas que podran tener lugar al convertir un sistema heredado de la dcada de los 80 que utiliza un mainframe para procesamiento de plizas de seguros a una arquitectura cliente-servidor.

Un problema podra surgir porque no hay una clara separacin entre las presentaciones, capas de procesamiento de solicitud y / o gestin de datos. En sistemas ms antiguos por lo general estn todos entrelazados y puede ser difcil separar estos sistemas para producir la separacin requerida. La falta de la documentacin del sistema y el sistema obsoleto que ya no se utiliza puede llevarnos a un problema de entender el flujo del programa.

12.5. Cules son las facilidades bsicas que puede proporcionar un intermediario de peticiones de objetos? El Object Request Broker (ORB) gestiona la interaccin entre clientes y servidores. Esto incluye las responsabilidades de computacin distribuida de la ubicacin, las referencias y la 'maniobra' de los parmetros y resultados.

Ingeniera de Software

La especificacin CORBA define una arquitectura de interfaces y servicios que deben ser prestados por el ORB, no hay detalles de la implementacin. Estos son componentes modulares tan diferentes implementaciones se podra utilizar, satisfacer las necesidades de diferentes plataformas. El ORB gestiona las interacciones entre clientes e implementaciones de objetos. Los clientes se demandan a las peticiones e invocar mtodos de objeto implementaciones. 12.6 Explique por qu el uso de objetos distribuidos con un intermediario de peticiones de objetos simplifica la implementacin de sistemas cliente-servidor escalable. Ilustre su respuesta con un ejemplo. En un sistema de cliente-gordo, parte del procesamiento de aplicaciones se realiza en el cliente, mientras que en un sistema de cliente delgado slo se muestra la interfaz de usuario en el cliente y todo el procesamiento de la aplicacin se lleva a cabo en el servidor. Java borra la distincin, ya que permite el desarrollo de applets que se pueden descargar en el cliente en tiempo de ejecucin. Dependiendo de la funcionalidad del applet, esto permite un grado de control sobre el procesamiento que se lleva a cabo en el cliente. El uso de objetos distribuidos y un ORB simplifica la implementacin de sistemas escalables ya que es muy fcil de agregar servidores adicionales en la forma de objetos distribuidos en el sistema. Estos se pueden introducir sin perturbar otras partes del sistema. Un ejemplo podra ser un servidor web que puede ser fcilmente replicado como el nmero de usuarios aumenta 12.7 Cmo se usa el IDL de CORBA para soportar comunicaciones entre objetos que han sido implementados en diferentes lenguajes de programacin? Explique por qu esta aproximacin puede ocasionar problemas de rendimiento si hay diferencias sustanciales entre los lenguajes usados para la implementacin de los objetos. CORBA IDL crear un formato estndar para ser utilizado entre los lenguajes de programacin. Por lo tanto la definicin, desplazamiento y la orientacin de cada una de las partes se define por el IDL. A continuacin, el compilador de IDL traducir esa informacin en las estructuras correctas para cada idioma.

Ingeniera de Software Esto puede provocar bajones de rendimiento si los idiomas (o mquinas) son de una arquitectura radicalmente diferente y, una gran cantidad de tiempo se puede perder la para entrelazar los formatos.

12.8. Usando una aproximacin de objetos distribuidos, proponga una arquitectura para un sistema nacional de venta de entradas para teatros en donde los usuarios puedan comprobar la disponibilidad de Ias localidades y reservar stas en un grupo de teatros. El sistema debera soportar devoluciones de entradas para que Ia gente pueda devolver sus entradas y que stas se puedan vender a otros clientes en el ltimo momento. Se propondria la arquitectura de corba para poder realiar los diferentes servicios y que tendriamos una seria de estos como son los siguientes: Servicio de comprobacin de boletos Servicio de reservacin Servicion de compra Servicio de devolucin Servicio de recompra

Entonces ya que tenemos algunos servicios seria una excelente idea para realizar las diferentes peticiones de servicios. Ademas los servivios probablemente sern requeridos por muchas aplicaciones distribuidas 12.9 Indique dos ventajas y dos desventajas de las arquitecturas peer-to-peer descentralizadas y semicentralizadas. Ventajas de las arquitecturas P2P descentralizadas: Menos vulnerable a ataques de denegacin de servicio. Escalable el rendimiento del sistema no debera verse afectado negativamente por la adicin de los compaeros.

Desventajas de las arquitecturas P2P descentralizadas: Peer comunicaciones ms difciles de organizar. Ms caro para descubrir lo que se dispone de los compaeros en la red.

Ventajas de las arquitecturas P2P semicentralizados: Fcil de llevar un registro de lo que se dispone de los compaeros. Intercambio de datos Peer se ha simplificado que se lleva a cabo a travs del servidor.

Desventajas de las arquitecturas P2P semicentralizados: El fallo de servidor da como resultado la falta de disponibilidad del sistema. Vulnerable al ataque de denegacin de servicio en el servidor.

Ingeniera de Software 12.10 Cules son las ventajas del enlace dinmico en un sistema orientado a servicios? VENTAJAS: Reduce el nivel de acoplamiento. Clara definicin de roles de desarrollo. Definicin de seguridad ms clara. Fcil testeo. Mejora la mantencin. Favorece la reutilizacin. Favorece el desarrollo en paralelo. Permite fcil escalabilidad. Permite un mapeo directo entre los procesos y los sistemas. Permite un monitoreo preciso.

12.11. Para el sistema de informacin del vehculo, explique porqu es mejor que el software del vehculo se comunique con un servicio global en lugar de hacerlo directamente con servicios de informacin individuales. El sistema de informacin del coche en un sistema integrado con funcionalidad limitada y la potencia de procesamiento. Se ejecuta el servicio de agregacin en un servidor externo de gran alcance por lo que su funcionamiento no es limitado por los recursos como la memoria o la capacidad del procesador. Por lo tanto, es mucho ms simple para el servicio de agregacin para hacer frente a los fallos de los servicios de suministro de informacin individual en lugar de incrustar esto en el sistema local en el automvil. Slo necesita hacer frente a la unin a los servicios de agregacin alternativas. 12.12 El desarrollo de la computacin orientada a servicios se ha basado en la especificacin y adopcin temprana de estndares. Comente el papel general de la estandarizacin para soportar y restringir la competicin e innovacin en el mercado del software. Con la estandarizacin tiene sus ventajas como la fcil implementacin de subsistemas y la fcil adaptacin de componentes para un funcionamiento adecuado. Sin embargo tambin tiene una desventaja, que muchas veces la estandarizacin propone ciertos lmites al desarrollo, con los cuales la innovacin y consecuentemente la competencia se ven afectados.

También podría gustarte