Planeación de Tesis Mc Pool

17
Planeación del Trabajo de Graduación 1 Universidad Nacional de Trujillo FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS Escuela Académico Profesional de Informática Planeación del Trabajo de Graduación previo a la opción al Grado de: INGENIERO INFORMÁTICO I. GENERALIDADES 1. Título : Modelado e Implementación de una Red Social Web – Online para la Facultad de Ingeniería Informática del Valle Jequetepeque. 2. Tipo de Investigación : Desarrollo Tecnológico 3. Autor: 3.1. Nombres y apellidos : Mc Pool Hinostroza Guanilo 3.2. Código : 272700409 4. Asesor 4.1. Nombres y apellidos : Johnny Fernández Chero. 4.2. Grado Académico : Bachiller Ciencias de la Computación. 4.3. Título Profesional : Ingeniero Informático. 5. Área de Investigación : Ingeniería de Software.

Transcript of Planeación de Tesis Mc Pool

Page 1: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

1

Universidad Nacional de Trujillo FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS

Escuela Académico Profesional de Informática

Planeación del Trabajo de Graduación previo a la opción al Grado de:

INGENIERO INFORMÁTICO

I. GENERALIDADES

1. Título :

Modelado e Implementación de una Red Social Web – Online para la Facultad de Ingeniería

Informática del Valle Jequetepeque.

2. Tipo de Investigación : Desarrollo Tecnológico

3. Autor: 3.1. Nombres y apellidos :

Mc Pool Hinostroza Guanilo

3.2. Código : 272700409

4. Asesor

4.1. Nombres y apellidos : Johnny Fernández Chero.

4.2. Grado Académico : Bachiller Ciencias de la Computación.

4.3. Título Profesional : Ingeniero Informático.

5. Área de Investigación : Ingeniería de Software.

Page 2: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

2

6. Lugar de ejecución del proyecto:

Sede Valle Jequetepeque UNT Jr. Ayacucho #282

Área del Departamento de La Libertad Guadalupe

En otros lugares Biblioteca Municipal de Guadalupe

7. Duración del Proyecto:

Page 3: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

3

8. Cronograma de Duración del Proyecto:

9. Recursos Disponibles:

9.1. Personal Humano:

RECURSO CANTIDAD SALARIO MENSUAL

SALARIO POR HORA

DURACION DEL PROYECTO

MONTO (S/.)

Coordinador 1 750.00 4.00 8 meses 6,000.00

Programador 1 1200.00 6.00 2 meses 2,400.00

TOTAL S/. 8,400.00

Page 4: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

4

9.2. Materiales y Equipos:

9.2.1. Software:

9.2.2. Hardware:

Requerimiento Nombre Costo

Sistema Operativo Windows 7 Ultimate 64 bits 300.00

Editor de texto Office 2013 Profesional Plus 64 bits 350.00

Dominio y Hosting RapidGator 65.00

Sistema Operativo Centos 6 Server 0.00

Servidor WEB Apache Server 0.00

Servidor de Base Datos MySQL Server 5 0.00

Manipulador de Gráficos GIMP 2.06 0.00

Administrador de Base de Datos Mysql Toolkit 0.00

Diseñador de Casos de uso StarUML 0.00

Diseñador de Base de Datos Mysql Workbench 0.00

Editor de Codificación Notepad++ 0.00 TOTAL S/. 715.00

Requerimiento Recomendado

Procesador Intel Core i7 5ª Generation

Memoria RAM 8 GB

Disco Duro 2 TB

Tarjeta de Red 10/100/1000 Mbps

Monitor 21”

Case Full Tower

Memoria USB 128 GB

Impresora Tinta Continua

Cables UTP cat. 6 2 mts.

Conectores RJ45

Router 1

Page 5: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

5

10. Presupuesto: 10.1. Personal:

10.2. Bienes:

10.3. Servicio:

PERSONAL

Alumno HINOSTROZA GUANILO, MC POOL.

Asesor JOHNNY FERNÁNDEZ CHERO

Requerimiento Recomendado Costo

Procesador Core i5 800.00

Memoria RAM 6 GB 300.00

