21
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 DOCENTE ING. ARTURO DIAZ PULIDO INTEGRANTES CASTRO REYNA FRANK PETER ACATE VENEGAS KAREN SOFIA IWAMATSU FERNANDO

PROGRAMACION POR CAPAS-UNT

Embed Size (px)

DESCRIPTION

curso: top especiales en ing de software alumnos: castro reyna acate venegas iwamatsu fernando

Citation preview

Page 1: PROGRAMACION POR CAPAS-UNT

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

Page 2: PROGRAMACION POR CAPAS-UNT

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

Page 3: PROGRAMACION POR CAPAS-UNT

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

Page 4: PROGRAMACION POR CAPAS-UNT

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

Page 5: PROGRAMACION POR CAPAS-UNT

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

Page 6: PROGRAMACION POR CAPAS-UNT

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

Page 7: PROGRAMACION POR CAPAS-UNT

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

Page 8: PROGRAMACION POR CAPAS-UNT

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

Page 9: PROGRAMACION POR CAPAS-UNT

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

Page 10: PROGRAMACION POR CAPAS-UNT

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

Page 11: PROGRAMACION POR CAPAS-UNT

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

Page 12: PROGRAMACION POR CAPAS-UNT

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

Page 13: PROGRAMACION POR CAPAS-UNT

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

Page 14: PROGRAMACION POR CAPAS-UNT

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

Page 15: PROGRAMACION POR CAPAS-UNT

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

Page 16: PROGRAMACION POR CAPAS-UNT

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

Page 17: PROGRAMACION POR CAPAS-UNT

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

Page 18: PROGRAMACION POR CAPAS-UNT

Universidad Nacional de Trujillo PROGRAMACION POR CAPAS

17