Capitulo III. Diseño del Sistema.



Documentos relacionados
desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

Capitulo VI. Conclusiones.

Análisis y diseño del sistema CAPÍTULO 3

Tutorial de UML. Introducción: Objetivos: Audiencia: Contenidos:

Arquitectura de Aplicaciones

Anexo 4 Documento de Arquitectura

Capitulo 5. Implementación del sistema MDM

CAPÍTULO 3 Servidor de Modelo de Usuario

Diseño orientado a los objetos

DIAGRAMA DE CLASES EN UML

Capítulo 5. Cliente-Servidor.

INGENIERÍA DEL SOFTWARE I. Univ. Cantabria Fac. de Ciencias. Especificación de Requisitos. Práctica 2


2 EL DOCUMENTO DE ESPECIFICACIONES

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor.

Workflows? Sí, cuántos quiere?

Unidad II. - Las técnicas en las que se basó, las categorías de análisis o ejes centrales que permiten guiar el proceso de investigación.

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

SISTEMA DE ESPECIICACION DE REQUERIMIENTOS

UML, ejemplo sencillo sobre Modelado de un Proyecto

Patrones de Diseño Orientados a Objetos 2 Parte

Notación UML para modelado Orientado a Objetos

Primer avance de proyecto de software para la gestión de inscripciones en cursos

DCU Diagramas de casos de uso

M III ABSTRACCIÓN Y CLASIFICACIÓN

Visión General de GXportal. Última actualización: 2009

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN

Modulo I. Introducción a la Programación Web. 1.1 Servidor Web.

JavaScript como Orientación a Objetos

JAVA EE 5. Arquitectura, conceptos y ejemplos.

Curso de Java POO: Programación orientada a objetos

<Generador de exámenes> Visión preliminar

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR

7.1 Arquitectura de clases

Metodología Orientada a Objetos Clave Maestría en Sistemas Computacionales

1.1.- Objetivos de los sistemas de bases de datos Administración de los datos y administración de bases de datos Niveles de Arquitectura

Objetivo Las personas que realicen el curso aprenderán a:

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Arquitectura. 1.- Aplicaciones Web. Definición. Arquitectura clásica. Contenidos. 1.- Aplicaciones Web

IWG-101: Introducción a la Ingeniería. Departamento de Informática, UTFSM 1

Capítulo I. Marco Teórico

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

CAPITULO V. HERRAMIENTA CASE (Rational Rose, C++)

MANUAL DE USUARIO APLICACIÓN SYSACTIVOS

Capítulo III. Diseño del sistema. Dentro de este capítulo veremos a detalle el diseño del sistema, que como se había

CAPÍTULO 5. DESARROLLO Y PRUEBAS

Capitulo 3. Desarrollo del Software

Manual del Usuario. Sistema de Help Desk

"Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios

Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado

LiLa Portal Guía para profesores

Introducción al UML. Domingo Hernández H. Escuela de Ingeniería de Sistemas Departamento de computación

Visión General GXflow. Última actualización: 2009

KW x hora. on/off

Durante la determinación del problema dentro de los procesos de mercadeo de R & S Training se pudo notar notables deficiencias en las relaciones con

CURSO COORDINADOR INNOVADOR

Inicio de MO Inicio de MD Inicio de MF. Documento de Análisis. Base de datos de las especificaciones OMT. MO, MD, MF Detallados. Librería de Clases

3.3.3 Tecnologías Mercados Datos

Análisis de Sistemas. M.Sc. Lic. Aidee Vargas C. C. octubre 2007

PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto

Patrones para persistencia (I) Ingeniería del Software II

Gestión de la Configuración

Mesa de Ayuda Interna

CAPÍTULO 3 VISUAL BASIC

GUIA PROGRAMACIÓN ORIENTADA A OBJETOS

Capítulo II. Arquitectura del Software

Diagramas de Clases ~ 1 ~ Ing. Fabián Silva Alvarado