Disco Duro 1 TB 250.00

Tarjeta de Red 10/100/1000 Mbps 75.00

Monitor 19” 200.00

Case Full Tower 65.00

Memoria USB 32 GB 50.00

Impresora Tinta Continua 400.00

Cables UTP cat. 6 2 mts. 3.00

Conectores RJ45 2.00

Router 1 50.00

TOTAL S/. 2195.00

RECURSOS FIJOS COSTO MENSUAL (S/.)

Transporte 100.00

Energía Eléctrica 60.00

TOTAL S/. 160.00

Page 6: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

6

10.4. Insumos:

11. Financiamiento:

Auto financiamiento.

TIPO DE INSUMO COSTO (S/.)

Papelería 3.00

Anillados y empastados 20.00

Impresión 10.00

Fotocopias 5.00

Artículos de oficina 6.00

TOTAL S/. 44.00

Page 7: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

7

II. PLAN DE INVESTIGACIÓN

1. ANTECEDENTES Y FUNDAMENTACIÓN CIENTÍFICA, TÉCNICA O HUMANÍSTICA

1.1. Antecedentes:

Título: “MODELADO E IMPLEMENTACIÓN DEL SERVICIO DE RED SOCIAL PARA LA FACULTAD DE INGENIERÍA INDUSTRIAL DE LA UNIVERSIDAD NACIONAL DE PIURA”.

Autores: BACH. CRISTHIAN DÁVILA FACUNDO. BACH. CESAR MARTIN ORTIZ PINTADO.

Universidad:

UNIVERSIDAD NACIONAL DE PIURA

Resumen:

La investigación desarrolla el Modelado e Implementación de una Servicio de Red Social para la Facultad de Ingeniería Industrial de la Universidad Nacional de Piura. El nombre de la aplicación es RESFII-UNP (Red Social de la Facultad de Ingeniería Industrial de la Universidad Nacional de Piura) y tiene como objetivo apoyar la comunicación entre los actores del proceso de enseñanza aprendizaje, docente-alumno y entre pares (alumnos, docentes). La importancia del proyecto radica en que proporcionará de manera rápida, eficiente y amigable diversos mecanismos de apoyo para la distribución de material de estudio, a las relaciones interpersonales de la sociedad estudiantil y mediante acciones organizadas específicas se desarrolle una red en el que se actúa en pro del bienestar de los docentes y alumnos, actuando como un soporte y ámbito donde se resuelven los problemas utilizando herramientas como chat, blog, foros, agendas, calendario de eventos, entre otros. Todos los requerimientos e información fueron proporcionados por los docentes y alumnos de las especialidades de dicha facultad. Para el desarrollo del proyecto se utilizó la metodología RUP (Rational Unified Procces), junto con UML (Unified Modeling Language) los cuales permitieron un desarrollo ordenado, estructurado e iterativo con el que se llegó a la implementación de la solución para el respectivo análisis de los resultados.

Page 8: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

8

Apreciación Crítica:

La Investigación realizada en el trabajo toma en cuenta la necesidad de la Facultad de Ingeniería de la Universidad de Piura, para haber permitido tener una mejor construcción del marco teórico y referencial de la investigación por ello nos da una idea de cómo poder desarrollar nuestro sistema, y hasta mejorar la propuesta.

2. REALIDAD PROBLEMATICA La realidad problemática consiste en la falta de un medio que apoye a la comunicación entre la comunidad universitaria fuera del horario de clases, lo que limita la transmisión de conocimiento de los docentes y alumnos que estén aptos para apoyarlos en su formación, en la difusión de actividades y trabajos, la discusión de problemas, etc. y entre miembros que compartan los mismos intereses. Es para ello que planteo mi tesis “Modelado e Implementación de una Red Social Web – Online para la Facultad de Ingeniería Informática del Valle Jequetepeque” la cual proporcionará a los estudiantes y docentes de la mencionada Facultad el poder comunicarse entre ellos para posibilitar el intercambio de aprendizaje y actividades educativas.

3. JUSTIFICACIÓN:

