Autor Tema: Manejo de Errores en Arquitectura de Capas  (Leído 3898 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Jonhyrey

  • Sv Full Member
  • *
  • Mensajes: 558
Manejo de Errores en Arquitectura de Capas
« : marzo 27, 2008, 05:29:41 pm »
Hola a todos.

Al comenzar este año inicié programando con arquitectura en capas y tratando de aplicar al máximo los conceptos de la programación orientada a objetos en mis aplicaciones.

Y por ser nuevo en esto de las capas... he venido a pedirles sugerencias acerca del manejo de errores en este tipo de arquitecturas. En una aplicación que hice recientemente, trabaje todo desde la interfaz del usuario, para darle libertad al usuario decida que es lo que quiere hacer en el caso de error o para que por lo menos me llamen para decirme que el sistema no sirve (Comportamiento normal cuando aparece un error que es generado por el ente más peligroso de los sistemas: EL USUARIO).
Tambíen por cambios rápidos tuve que poner el try catch finally por todos lados para manejar ciertos posibles errores de la aplicación.

Ahora .....

¿Cual será la mejor forma de manejar los errores dentro de una arquitectura de capas? ¿Será la interfaz del Usuario? ¿Será la capa de lógica del negocio? ¿O en todos lados?

¿Que opinan ustedes?



sicario

  • Visitante
Re: Manejo de Errores en Arquitectura de Capas
« Respuesta #1 : marzo 27, 2008, 05:50:47 pm »
en mi humilde opinion... yo diria "en todos lados". XD pero entiendase la expresion... de la manera mas logica posible.. ¿como?

Por ejemplo.. en algunas aplicaciones que he trabajado.. se ha hecho de la siguiente manera.

- Se ha creado una clase para manejo de errores en la CAPA DE USUARIO. Ello implica que cualquier error sucitado atravez o en la CAPA DE USUARIO..va a parar a un MANEJADOR DE ERRORES, el cual tiene la capacidad de iteracturar con el USUARIO FINAL. De tal suerte que el usuario perfectamente obtiene:
      -Numero de error
      -Mensaje de error
      -Tipo de error (ligico, de datos, de parametros,etc)
      -Nombre del Modulo donde se genero el error
      -Nombre del Procedimiento donde se genero el error

pd. Cabe señalar que a nivel de la capa de usuario, tambien valido, aquellos errores controlados tales como.. RESTRICCIONES, VALIDACIONES.. Por ejemplo.. que no me guarde una informacion si no ha completado todos los campos etc... lo llevo a un manejador de errores tambien.
   
Pero asuvez, tambien se ha manejado otra clase de MANEJO DE ERRORES, a nivel de la CAPA DE NEGOCIOS. Donde el usuario tambien perfectamente puede enterarse de los diferentes tipos de errores con los que se esta encontrando.
      -Numero de error
      -Mensaje de error
      -Tipo de error (conexion, sintaxis,acceso denegado, error al gaurdar, al borrar, al insertar)
      -Nombre de la tabla dond ese genero el error
      -INstruccion que genera el error (delete, insert, update, truncate, import, etc)

   

No se si con todo eso... te doy una idea... Por experiencia... yo soy de los que considera tener un manejador de errores.. bien controlado.. en ambas capas... INTERFAZ DE USUARIO... CAPA DE NEGOCIOS...

Ahora bien... es necesario aclarar que tambien se puede manejar errores en LA BASE DE DATOS.. Soy de la idea de que si vas a manejar eventos de errores en la base de datos.. que estos sirvan para levantar una VITACORA DE ALTA FUNCIONABILIDAD y no para mandar mensajes al usuario final.. Si no que ello sirva para monitoreo de administracion.

si me explique?

   

Desconectado rcguillen

  • -^- Elite Silver -^-
  • The Communiter-
  • *
  • Mensajes: 2320
Re: Manejo de Errores en Arquitectura de Capas
« Respuesta #2 : marzo 27, 2008, 09:45:04 pm »
ya solo para agregar, porque creo q todo esta dicho....

hay q hacer aplicaciones en donde si da un error, igual el sistema tiene q ser capaz de seguir adelante, dando asi la sensacion de estabilidad (aunque por dentro se este quebrando), y no como solemos hacer sistemas q dan un error y tenemos q cerrar la aplicacion por medio del administrador de tarea.

Cuando se de el error manejalo con try-catch  y mandalo a alguna vitacora de errores y en la medida q haya una opcion en tu sistema asi como un feedback para que los errores sean enviados a ti via correo, o nose..a modo de depurar y eliminar por completo los errores.

Como ya te dijeron comienza a tratar tus errores desde la base de datos, hasta llegar a la capa de negocios, aunque esta ya no seria mucho, si has trabajado bien la base de datos y las pantallas de los usuarios.
-:Rcguillen-NoMercy:-
-:Es inutil hacer cualquier cosa a prueba de tontos, porque los tontos son muy ingeniosos:-

Desconectado Jonhyrey

  • Sv Full Member
  • *
  • Mensajes: 558
Re: Manejo de Errores en Arquitectura de Capas
« Respuesta #3 : marzo 28, 2008, 01:45:16 pm »
Gracias por Sus comentarios  :thumbsup: