Cuando se construye software como
producto empresarial o comercial, se llevan a cabo varias técnicas de manera
que el desarrollo se haga en forma ordenada y así poder asegurar un avance continuo
del proyecto, un producto final de calidad, y además realizar posteriores
mejoras sea una tarea más fácil.
Existen muchas prácticas de
programación, dependiendo del tipo de software que se va a desarrollar y de la
disciplina o disciplinas de programación que se utilicen en el desarrollo del
producto. Una de las más utilizadas se llama la programación por capas, que
consiste en dividir el código fuente según su funcionalidad principal.
La programación por capas es una
técnica de ingeniería de software propia de la programación por
objetos, éstos se organizan
principalmente en 3 capas: la capa de presentación o frontera, la capa de
lógica
de negocio o control, y la capa
de datos.
·
Capa de
Presentación o Frontera:
La presentación
del programa ante el usuario, debe manejar interfaces que cumplan con el
objetivo principal de este componente, el cual es facilitar al usuario la
interacción con la aplicación. Para esto se utilizan patrones predefinidos para
cada tipo de aplicación y para cada necesidad del usuario. La interfaz debe ser
amigable y fácil de utilizar, ya que el usuario final es el que se va a
encargar de utilizar el sistema y de dar retroalimentación al equipo de
desarrollo en caso de que haya algo que mejorar.
Las interfaces
deben ser consistentes con la información que se requiere, no se deben utilizar
más campos de los necesarios, así como la información requerida tiene que ser
especificada de manera clara y concisa, no debe haber más que lo necesario en
cada formulario y por último, las interfaces deben satisfacer los
requerimientos del usuario, por lo cual no se debe excluir información
solicitada por el usuario final y no se debe incluir información no solicitada
por el mismo.
Dentro de la
parte técnica, la capa de presentación contiene los objetos encargados de
comunicar al usuario con el sistema mediante el intercambio de información,
capturando y desplegando los datos necesarios para realizar alguna tarea. En
esta capa los datos se procesan de manera superficial por ejemplo, para
determinar la validez de su formato o para darles algún orden específico.
·
Capa de
Lógica de Negocio o Control:
Es llamada capa
de reglas de negocio porque en esta se definen todas las reglas que se deben cumplir
para una correcta ejecución del programa.
Es aquí donde se
encuentra toda la lógica del programa, así como las estructuras de datos y
objetos encargados para la manipulación de los datos existentes, así como el
procesamiento de la información ingresada o solicitada por el usuario en la
capa de presentación.
Representa el
corazón de la aplicación ya que se comunica con todas las demás capas para
poder llevar a cabo las tareas. Por ejemplo, mediante la capa de presentación
obtiene la información ingresada por el usuario, y despliega los resultados. Si
la aplicación se comunica con otros sistemas que actúan en conjunto, lo hace
mediante esta capa. También se comunica con la capa de datos para obtener
información existente o ingresar nuevos datos.
Recibe los datos
que ingresó el usuario del sistema mediante la capa de presentación, luego los procesa
y crea objetos según lo que se necesite hacer con estos datos; esta acción se
denomina encapsulamiento.
Al encapsular
los datos, el programa asegura mantener la consistencia de los mismos, así como
obtener información precisa de las bases de datos e ingresar en las mismas,
solamente la información necesaria, asegurando así no tener datos duplicados ni
en las bases de datos, ni en los reportes solicitados por el usuario.
·
Capa de
Datos:
Es la encargada
de realizar transacciones con bases de datos y con otros sistemas para obtener
o ingresar información al sistema.
El manejo de los
datos debe realizarse de forma tal que haya consistencia en los mismos, de tal forma
los datos que se ingresan así como los que se extraen de las bases de datos,
deben ser consistentes y precisos.
Es en esta capa
donde se definen las consultas a realizar en la base de datos, tanto las
consultas simples como las consultas complejas parla generación de reportes más
específicos.
Esta capa envía la
información directamente a la capa de reglas de negocio para que sea procesada e
ingresada en objetos según se necesite, esta acción se denomina encapsulamiento
Ventajas
Al implementar este modelo de
programación, se asegura un trabajo de forma ordenada y separada, debido a que
sigue el principio de “divide y vencerás”.
Cada capa está dividida según su
funcionalidad cuando se quiere modificar el sistema basta con cambiar un objeto
o conjunto de objetos de una capa. Esto se llama modularidad.
Desventajas
Cuando se implementa un modelo de
programación en capas, se debe llegar a un balance entre el número de capas y
subcapas que componen el programa. Este debe ser el necesario y suficiente para
realizar un trabajo específico con eficiencia y ser lo más modular posible.
De lo contrario se tiene una
serie de desventajas como: pérdida de eficiencia, realización de trabajo innecesario
o redundante entre capas, gasto de espacio de la aplicación debido a la
expansión de las capas, o bien una alta dependencia entre los objetos y capas
que contradice el objetivo principal del modelo.
No hay comentarios:
Publicar un comentario