Observando la necesidad de comunicarse y transmitir sus conocimientos extra curriculares de la comunidad universitaria y docentes es que se plantea el la tesis “Modelado e Implementación de una Red Social Web – Online para la Facultad de Ingeniería Informática del Valle Jequetepeque”, con la cual se busca mejorar con efectividad y rapidez los problemas de comunicación y establecerla más directamente eliminando las brechas académicas existentes.

El hecho de modelar e implementar una red social web que sea libre de publicidad y distractores como lo tienen las redes actuales, implica brindar un servicio rápido, mejorar la eficiencia y agilizar procesos interacción y comunicación entre alumnos, profesores y mixto, así mismo tener alumnos informados y anivelados en la Alma Mater. Se desarrolla este sistema teniendo en cuenta que hoy en día las tecnologías van evolucionando, los problemas van siendo más complejos, esto obliga a crear nuevas y mejores soluciones, nuevos caminos o nuevos paradigmas que solucionen dichos problemas.

4. PROBLEMA:

¿CÓMO MEJORAR LA BRECHA DE COMUNICACIÓN ENTRE DOCENTES Y ALUMNOS?

Page 9: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

9

5. HIPÓTESIS:

El Desarrollo de una RED SOCIAL WEB permitirá mejorar la comunicación entre docentes y alumnos.

6. OBJETIVOS:

6.1. Objetivo General: .El objetivo que se desea alcanzar mediante la implementación de este proyecto es apoyar la comunicación entre los actores del proceso de enseñanza-aprendizaje, docente-alumno y entre pares (alumnos, docentes), otorgándoles una herramienta interactiva y de fácil exploración, que les permita la distribución e intercambio de material de enseñanza como textos digitales, artículos, links; proveer un espacio de comunicación asíncrona entre los actores del proceso de enseñanza-aprendizaje y fomentar las relaciones interpersonales

6.2. Objetivos Específicos:

6.2.1. Promover y mantener el mejoramiento de la calidad didáctica de los docentes responsables de la formación académica de los futuros profesionales de la industria.

6.2.2. Promover la realización de convenios específicos con empresas e instituciones que permitan poner en práctica los proyectos formulados por los alumnos y docentes de las diferentes especialidades de nuestra facultad.

6.2.3. Elaborar proyectos de investigación científica y tecnológica, orientadas al desarrollo de las áreas de Agroindustria e Informática.

6.2.4. Constituir Centros Productivos en Unidades Empresariales con un autofinanciamiento económico que permitan prioritariamente cubrir sus necesidades con el costo de producción de bienes y prestación de servicios y coadyuven al cumplimiento de la formación académica.

6.2.5. Contribuir a que la población estudiantil de la Facultad tenga acceso a los servicios básicos que ofrece la Universidad.

7. METODOLOGÍA DE TRABAJO:

Para la realización del proyecto se llevará a cabo una serie de fases que conforman su ciclo de vida, las cuales permitirán alcanzar objetivos que se han planteado para llegar a la meta final que es un “Sistema Informático para la Gestión de Venta de Combustible en una Estación de Servicio”; se ha elegido la metodología “OPEN UP”.

Page 10: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

10

7.1. METODOLOGÍA OPEN UP

El tipo de investigación es del tipo “Aplicada”, la cual se define como utilización de los conocimientos en la práctica, para su aplicación, en la mayoría de los casos, en provecho de la sociedad, en el campo de la informática consiste en la elaboración de nuevos programas de aplicación, mejoras notables en los sistemas de explotación y en los programas de aplicación. La investigación aplicada se encuentra estrechamente vinculada con la investigación básica, pues depende de los resultados y avances de esta última. Además es una actividad que tiene por finalidad la búsqueda y consolidación del saber, y la aplicación de los conocimientos para el enriquecimiento del acervo cultural y científico, así como la producción de tecnología al servicio del desarrollo integral del país.

El nivel de la investigación es de tipo “Descriptiva” ya que servirá para analizar cómo es y cómo se manifiesta el fenómeno estudiado y sus componentes, en un determinado espacio, en su estado actual y tal como se presenta. En nuestro caso describiremos como se lleva a cabo la comunicación entre los actores del proceso de enseñanza-aprendizaje, docente-alumno y entre pares (alumnos, docentes).