Sistema PYMES Ventas e Inventarios H&S

UNIVERSIDAD CATOLICA DE COLOMBIA FACULTAD DE INGENIERIA DE SISTEMAS

Capítulo 2. Marco Teórico

Capítulo 3 Diseño del Sistema de Administración de Información de Bajo Costo para un Negocio Franquiciable

Diagrama de Clases. Diagrama de Clases

Indice. .01 Introducci n. .02 Perfiles de usuario. .03 Ingreso al portal Mi Entel PCS Empresas. .04 Activación de los teléfonos móviles de la empresa

Capítulo III. Análisis y diseño.

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

1 EL SISTEMA R/3 DE SAP AG

El software desarrollado ha sido dividido en tres módulos: el monitoreador del tráfico, la Interfase con el usuario y la base de datos.

BASES DE DATOS. Ivon Tarazona Oriana Gomez

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

Configuración de Software

Pentaho BI. Lic. Patricia Palacios Zuleta

MANUAL DE USUARIO SISTEMA DE ALMACEN DIF SONORA

PAGO EN LÍNEA CON TARJETA DE CRÉDITO Tienda Virtual SiDI

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO

Estándares Técnicos para la Creación, Mantenimiento y Operación de sitios Web del Gobierno del Estado.

CONSTRUCCIÓN DEL PROCESO MESA DE AYUDA INTERNA. BizAgi Process Modeler

Planeación. El proceso administrativo, herramienta fundamental

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción

Patrones de software y refactorización de código

Project Ing. Christian Ovalle

UNIDAD DIDACTICA 2 Lenguaje Unificado de Modelado(UML) 1. INTRODUCCIÓN Y TIPOS DE DIAGRAMAS

Capítulo VI. Estudio de Caso de Aplicación del Integrador de Información Desarrollado

Correspondencias entre taxonomías XBRL y ontologías en OWL Unai Aguilera, Joseba Abaitua Universidad de Deusto, EmergiaTech

APÉNDICE E: MANUAL DE USUARIO PARA EL SISTEMA DE MONITOREO DE REDES LAN.

Ejercicio Guiado de Análisis y Diseño Orientado a Objetos. Ejemplo: CAJERO AUTOMÁTICO

Está creado como un organizador y gestor de tareas personalizables para generar equipos de alto desempeño en diferentes rubros de empresas.

La Universidad Latinoamericana te da la bienvenida a sus Programas Ejecutivos On-line

Transcripción:

Capitulo III. Diseño del Sistema. Para el desarrollo del sistema en la presente tesis se utilizo el paradigma orientado a objetos utilizando el lenguaje Java en su versión 1.2. Por medio de este lenguaje y con el diseño de los módulos por medio de UML (Unified Modeling Language) tendremos una transición natural del análisis al diseño. III.1. Unified Modeling Language. El lenguaje de modelado UML es utilizado en este sistema no sólo por su fácil interpretación del análisis al diseño, sino que es el lenguaje estándar de modelado utilizado en sistemas orientados a objetos. Dentro de las múltiples maneras que se emplean para llevar a cabo un buen modelado de datos y su presentación, para que con este proceso previo sea más fácil la programación del sistema, tenemos entre otras a OML y UML, solo por mencionar algunas. El método de diseño mas utilizado actualmente es UML, que independientemente del lenguaje que se empleara para la programación, es eficiente, eficaz y sobretodo comprensible a cualquiera que tenga los conocimientos básicos de una interpretación adecuada de un caso a otro. Esta es la razón por la cual se elige a UML como una opción viable para la construcción del sistema. Una orientación a objetos, se define como la organización del software en colección de objetos que incorpora un estado y un comportamiento. 27

