Upload
new-break-crew
View
512
Download
1
Embed Size (px)
DESCRIPTION
curso: top especiales en ing de software alumnos: castro reyna acate venegas iwamatsu fernando
Citation preview
UNIVERSIDAD NACIONAL DE TRUJILLO
FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS
ESCUELA ACADÉMICO PROFESIONAL DE INFORMÁTICA
“PROGRAMACION POR CAPAS”
CURSO
TOPICOS ESPECIALES EN INGENIERIA DE SOFTWARE
DOCENTEING. ARTURO DIAZ PULIDO
INTEGRANTESCASTRO REYNA FRANK PETERACATE VENEGAS KAREN SOFIA
IWAMATSU FERNANDO
TRUJILLO - PERÚ2014
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Índice
Caratula….………………………………………………………………….................. 1
Índice…………..….………………………………………………………………...….. 2
Dedicatoria…………………………………………………………………..…..…..… 3
Introducción……..………………………………………………………………....….. 4
MARCO TEORICO……………………………………………………………..….…. 5
Capítulo I : Programación por capas ………………………………………..... 5
Capítulo II : Características ………………………………………………….... 6
Capítulo III : Capas y Niveles ……………………………………………...….. 7
Capítulo IV : Ventajas y Desventajas …………………………………….….. 10
Capítulo IV : Ejemplo de programación por capas………………………..... 11
Conclusiones………………………….……………………………………………..… 16
Referencias Bibliográficas………………………………………………………..…. 17
Dedicatoria
1
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Dedicado al conocimiento para brindar un
enfoque diferente sobre la ingeniería de
software y como base de conocimiento para
nuestros compañeros y nuestro profesor
Arturo Díaz Pulido por sus enseñanzas.
Acate Venegas Karen Sofía
Castro Reyna Frank Peter
Iwamatsu Fernando
2
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Introducción
La programación por capas es una técnica que se usa para el desarrollo
de software el cual permita que dicho software sea escalable,
mantenible, consistente y que tenga un aspecto mucho más profesional
de desarrollo, no como la clásica programación secuencial.
En el diseño de sistemas informáticos actual se suelen usar las
arquitecturas multinivel o Programación por capas. En dichas
arquitecturas a cada nivel se le confía una misión simple, lo que permite
el diseño de arquitecturas escalables que pueden ampliarse con
facilidad en caso de que las necesidades aumenten.
3
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Marco Teórico
Capítulo I:
Programación por Capas
La programación por capas es una arquitectura cliente-servidor en el
que el objetivo primordial es la separación de la lógica de negocios de la
lógica de diseño; un ejemplo básico de esto consiste en separar la capa
de datos de la capa de presentación al usuario.
La ventaja principal de este estilo es que el desarrollo se puede llevar a
cabo en varios niveles y, en caso de que sobrevenga algún cambio, sólo
se ataca al nivel requerido sin tener que revisar entre código mezclado.
Un buen ejemplo de este método de programación sería el modelo de
interconexión de sistemas abiertos.
Además, permite distribuir el trabajo de creación de una aplicación por
niveles; de este modo, cada grupo de trabajo está
totalmente abstraído del resto de niveles, de forma que basta con
conocer la API que existe entre niveles.
La programación orientada a capas se caracteriza por ser un tipo de
diseño en el desarrollo de software mediante clases las cuales se
separan generalmente en:
La capa de datos.
La capa de negocios.
La capa de presentación.
4
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
El diseño más utilizado actualmente es el diseño en tres niveles (o en
tres capas)
Capítulo II:
Características
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. Siguiendo el modelo,
el desarrollador se asegura avanzar en la programación del proyecto de
una forma ordenada, lo cual beneficia en cuanto a reducción de costos
por tiempo, debido a que se podrá avanzar de manera más segura en
el desarrollo, al ser dividida la aplicación general en varios módulos y
capas que pueden ser tratados de manera independiente y hasta en
forma paralela.
Por otra parte, otra característica importante de recalcar es la facilidad
para las actualizaciones de la aplicación. En este aspecto, la
programación en capas juega un papel de suma importancia ya que
sigue un estándar conocido en el ambiente de desarrollo de
aplicaciones, lo cual da al programador una guía para hacer mejoras a
la aplicación sin que esto sea una tarea tediosa y desgastante,
siguiendo el estándar establecido para tal fin y dividiendo las tareas en
partes específicas para cada capa del proyecto.
5
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Capítulo III:
Capas y niveles:
1. Capa de presentación:
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.
6
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Esta capa se comunica únicamente con la capa de Reglas de Negocio
o Control.
2. Capa de negocio:
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
7
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
en las bases de datos, ni en los reportes solicitados por el usuario.
3. 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.
8
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Capítulo IV:
Ventajas y Desventajas:
La programación en capas no es una técnica rígida que debe
implementarse solamente de una forma, sino que los desarrolladores de
proyectos tienen múltiples maneras de implementarla según las
tecnologías y tendencias que se utilicen.
La satisfacción de los requerimientos del usuario es la base para
escoger el modelo de implementación a seguir. La tendencia a utilizar el
modelo de programación en capas es grande cuando se trata
principalmente de aplicaciones empresariales donde se deben manejar
gran cantidad de subsistemas y módulos, así como generar reportes lo
suficientemente complejos como para necesitar un orden estricto a la
hora de desarrollar el proyecto.
Dentro del concepto de programación en capas, existen dos términos
esenciales para el mejor entendimiento de los conceptos relativos a
esta metodología, es aquí donde radica la importancia de la cohesión y
el acoplamiento dentro de una aplicación generada mediante este
método.
9
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Capítulo V:
Ejemplo de programación por
capas:
La Programación por Capases una Arquitectura Cliente-Servidor, cuyo
principal objetivo es separar La Lógica de Negocio de la Lógica de
Diseño.
Esquema de programación en 3 capas
10
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Convertir el código a la arquitectura 3 capas:
El Módulo MostrarCategoría contiene todo el código fuente en un mismo
archivo, en este se puede observar la conexión a la Base de Datos, la
consulta SQL y el despliegue de la información al Usuario.
Modulo MostrarCategoria:
11
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Módulo MostrarCategoria en arquitectura 3 capas:
Empezamos creando la estructura física de los archivos, bajo la
Arquitectura 3 Capas. Crearemos 3 carpetas (para la Capa de Datos,
Capa de Negocio y Capa de Presentación).
Capa de Datos, creamos la Clase de conexión que se conectará
a la Base de Datos.
Capa de Negocio, creamos la Clase Categoría que tendrá todas
las consultas SQL
Capa Presentación, creamos el módulo Categoría que llamará a
la ClaseCategoria solicitando información y desplegará el
resultado en pantalla
12
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Capa de datos ClaseConexion.php :
Declaramos la Clase Conexión, para poder conectarnos la base de Datos
MySQL
Capa de Negocio ClaseCategoria.php:
Vinculamos a la Capa de Datos, con la función “include” Declaramos la
Clase Categoría, con sus atributos y métodos .El Método buscarTodo()
especifica el código de la consulta SQL
13
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Capa de Presentación ModuloCategoria.php :
Vinculamos a la Capa de Negocios, para instanciar un objeto de la
claseCategoria, y así poder llamar al Método mostrarTodo que nos
devolverá un Conjunto de Datos, realizamos un recorrido para mostrar
el resultado en pantalla.
14
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Conclusiones:
La programación en capas ha sido una de las últimas tendencias en
cuanto a software comercial se refiere, es una tendencia que bien
aplicada puede resultar en un desarrollo de software eficiente.
Sin embargo, no todos los equipos ni empresas desarrolladoras usan un
sistema rígido, ni existe una forma estricta en la que tenga que
implementarse el modelo de capas, cada quién debe hacerlo según sus
necesidades, alcances y lo más importante; las tendencias y nuevas
tecnologías que vayan surgiendo.
Es importante tener en cuenta que no importa el lenguaje de
programación usado, o el tipo de implementación que se le dé al
modelo; se debe buscar una alta cohesión y un bajo acoplamiento
dentro de los objetos y capas para lograr que la aplicación sea
fácilmente desarmable y sea más sencillo realizar mejoras y
actualizaciones al sistema.
15
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
Referencias bibliográficas:
[1] http://www.di-mare.com/adolfo/cursos/2007-2/pp-3capas.pdf
[1]http://todoenjava.blogspot.com/2013/01/programacion-orientada-
objetos.html
[1] http://es.wikipedia.org/wiki/Programaci%C3%B3n_por_capas
[1]http://www.slideshare.net/bboypeterdbc/savedfiles?
s_title=programacin-por-capas-en-php&user_login=ramir0ck
16
Universidad Nacional de Trujillo PROGRAMACION POR CAPAS
17