7.1.1. Arquitectura Web

La arquitectura web, comprende el diseño y la implementación de estructuras de software de alto nivel. Es el resultado de ensamblar un cierto número de elementos arquitectónicos de forma adecuada para satisfacer la mayor funcionalidad y requerimientos de desempeño de un sistema, así como requerimientos no funcionales, como la confiabilidad, escalabilidad, portabilidad, y disponibilidad.

Generalmente, no es necesario inventar una nueva arquitectura de software para cada sistema de información. Lo habitual es adoptar una arquitectura conocida en función de sus ventajas e inconvenientes para cada caso en concreto.

Así, las arquitecturas más universales son:

Monolítica: Donde el software se estructura en gruposfuncionales muy acoplados.

Cliente-servidor: Donde el software reparte su carga de cómputo en dos partes independientes pero sin reparto claro de funciones.

Arquitectura de tres niveles: Especialización de la arquitectura cliente-servidor donde la carga se divide en tres partes (o capas) con un reparto claro de funciones: una capa para la presentación (interfaz de usuario), otra para

Page 11: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

11

el cálculo (donde se encuentra modelado el negocio) y otra para el almacenamiento (persistencia). Una capa solamente tiene relación con la siguiente.

La Arquitectura que adoptaremos para el desarrollo del software es “Cliente–Servidor”, puesto que usaremos PHP como lenguaje de programación, el cual para una aplicación web requiere un intérprete instalador en el lado del servidor y para su visualización en el lado del cliente, requiere un navegador.

7.1.2. Ingeniería Web basada en UML

En lo que se refiere a la implementación del Sistema Informático se consideró aplicar la metodología RUP (acrónimo de: Proceso Unificado de Desarrollo de Software). RUP es una metodología de desarrollo de software que está basado en componentes e interfaces bien definidas, y junto con el Lenguaje Unificado de Modelado (UML), constituye la metodología estándar más utilizada para el análisis, implementación y documentación de sistemas orientados a objetos. Es un proceso que puede especializarse para una gran variedad de sistemas de software, en diferentes áreas de aplicación, diferentes tipos de organizaciones, diferentes niveles de aptitud y diferentes tamaños de proyecto.

Las principales características de RUP:

Guiado / Manejado por caso de uso

La razón de ser de un sistema de software es servir a usuarios (humanos u otros sistemas). Un caso de uso es una facilidad que el software debe proveer a sus usuarios. Los casos de uso reemplazan la antigua especificación funcional tradicional y constituyen la guía fundamental establecida para las actividades a realizar durante todo el proceso de desarrollo incluyendo el diseño, la implementación y las pruebas del sistema.

Centrado en arquitectura

La arquitectura involucra los elementos más significativos del sistema y está influenciada entre otros por plataformas de software, sistemas operativos, manejadores de base de datos, protocolos, consideraciones de desarrollo como sistemas heredados y requerimientos no funcionales. Es como una radiografía del sistema que estamos desarrollando, lo suficientemente completa como para que todos los implicados en el desarrollo tengan una idea clara de qué es lo que están construyendo, pero lo suficientemente simple como para que si quitamos algo de una parte importante del sistema quede sin especificar.

Iterativo e Incremental: Para hacer más manejable un proyecto se recomienda dividirlo en ciclos. Para cada ciclo se establecen fases de referencia, cada una de las cuales debe ser considerada como

Page 12: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

12

un mini proyecto cuyo núcleo fundamental está constituido por una o más iteraciones de las actividades principales básicas de cualquier proceso de desarrollo.

Utilización de un único lenguaje de modelado

UML es adoptado como único lenguaje de modelado para el desarrollo de todos los modelos.

Las Fases de RUP:

Fase de concepción

Esta fase tiene como propósito definir y acordar el alcance del proyecto con los patrocinadores, identificar los riesgos potenciales asociados al proyecto, proponer una visión muy general de la arquitectura de software y producir el plan de las fases y el de iteraciones.