Por lo cual, un desarrollo orientado a objetos, es el análisis, diseño e implementación basados en la identificación y organización de los objetos, y son considerados más que un lenguaje de programación [1001 tips para programar en Java]. La metodología de orientación a objetos es definida como la construcción de modelos, y el modelado y orientación a objetos, esta en base al mundo real, en el cual se utilizan modelos para elaborar un diseño independientemente del lenguaje de programación [1001 tips para programar en Java]. Antes de ingresar al conocimiento básico de las clases y su estructura, definiremos que es un modelo, el cual es conocido como una simplificación de la realidad con bases en una perspectiva actual en le desarrollo de software y una conceptual para el ensamblado de componentes. El propósito de modelar es comunicar la estructura y el comportamiento del sistema, visualizar y controlar la arquitectura del mismo, comprender mejor el sistema desarrollado, y por ultimo buscar oportunidades de reutilizaron y optimización. Una pregunta importante es, por qué modelar?, en teoría, debe ser una pregunta fácil de contestar, pero en realidad se modela para conocer mejor el sistema que se desarrolla, mediante el cual alcanzamos la visualización de como es o como debería ser, especificar la estructura y comportamiento del mismo, tener una guía en la construcción del mismo, y finalmente, documentar las decisiones durante el desarrollo. 28

En resumen, UML es un lenguaje estándar con un vocabulario gráfico y sus reglas para la presentación de sistemas desarrollados [Unified Modeling Language Tutorial]. Clase: Es la descripción del "molde" de un conjunto de objetos que se comparten sus atributos, operaciones, relaciones y semántica [Unified Modeling Language Tutorial]. La representación gráfica en UML es la que aparece a continuación, donde se muestran los componentes principales de una clase modelada en UML. NombreDeLaClase atributos operaciones reponsabilidadesdelaclase Figura 4. Ejemplo de un Diagrama de Clase general en UML. Ahora bien, en el siguiente esquema se muestra un esquema con dependencia de otra, la dependencia es utilizada cuando existe una relación de uso que establece que un cambio en la especificación puede afectar a otra clase que la utilice. Viéndolo desde otro punto de vista, se tiene una relación de dependencia cuando una clase utiliza a otra clase en la firmas de alguna de sus operaciones. 29

Para entender de mejor manera lo anterior, se mostrara un ejemplo que muestra claramente el funcionamiento y aplicaciones, así como las características propias de esta clase. Clase A Clase B Figura 5. Ejemplo de diagrama de Relación en UML- Herencia, es la relación entre una clase general (superclase o padre) y una clase especifica (subclase o hijo) [Unified Modeling Language Tutorial]. La subclase hereda todas las características de la superclase. SuperClase subclase Figura 6. Ejemplo de Diagrama de Herencia en UML. 30

Así como existen los diagramas de clase también existen los diagramas de interacción, el cual representa la forma en como un Cliente (Actor) u Objetos (Clases) se comunican entre si en petición a un evento. Esto implica recorrer toda la secuencia de llamadas, de donde se obtienen las responsabilidades claramente. Figura 7. Ejemplo de Diagrama de Interacción en UML. En el ejemplo anterior se muestran rectángulos, que son los objetos y las flechas indican la secuencia en la que se hará la petición de los datos. Figura 8. Diagrama General de Relación entre Módulos del Back End. 31

Figura 9. General de Relación entre Módulos del Front End. Una vez definido y explicados algunos aspectos teóricos básicos de UML, presentaré el UML de las clases principales del sistema A continuación se muestra un diagrama de clase de uno de los componentes más importantes del front End, llamado Beans Front, el cual se encarga de la comunicación entre la interfaz y la lógica de datos. 32

