You are on page 1of 4

UNIVERSIDAD NACIONAL DE LOJA

ENSA-CIS-UNL

rea de la Energa, las Industrias y los Recursos Naturales No Renovables ______________________________________________________________________ CARRERA DE INGENIERA EN SISTEMAS TRABAJO GRUPAL Integrantes: Andrea Armijos Vanessa Errez Elisa Espinoza Freddy Loayza Jenny Saraguro John Solano Mdulo: Fecha: Docente: Noveno B 16 de enero del 2014 Ing. Roberto Jcome Ejercicios del Capitulo #20
1. D cuatro razones de por qu casi nunca es rentable para las empresas asegurar que su software est libre de defectos.

1. Porque si se produce algn error puede costar al propietario del software la reparacin y levantamiento del sistema, mientras que si se comenta que puede tener algn fallo los riesgos se los puede asumir en conjunto con el comprador del sistema. 2. Adems las prdidas econmicas en caso de fallo se trasladaran a propietario del software. 3. Por parte del comprador del software podra ocurrir que si asegura que el software est libre de fallo ocasionara caos en algn terminal si se produjese el mismo. 4. Adems para poder seguir lucrando con ese cliente siempre hay que decirle que su sistema tendra que estar en constante actualizacin o que si sufre algn fallo estn dispuesto a brindar el soporte necesario hasta que el sistema quede en porcentaje en funcionamiento. 2. D dos ejemplos de diversidad y actividades redundantes que podran incorporarse en procesos confiables.

1. Verificacin de requerimientos podra ser una de las partes ms importantes ya que estas determinan las necesidades del cliente y si no se realiza una buena recoleccin de requerimientos todo el software no llegara a cumplir las necesidades y a la larga tocara cambiarlo o nuevamente desarrollar la aplicacin con las especificaciones ya claras. Por tal motivo se debera validar y verificar la valides en esta parte. 2. Validacin de los modelos ya que en estos se encuentras todos los mtodos que se utilizaran comprobando y validando cada una de las operaciones que realizara nuestros procesos a desarrollar.

UNIVERSIDAD NACIONAL DE LOJA

ENSA-CIS-UNL

rea de la Energa, las Industrias y los Recursos Naturales No Renovables ______________________________________________________________________ CARRERA DE INGENIERA EN SISTEMAS
3. Explique por qu la herencia es una construccin potencialmente propensa a errores y por qu su uso debera minimizarse cuando se desarrollan sistemas crticos en un lenguaje orientado a objetos.

La herencia es una construccin peligrosa ya que cuando se realiza se obtiene todos los atributos y mtodos de la clase padre y en esto puede que utilicemos o se sobrescriba atributos dentro de la nueva clase, que no competan o que no se utilicen. Y se debe reducir en lo posible en sistemas crticos por que podran ocasionar operaciones que no son las que se necesitan y podran ocasionar prdidas de vidas o de dinero en gran cantidad. 4. Comente los problemas de desarrollar y mantener sistemas siempre activos tales como el software para una central telefnica. Cmo podran utilizarse las excepciones en el desarrollo de tales sistemas?

Los problemas de desarrollar y mantener sistemas <<siempre activos>> son en cuanto a seguridad y redundancia de los servidores, ataques de energa, estndares de seguridad con las TIR; para de esta manera tener el correcto funcionamiento de los sistemas. Las excepciones en el desarrollo de tales sistemas se pueden utilizar: Cuando los programadores utilicen herencia, puesto que, el cdigo asociado a un objeto no est en un solo sitio, lo cual hace ms difcil comprender su comportamiento. Las excepciones podran utilizarse para simplificar los programas y hacerlos ms fciles de leer y entender. 5. Explique por qu debera manejar de forma explcita todas las excepciones en un sistema tolerante a defectos.

Cuando ocurre una excepcin, sta debe ser manejada por el sistema. Esto puede hacerse dentro del mismo programa o puede implicar la transferencia de control a un mecanismo de manejo de excepciones del sistema. Normalmente, el mecanismo de manejo de excepciones del sistema simplemente informa del error y abandona la ejecucin. Por lo tanto, para asegurar que las excepciones del programa no provocan fallos de ejecucin del sistema, debera definirse un manejador de excepciones para todas las posibles excepciones que puedan ocurrir y asegurarse de que todas las excepciones se manejan de forma explcita. Existen cuatro aspectos a considerar en la tolerancia a defectos: 1. Deteccin de defectos. El sistema debe detectar un defecto que podra conducir a un fallo de ejecucin del sistema. Generalmente, esto implica comprobar que el estado del sistema es consistente. 2. Evaluacin de ios daos. Se deben detectar las partes del estado del sistema que han sido afectadas por el defecto. 3. Recuperacin de defectos. El sistema debe restaurar su estado a un estado seguro conocido. Esto puede conseguirse corrigiendo el estado daado (recuperacin de errores hacia adelante) o restaurando el sistema a un estado seguro conocido (recuperacin de errores hacia atrs).