Fase de elaboración

En la fase de elaboración se seleccionan los casos de uso que permiten definir la arquitectura base del sistema y se desarrollaran en esta fase, se realiza la especificación de los casos de uso seleccionados y el primer análisis del dominio del problema, se diseña la solución preliminar.

Fase de construcción

El propósito de esta fase es completar la funcionalidad del sistema, para ello se deben clarificar los requerimientos pendientes, administrar los cambios de acuerdo a las evaluaciones realizados por los usuarios y se realizan las mejoras para el proyecto.

Fase de transición

El propósito de esta fase es asegurar que el software esté disponible para los usuarios finales, ajustar los errores y defectos encontrados en las pruebas de aceptación, capacitar a los usuarios y proveer el soporte técnico necesario. Se debe verificar que el producto cumpla con las especificaciones entregadas por las personas involucradas en el proyecto.

Page 13: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

13

7.2. Lenguaje de Programación PHP

PHP (acrónimo de: Hypertext Preprocessor), es un lenguaje interpretado de alto nivel embebido en páginas HTML y ejecutado en el servidor. PHP inicio como una modificación a Perl escrita por Rasmus Lerdorf a finales de 1994, pero a diferencia de Java o JavaScript que se ejecutan en el navegador, PHP se ejecuta en el servidor, por eso nos permite acceder a los recursos que tenga el servidor como por ejemplo podría ser una base de datos. El resultado es normalmente una página HTML pero igualmente podría ser una página WML.

Al ser PHP un lenguaje que se ejecuta en el servidor no es necesario que el navegador lo soporte, es independiente del navegador, pero sin embargo para que las páginas PHP funcionen, el servidor donde están alojadas debe soportar PHP. Una de sus características más potentes es su suporte para gran cantidad de bases de datos. Entre su soporte pueden mencionarse InterBase, MSSQL, MySQL, Oracle, Informix, PosgreSQL, entre otras.

El lenguaje PHP ofrece la integración con gran variedad de bibliotecas externas, que permiten al desarrollador dedicarse a la lógica del negocio más que a la programación.

Existen tres campos en los que se usan scripts escritos en PHP.

7.2.1. Scripts del lado del servidor Se necesita un intérprete PHP, un servidor web y un navegador. Es necesario ejecutar el servidor web con PHP instalado. El resultado del programa PHP se puede obtener a través del navegador, conectándose con el servidor web.

7.2.2. Scripts en la línea de comandos Puede crear un script PHP y correrlo sin ningún servidor web o navegador. Sólo se necesita el intérprete PHP para ejecutar este tipo de scripts.

7.2.3. Escribir aplicaciones de interfaz gráfica Probablemente PHP no sea el lenguaje más apropiado para escribir aplicaciones gráficas, pero permite escribir aplicaciones independientes de la plataforma.

La estrategia escogida para el desarrollo de la investigación ha sido “Scripts del lado del servidor” por cuanto la implementación y pruebas del software producto de la investigación requiere de la instalación y configuración de un servidor web con soporte PHP.

7.2.4. Framework QCubed para PHP QCubed es un framework liviano de desarrollo de código abierto para PHP 5 que construye un mapeo de objetos y una interfaz de ABMS (Alta, baja y modificación) utilizando AJAX desde un modelo existente de una base de datos, que puede ser utilizado tanto en pequeñas como en grandes aplicaciones. Este marco de trabajo consiste en dos componentes principales:

El generador de código, es el encargado de abstraer la estructura de una Base de Datos Relacional y construir el ORM, así como también varias interfaces remotas (SOAP, AJAX) para el ORM.

Page 14: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

14

Los Qcomponentes Qcodo usa ORM para el acceso a base de datos. QCubed puede extender su ORM para proveer funcionalidad mantenida por el usuario (via object subclassing). Qforms es un motor de plantillas inspirado en el lenguaje de Microsoft .NET, en el que cada elemento del formulario es un objeto con su funcionalidad en métodos y atributos. Incluye la habilidad de validar campos, disparar eventos, y asociar llamadas AJAX.