En resumen, podemos decir que esta es la clase principal del sistema, ya que es la encargada de recuperar toda la información mostrada en un portal y por medio de los JSP la información es desplegada en el browser. III.2. Base de Datos. La base de datos esta diseñada para guardar tanto información de la tesis de Juan Carlos Korzi -quien se encargará de desarrollar la parte de administración de usuario, grupos de trabajo y configuración de base de datos- y esta diseñada para guardar toda la información referente a las secciones, artículos, templates, noticias y otras tablas necesarias para el control de información del sistema. Cabe mencionar que la base de datos contiene alrededor de 30 tablas, pero las más importantes para el Módulo Administrativo de Portales Interactivos en Web son las que se muestran a continuación. 34

Figura 13. Diagramas de las tablas principales de la Base de Datos La tabla pg_template es la columna vertebral del sistema, ya que dentro de esta tabla se guardan los templates a usar dentro de las secciones y artículos, pero además tiene relación con la tabla pg_variable, la cual se encarga de almacenar el código para cada una de las variables que tiene un template; estas variables sirven para que un template realice ciertas funciones de javascript definidas dentro del template, pero además contiene las ligas entre todo el sitio. La tabla pg_seccion es otra parte muy importante del sistema ya que almacena las secciones existentes en el sitio y gracias al nivel de cada sección se crean el árbol de navegación del sistema. Por su parte la tabla pg_articulo contiene todos los articulo de información del sitio, cada uno de estos artículos pertenece a una sección. Ambas tablas, pg_sección y pg_articulo, tienen relación con un template. 35

III.3. Back End y Front End. El diseño general del FrontEnd del sistema es el que se muestra en la siguiente gráfica: Browser cliente I N T E R N E T Servidor Index.jsp o APLICACION Sections.jsp Articles.jsp BD Figura 14. Diagrama del diseño general del Front End. Cada vez que un usuario realice una petición al sitio desarrollado con el Módulo Administrativo de Portales se hará una petición vía Internet, la cual será recibida por el servidor Web que contendrá la aplicación, este a su vez mandará esa petición hacía la página principal del sitio, quien se encargará de mostrar todos los componentes de la página con todas las secciones y artículos involucrados en el sitio. Una vez que se empiece a navegar el sitio, las peticiones serán atendidas por los el componente de Secciones y Artículos del sistema según corresponda, los cuales a su vez tendrán la interacción con la base de datos que contiene todos los datos necesarios para mostrar la información en pantalla. Todos los datos que la aplicación regresa como respuesta hacía el servidor de aplicaciones son en formato HTML. La parte de BackEnd, es decir la parte del sistema donde se construyen los sitios funciona de manera similar a la parte del FrontEnd pero utiliza diferentes componentes y además almacena información en la base de datos. El diagrama de flujo de procesos del BackEnd es el siguiente: 36

SvtSections Svt Templates Browser cliente I N T E R N E T Servidor SvtUser SvtArticles BD Svt Noticias APLICACION Figura 15. Diagrama del diseño general del Back End. El BackEnd resolverá la petición del usuario de igual manera que lo hará el FrontEnd, pero quien responderá a la petición, por parte de la aplicación es SvtUser para validar el usuario y posteriormente, dependiendo la petición que se haya hecho será el servlet que interactuara con el usuario y almacenará información dentro de la base de datos. III.4. Model View Controller. El lenguaje UML fue utilizado dentro de este sistema para modelar el diseño general del sistema en capas (Model View Controller), posteriormente se modelo cada una de las capas para el Front End y para el Back End. 37

Model (Lógica de negocios) View (Presentación) Svt Secciones Svt Artículos Template Secciones Template Articulos Svt Templates Svt Noticias Template Templates Template Noticias Controller (control) Svt Secciones Svt Articulos Svt Templates Svt Noticias Back End Figura 15a. Diagrama Model-View-Controller del Back End del Módulo Administrativo de Contenidos de Portales Interactivos Web. Model (Lógica de negocios) View (presentación) Beans Front Beans Secciones Template Secciones Template Articulos Controller (control) Index.jsp Front End 38

Figura 15b. Diagrama Model-View-Controller del Front End del Módulo Administrativo de Contenidos de Portales Interactivos Web. 39