UNIVERSIDAD NACIONAL DE LOJA

ENSA-CIS-UNL

rea de la Energa, las Industrias y los Recursos Naturales No Renovables ______________________________________________________________________ CARRERA DE INGENIERA EN SISTEMAS
4. Reparacin de defectos. Esto implica modificar el sistema para que no vuelva a aparecer el defecto. Sin embargo, muchos defectos del software se manifiestan como estados transitorios. Ello se debe a una combinacin peculiar de entradas del sistema. No es necesario realizar ninguna reparacin y el procesamiento normal puede continuarse inmediatamente despus de la recuperacin de los defectos. 6. Describa brevemente las estrategias de recuperacin de defectos hacia adelante y hacia atrs. Por qu se usa ms frecuentemente la recuperacin de defectos hacia atrs que hacia adelante? D dos ejemplos de clases de sistemas en los que se podra utilizar la recuperacin de errores hacia atrs.

La recuperacin de defectos es el proceso de modificar el espacio de estados del sistema para que los efectos del defecto sean eliminados o reducidos. El sistema puede continuar funcionando, quizs de forma algo degradada. La recuperacin hacia adelante implica intentar corregir el sistema daado y crear el estado esperado. Esta slo es posible en situaciones en las que la informacin del estado incluye redundancia. Existen dos situaciones generales (ambas descritas en la seccin previa) en las que pueden aplicarse tcnicas de recuperacin de errores: 1. Cuando los datos del cdigo estn daados. El uso de tcnicas de codificacin que aaden redundancia a los datos permite corregir los errores as como detectarlos. 2. Cuando las estructuras enlazadas estn daadas. Cuando los punteros hacia adelante y hacia atrs se incluyen en la estructura de datos, la estructura puede volverse a crear, si un nmero suficiente de punteros permanece sin daar. Ejemplo: Esta tcnica se utiliza frecuentemente para sistemas de ficheros y reparacin de bases de datos. La recuperacin hacia atrs restaura el estado del sistema a un estado correcto conocido. La recuperacin de errores hacia atrs es una tcnica ms simple que restaura el estado a un estado seguro conocido despus de haberse detectado un error. Ejemplo: La mayora de los sistemas de bases de datos incluyen recuperacin de errores hacia atrs. Se usa ms frecuentemente la recuperacin de defectos hacia atrs que hacia adelante puesto que la recuperacin de errores hacia atrs es una tcnica ms simple que restaura el estado a un estado seguro conocido despus de haberse detectado un error. 7. Qu es esencial para que la recuperacin de errores hacia adelante pueda implementarse en un sistema tolerante a defectos? Es posible la recuperacin de errores hacia adelante en sistemas interactivos?

Primeramente se debe detectar los errores que existan en el sistema. Depende de una prediccin correcta de los posibles fallos y de su situacin

UNIVERSIDAD NACIONAL DE LOJA

ENSA-CIS-UNL

rea de la Energa, las Industrias y los Recursos Naturales No Renovables ______________________________________________________________________ CARRERA DE INGENIERA EN SISTEMAS
Posteriormente se aplica la recuperacin hacia adelante el cual consiste en avanzar desde un estado errneo haciendo correcciones sobre partes del estado, con el fin de situar al sistema en un estado correcto desde el que pueda seguir funcionando. 8. Disee un tipo abstracto de datos o clase de objetos denominado RobustList que implemente la recuperacin de errores hacia adelante en una lista enlazada. Usted debera incluir operaciones para comprobar los daos en la lista y reconstruir la lista si ocurre algn dao. Suponga que puede comprobar los daos manteniendo referencias hacia adelante y hacia atrs desde y hasta miembros adyacentes de la lista.

9.

Sugiera circunstancias en las que sea apropiado utilizar arquitecturas tolerantes a defectos cuando se implementa un sistema de control basado en software y explique por qu se requiere esta aproximacin.

Algunas circunstancias en las que se puede utilizar arquitecturas tolerantes a defectos son los sistemas en los aviones que deben estar en funcionamiento durante todo el vuelo, los sistemas de telecomunicaciones y los sistemas crticos de rdenes y control, se requiere este tipo de aproximacin porque en estos sistemas un mal entendimiento de los requerimientos puede implicar que tanto el cdigo del sistema como la defensa asociada sean incorrectos. 10. Se ha sugerido que el software de control para una mquina de terapia de radiaciones (utilizada para tratar a pacientes con cncer) debera implementarse utilizando nversiones. Comente si piensa que sta es una buena sugerencia. Si es conveniente implementarlo utilizando n-versiones ya que este mtodo se basa en la generacin independiente de N programas funcionalmente equivalentes para luego comparar sus salidas y de esta manera detectar cules son los fallos en el software y recuperar el comportamiento correcto.

You might also like