Se comunica perfectamente con el ORM, permitiendo a los desarrolladores una rápida e interactiva vía para cambiar cualquiera de los tres componentes de la arquitectura MVC con poco impacto alos otros componentes.

7.3. Sistema Gestor de Base de Datos Relacionales MYSQL Server

MySql es un sistema gestor de bases de datos relacionales en SQL, esto significa que permite la gestión de los datos de una BBDD relacional usando un lenguaje de consulta estructurado. Y, por tanto, que a partir de una oración, MySQL llevará a cabo una determinada acción sobre la base de datos.

Es un producto de código abierto y está desarrollado principalmente para la plataforma Linux, como base de datos relacional, utiliza múltiples tablas para almacenar y organizar la información, se ha convertido en el compañero ideal de PHP.

MySql es una base de datos cliente/servidor, lo cual quiere decir que tenemos un server (daemon) que se ejecuta en segundo plano, a la escucha de las peticiones del programa cliente. En MySql, el daemon o servidor es mysqld y el cliente, mysql.

Las características principales de MySql son:

Es un gestor de base de datos. Una base de datos es un conjunto de datos y un gestor de base de datos es una aplicación capaz de manejar este conjunto de datos de manera eficiente y cómoda.

Es una base de datos relacional. Una base de datos relacional es un conjunto de datos que están almacenados en tablas entre las cuales se establecen unas relaciones para manejar los datos de una forma eficiente y segura. Para usar y gestionar una base de datos relacional se usa el lenguaje estándar de programación SQL.

Es Open Source. El código fuente de Mysql se puede descargar y está accesible a cualquiera, por otra parte, usa la licencia GPL para aplicaciones no comerciales.

Page 15: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

15

Es una base de datos muy rápida, segura y fácil de usar. Gracias a la colaboración de muchos usuarios, la base de datos se ha ido mejorando optimizándose en velocidad. Por eso es una de las bases de datos más usadas en Internet.

Existe una gran cantidad de software que la usa.

MySql es un excelente producto para el almacenamiento seguro de grandes volúmenes de datos complejos. Cualquier aplicación que requiera soporte de bases de datos puede utilizar MySql. Particularmente su uso para aplicaciones de Internet está dado por su velocidad de respuesta frente a otras alternativas comerciales. Como todo servidor de bases de datos, MySql utiliza una estructura de seguridad para acceder a los datos almacenados, por lo tanto, siempre que nos conectemos al servidor deberemos identificarnos mediante un nombre de usuario y una contraseña.

MySql, a diferencia de otros productos de administración de bases de datos, no viene con una interfaz gráfica incorporada, sin embargo, existe un intérprete de comandos que permite la interacción con el servidor. Utiliza la sintaxis Standard ANSI-SQL para la manipulación de las bases de datos.

7.4. Modelo Vista Controlador

La arquitectura MVC separa la lógica de negocio (el modelo) y la presentación (la vista) por lo que se consigue un mantenimiento más sencillo de las aplicaciones.

Si por ejemplo una misma aplicación debe ejecutarse tanto en un navegador estándar como un navegador de un dispositivo móvil, solamente es necesario crear una vista nueva para cada dispositivo; manteniendo el controlador y el modelo original.

El controlador se encarga de aislar al modelo y a la vista de los detalles del protocolo utilizado para las peticiones (HTTP, consola de comandos, email, etc.).

El modelo se encarga de la abstracción de la lógica relacionada con los datos, haciendo que la vista y las acciones sean independientes de, por ejemplo, el tipo de gestor de bases de datos utilizado por la aplicación.

Modelo: Componente encargado del acceso a datos, es la representación específica de la información con la cual el sistema opera. En resumen, el modelo se limita a lo relativo de la vista y su controlador facilitando las presentaciones visuales complejas. El sistema también puede operar con más datos no relativos a la presentación, haciendo uso integrado de otras lógicas de negocio y de datos afines con el sistema modelado.

Page 16: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

16

Vista: Este presenta el modelo en un formato adecuado para interactuar, usualmente la interfaz de usuario. Define la interfaz de usuario, HTML+CSS… enviados en el navegador. Controlador: Este responde a eventos, usualmente acciones del usuario, e invoca peticiones al modelo y, probablemente, a la vista.

Muchos de los sistemas informáticos utilizan un Sistema de Gestión de Base de Datos para gestionar los datos: en líneas generales del MVC corresponde al modelo. La unión entre capa de presentación y capa de negocio conocido en el paradigma de la Programación por capas representaría la integración entre Vista y su correspondiente Controlador de eventos y acceso a datos, MVC no pretende discriminar entre capa de negocio y capa de presentación pero si pretende separar la capa visual gráfica de su correspondiente programación y acceso a datos, algo que mejora el desarrollo y mantenimiento de la Vista y el Controlador en paralelo, ya que ambos cumplen ciclos de vida muy distintos entre sí.

Aunque se pueden encontrar diferentes implementaciones de MVC, el flujo que sigue el control generalmente es el siguiente:

El usuario interactúa con la interfaz de usuario de alguna forma (i.e. el usuario pulsa un botón, enlace, etc)

El controlador recibe (por parte de los objetos de la interfaz-vista) la notificación de la acción solicitada por el usuario. El controlador gestiona el evento que llega.

El controlador accede al modelo, actualizándolo, posiblemente modificándolo de forma adecuada a la acción solicitada por el usuario (por ejemplo, el controlador actualiza el carro de la compra del usuario). Los controladores complejos están a menudo estructurados usando un patrón de comando que encapsula las acciones y simplifica su extensión.

El controlador delega a los objetos de la vista la tarea de desplegar la interfaz de usuario. La vista obtiene sus datos del modelo para generar la interfaz apropiada para el usuario donde se reflejan los cambios en el modelo (por ejemplo, produce un listado del contenido del carro de la compra). El modelo no debe tener conocimiento directo sobre la vista.

La interfaz de usuario espera nuevas interacciones del usuario, comenzando el ciclo nuevamente.

Page 17: Planeación de Tesis Mc Pool

Planeación del Trabajo de Graduación

17

8. BIBLIOGRAFIA

8.1. Libros 1. Andrés Zavala, A. (2006). Metodología de la Investigación Científica 3era Edición.

. Perú: San Marcos.

2. Booch, G., Rumbaugh, J., & Jacobson, I. (1999). El lenguaje Unificado de

Modelado. España: Addison Wesley Ibeoamerica.

3. Hernández Sampieri, R., Fernández Collado, C., & y Baptista Lucio, P. (2003).

Metodología de la Investigación - 3era Edición. México: Mc Graw Hill.

4. Liza Ávila, C. (2001). Modelando con UML - Principios y Aplicaciones - 1era

Edición. Perú: Imprenta TJ S Ltda.

5. Odriozola Celaya J. La Empresa en la Web 2.0, El impacto de las redes sociales y las nuevas formas de comunicación online en la estrategia empresarial. España: Barcelona; 2008.

6. Stephens, R. (2009). Diseño de bases de datos 1era Edición. España: Anaya

Multimedia.

8.2. Información Digital 7. Modelado e Implementación del Servicio De Red Social Para la Facultad de

Ingeniería Industrial De La Universidad Nacional de Piura. Recuperado el 15 de Julio del 2015 http://cip.org.pe/imagenes/temp/tesis/44669664.pdf

8. Cuota del Mercado de Servidores Webs Recuperado el 15 de Julio del 2015, de http://news.netcraft.com/archives/2011/09/06/september-2011-web-serversurvey.html#more-4943

9. Servicio de Redes Sociales (I), desenredando la madeja Recuperado el 15 de Julio del 2015, de http://jjdeharo.blogspot.com/2010/07/servicios-de-redes-sociales-i.html

10. Metodología RUP Recuperado el 15 de Julio del 2015, de http://bibliotecakatherinebrecht.blogspot.com/2011/04/metodologia-rup.html

11. Qcubed Tutorial Recuperado el 15 de Julio del 2015, de http://trac.qcu.be/projects/qcubed/wiki/Tutorials

8.3. Otros

Formato de Planeación de Tesis de la Facultad de Ingeniería Informática