Proyecto De Grado

  • Uploaded by: David Jaramillo
  • 0
  • 0
  • February 2021
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Proyecto De Grado as PDF for free.

More details

  • Words: 16,689
  • Pages: 112
Loading documents preview...
Contenido MÓDULO I: REFERENCIA DEL PROYECTO. ................................................. 6 1.1 PLANTEAMIENTO ...................................................................... 6 1.4 OBJETIVOS ........................................................................... 10 1.4.1 Objetivo general ............................................................... 10 1.4.2 Objetivos específicos ......................................................... 10 1.5 METODOLOGÍA ......................................................................... 11 1.5.1 Tipo de estudio ................................................................ 11 1.5.2 Etapas del proyecto ........................................................... 11 1.5.2.1 Recolección y análisis de requerimientos ............................... 11 1.5.2.2 Construcción de la base de datos ......................................... 12 1.5.2.4 Etapa de prueba y ajustes ................................................. 12 MÓDULO II. BASES TEORICAS ............................................................. 17 2.1 RESEÑA HISTÓRICA ................................................................. 17 2.2 MARCO TEÓRICO .................................................................... 19 2.2.1 TECNOLOGIAS DE LA COMUNICACIÓN E INFORMACION (TIC) ............ 19 2.2.1.1 Definición .................................................................... 19 2.2.1.2 Propósito de las Tics ........................................................ 19 2.2.2 BASE DE DATOS ................................................................ 22 2.2.3 PROGRAMAS Y LENGUAJES DE PROGRAMACIÓN .............................. 27 2.2.3.1 MySQL ......................................................................... 27 Ventajas de usar MySQL. ............................................................ 28 2.2.3.2 PHP ............................................................................ 29 2.2.3.3 Como funcionan juntos MySQL y PHP .................................... 31 2.2.3.4 JAVASCRIPT .................................................................. 33 2.2.3.5 HTML. ......................................................................... 34 2.2.4 DOCUMENTACIÓN. .................................................................. 37 3.1 RECOLECCIÓN Y ANÁLISIS DE INFORMACIÓN. ................................... 39 3.2 REQUERIMIENTOS ................................................................ 40 3.2.1 Funcionales ..................................................................... 40 3.2.2 No Funcionales ................................................................. 41 3.3 ARQUITECTURA DEL SISTEMA ................................................... 42

3.4 CONTEXTO DEL SISTEMA ........................................................... 43 3.4.1 Actores Del Sistema. .......................................................... 43 3.5

DIAGRAMAS DEL SISTEMA. ...................................................... 44

3.5.1 DIAGRAMA DE CLASES ......................................................... 44 3.5.2 DIAGRAMA DE CASOS DE USO ................................................ 47 3.5.2.1 Descripción de los casos de uso ........................................... 49 3.5.3 DIAGRAMAS DE FLUJO ......................................................... 60 3.5.4 DIAGRAMA RELACIONAL ...................................................... 64 3.5.4.1 Diccionario de datos ........................................................ 66 3.6.1

Diseño de la Interfaz Gráfica ............................................. 70

3.6.4 Otros Requerimientos Funcionales ............................................... 78 MÓDULO IV: PRUEBAS DEL SOFTWARE .................................................. 79 4.1 Requisitos Mínimos del Sistema .................................................. 79 4.2 DISEÑO DE PRUEBAS ................................................................ 80 4.3 IMPLEMENTACIÓN DE PRUEBAS Y RESULTADOS ................................. 81 4.3.1 Registro de Profesionales .................................................... 81 4.3.2 Registro de Anteproyecto .................................................... 90 4.3.3

Seguimiento Trabajos de Grado .......................................... 91

4.3.4 Consulta General ............................................................. 103 4.3.5 Consulta Avanzada ........................................................... 105 CONCLUSIONES ............................................................................ 108 BIBLIOGRAFIA ............................................................................. 111

ÍNDICE DE IMÁGENES ILUSTRACIÓN 1.ARQUITECTURA DE TRES (3) CAPAS DEL SISTEMA ................................. 42 ILUSTRACIÓN 2. DIAG. DE CONTEXTO DEL SISTEMA............................................... 43 ILUSTRACIÓN 3. DIAGRAMA DE CLASES ........................................................... 46 ILUSTRACIÓN 4. DIAG. CASOS DE USO (INTERACCIÓN USUARIO) .................................. 47 ILUSTRACIÓN 5. DIAG. CASOS DE USO (INTERACCIÓN ASISTENTE COORD.) ........................ 48 ILUSTRACIÓN 6. DIAG. CASOS DE USO (INTERACCIÓN COORD. PROGRAMA) ........................ 48 ILUSTRACIÓN 7. CONSULTA GENERAL DE PROYECTO .............................................. 60 ILUSTRACIÓN 8. CUENTA ASISTENTE COORDINADOR. ............................................. 62 ILUSTRACIÓN 9. CUENTA COORDINADOR DE PROGRAMA .......................................... 63 ILUSTRACIÓN 10. MODELO RELACIONAL DE LA BD PARA LA APLICACIÓN WEB ...................... 65 ILUSTRACIÓN 11. ÁRBOL DE DIRECTORIOS PARA LA APLICACIÓN WEB .............................. 71 ILUSTRACIÓN 12. PÁGINA DE INICIO ............................................................. 74 ILUSTRACIÓN 14. SECCIÓN ASISTENTE DE COORDINACIÓN ......................................... 81 ILUSTRACIÓN 15. MÓDULO DE ADMINISTRACIÓN DE PROFESIONALES ............................... 86 ILUSTRACIÓN 16. MÓDULO DE ADMÓN. DE PROFESIONALES HABILITADO PARA REGISTRO ........... 87 ILUSTRACIÓN 17. REGISTRO DE PROFESIONALES .................................................. 88 ILUSTRACIÓN 18. FORMULARIO REGISTRO FICHA TÉCNICA TRABAJOS DE GRADO.................... 90 ILUSTRACIÓN 19. GESTIÓN DE TRABAJOS DE GRADO CON ESTADO 'EN ESPERA' ..................... 92 ILUSTRACIÓN 20. PUESTA EN MARCHA DE UN TRABAJO DE GRADO................................. 93 ILUSTRACIÓN 21. FICHA TÉCNICA REDUCIDA DEL PROYECTO A PONER EN MARCHA ................. 94 ILUSTRACIÓN 22. LISTADO DE ANTEPROYECTOS EN CURSO ........................................ 95 ILUSTRACIÓN 23. MÓDULO DE APROBACIÓN DE ANTEPROYECTOS.................................. 96 ILUSTRACIÓN 24. LISTADO DE PROYECTOS APROBADOS Y EN CURSO ............................... 98 ILUSTRACIÓN 25. PRESENTACIÓN DE INFORMES A UNA PROYECTO DE GRADO ...................... 99 ILUSTRACIÓN 26. SECCIÓN DE SEGUIMIENTO DE PROYECTOS TERMINADOS ....................... 101 ILUSTRACIÓN 27. MÓDULO DE CARGA DE DOCUMENTO RELACIONADO CON UN TRABAJO DE GRADO 102 ILUSTRACIÓN 28. CONSULTA DE TRABAJOS DE GRADO DESDE LA PÁGINA DE INICIO ............... 103 ILUSTRACIÓN 29. MÓDULO DE CONSULTA GENERAL DE TRABAJOS DE GRADO..................... 104 ILUSTRACIÓN 30. MÓDULO DE CONSULTA AVANZADA DE TRABAJOS DE GRADO (COORD.) ......... 105 ILUSTRACIÓN 31. CONSULTA AVANZADA (COORD.)............................................. 106

ÍNDICE DE TABLAS TABLA 1. CASO DE USO (BUSCAR TRABAJOS DE GRADO) ......................................... 49 TABLA 2. CASO DE USO (VER FICHA TÉCNICA)................................................... 49 TABLA 3. CASO DE USO (VER DOCUMENTO) ..................................................... 50 TABLA 4. CASO DE USO (LOGIN) ............................................................... 50 TABLA 5. CASO DE USO (GESTIONAR PROFESIONAL) ............................................. 51 TABLA 6. CASO DE USO (REGISTRAR PROFESIONAL) ............................................. 51 TABLA 7. CASO DE USO (EDITAR PROFESIONAL) ................................................. 52 TABLA 8. CASO DE USO (REALIZAR CONSULTA AVANZADA) ....................................... 53 TABLA 9. CASO DE USO (REGISTRA FICHA ANTEPROYECTOS) ..................................... 53 TABLA 10. CASO DE USO (REGISTRAR DIRECTOR EMPRESARIAL) .................................. 54 TABLA 11. CASO DE USO (REGISTRAR ESTUDIANTES) ............................................ 54 TABLA 12. CASO DE USO (EDITAR ESTUDIANTE) ................................................. 55 TABLA 13. CASO DE USO (REALIZAR SEGUIMIENTO ANTEPROYECTOS) ............................ 56 TABLA 14. CASO DE USO (PONER EN MARCHA ANTEPROYECTO) .................................. 56 TABLA 15. CASO DE USO (EDITAR ANTEPROYECTO) ............................................. 57 TABLA 16. CASO DE USO (ANULAR ANTEPROYECTO) ............................................ 57 TABLA 17. CASO DE USO (VALIDAR CONCEPTO) ................................................. 58 TABLA 18. CASO DE USO (CAMBIAR DIRECTOR) ................................................. 58 TABLA 19. CASO DE USO (RETIRAR ESTUDIANTE)................................................ 59 TABLA 20. USUARIOS (MYSQL) ................................................................. 66 TABLA 21. ESTUDIANTES (MYSQL) ............................................................. 66 TABLA 22. PROFESIONAL (MYSQL) ............................................................. 66 TABLA 23. LINEA_INVESTIGACION (MYSQL) .................................................... 67 TABLA 24. PROYECTO_GRADO (MYSQL) ........................................................ 67 TABLA 25. BUSCADOR_PROYECTO (MYSQL) ..................................................... 68 TABLA 26. EVALUA_PROYECTOS (MYSQL) ...................................................... 68 TABLA 27. REALIZA_PROYECTO (MYSQL) ....................................................... 68 TABLA 28. INFORME_PROYECTO (MYSQL) ...................................................... 69

INTRODUCCIÓN

Hoy día el manejo de la información juega un papel fundamental en cualquier empresa o institución, indistintamente si su objeto social ha sido definido con fines de lucro o si su orientación es de una índole no lucrativa. A medida que los volúmenes de información que maneja una organización se incrementan se hace necesario el uso de herramientas que simplifiquen las tareas de administrar los datos y de consultar la información cuando los usuarios lo requieran, obteniendo un mayor rendimiento en el manejo de sus enormes conjuntos de datos. Los sistemas de base de datos se han constituido en una de las herramientas más ampliamente difundida en la actual sociedad de la información, utilizada para almacenar, custodiar, administrar y recuperar la información, siendo empleada en múltiples campos a nivel científico, social, económico, político y cultural. En este entorno, la facultad de ingeniería de la universidad del atlántico debe asumir el reto que la modernización exige y recurrir al desarrollo de una aplicación informática que facilite el control y manejo de los proyectos de grado. Este trabajo presenta el diseño de una base de datos y el desarrollo de una aplicación informática para el control y manejo de los trabajos de grado ejecutados en la facultad de ingeniería.

MÓDULO I: REFERENCIA DEL PROYECTO.

1.1 PLANTEAMIENTO Dada la importancia de la investigación en el crecimiento profesional de los estudiantes, la facultad de Ingeniería de la Universidad del Atlántico les brinda a estos la oportunidad de optar al título de Ingeniero mediante un proyecto de grado. Este proyecto debe ser un estudio dirigido a necesidades o problemas concretos aplicando los conocimientos obtenidos a lo largo de los diez semestres cursados. En su realización participan tanto docentes como estudiantes y en él se pueden plantear problemáticas donde los docentes suelen tener sus propias propuestas de proyectos a las cuales el estudiante puede optar, de esta manera se crean los roles de Director de Tesis y Autor(es) de la misma, Para oficializar el proyecto se debe presentar un documento; que identifica y precisa las ideas que construye el núcleo del problema de investigación, este se somete a un comité de evaluación el cual determina su viabilidad para su desarrollo como proyecto de grado en sí. Actualmente en la facultad de Ingeniería de la Universidad del Atlántico se llevan registros de los anteproyectos en un archivo manual diligenciado en el formato FFI-36 los cuales reposan en cada coordinación de programa. En estos formatos se detalla la información general relacionada con el proyecto que representa, en donde incluyen los datos de los estudiantes a cargo, el director y los respectivos evaluadores. Este registro permite hacer un seguimiento a la finalización o no de los anteproyectos.

Los proyectos de grado son recopilados en medios físicos y digitales (CD) y almacenados en cada una de las coordinaciones de los programas de Ingeniería Mecánica, Industrial, Química y Agroindustrial, sin embargo, no hay definido un procedimiento tal que permita estandarizar el manejo que se le da a estos documentos. Estas situaciones dificultan el acceso a información concerniente de los proyectos de grado de forma oportuna, que se hace evidente cuando se desea o se requiere consultar información al respecto por parte de la comunidad académica, generando como consecuencia los siguientes inconvenientes o problemas.  Dificultad en el control de la información de los proyectos ejecutados  Demoras en la emisión de certificaciones de participación en proyectos, ya sea en calidad de ejecutor o evaluador del mismo.  Dificultad para consultar información de los trabajos de grado existentes. Inconvenientes que han evidenciado los profesores del programa como la directora del presente proyecto en las múltiples ocasiones que se ha desempeñado como miembro de comité. Cada una de las situaciones citadas pone evidencia que la Facultad de Ingeniería y la Universidad del Atlántico requiere de aplicaciones informáticas que faciliten el control y manejo de información.

1.2 FORMULACIÓN

Para resolver el problema anteriormente descrito se debe responder el siguiente interrogante:  ¿Puede la construcción de una Aplicación informática agilizar la administración de información relacionada con el control y manejo de los Trabajos de grado en la Facultad de Ingeniería? Este interrogante es complementado con los siguientes cuestionamientos, los cuales aportarán a la construcción de una solución efectiva a la problemática  ¿Cuáles son los principales requerimientos de información concerniente a la administración de los trabajos de de grado?  ¿Qué factores se deben tomar en consideración al momento de almacenar y organizar información términos de datos en una Base de datos?  ¿Cómo puede un usuario acceder a información de manera eficiente y como puede la aplicación facilitar el control de las actividades administrativas?

1.3 JUSTIFICACIÓN

La Universidad del Atlántico es una Institución que se ha caracterizado por asegurar la excelencia en la educación impartida y el mejoramiento continuo de la misma acorde con las tendencias actuales. Partiendo de esta consigna este proyecto se justifica porque provee un medio que permitirá a la Facultad de Ingeniería de la Universidad del Atlántico, sistematizar información referencial de los anteproyectos y los proyectos de grados ejecutados por los estudiantes para optar a su titulación como ingenieros, facilitando el acceso y control de la información a las directivas y otras partes interesadas en tiempo presente y a futuro. Con esta herramienta, se podrá no solo gestionar la información de los proyectos que reposan en los archivos de la institución, sino de aquellos que se desarrollen en adelante, toda vez que la universidad destine recursos humanos y técnicos necesarios para realizar la labor de digitalización de la información. La sistematización de esta información permitirá una administración eficiente contando con todas las ventajas de un sistema de base de datos, como acceso eficiente a los datos, integridad y seguridad de los datos, administración de los datos, concurrencia de usuarios y recuperación en caso de fallo. Otra razón por la cual este proyecto es justificable es porque permite la sistematización del conocimiento y promueve el desarrollo de futuras herramientas computacionales en nuestra Alma Mater.

1.4 OBJETIVOS

1.4.1 Objetivo general  Diseñar una Aplicación Informática que facilite el control y manejo de los Trabajos de grado e información relacionada. Caso: Programa de Ingeniería Industrial.

1.4.2 Objetivos específicos  Determinar los requerimientos de información para el control y manejo de los Proyectos de grado y entidades relacionadas.  Crear una Base de datos de los Proyectos de grado e información relacionada.  Desarrollar una Aplicación que facilite las funciones de: ingreso, procesamiento y consulta de información de la Base de Datos.  Validar el funcionamiento de la aplicación sometiéndolo a una prueba piloto de sus funciones principales.  Documentar la estructura y funcionamiento de la Aplicación, mediante la creación de un manual de usuario para el operador de la aplicación, un manual de instrucciones para el administrador(es) del sistema en las dependencias de la Universidad

1.5 METODOLOGÍA

1.5.1 Tipo de estudio El presente estudio se considera de tipo aplicado-explicativo con base en la fundamentación teórica y los aportes de los diferentes actores que intervienen en el proceso formativo.

1.5.2 Etapas del proyecto La metodología que se utilizara para llevar a cabo el proyecto constara de 6 etapas descritas a continuación: 1.5.2.1 Recolección y análisis de requerimientos Recolección de información por medio de entrevistas organizadas con los usuarios (encargado(s) del control administrativo de los trabajos de grado); parar determinar las necesidades de información. También se analizarán los detalles de aplicación y los procedimientos u operaciones que se deben construir sobre los datos almacenados. Se usará el método de entrevistas porque es la manera más directa, eficaz y concreta que nos permitirá establecer las necesidades y expectativas con respecto al aplicativo a desarrollar.

1.5.2.2 Construcción de la base de datos Se desarrollara una descripción de los datos que se van a almacenar en la base de datos, junto con las restricciones que se impondrán sobre ellos. En esta etapa se escoge un Sistema Gestor de Base de Datos que implemente el diseño de la base de datos. Se analizará el conjunto de relaciones del esquema relacional de la base de datos para identificar posibles problemas y refinarlos. Una vez se disponga de buen esquema lógico se diseñará el esquema físico. Este esquema físico implica la consideración de cargas de trabajo para garantizar un buen rendimiento. La realización de esta etapa varía y depende del SGBD que se escoja, actualmente los software que se tienen en cuenta manejan herramientas similares de optimización solo varían en términos de lenguaje y uso. 1.5.2.4 Etapa de prueba y ajustes En esta etapa se pondrán a prueba, la aplicación y el rendimiento de la base de datos, inicialmente se alimentará la base de datos con la información almacenada por coordinación referente a los trabajos de grado en ejecución y una muestra de proyectos desarrollados en el programa, sobre los cuales experimentaremos para probar los criterios de tiempo, accesibilidad y usabilidad. La prueba consiste en medir la veracidad e integridad de la información, tiempo de espera de la respuesta mediante una consulta común en la que se espera se muestren los resultados esperados de la consulta con un tiempo de espera bajo. Se iterará el proceso para comprobar la existencia de problemas en el sistema.

Por último el desarrollo de un guía de usuario en el que se encontrarán las instrucciones para la administración de información de los trabajos de grado y uso de la aplicación. En este se detallarán las funciones, limitaciones, capacidad y la forma de agregar o eliminar información y una guía básica de su uso a nivel general.

GLOSARIO



Aplicación informática. Es el conjunto de uno o varios programas que permiten la interacción entre el usuario y la computadora más la documentación correspondiente para realizar un determinado trabajo. Esta comunicación se lleva a cabo cuando el usuario elige entre las diferentes opciones o realiza actividades que le ofrece el programa.



Base de Datos. Es un conjunto de datos almacenados entre los que existen relaciones lógicas y ha sido diseñada para satisfacer los requerimientos de información. En una base de datos, además de los datos, también se almacena su descripción.



Base de Datos relacional. Base de datos que se compone por un conjunto de tablas de datos relacionadas por un campo en común.



Entidad. Cualquier objeto u elemento (real o abstracto) acerca del cual se pueda almacenar información en la base de datos. Es decir cualquier elemento informativo que tenga importancia para una base de datos. Ejemplo: una persona, un producto o un pedido.



MySQL.Es un sistema de administración de bases de datos relacional (SGBDR).Se trata de un programa capaz de almacenar una enorme cantidad de datos de gran variedad y de distribuirlos para cubrir las necesidades de cualquier tipo de organización.



HTML, es la abreviatura de HyperTextMarkupLanguage, y es el lenguaje que todos los programas navegadores usan para presentar información en la World Wide Web (WWW).



Hoja de Estilo en Cascada o CSS, Las hojas de estilos en cascada (CSS) son un conjunto de reglas de formato que controlan el aspecto del contenido de una página Web.



PHP, "HipertextoPreprocessor". Es un lenguaje "Open Source" interpretado de alto nivel, especialmente pensado para desarrollos web y el cual puede ser embebido en páginas HTML.



SQL (StructuredQueryLanguage). Lenguaje de consulta estructurado. El estándar aceptado internacionalmente para sistemas de base de datos relacionales, que incluye no solo la consulta sino también la definición de datos, manipulación, seguridad y algunos aspectos de integridad referencial.



Requerimientos

de

Software.

Son

la

descripción

de

los

servicios

proporcionados por el sistema y sus restricciones operativas. Estos requerimientos reflejan las necesidades de los clientes de un sistema. A menudo, los requerimientos de sistemas software se clasifican en funcionales y no funcionales. 1. Requerimientos Funcionales. Son declaraciones de los servicios que debe proporcionar el sistema, de la manera en que éste debe reaccionar a entradas particulares y de cómo se debe comportar en situaciones particulares.

2. Requerimientos no Funcionales. Son restricciones de los servicios o funciones ofrecidos por el sistema. Incluyen restricciones de tiempo, sobre el proceso de desarrollo y estándares. Los requerimientos no funcionales a menudo se aplican al sistema en su totalidad. Normalmente se aplican a características o servicios individuales del sistema.

MÓDULO II. BASES TEORICAS

2.1 RESEÑA HISTÓRICA

En el pasado, cualquier organización pequeña era capaz de darle seguimientos a los datos mediante un sistema de archivo manual. Dicho sistema de archivos tradicionalmente se componía de carpetas, cada una con su etiqueta y se guardaban en un archivo. Mientras, la cantidad de datos fuera relativamente pequeña el sistema de archivo manual realizaba bien su labor como depósito de datos; sin embargo, a medida que las organizaciones crecieron las necesidades de presentar informes se volvieron más complejas, haciendo de este sistema difícil llevar y la generación de reportes lenta y tediosa. Por consiguiente, la premura motivo el diseño de un sistema computarizado que diera seguimiento a los datos y que produjera los reportes necesarios1. Los sistemas informáticos tradicionales también llamados sistemas orientados hacia el proceso, debido a que en ellos se pone énfasis en los tratamientos que reciben los datos, los cuales se almacenan en ficheros diseñados para una determinada aplicación. Tales aplicaciones se analizan e implantan con entera independencia unas de otras, y los datos no se suelen transferir entre ellas, sino que se duplican siempre que los correspondientes trabajos los necesitan2.

1

ROB Peter, CORONEL Carlos. Sistemas de bases de datos: Diseño, implementación y administración: Cengage Learning Editores. 2004. p.10.

2

Sistemas de base de datos [En línea] Citado 1 de octubre de 2008.

Este planteamiento produce una ocupación inútil de memoria secundaria, un aumento de los tiempos de proceso, al repetirse los mismos controles y operaciones en los distintos ficheros. Pero más graves todavía son las inconsistencias que a menudo se presentan en estos sistemas, debido a que la actualización de los mismos datos, cuando se encuentran en más de un fichero, no se suele realizar de forma simultánea en todos los ficheros Los problemas son aún más acusados cuando se presentan demandas inesperadas de información3. El concepto de base de datos surgió como propuesta de solución a un conjunto de problemas técnicos y administrativos en el manejo de grandes cantidades información. A medida que los sistemas de información se volvían más complejos y se extendían a nuevas áreas de la empresa o institución, las dificultades en mantener su funcionamiento y costo bajo control se acentuaban.4 En los sistemas de bases de datos, los programas de aplicaciones tienen acceso a los archivos que componen la base de datos, mediante un software llamado sistema gestor de base de datos SGBD. Estas aplicaciones se ejecutan como procesos separados que se conectan con el SGBD para interactuar con él y gestionar los datos. Por consiguiente, la base de datos representa un cambio en la manera de almacenar, introducir y manejar los datos para el usuario final. En una base de datos los datos son recogidos y almacenados una sola vez, con independencia de los tratamientos. En los sistemas de base de datos, los datos se organizan y mantienen en un conjunto estructurado que no está diseñado para una aplicación concreta, sino que, por el contrario, tiende a satisfacer las necesidades de información de la organización o empresa. 3

4

Ibíd.

MENDELSON, Ale. Introducción a las base de datos relacionales: Prantice Hall - Pearson Education, Addison Wesley, 2000. p.1.

2.2 MARCO TEÓRICO

2.2.1 TECNOLOGIAS DE LA COMUNICACIÓN E INFORMACION (TIC) 2.2.1.1 Definición Las

tecnologías de la Información y la comunicación (TIC) cubren cualquier

aplicación o servicio de comunicación: multimedia, teléfonos celulares, computadores y software y hardware de red, sistemas satelitales y servicios similares asociados a plataformas de aprendizaje. 5 Estas constituyen nuevas tecnologías (Conocimiento, metodologías, técnicas y herramientas) que sirven para organizar, procesar, manejar, producir, intercambiar, procesar, almacenar, sintetizar, recuperar y presentar información a través de diferentes herramientas multimedia (imagen, video, sonido, texto). En síntesis, son un conjunto de herramientas para el procesamiento y manejo de la información de forma inmediata.

2.2.1.2 Propósito de las Tics El propósito principal de una TIC es

el uso y el acceso a la información de

manera sofisticada, mediante el mejoramiento del procesamiento de datos, facilitar la producción y manejo de la información y generar nuevos canales de comunicación organizacional a través de medios informáticos. En la actualidad, la utilización de redes como la Internet y la complejidad de los sistemas informáticos actuales ha llevado a la modificación de los ámbitos cotidianos de 5

[En línea] Citado el 8 de junio de 2009.

trabajo generando un impacto en la mejora de la calidad de servicios, y en la capacidad de anticipación y respuesta ante situaciones de riesgo. Este manejo de la información ha producido un proceso de convergencia tecnológica de distintas áreas

del

conocimiento,

llevando

consigo

acciones

de

tratamiento

y

comunicación de la información.6

2.2.1.3 Componente base de las Tics7 Este tipo de tecnologías se compone de tres elementos fundamentales:  Hardware: Funcionan como un soporte físico común. Este resuelve los problemas relacionados con la interacción con el entorno, como la adquisición y la presentación de la información mediante dispositivos de entrada como son transductores, tarjetas de sonido, tarjetas gráficas, etc. También está presente en todas las funciones de comunicación, almacenamiento y registro.  Software: Traslada las órdenes que un usuario ingresa desde la computadora al lenguaje de ejecución de órdenes que se encuentra a nivel de la máquina. Está presente en todas las funcionalidades del proceso de la información, especialmente en el tratamiento de la información.  Infraestructuras

de

comunicación:

permiten

la

distribución

(descentralización) de los diferentes elementos del proceso de manejo de información en ámbitos geográficos distintos. 2.2.1.4 Software 6

7

[En línea] Consulta realizada el 8 de junio de 2009. Ibíd.

El software o soporte lógico es el conjunto de instrucciones escritas en lenguajes de programación y traducidas posteriormente a dígitos binarios para que sean entendidas por el hardware. Está presente en todas las funcionalidades del proceso de la información, pero especialmente en el tratamiento de la información. La tecnología software está presente en todos los procesos de información, ya que dichas funciones son realizadas cada vez con mayor intensidad por ordenadores. Los distintos componentes bases del software son:  Sistemas Operativos: Para el control de las complejas arquitecturas que pueden construirse con los componentes microelectrónicos y facilitar interfaces amigables con el usuario.  Middleware: Es la parte de la arquitectura encargada de abstraer a las aplicaciones de los detalles de las plataformas de explotación, mediante las ApplicationPrograms Interfaces (APIs).  Cliente/Servidor: La arquitectura cliente/servidor reparte la carga de trabajo entre la estación de usuario y la estación central.  Bases de Datos: Para el manejo, manipulación y administración de información.  Programas de Aplicación: Software para la realización de tareas variadas como puedan ser hojas de cálculo, proceso de textos, aplicaciones de gestión comercial, científicas, de diseño, etc.

 Lenguajes de Programación y Herramientas para la Ingeniería Software: Conjunto de lenguajes y herramientas de ayuda al desarrollo de la realización de aplicaciones específicas.

2.2.2 BASE DE DATOS Cuando un conjunto de datos se almacenan en una única estructura, se llama Base de Datos. Una “Base de Datos, es un conjunto de datos almacenados entre los que existen relaciones lógicas y ha sido diseñada para satisfacer los requerimientos de información de una empresa u organización”8. En una Base de Datos, además de los datos, también se almacena su descripción. Un sistema gestor de bases de datos o SGBD (aunque se suele utilizar más a menudo las siglas DBMS procedentes del inglés, Data Base Management System) es el software que permite a los usuarios procesar, describir, administrar y recuperar los datos almacenados en una base de datos. En estos sistemas se proporciona un conjunto coordinado de programas, procedimientos y lenguajes que permiten a los distintos usuarios realizar sus tareas habituales con los datos, garantizando además la seguridad de los mismos. Actualmente se utilizan muchos tipos de sistemas gestores de base de datos relacionales (SGBDR), que son por mucho, el tipo de SGBD dominante hoy en día. 2.2.2.1 Descripción y almacenamiento de datos en la Base de datos9.

8

Sistema de bases de datos [En línea] Citado el 19 de marzo de 2009. 9

RAMAKRISHNAN y GEHRKE, Op. cit., p.11.

Los datos que hay que almacenar describen diversos aspectos de una empresa u organización. Por ejemplo, en las universidades hay alumnos, profesores y asignaturas, y los datos de las bases de datos de las universidades describen esas entidades y sus relaciones. Un modelo de datos es conjunto de estructuras descriptivas de datos de alto nivel que oculta muchos detalles de almacenamiento de bajo nivel. Los SGBD permiten a los usuarios definir los datos que se van a almacenar en términos de un modelo de datos. La mayor parte de los sistemas actuales de gestión de base de datos se basan en el modelo relacional de datos.

2.2.2.3 Modelo relacional10. El modelo relacional de datos, se basa en conjunto relaciones, cada una de las cuales es una tabla. En una base de datos universitaria por ejemplo, esas relaciones contienen información sobre entidades, como alumnos y el profesorado, y sobre relaciones como la matrícula de los alumnos en las asignaturas. Cada conjunto de entidades y cada conjunto de relaciones pueden describirse como relaciones, lo que conlleva al siguiente esquema conceptual: Alumnos (ide: string, nombre: string, usuarios: string, edad: integer, nota: real) Profesores (idp: string, nombrep: string, titulación: string) Asignaturas (ida: string, nombrea: string, créditos: integer) Aulas (nau: integer, dirección: string, capacidad: integer) Matriculado (ide: string, ida: string, curso: string) Imparte (idp: string, ida: string) Impartida en (ida: string, nau: integer, hora: string) 10

Ibíd. p. 12-13.

El esquema alumnos indica que cada registro de la relación alumnos tiene cinco campos, con los nombres y tipos de los campos que se indican en la tabla alumnos. Cada relación se especifica por un esquema que especifica el nombre de la relación, el de cada campo y el dominio de cada campo. Así el dominio de cada campo es, esencialmente, el tipo de ese campo, en términos de los lenguajes de programación, y restringe los valores que pueden aparecer en él.

Componentes de la base de datos relacional.11  Los datos son los valores que se almacenan en la base de datos. Por si solos no tienen mucho significado.  La información son los datos procesados.  Una base de datos es un conjunto de tablas.

11

GILFILLAN Ian, La Biblia de MySQL: Anaya multimedia, 2003. p. 288.

 Cada tabla se compone de una gran cantidad de filas y columnas.  Cada fila contiene datos sobre una sola entidad (como un estudiante o u producto). Estos datos se conocen como registros. Cada registro debe ser exclusivo y puede almacenarse en cualquier orden dentro de la tabla.  Cada registro se compone de campos (las columnas, que también se conocen como atributos). Básicamente, un registro es un hecho (por ejemplo, un nombre de usuario o una Identificación).  Los campos puede ser de varios tipos. pero por regla general se pueden clasificar en tres categorías: carácter, numérico y de fecha. Por ejemplo, el nombre de un cliente es un campo de tipo carácter, su fecha de nacimiento es de tipo fecha y su número de hijos es un campo de tipo numérico.  El rango de valores permitidos para un campo se conoce como dominio (o especificación del campo). Por ejemplo, en un campo tarjeta de crédito se puede limitar los posibles valores a Mastercard y Visa.  De un campo se dice que contiene un valor nulo cuando no incluye ningún valor.  Una clave accede a registros especiales de una tabla.  Una relación uno a uno (1: 1) es una relación en la que para cada instancia de la primera tabla de una relación solo existe una instancia en la segunda. Por ejemplo, una cadena de tiendas en las que cada una tenga una máquina expendedora. Cada máquina expendedora solo puede estar en una tienda y en cada tienda solo puede haber una máquina expendedora.  Una relación uno a varios (1:V) es una relación en la que para cada instancia de la primera tabla existen varias instancias en la segunda tabla. Este tipo de relación es muy habitual. Un ejemplo seria la relación entre un pintor y sus pinturas. Cada pintor puede crear varias pinturas, pero cada pintura ha sido creada por un solo pintor.

 Una relación varios a varios (V:V) es una relación que tiene lugar cuando para cada instancia de la primera tabla existen varias instancias en la segunda, y para cada instancia de la segunda existen varias instancias en la primera. Por ejemplo, una estudiante puede tener varios profesores y un profesor puede tener varios estudiantes.  Una relación obligatoria es una relación en la que para cada instancia de la primera tabla de la relación debe existir una o varias instancias en la segunda. Por ejemplo, para que exista un grupo de música, el grupo debe constar de al menos un músico.  La integridad de los datos hace referencia a la condición de que los datos sean exactos, válidos y coherentes.

2.2.2.4 Consultas en las DB y SQL12 Las preguntas relativas a los datos guardados en el SGBD se denominan consultas. Los SGBD permiten a los usuarios crear, modificar y consultar datos mediante los lenguajes de manipulación de datos (LMD). SQL es un lenguaje LMD; como su nombre indica, permite realizar consultas a la base de datos. Pero además realiza funciones de definición, control y gestión de la base de datos. Las sentencias SQL se clasifican según su finalidad dando origen a tres ‘lenguajes’ o mejor dicho sublenguajes: 

El LDD, lenguaje de definición de datos, incluye órdenes para definir, modificar o borrar las tablas en las que se almacenan los datos y de las relaciones entre estas. (Es el que más varia de un SGDB a otro).

12

RAMAKRISHNAN y GEHRKE, Op. cit., p. 15-16

.



El LCD, lenguaje de control de datos, contiene elementos útiles para trabajar en un entorno multiusuario, en el que es importante la protección de los datos, la seguridad de las tablas y el establecimiento de restricciones en el acceso, así como elementos para coordinar el acceso concurrente a los datos por parte de los usuarios, asegurando que no interfieren unos con otros.



El LMD, lenguaje de manipulación de datos, nos permite recuperar los datos almacenados en la base de datos y también incluye órdenes para permitir al usuario actualizar la base de datos añadiendo nuevos datos, suprimiendo datos antiguos o modificando datos previamente almacenados.

2.2.3 PROGRAMAS Y LENGUAJES DE PROGRAMACIÓN

2.2.3.1 MySQL MySQL es un Sistema Gestor de Bases de Datos relacional (SGBDR). Se trata de un programa capaz de almacenar una enorme cantidad de datos de gran variedad y de distribuirlos para cubrir las necesidades de cualquier tipo de organización, desde pequeños establecimientos comerciales a grandes empresas y organismos administrativos13.

13

GILFILLAN, Op. Cit., p. 40.

Ventajas de usar MySQL.  Su velocidad y pequeño tamaño la hacen ideal para un sitio Web. Además de esto el hecho de ser de código abierto, o sea gratis da la razón de su popularidad. Estas son algunas de sus ventajas:  Es Rápido: La meta principal de los desarrolladores de MySQL fue la velocidad. En consecuencia el software fue diseñado desde el principio con la velocidad en mente.  Es barato: MySQL es gratis bajo la licencia GPL de código abierto, y el costo de la licencia comercial muy razonable.  Es fácil de usar. Puede construir una base de datos MySQL e interactuar con ella usando unas cuentas instrucciones simples en el lenguaje SQL, el cual es el lenguaje estándar para comunicarse con los SGBDR.  Funciona en muchos sistemas operativos. Funciona en una gran variedad de de sistemas operativos. Windows, Linux, MacOS, la mayoría de las variedades de Unix.  Amplio Soporte Técnico. Una base de usuarios grande brinda soporte gratuito por medio de las listas electrónicas. Los desarrolladores de MySQL también participan en las listas electrónicas. También puede comprar soporte técnico a MySQl por un precio módico.  Es Seguro. El flexible sistema de autorización de MySQL, permite algunos o todos los privilegios de las bases de datos, a usuarios específicos o grupos de usuarios. Las contraseñas se encriptan.

 Soporta bases de datos grandes. MySQl maneja bases de datos de hasta 50 millones de filas o más.  Se puede personalizar. La licencia GPL de código abierto permite a los programadores modificar el software MySQL para adaptarlo a sus ambientes específicos.

2.2.3.2 PHP

PHP (acrónimo de "PHP: HypertextPreprocessor") es un lenguaje interpretado de alto nivel embebido en páginas HTML y ejecutado en el servidor. Las páginas escritas en PHP son simples páginas en HTML que contienen, además de las etiquetas normales, el programa que queremos ejecutar14. Una respuesta corta y concisa, pero, ¿qué significa realmente? Un ejemplo nos aclarará las cosas: Ejemplo 14

ACHOUR, Mehdi; BETZ Friedhelm. Manual de php, Edited By: Philip Olson, 2010.

En vez de escribir un programa con muchos comandos para crear una salida en HTML, escribimos el código HTML con cierto código PHP embebido (incluido) en el mismo, que producirá cierta salida (en nuestro ejemplo, producirá un texto). El código PHP se incluye entre etiquetas especiales de comienzo y final que nos permitirán entrar y salir del modo PHP. Lo que distingue a PHP de la tecnología Javascript, la cual se ejecuta en la máquina cliente, es que el código PHP es ejecutado en el servidor. Si tuviésemos un script similar al de nuestro ejemplo en nuestro servidor, el cliente solamente recibiría el resultado de su ejecución en el servidor, sin ninguna posibilidad de determinar qué código ha producido el resultado recibido. El servidor web puede ser incluso configurado para que procese todos los archivos HTML con PHP. PHP puede hacer cualquier cosa que se pueda hacer con un Script CGI, como procesar la información de formularios, generar páginas con contenidos dinámicos, o enviar y recibir cookies, son unas de las muchas cosas que puede hacer. Existen tres campos en los que se usan Scripts escritos en PHP. 

Scripts del lado del servidor. Este es el campo más tradicional y el principal foco de trabajo. Se necesitan tres cosas para que esto funcione. El intérprete PHP (CGI o módulo), un Servidor Web y un navegador. Es necesario correr 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.



Scripts en la línea de comandos. Puede crear un script PHP y correrlo sin ningún servidor web o navegador. Solamente necesita el intérprete PHP para usarlo de esta manera. Este tipo de uso es ideal para scripts ejecutados regularmente desde el Planificador de tareas (en Windows). Estos scripts también pueden ser usados para tareas simples de procesamiento de texto.



Escribir aplicaciones de interfaz gráfica. Probablemente PHP no sea el lenguaje más apropiado para escribir aplicaciones gráficas, pero si conoce bien PHP, y quisiera utilizar algunas características avanzadas en programas

clientes,

puede

utilizar

PHP-GTK

para

escribir

dichos

programas.

Quizás la característica más potente y destacable de PHP es su soporte para una gran cantidad de bases de datos. Escribir un interfaz vía web para una base de datos es una tarea simple con PHP. Las siguientes bases de datos están soportadas actualmente: Adabas D, Ingres, Oracle (OCI7 and OCI8), dBase, InterBase, PostgreSQL, Empress, FrontBase, Solid, FilePro, mSQL, Sybase, IBM DB2, MySQL, Velocis, Informix, ODBC, Unix dbm.

2.2.3.3 Como funcionan juntos MySQL y PHP15 PHP brinda la parte de la aplicación, y MySQL proporciona la parte de la base datos de una aplicación con base de datos para la Web. Se usa el lenguaje para escribir los programas que realizan las tareas de la aplicación. PHP es lo suficientemente flexible para realizar todas las tareas que requiera su 15

PHP Y MYSQL para dummies, 2da edición, pag 17.

aplicación. Se puede usar para tareas simples (como mostrar una página web) o para tareas complicadas (tales como aceptar y verificar datos digitados por un usuario en un formulario en HTML. Una de las tareas que la aplicación debe realizar es introducir información en la base de datos, y extraerla; y PHP incluye características específicas para usar al escribir programas que deban mover información hacia dentro y hacia afuera de una base de datos de MySQL. Las instrucciones PHP se empotran en sus archivos HTML con etiquetas PHP. Cuando las tareas que debe realizar la aplicación requieren almacenar o recuperar datos se usan instrucciones PHP específicamente disuadas para interactuar con la base de datos MySQL. Se usa una instrucción PHP para conectarse a la base de datos correcta, diciéndole a PHP donde está localizada la base de datos, su nombre y la contraseña necesaria para conectarse a ella. La base de datos no necesita estar en la misma máquina que su sitio web; PHP puede comunicarse con una base de datos a través de una red. Se usa otra instrucción PHP para en vía indicaciones a MySQL. Se envía un mensaje en SQL a través de la conexión dándole instrucciones a MySQL sobre la tarea que usted desea que se realice, MySQL devuelve un mensaje de estado que muestra si ha realizado la tarea exitosamente. Si hubo un problema devuelve un mensaje de error, si su mensaje en SQL pidió recuperar algunos datos, MySQL envía los datos que solicito y PHP los almacena en una ubicación temporal donde estarán a su disposición. Luego se deben usar una o más instrucciones PHP para completar la tarea de la aplicación. Por ejemplo, se pueden usar instrucciones PHP para mostrar los datos que recuperó. O puede usar instrucciones PHP para mostrar un mensaje de estado en el explorador, informándole al usuario, por ejemplo, que los datos fueron guardados.

Dado que es un SGBD relacional, MySQL puede guardar información muy compleja Como lenguaje de programación PHP puede realizar manipulaciones de datos muy complejas, ya sean datos que deben modificarse antes de ser guardados en la base de datos, o datos recuperados de una base de datos que deben modificarse antes de ser mostrados o usados para otra tarea. Juntos, PHP y MySQL pueden usarse para crear una aplicación con base de datos para la Web con un propósito muy complejo y sofisticado.

2.2.3.4 JAVASCRIPT16 JavaScript es un lenguaje de programación que se utiliza principalmente para crear páginas web dinámicas. Una página web dinámica es aquella que incorpora efectos como texto que aparece y desaparece, animaciones, acciones que se activan al pulsar botones y ventanas con mensajes de aviso al usuario. Técnicamente, JavaScript es un lenguaje de programación interpretado, por lo que no es necesario compilar los programas para ejecutarlos. En otras palabras, los programas escritos con JavaScript se pueden probar directamente en cualquier navegador sin necesidad de procesos intermedios.

16

EGUILUZ PERÉZ, Javier. Introducción aJavaScript, <www.librosweb.es>

2.2.3.5 HTML.17 El HTML, Hyper Text Markup Language (Lenguaje de marcación de Hipertexto) es el lenguaje de marcas de texto utilizado normalmente en la www (World Wide Web). Fue creado en 1986 por el físico nuclear Tim Berners-Lee; el cual tomo dos herramientas preexistentes: El concepto de Hipertexto (Conocido también como link o ancla) el cual permite conectar dos elementos entre si y el SGML (Lenguaje Estándar de Marcación General) el cual sirve para colocar etiquetas o marcas en un texto que indique como debe verse. HTML no es propiamente un lenguaje de programación como C++, Visual Basic, etc., sino un sistema de etiquetas. HTML no presenta ningún compilador, por lo tanto algún error de sintaxis que se presente éste no lo detectará y se visualizara en la forma como éste lo entienda. El entorno para trabajar HTML es simplemente un procesador de texto, como el que ofrecen los sistemas operativos Windows (Bloc de notas), UNIX (el editor VI o ED) o el que ofrece MS Office (Word). El conjunto de etiquetas que se creen, se deben guardar con la extensión .htm o .html Estos documentos pueden ser mostrados por los visores o "browsers" de páginas Web en Internet, como Mozilla Firefox, Netscape Navigator, Mosaic, Opera y Microsoft Internet Explorer.

17

THOMAS A. Powell, Manual de Referencia HTML. Mc Craw Hill Osborne 1999

2.2.3.6 CSS “Hoja de Estilo en Cascada” Cuando se utiliza CSS para dar formato a página, se separa el contenido de la presentación. El contenido de su página (el código HTML) reside en el archivo HTML, mientras que las reglas CSS que definen la presentación del código residen en otro archivo (una hoja de estilo externa) o en otra parte del documento HTML (normalmente en la sección ). Los estilos CSS aportan gran flexibilidad y control sobre el aspecto exacto que se busca en una página, desde la colocación precisa de elementos hasta el diseño de fuentes y estilos concretos. CSS permite definir muchas propiedades que no se pueden controlar utilizando sólo HTML. Por ejemplo, puede especificar distintos tamaños y unidades de fuente (píxeles, puntos, etc.) para el texto seleccionado. Si utiliza CSS para definir el tamaño de fuente en píxeles, también conseguirá un tratamiento más coherente del diseño y el aspecto de la página en múltiples navegadores.

2.2.3.7 FTP “File Transfer Protocol”, Protocolo para la Transferencia de Archivos. Es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP (Transmission Control Protocol), basado en la arquitectura clienteservidor. Desde un equipo cliente se puede conectar a un servidor para descargar archivos desde él o para enviarle archivos, independientemente del sistema operativo utilizado en cada equipo.

Servidor FTP Un servidor FTP es un programa especial que se ejecuta en un servidor conectado normalmente en Internet (aunque puede estar conectado en otros tipos de redes, LAN, MAN, etc.). La función del mismo es permitir el desplazamiento de datos entre diferentes servidores / ordenadores. Ejemplo

Fuente: http://servidorftp.es/ Observamos que intervienen tres elementos: 

El servidor FTP, donde subiremos / descargaremos los archivos.



Usuario 1, es el usuario que en este ejemplo, sube un archivo al servidor FTP.



Usuario 2, es el usuario que en este ejemplo, se descarga el archivo subido por el usuario 1 y a continuación sube otro archivo.

2.2.4 DOCUMENTACIÓN. Actualmente no existe un documento oficial sobre el tramite de los proyectos de grado, diferentes propuestas han sido elaboradas por docentes y personal administrativo de la Universidad, lo que se denominó en su momento como el “Reglamento para la Administración, Presentación y Ejecución de los Trabajos de Grado en la Facultad de Ingeniería”, fue tomado en cuenta durante el desarrollo de este proyecto para la abstracción de varios conceptos de este resaltamos los siguientes artículos de interés. Artículo 1. El Trabajo de Grado es un estudio dirigido en el área de Ingeniería, como el diseño y /o fabricación de equipos, la adaptación tecnológica, la investigación en ciencia. Tecnología y docencia en problemas específicos usando procedimientos apoyados por el método científico en concordancia con las políticas de investigación de la Facultada. Constituye un elemento primordial en la formación integral del estudiante, ya que mediante él, logra el desarrollo de habilidades investigativas que conllevan al proceso de aplicar, innovar y/o generar conocimientos. Articulo 4. El número máximo de estudiantes por cada trabajo es de dos (2). Parágrafo: si la interdisciplinariedad y/o complejidad del Trabajo de Grado lo justifica, el Comité de grado de cada Departamento, podrá autorizar la inclusión de un estudiante más por Trabajo de grado. Artículo 5. El trabajo de Grado consta de las siguientes partes: a)

Anteproyecto

b)

Informe de Avance

c)

Informe Final

Artículo 7. El anteproyecto es la propuesta del Trabajo de Grado que Director, codirector y estudiantes presentan al Comité de Grado y constituye un compromiso entre éstos y el Comité del Respectivo Departamento, con relación al cumplimiento de los objetivos y la metodología propuesta en el trabajo a desarrollar. Artículo 10. El Comité de Grado designará a dos (2) evaluadores por cada Trabajo de Grado los cuales deberán poseer un título profesional y tener conocimientos del tema que van a evaluar. Artículo 19. El Informe Final consta de las siguientes partes: a)

Informe Escrito del Trabajo de Grado

b)

Entrega de Productos que se Generen del Proyecto

c)

Artículo

d)

Sustentación del Trabajo de Grado.

MÓDULO III. DISEÑO DE LA APLICACIÓN

Para la materialización de esta aplicación se utilizó una metodología estructural dividida en las siguientes dos grandes etapas: 

Recolección y Análisis de Requerimientos



Diseño de la aplicación

3.1 RECOLECCIÓN Y ANÁLISIS DE INFORMACIÓN. Mediante entrevistas con el Coordinador Académico y miembros del comité del Programa

de

Ingeniería

Industrial

se

analizaron

los

requerimientos

de

información para control y manejo de los Trabajos de Grado y las entidades relacionadas. Así mismo se analizaron los detalles de aplicación y procedimientos que se deben construir sobre ella, teniendo en cuenta el punto de vista del usuario, y documentación propuesta sobre el correcto proceso de los trabajos de grado. El proceso de recolección y análisis de información para la determinación de requerimientos funcionales del proyecto fue una actividad continua que alimento el desarrollo del proyecto; las entrevistas con el Coordinador de Programa que se dieron durante el desarrollo de la aplicación sirvieron para afinar detalles y añadir funciones a lo que fue la idea inicial propuesta para la Aplicación. De estas lluvias de ideas en las que nacieron posibilidades desde la de crear un banco de proyectos,

que los estudiantes puedan revisar continuamente para

escoger lo que puede convertirse su proyecto de grado, hasta la posibilidad de colgar las fotos de los estudiantes para que se vieran al momento de revisar sus proyecto de grado,

fueron tenidas en cuenta. Muchas de estas no

se

desarrollaron debido a que se sentó en un acta de Comité de Grado, lo que sería la versión final de la aplicación y al nivel de conocimiento técnico de los autores del proyecto. La aplicación sin embargo es perfectamente editable por cualquier persona autorizada previamente por la Universidad.

3.2 REQUERIMIENTOS

3.2.1 Funcionales La aplicación debe cumplir con los siguientes requerimientos: 

Consulta de Proyectos de grado terminados



Autenticación de usuarios registrados



Interfaz grafica para administración de trabajos de grado



Visualización de resúmenes o tomos en formato digital



Visualización de detalles sobre proyectos de grado ya ejecutados



Registro de fichas de anteproyectos



Registro de información de estudiantes



Registro de información de personal relacionado a la facultad



Edición de información de estudiantes



Edición de información de personal relacionado a la facultad



Realizar tareas de seguimiento a las fichas de anteproyectos



Tramite de anteproyectos



Asignación de evaluadores al trabajo de grado



Realizar tareas de seguimiento a los anteproyectos de grado



Edición de información de anteproyectos de grado



Retiro de estudiantes del trabajo de grado en seguimiento



Cambio del director académico de un trabajo de grado



Selección de evaluadores del trabajo de grado de acuerdo al seguimiento



Seguimiento de proyectos de grado aprobados



Reportar informe parcial o final a un proyecto de grado



Aprobación de un proyecto de grado



Cargado de documento digital para un trabajo de grado ya terminado



Consulta avanzada de trabajos de grado

3.2.2 No Funcionales Los requerimientos no funcionales del sistema son:  Arquitectura WEB  Plataforma de desarrollo PHP versión 5.3.0  Servidor de Bases de Datos MySql 5.1.41  Servidor web apache2.2.14  Servidor FTPFilezilla 0.9.33  Uso de Adobe Pdf Reader versión 8 o superior  Manejo de perfiles de usuarios  Rápido Tiempo de Respuesta  Interfaz sencilla y de fácil manejo

3.3 ARQUITECTURA DEL SISTEMA

Ilustración 1.Arquitectura de tres (3) capas del sistema

Mediante este gráfico se describe la arquitectura de 3 capas, que representa la comunicación de los componentes del software.

Muestra servidores para el

manejo adecuado de archivos (FTP), bases de datos y la aplicación web en general.

3.4 CONTEXTO DEL SISTEMA A continuación se muestra el diagrama de contexto propuesto para el sistema en desarrollo:

Ilustración 2. Diag. De contexto del sistema

3.4.1 Actores Del Sistema. Un actor es todo aquel que tenga algún tipo de interacción con la aplicación. Se definieron los siguientes actores: 

Coordinador de programa: Es el encargado de las actividades de registro, seguimiento y control de información de los trabajos de grado.



Asistente Coordinador: Es el encargado de ingresar la ficha técnica de los anteproyectos en el sistema; y actualizar información de los docentes y demás personas relacionadas con los proyectos.



Usuario Común: Este actor tiene las funciones básicas del sistema, como son la consulta de trabajos de grado terminados. No requiere de un usuario o contraseña.

3.5

DIAGRAMAS DEL SISTEMA.

Los siguientes diagramas representan el dominio del sistema a desarrollar. Estos son: diagrama de contexto, diagrama de clases, diagrama de casos de uso y modelo relacional de la base de datos.

3.5.1 DIAGRAMA DE CLASES De acuerdo con los requerimientos funcionales del sistema, las clases obtenidas se detallan a continuación. 

Estudiante: Cada una de las personas que están detrás del buen desarrollo de los trabajos de grado, con el fin de optar al grado de ingeniero industrial.



Profesional: Personal capacitado para revisar, asesorar, dirigir y evaluar los trabajos de grado, este puede ser externo o interno de la facultad de ingeniería industrial.



Línea de investigación: Cada uno de los enfoques temáticos que se dan a los trabajos de grado.



Anteproyecto: Es la propuesta del Trabajo de Grado que Director, Codirector y estudiantes presentan al Comité de grado. Es la primera etapa para la elaboración del proyecto18.



Proyecto: Es el desarrollo y ejecución de la propuesta de trabajo presentada en el anteproyecto.



Usuario: personas encargadas de acceder a la aplicación web, para fines de visitar el sitio o administrarlo.

Ahora, se muestra el diagrama donde se aprecia la interacción entre las clases candidatas:

18

UNIVERSIDAD DEL ATLÁNTICO, Reglamento para la administración, presentación, ejecución de los trabajos de grado de la facultad de ingeniería. Articulo 7, 1997

Ilustración 3. Diagrama de clases

3.5.2 DIAGRAMA DE CASOS DE USO De acuerdo con el contexto del sistema, se conocen tres actores: el coordinador del programa, el Asistente coordinador y el usuario visitante, para lo cual se realizaron los siguientes diagramas. Cada uno modela la interacción del actor mencionado con el sistema en desarrollo. Primer actor: Usuario

Ilustración 4. Diag. Casos de uso (interacción Usuario)

Segundo actor: Asistente

Ilustración 5. Diag. Casos de uso (interacción Asistente coord.)

Tercer actor: Coordinador del programa

Ilustración 6. Diag. Casos de uso (interacción coord. programa)

3.5.2.1 Descripción de los casos de uso Tabla 1. Caso de uso (buscar trabajos de grado) CU001

Buscar trabajos de grado

Actores

Usuario, Buscador_BD

Descripción Secuencia

1. El usuario ingresa el texto con el cual desea buscar trabajos

normal

de grado 2. El sistema valida el texto ingresado por el usuario 3. El sistema procesa la búsqueda de trabajos de grado 4. El sistema muestra los resultados de la consulta de trabajos de grado 5. Se realiza el caso de uso CU002 6. Se realiza el caso de uso CU003

Prioridad (1- 5 5)

Tabla 2. Caso de uso (ver ficha técnica) CU002

Ver ficha técnica

Actores

Usuario, Trabajos_grado_BD

Descripción Secuencia

1. El usuario selecciona un proyecto de la lista

normal

2. El usuario da clic en el botón “ver ficha” 3. El sistema procesa la búsqueda de la ficha del proyecto seleccionado 4. El sistema muestra los resultados de la consulta de trabajos

de grado a través de una ventana. Prioridad (1- 5 5)

Tabla 3. Caso de uso (ver documento) CU003

Ver documento

Actores

Usuario, FTP_server

Descripción Secuencia

1. El usuario selecciona un proyecto de la lista

normal

2. El usuario da clic en el botón “ver documento” 3. El sistema procesa la búsqueda del documento asociado al proyecto 4. El sistema muestra el documento a través de una ventana.

Prioridad (1- 5 5)

Tabla 4. Caso de uso (login) CU004

Login

Actores

Coord. programa, Asistente coord., Usuario_BD

Descripción Secuencia normal

1. El usuario (Coord. programa, Asistente coord.) selecciona el perfil de usuario correspondiente 2. El usuario ingresa su clave de acceso 3. El sistema valida la información ingresada por el usuario

4. Si la validación es correcta, el sistema desplega el panel Prioridad (1- 5 5)

Tabla 5. Caso de uso (gestionar profesional) CU005

Gestionar profesional

Actores

Asistente coord., profesional_BD

Descripción Secuencia

1. El Asistente coordinador ingresa información de la persona a

normal

buscar 2. El sistema valida el texto ingresado 3. Si se valida el texto ingresado,el sistema ejecuta la búsqueda 4. Si la búsqueda se hizo correctamente el sistema muestra resultado de la búsqueda 5. Se ejecuta el caso de uso CU006 6. Se ejecuta el caso de uso CU007

Prioridad (1- 5 5)

Tabla 6. Caso de uso (registrar profesional) CU006

Registrar profesional

Actores

Asistente coord., profesional_BD

Descripción

Secuencia

1. El Asistente coordinador ingresa información de la persona a

normal

registrar 2. El sistema valida el texto ingresado 3. Si se valida el texto ingresado, el sistema ejecuta la operación de registro 4. El sistema muestra resultado de la operación

Prioridad (1- 5 5)

Tabla 7. Caso de uso (editar profesional) CU007

Editar profesional

Actores

Asistente coord., profesional_BD

Descripción Secuencia

1. El Asistente coordinador ingresa información de la persona a

normal

editar 2. El sistema valida información ingresada 3. Si se valida información, el sistema ejecuta la operación de edición 4. El sistema muestra resultado de la operación

Prioridad (1- 5 5)

Tabla 8. Caso de uso (realizar consulta avanzada) CU008

Realizar consulta avanzada

Actores

Asistente coord., trabajo_grado_BD

Descripción Secuencia

1. El Asistente coordinador ingresa información a buscar según el

normal

criterio que desea realizar la consulta 2. El sistema valida lainformación ingresada 3. Si se valida lainformación, el sistema ejecuta la operación de consulta 4. El sistema muestra resultado de la operación

Prioridad (1- 5 5) Tabla 9. Caso de uso (registra ficha anteproyectos) CU009

Registra ficha anteproyecto

Actores

Asistente coord., trabajo_grado_BD

Descripción Secuencia normal

1. El

Asistente

anteproyecto,

coordinador el

núm.

ingresa IPA

y

ficha

el

técnica

número

de

del acta

correspondiente. 2. El sistema valida la información ingresada 3. Si se valida la información, el sistema ejecuta la operación de inscripción 4. Se ejecuta el caso de uso CU010 5. Se ejecuta el caso de uso CU011 6. El sistema muestra resultado de la operación.

Prioridad (1- 5 5)

Tabla 10. Caso de uso (registrar director empresarial) CU010

Registrar director empresarial

Actores

Asistente coord., profesional_BD

Descripción Secuencia

1. El Asistente coordinador ingresa información del profesional a

normal

registrar 2. El sistema valida la información 3. Si se valida la información, el sistema ejecuta la operación de registro 4. El sistema muestra resultado de la operación.

Prioridad (1- 5 5) Tabla 11. Caso de uso (registrar estudiantes) CU011

Registra estudiantes

Actores

Asistente coord., estudiante_BD

Descripción Secuencia

1. El Asistente coordinador ingresa información de estudiantes

normal

2. El sistema valida la información ingresada 3. Si se valida la información, el sistema ejecuta la operación de registro 4. El sistema muestra resultado de la operación.

Prioridad (1- 5 5) Tabla 12. Caso de uso (editar estudiante) CU012

Editar estudiantes

Actores

Asistente coord., estudiante_BD

Descripción Secuencia

1. El Asistente coordinador ingresa información de estudiantes a

normal

buscar 2. El sistema valida la información ingresada 3. Si se valida la información, el sistema ejecuta la operación de consulta 4. El sistema muestra resultado de la operación 5. El Asistente coordinador seleccionar un estudiante del resultado para su edición 6. El Asistente coordinador ingresa información del estudiante a editar 7. El sistema valida la información ingresada 8. Si se valida la información, el sistema ejecuta la operación de edición 9. El sistema muestra resultado de la operación

Prioridad (1- 5

5) Tabla 13. Caso de uso (realizar seguimiento anteproyectos) CU013

Realizar seguimiento anteproyectos

Actores

Coord. programa, trabajo_grado_BD

Descripción Secuencia

1. El

normal

coordinador de programa

selecciona el

estado de

anteproyecto a administrar 2. El sistema realiza la consulta de anteproyectos por estado 3. Si se encontraron anteproyectos, el sistema muestra los resultados 4. Si el estado es “en espera”, se ejecuta el caso de uso CU014 5. Si el estado es “aplazado”, se ejecuta el caso de uso CU015 6. Si el estado es “aplazado”, se ejecuta el caso de uso CU016 7. Se ejecuta el caso de uso CU017

Prioridad (1- 5 5) Tabla 14. Caso de uso (asignar evaluadores) CU014

Asignar evaluadores

Actores

Coord. programa, trabajo_grado_BD

Descripción Secuencia

1. El coordinador de programa selecciona un anteproyecto.

normal

2. El coordinador da clic en la opción “ver detalles” 3. El coordinador de programa ingresa información de los evaluadores asignados para al anteproyecto

4. El sistema valida la información ingresada por el coordinador de programa 5. Si se validaron los datos, el sistema ejecuta la operación de puesta en marcha 6. El sistema muestra resultado de la operación Prioridad (1- 5 5) Tabla 15. Caso de uso (editar anteproyecto) CU015

Editar anteproyecto

Actores

Coord. programa, trabajo_grado_BD

Descripción Secuencia

1. El coordinador de programa selecciona un anteproyecto a

normal

editar 2. Se ejecuta el caso de uso CU018 3. Se ejecuta el caso de uso CU019

Prioridad (1- 5 5) Tabla 16. Caso de uso (Anular anteproyecto) CU016

Anular anteproyecto

Actores

Coord. programa, trabajo_grado_BD

Descripción Secuencia normal

1. El coordinador de programa selecciona un anteproyecto a editar 2. El sistema pide confirmación al coordinador del programa 3. Si se confirma la anulación del anteproyecto, el sistema anula

el anteproyecto 4. El sistema muestra el resultado de la operación Prioridad (1- 5 5) Tabla 17. Caso de uso (validar concepto) CU017

validar concepto

Actores

Coord. programa, trabajo_grado_BD

Descripción Secuencia

1. El coordinador de programa ingresa la información de

normal

aprobación del anteproyecto 2. El sistema valida la información ingresada 3. Si la validación es correcta, el sistema procede a realizar la aprobación del anteproyecto 4. El sistema muestra el resultado de la operación

Prioridad (1- 5 5) Tabla 18. Caso de uso (cambiar director) CU018

Cambiar director

Actores

Coord. programa, trabajo_grado_BD

Descripción Secuencia normal

1. El coordinador de programa selecciona un director para cambio 2. El sistema pide confirmación al coordinador de programa de

la decisión de cambio 3. Si se confirma el cambio, el sistema procede a ejecutar la operación 4. El sistema muestra el resultado de la operación Prioridad (1- 5 5) Tabla 19. Caso de uso (retirar estudiante) CU019

Retirar estudiante

Actores

Coord. programa, estudiante_BD

Descripción Secuencia

1. El coordinador de programa selecciona un estudiante para

normal

retiro 2. El sistema pide confirmación al coordinador de programa de la decisión de retiro de estudiaste 3. Si se confirma el retiro, el sistema procede a ejecutar la operación de retiro 4. El sistema muestra el resultado de la operación

Prioridad (1- 5 5)

3.5.3 DIAGRAMAS DE FLUJO

Ilustración 7. Consulta general de proyecto

Ilustración 8. Cuenta Asistente coordinador.

INICIO

Digitar “?local” al final de la dirección de inicio pagina. Seleccionar usuario ingresar contraseña

No Validación Si

Seguimiento

Consultar

Seleccionar Opción

Seleccionar etapa del proyecto

Proyecto

Anteproyecto

Seleccionar criterio(s) de búsqueda

En Curso Realizar consulta

Asignar Evaluadores

Editar Información

Validar Concepto Editar

Ingresar en la base de datos

Ingresar en la base de datos

Finalizado

Aprobar anteproyecto

Rechazar anteproyecto

Ingresar en la base de datos

Ingresar en la base de datos

Ingresar en la base de datos

Registar Informe

Ingresar en la base de datos

Fin

Ilustración 9. Cuenta Coordinador de Programa

Ver Informes

Rechazar

Escoger Proyecto

Ingresar en la base de datos

Buscar Archivo

Subir Archivo

3.5.4 DIAGRAMA RELACIONAL Basado en el diagrama de clases anterior, y del contexto del sistema, se armó una base de datos. Esta contiene una representación a nivel de datos de las clases candidatas (tablas), que se obtuvieron en el contexto del sistema. Estas clases interactúan entre sí, armando relaciones entre tablas. A continuación se muestra un diagrama relacional del modelo de datos del sistema, mostrando así dicha interacción entre las clases candidatas y las relaciones.

Ilustración 10. Modelo relacional de la BD para la aplicación web

3.5.4.1 Diccionario de datos A continuación se describen las tablas mencionadas en el diagrama anterior, con sus respectivos campos, llaves candidatas, e información adicional: Tabla 20. Usuarios (mysql)

Campo id_usuario Perfil Clave

Tipo varchar(5) varchar(45) varchar(45)

Nulo Llave NO Primaria NO NO

Activo

varchar(45) SI

Descripción Identificador del usuario Perfil de la cuenta. Contraseña que autentifica usuario. Estado de la cuenta

al

Tabla 21. Estudiantes (mysql) Campo codigo nombre telefono email

Tipo varchar(20) mediumtext varchar(100) varchar(100)

Nulo Llave NO Primaria NO SI SI

Descripción Identificador de estudiante. (clave) Nombre completo del estudiante. Teléfono del estudiante. Correo electrónico del estudiante

Tabla 22. Profesional (mysql) Campo codigo tipo nombre telefono email titulo_prof cargo

Tipo varchar(15)

Nulo Llave Descripción NO Primaria Identificador de la persona. (clave) varchar(10) NO Docente de la facultad o personal externo a la facultad/ institución mediumtext NO Nombre completo de la persona varchar(100) SI Teléfono personal varchar(100) SI Correo electrónico Titulo como Profesional mediumtext SI mediumtext SI Cargo que desempeña en la institución ó en la empresa

progr_acad mediumtext

SI

empresa

SI

mediumtext

Área académica en que se especializa Programa de la Universidad al que pertenece el docente.

Tabla 23. linea_investigacion (mysql) Campo Tipo código nombr e

varchar(15 ) mediumte xt

Nul o NO NO

Llave

Descripción

Primari a

Identificador único de la línea de investigación (clave) Nombre de la línea de investigación

Tabla 24. proyecto_grado (mysql) Campo idregistro

Tipo varchar(10)

Nulo Llave Descripción NO Primaria Identificador aleatorio de registro de proyecto. num_ipa varchar(10) SI Identificador del proyecto. titulo mediumtext NO Numero del proyecto. linea_invest varchar(10) NO Foránea Título del proyecto. director varchar(10) NO Foránea Código de la Línea de estudio del proyecto. Foránea Identificador del director director_empr varchar(10) SI académico del proyecto. reg_date varchar(15) SI Identificador del director empresarial del proyecto. Fecha de ingreso en el sistema acta_aproy varchar(10) SI tramitación en comité. tramite_aproy varchar(20) SI Registro de acta de comité. seguimiento varchar(15) SI Fecha en que se tramita el proyecto por comité. inicio_proy varchar(20) SI Anteproyecto/Proyecto. nota_proy varchar(20) SI Fecha en que se inicia el proyecto. calificacion_proy varchar(45) SI Calificación del Trabajo de Investigación. acta_proy varchar(45) SI Conceptualización final del proyecto

fin_proy

varchar(10)

SI

progreso

varchar(20)

SI

tiene_libro

varchar(5)

SI

Indica si el proyecto tiene libro o no Recepción del informe final por comité de grado Registro del acta.

Tabla 25. buscador_proyecto (mysql) Campo ipa_proy titulo linea_investigacion

Tipo varchar(30) mediumtext mediumtext

director

mediumtext NO

Nulo Llave NO Primaria NO Foránea NO

Descripción IPA proyecto (clave) Titulo del proyecto Línea de estudio del proyecto Director académico del proyecto

Tabla 26. evalua_proyectos (mysql) Campo

Tipo

proyecto_gr varchar( ado 10) profesional varchar( 15) situación varchar( 15)

Nul Llave o NO Forán ea NO Forán ea SI

Descripción Proyecto de grado (clave foránea) Evaluador del proyecto. (clave foránea) Estado en que se encuentra el evaluador respecto al proyecto

Tabla 27. realiza_proyecto (mysql) Descripción Campo Tipo Nulo Llave proyecto_grado varchar(10) NO Foránea Identificador de estudiante. (clave) estudiante varchar(20) NO Foránea Identificador proyecto situación varchar(45) SI Condición en que se encuentra el estudiante: terminado, retirado o en desarrollo

Tabla 28. informe_proyecto (mysql) Campo proy_grado tipo detalle registrado

Tipo varchar(10) varchar(45) mediumtext varchar(12)

Nulo Llave NO Foránea NO NO NO

Descripción Id de registro proyecto (clave) Informe parcial/final Observaciones del informe Fecha en que se registra el informe

3.6 DESARROLLO DE REQUERIMIENTOS FUNCIONALES 3.6.1 Diseño de la Interfaz Gráfica En el conjunto de los requerimientos funcionales la Interfaz Gráfica es la principal pues además de ser la cara del proyecto es el lugar donde interactuaran todos los demás requerimientos de consulta e ingreso de información, de visualización y las tareas administrativas. Su relevancia es tal, que durante el desarrollo del proyecto y debido a las limitantes que surgieron con el modelo inicial de interfaz fue necesario hacer un cambio radical hacía un nuevo modelo, un poco más complicado de programar pero más abierto a la inclusión de nuevas funciones, teniendo que cambiar por completo el código inicial del proyecto hacía uno enfocado al diseño en Hojas en Cascada (CSS) y a el ingreso mediante selección de opciones y no manual, apuntando también a un presentación por paneles y no tablas. El desarrollo de la aplicación web se baso principalmente en la creación de los archivos que se necesitan para la ejecución del mismo. Como se basa en una página web dinámica, se opto por crear archivos php para el desarrollo. El proyecto web hecho con php, posee una estructura de carpetas distribuida de la siguiente forma:

Ilustración 11. Árbol de directorios para la aplicación web La imagen anterior nos muestra principalmente seis carpetas, las cuales sirven para organizar los archivos a utilizar:

- /css: se encarga de guardar archivos de hoja de estilos - /img: guarda las imágenes - /include: guarda archivos a ser incluidos - /include/clases/: guarda las clases utilizadas - /js: guarda archivos de funciones de javascript - /main: guarda archivos usados en la página principal - /panel: archivos usados en el panel de admón. - /panel/cdprg: archivos usados por el coordinador de programa - /panel/pfaqd: archivos usados por el Asistente coordinador. A partir de allí, se empezó a crear los archivos correspondientes. El diseño de la interfaz de usuario fue un proceso transversal al desarrollo del proyecto en este se interactúo con el usuario para decidir las características, organización, apariencia y funcionamiento de la interfaz de usuario del sistema. El diseño de la interfaz de usuario se llevo a cabo de forma incremental conforme se desarrollo el software, fue continuamente cambiada para adaptarla a los cambios solicitados por la Coordinación de Programa y así darle más funcionalidad a la aplicación. Dos actividades son esenciales para este proceso: Análisis del usuario. En el proceso de análisis del usuario, se desarrolla una comprensión de las tareas que éste realiza, su entorno de trabajo y cómo interactúan con el resto de las personas en su trabajo.

Prototipado del sistema. El diseño y desarrollo de la interfaz de usuario es un proceso continuo. Por lo tanto, se desarrollaron varios prototipos del sistema que fueron expuestos los potenciales usuarios, con el objeto de guiar la evolución de la interfaz. Para el diseño de la interfaz se utilizaron las siguientes herramientas: 

Macromedia Fireworks 8 para crear y edición de las imágenes que se incluirían en la aplicación



Macromedia Dreamweaver: como herramienta de desarrollo que unifica la edición visual de contenido con el editor de HTML para diseñar, codificar y desarrollar páginas y aplicaciones web; y java scripts para la creación de contenido dinámico.

El diseño de la interfaz como se indico anteriormente ha evolucionado continuamente atendiendo a las recomendaciones realizadas por el usuario final y las observaciones de los ejecutores. Inicialmente se manejo un diseño basado en tablas, donde las filas y celdas sirven de cuadros contenedores para imágenes y texto, el cual presentaba el inconveniente que se mezclaba maquetado y contenido, por lo que el código resultante era extenso y complejo si se requería modificar eventualmente la interfaz, por lo que la maquetación mediante hojas de estilos CSS fue un paso necesario en el proceso lo que permitió tener un mayor control tanto de la presentación como del contenido. Durante esta etapa del diseño, la Universidad del Atlántico cambio imagen y a partir de este cambio se dieron modificaciones a la página web de la Universidad del Atlántico; siendo la intención final de esta aplicación el servir como una extensión

del

sitio

web

oficial

de

la

Universidad

del

Atlantico

(www.uniatlantico.edu.co), dicho cambio de imagen sirvió como punto de inflexión para rediseño de está. Debido a estos cambios se adaptaron los logotipos y los colores utilizados, botones y se incluyo las Hojas de Estilo CSS para proporcionar un mayor control sobre el aspecto de la aplicación. Dado la estructura de directorios y la forma como se desarrollará la aplicación web, se procedió a diseñar la presentación al usuario, es decir, la interfaz principal del sitio del sitio web. A continuación se muestra la página de inicio de la aplicación.

Ilustración 12. Página de inicio

3.6.3 Desarrollo de Requerimientos Funcionales de Ingreso y Consulta a Base de Datos El desarrollo de los requerimientos que involucran el ingreso y la extracción de información en la base de datos en cualquier presentación se realizó utilizando lo que se conoce como “Consultas de Selección” o Quero y funciones tipo Insert, estas se utilizan para indicar al motor de datos que devuelva o ingrese información de o a la base de datos, esta información en forma de conjunto de registros. El panel de búsqueda más usado será aquel que Esté disponible para el actor “Usuario Común”, la “Consulta de Selección” o Query el código de programación representa las funciones que intervienen en el proceso de búsqueda y presentación de la información es el la figura adyacente a este párrafo y en la que explicarán los actores que intervienen en una función de la aplicación:

“class BuscadorProyecto{ /**obtiene los resultados que aparecen en la busqueda por texto*/ static function buscarProyectosPorTexto($testo,$db){ $lista=""; $iteme=""; $contad=0; $consulta_texto="SELECT titulo,match(titulo,linea_investigacion,director) ". "against(_utf8'$testo') as scoring,ipa_proy FROM buscador_proyectos ". "WHERE match(titulo,linea_investigacion,director) against(_utf8'$testo')>0 order by scoring desc"; $resultado=mysql_query($consulta_texto,$db); while(list($titu,$scr,$ipa) = mysql_fetch_row($resultado)){ $iteme.="
  • ".htmlentities($titu)."
    ". "<span>Ver ficha ". "◊ Ver documento
  • "; $contad++; } $lista=$lista.$iteme; return ($lista!="")?$contad."@".$lista:"0@
  • No se encontraron resultados...
  • ";”

    El texto en azul representa la creación de una función estática que se denominó “buscarProyectosportexto”; la cual necesita dos variables para funcionar representadas a su vez en color rojo “testo, db”; más adelante se colocan unas variables en blanco y lo que se puede llamar la base de la función donde se encuentra la “Consulta de Selección” o Query es el texto en color verde en el cual se describe la línea de búsqueda para la base de datos con sus respectivos condicionantes de ubicación y cumplimiento de condiciones (FROM y WHERE) y la forma de ordenarlo; el texto en naranja indica el resultado del Query que a su vez es almacenado en la variable $resultado; más adelante en el texto café se agrega un condicionante de resultados (while) y la forma y espacios a la hora de la presentación del Query; por último el texto fucsia muestra una opción en caso de que la consulta de selección no arroje ningún resultado. Esto completa la función estática “buscarProyectosportexto”.

    Este tipo de funciones se encuentran incrustadas en el código de muchas de las acciones de la aplicación pues la actividad de consulta a la base de datos es muy común. El ingreso de información a la base de datos por otra parte se programa de manera muy similar a las consultas, manteniendo la base de la creación de una función estática y variando el Query por una función tipo Insert. A continuación se muestra un fragmento del código relacionado al registro de información a la hora de ingresar un anteproyecto.


    En la figura superior se observa en texto azul de nuevo la función estática que en este caso se denominó registrarDatosBasicosAnteproyecto y cuyas variables necesarias para su funcionamiento vienen escritas en rojo ($insertad,$db), el cuerpo de la función otra vez en texto verde da la orden a la aplicación que inserte en la base de datos los campos dentro del paréntesis y por último el texto en fucsia establece las respuestas para el resultado final de esta actividad en particular; en caso de respuesta positiva la respuesta textual de la aplicación será “Ok” de ser negativa arrojara el texto “Error”. Las funciones principales de la aplicación involucran la consulta, registro y actualización de la base de datos, este tipo de funciones.

    3.6.4 Otros Requerimientos Funcionales Solo hay un requerimiento funcional que no implica el ingreso o la consulta de información a la base de datos, este proceso aplica solo para el almacenamiento de la información desde la aplicación, lo que se puede nombrar como “subir un archivo” desde la aplicación. Esta actividad fue programada con la asistencia de un programa especializado en este tipo de actividades como es el FTP Filezilla, un programa basado en el protocolo FTP que se apoya en la herramienta cURL la cual es un intérprete de comandos para transferir archivos con sintaxis URL y de esta manera transferir archivos entre sistemas conectados a una red. El código representativo es el siguiente:


    En el código de programación para subir un archivo a la red, se observa como la herramienta cURL que fue previamente configurada desde el programa FTP Filezilla establece las formatos, ubicaciones, contraseñas y la asociación con variables, así como las respuestas para los posibles resultados de este proceso.

    MÓDULO IV: PRUEBAS DEL SOFTWARE

    4.1 Requisitos Mínimos del Sistema Estos se especifican para cada máquina (cliente, servidor) garantizando el buen funcionamiento del sistema.

    Maquina cliente: 

    Sistema operativo: Windows XP/ Vista/ 7(seven),



    Memoria RAM: 256Mb mínimo



    Monitor con resolución mínima de 1024x768



    Conexión a internet



    Navegador de internet: Mozilla Firefox, Microsoft Internet Explorer versión 7 o superior. Google Chrome, Safari



    Software requerido: Adobe PDF Reader 9.0 superior

    Maquina servidor: 

    SistemaOperativo: Windows XP, Windows server 2003



    Memoria RAM: 256Mb mínimo



    Monitor con resolución mínima de 1024x768



    Navegador de Internet: Mozilla Firefox, Microsoft Internet Explorer versión 7 o superior. Google Chrome, Safari Uso del Servidor de Bases de Datos MySql 5.1.41



    Servidor web: Apache 2.2.14



    Servidor FTP: Filezilla FTP Server 0.9.33



    Servidor de bases de datos: Mysql 5.1.41



    Conexión a Internet

    4.2 DISEÑO DE PRUEBAS Para este sistema se definieron las siguientes pruebas: 1. Registro de Personas Profesionales: Esta prueba consiste en realizar el ingreso de un número de personas al sistema. A estas

    se les asignará

    código, tipo, nombre, teléfono, email, titulo, cargo, programa académico, empresa, área de especialidad dentro del sistema. La información de las personas a ingresar será tomada de la base de datos de los docentes de la facultad de ingeniería de la Universidad del Atlántico. Esta información se encuentra en una tabla de Excel adjunta. 2. Registro de proyectos: Esta prueba consiste en realizar el ingreso de la ficha de anteproyecto. 3. Seguimiento de proyectos: Esta prueba consiste en actualizar información al proyecto durante las diferentes instancias de desarrollo hasta su finalización 4. Realización de Consultas: Realizar algunas consultas a la base de datos, desde la interfaz de la aplicación.

    4.3 IMPLEMENTACIÓN DE PRUEBAS Y RESULTADOS 4.3.1 Registro de Profesionales La siguiente imagen muestra la sección correspondiente al asistente de coordinación una vez autenticado en el sistema.

    Ilustración 13. Sección asistente de coordinación Las tareas correspondientes al asistente de coordinación comprenden los registros de ficha técnica de trabajos de grado, la edición de estudiantes y la administración de datos de personas profesionales encargadas de dirigir y evaluar los trabajos de grado, cuyo menú se encuentra en la parte izquierda del sitio. Para el ingreso del personal se utilizó la siguiente información:

    No.

    Nombre

    1 2 3 4 5 6

    Arnaldo Martínez Cera Arturo Díaz Gutiérrez Carlos Garrido Piñeres Clara Gutiérrez Castañeda Diego García Cervantes Nurys Morales Pinto

    7

    Alberto Albis Arrieta

    8

    Raúl Pérez Herrera

    9 1 2

    Oscar Cabarcas Núñez Cristian Solano Pallares Edison Barrera Guarín

    3 4 5 6 7 8

    Griselda Parra Cera Hugo Mercado Cervera Inmaculada Manotas Bolaños Maria Astrid del Castillo Mary Anne Sánchez Vásquez Medardo González Conde

    Cargo Coord. Ing. Agroindustrial Docente Docente Docente Docente Docente Docente

    T. Vinculación

    Programa

    Planta Ing. Agroindustrial Catedrático Ing. Agroindustrial Catedrático Ing. Agroindustrial Catedrático Ing. Agroindustrial Catedrático Ing. Agroindustrial Planta Ing. Agroindustrial Tiempo Completo Ocasional Ing. Agroindustrial

    Ciencias BásicasPlanta Biología Tiempo Completo Docente Ocasional Ing. Agroindustrial Adhonoren Ing. Industrial Docente Planta Ing. Industrial Docente Coord. Medio Ing. Industrial Especial. En Tiempo Ing y Gestión Completo Calidad Ocasional Catedrático Ing. Industrial Docente Catedrático Ing. Industrial Docente Planta Ing. Industrial Docente Catedrático Ing. Industrial Docente Catedrático Ing. Industrial Docente Docente

    Celular 3013813091 3137430677 3176817950 3153941883 3012937511 3116514341 3008055015

    Fijo

    Email

    3530647 3409324

    [email protected] [email protected] [email protected] [email protected] [email protected] [email protected]

    Calle 93 Nº42F-155

    [email protected]

    3681265 3440779

    3003358065

    [email protected]

    3002700492

    3591274

    3135718500

    3157236726

    3622141

    3114017193 3106330705 3012916585 3008152850

    3444333-3461997 3493205 3493541 3162465155

    [email protected] [email protected] [email protected]

    [email protected] [email protected] [email protected] [email protected] [email protected] [email protected]

    9 10 11 12 13

    Norberto Peña Rivera Ramiro Venegas Ortega Roberto Herrera Acosta Víctor Ávila Díaz Aleyda García González

    14

    Daniel Mendoza Casseres

    15

    Jesús Consuegra Gutierrez

    1 2 3 4 5 6 7 8 9 10 11 12 13

    Alfonso Rodríguez Peña Alfredo Barrios Galvez Antonio Saltarín Jiménez Arturo López Martínez Carlos Cervantes Núñez Carlos Palacios Pérez Cristian Pedraza Yepes Enrique Esteban Niebles Núñez Frank Quezada Tatis Giovanny Barleta Manjarrés Henry Santamaria de la Cruz Iván Caneva Rincón Jorge Rodríguez Velasco

    Docente Docente Docente Docente Docente Coord. Ing. Industrial Coord. Comité Bienestar Coord. Ing. Mecánica Docente Docente Docente Docente Docente Docente Docente Docente Docente Docente Docente Docente

    Planta Planta Catedrático Catedrático Planta Tiempo Completo Ocasional

    Ing. Industrial Ing. Industrial Ing. Industrial Ing. Industrial Ing. Industrial

    3008092910 3008439462

    3594068 3594691

    3145090727 3013626612

    3760450

    Ing. Industrial

    3106317731

    [email protected]

    Planta Tiempo Completo Ocasional Catedrático Catedrático Catedrático Catedrático Catedrático Catedrático Catedrático Catedrático Catedrático Catedrático Planta Planta

    Ing. Industrial Ing. Mecánica

    3106022314

    [email protected]

    3008053698 Ing. Mecánica Ing. Mecánica Ing. Mecánica Ing. Mecánica Ing. Mecánica Ing. Mecánica Ing. Mecánica Ing. Mecánica Ing. Mecánica Ing. Mecánica Ing. Mecánica Ing. Mecánica

    3483192

    no tiene [email protected] [email protected] [email protected] [email protected]

    [email protected]

    3783813 3158381365 3157120918 31143908843135460052

    3008028399 3145586457 3582647

    3462946 3681112 3231920 3525651

    [email protected] [email protected] [email protected]

    3533421-3780006-3595081 3790824-3407524 [email protected] 3786659 [email protected] 3015479392 [email protected]

    14 15

    Juan Carlos Campos Avella Julián Salas Siado

    Docente Docente

    16 17

    Lisandro Vargas Henríquez Rafael Ramírez Restrepo

    Docente Docente

    18 19 1 2

    Eugenio Yi me William Romero Restrepo Benjamín Herrera Reales Carlos Alberto Menassa Gordon

    3 4

    Carlos Bello Blanco Crisóstomo Peralta Hernández

    5

    Edgar Lora Figueroa

    6 7

    Federico Barraza Marenco Francisco Muñoz Paba

    8

    Fredy Jiménez Mendoza

    Docente Docente Docente Docente Coord. Ing. Química Docente Coord. Especial. Gestion eficiente energía Docente Docente Coord. Comité Investigaciones

    Medio Tiempo Completo Ocasional Planta Tiempo Completo Ocasional Catedrático Tiempo Completo Ocasional Catedrático Planta Planta Planta

    Ing. Mecánica

    Catedrático Planta

    Ing. Química Ing. Química

    Planta Medio Tiempo Planta Planta

    3157478909

    3562031

    Ing. Mecánica Ing. Mecánica Ing. Mecánica Ing. Mecánica Ing. Mecánica Ing. Química Ing. Química Ing. Química

    [email protected] 3135464551-3002113046 3135977197 3106208614 3008090784 3126153117 3106331355

    3403011 3728214

    [email protected] [email protected] [email protected]

    3594306 3530240

    [email protected] [email protected]

    3106010417 3107341779

    3401449

    [email protected] [email protected]

    3008153066

    3597558

    [email protected]

    3005870026 3157234199

    3558980 3600790

    [email protected]

    3012504035

    3114224430

    [email protected]

    Ing. Química Ing. Química Ing. Química

    9 10 11 12

    Graciela Forero De López Jaime Fernández Salazar Javier Useche Bayona Luís Montero Machado

    13 14 15 16 17 18 19

    Marley Vanegas Chamorro Melanio Coronado Hurtado Rafael González Palacios Roberto ChalitaFajel Ricardo Angulo Mercado Santander Bolívar Solano Sigifredo Cervera Cahuana

    Coord. Comité Planta Curricular Adhonoren Docente Planta Docente Planta Docente Coord. Planta Especial. Ing. Procesos Planta Docente Planta Docente Planta Docente Planta Docente Planta Docente Planta Docente

    Ing. Química Ing. Química Ing. Química Ing. Química Ing. Química Ing. Química Ing. Química Ing. Química Ing. Química Ing. Química Ing. Química

    3002982622

    3577713 3576724

    3103664113 3156773052 3003010632 3008117998 3008386178 3008037032 3005783670 301-3930695 3126566292

    Tabla Datos a ingresar en la prueba

    [email protected]

    [email protected] 3512419 3554412 3578526 3590808-3548446

    [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected]

    El formulario usado para cargar esta información es el siguiente:

    Ilustración 14. Módulo de administración de profesionales

    La imagen muestra el módulo cargado. Se ingresa el texto relacionado con el nombre de la persona, luego se hace clic en el enlace ‘buscar’ y en la caja de resultados que aparece debajo de la barra de búsqueda aparecerá el nombre de las personas que cumplan con la consulta realizada. Dependiendo de si hay o no resultados en la consulta anterior, se habilitarán las opciones de registro o edición de personas. Se debe realizar este paso antes de ingresar los datos de una persona, para asegurar que no se duplique información en la base de datos.

    El enlace correspondiente, de nombre ´Registrar nuevo´, aparecerá debajo de la caja de resultados, tal como lo muestra la siguiente imagen:

    Ilustración 15. Módulo de admón. de profesionales habilitado para registro Una vez aparecido, para habilitar los campos del formulario de registro, se debe hacer clic en el enlace ‘Registrar nuevo’, una vez hecho, dicho enlace desaparece y los campos se habilitan, dichos campos muestran la información del profesional, tales como nombres, teléfonos, correos, empresa donde trabajan actualmente, programa académico (titulo), entre otros campos.

    El profesional que se asocie a algún proyecto en calidad de director y no esté en la base de datos se deberá registrar mediante el primer nombre y los dos apellidos como mínimo.

    Ilustración 16. Registro de profesionales

    Luego de ser habilitados, se debe ingresar de manera obligatoria los datos requeridos, una vez hecho, se debe hacer clic en el botón ‘Registrar Prof.’, el cual toma los datos y los validará y de estar correcto enviará los datos ingresados al sistema para su posterior procesamiento y almacenamiento, al final se muestra un mensaje de notificación sobre el proceso. Tabla del personal almacenado en el SGBD MySQL desde la aplicación.

    4.3.2 Registro de Anteproyecto La Ficha técnica se registra desde el perfil: asistente coord. El formulario de registro se complementa con información del Nro. IPA y el Nro. De acta que correspondiente de reunión de comité.

    Ilustración 17. Formulario registro ficha técnica trabajos de grado

    4.3.3 Seguimiento Trabajos de Grado Los trabajos de grado pasan por un proceso, que lleva etapas en las que su información va cambiando o actualizando. Estas etapas se detallan a continuación:

    Inscripción anteproyecto: Aquí, se hace la inscripción de un trabajo de grado para que pueda ser llevado a control por el seguimiento. Su registro contiene, entre otras, su relación con estudiantes y revisores.

    Anteproyecto: Aquí, se valida se valida el plan de trabajo para su desarrollo como proyecto, cuya aprobación se da por los evaluadores del proyecto.

    Proyecto en curso: una vez validado el anteproyecto, este se pone en marcha, su revisión es más detallada por parte de los directivos asociados al proyecto, aquí, se muestra avances de desarrollo del trabajo de grado. Su aprobación a través de los evaluadores logra que el proyecto pase a ser proyecto de opción de

    grado. Proyecto de opción de grado: una vez aprobado, un proyecto comprende los pasos definitivos para su implementación y puesta en marcha, con las teorías descritas en las etapas anteriores ya aprobadas. Y su revisión es crucial para la opción a grado por parte de los estudiantes desarrolladores.

    4.3.3.1. Seguimiento anteproyectos preinscritos A continuación se observa el módulo de seguimiento para anteproyectos de grado. Aquí se maneja la información de las fichas técnicas registradas en el panel del asistente de coordinación. Para acceder al módulo simplemente debe hacer clic en el enlace ‘Anteproyecto’, allí aparecerá un formato de consulta de trabajos de grado por estado. Para los preinscritos, se selecciona de la lista la opción ‘Asignar evaluadores’ para ver los proyectos a la espera de ser puestos en marcha.

    Ilustración 18. Gestión de trabajos de grado con estado 'en espera'

    En la imagen se muestra un listado de proyectos de grado que se encuentran a la espera de su puesta en marcha. Estos son los proyectos preinscritos. Una vez listado, por cada proyecto de la lista, se muestran dos operaciones a realizar: poner en marcha y rechazar.

    Ilustración 19. Puesta en marcha de un trabajo de grado La imagen anterior muestra que al seleccionar un proyecto de la lista y hacer clic en el enlace ‘poner en marcha’, carga un formulario donde se ingresan los datos necesarios para su puesta en marcha. Aquí, se ingresa de manera obligatoria datos como la fecha de trámite y se asignan los evaluadores que aprobaron la puesta en marcha.

    Ilustración 20. Ficha técnica reducida del proyecto a poner en marcha Adicionalmente, aparece en el formulario un enlace para ver la ficha técnica de manera reducida, con la cual se puede revisar los detalles de la ficha técnica. Una vez ingresados los datos requeridos para la puesta en marcha, se hace clic en el botón ‘Iniciar anteproyecto’ con el cual el sistema procesará los datos para dicha tarea y su notificación sobre el resultado del mismo.

    4.3.3.2. Seguimiento de anteproyectos de grado A continuación se observa el módulo de seguimiento para anteproyectos de grado. Aquí se maneja la información de las fichas técnicas registradas en el

    panel del asistente de coordinación. Para acceder al módulo simplemente debe hacer clic en el enlace ‘Anteproyecto’, allí aparecerá un formato de consulta de trabajos de grado por estado. Para los anteproyectos, se selecciona de la lista la opción ‘Validar concepto’ para ver los anteproyectos aplazados y que optan para ser aprobados como proyectos de grado.

    Ilustración 21. Listado de anteproyectos en curso En la imagen se muestra un listado de proyectos de grado que se encuentran a la espera de su aprobación como proyectos de grado. Estos son los anteproyectos en curso. Una vez listado, por cada proyecto de la lista, se muestran tres operaciones a realizar: editar, aprobar como proyecto y rechazar.

    4.3.3.3 Aprobación de un anteproyecto de grado

    La Ilustración 210 muestra el listado de anteproyectos en curso con todas las operaciones a realizar. Para la edición, se debe seleccionar un proyecto de la lista, y hacer clic en el enlace ‘Aprobar como proyecto’. Luego, se carga un formulario con los datos requeridos para la tarea de aprobación. Tal como lo muestra la siguiente imagen:

    Ilustración 22. Módulo de aprobación de anteproyectos Para la aprobación de un anteproyecto, la información requerida es la siguiente: fecha de inicio del proyecto, y después seleccionar los evaluadores (si aplica).

    Una vez ingresado la información se debe hacer clic en el botón ‘Aprobar anteproyecto’ para que el sistema procese dicha información y aplique los cambios al proyecto.

    4.2.2.3. Seguimiento de proyectos de grado en curso A continuación se observa el módulo de seguimiento para proyectos de grado. Aquí se maneja la información de los proyectos de grado aprobados en el módulo de seguimiento de anteproyectos. Para acceder al módulo simplemente debe hacer clic en el enlace ‘Proyectos’, allí aparecerá un formato de consulta de trabajos de grado por estado. Para los proyectos en curso, se selecciona de la lista la opción ‘En curso’ para ver los proyectos ya aprobados.

    Ilustración 23. Listado de proyectos aprobados y en curso

    La Ilustración 23 muestra cómo se listan los proyectos en curso. En la lista de resultados se aprecian tres operaciones, las cuales se describen a continuación:

    4.2.2.3.1. Presentación de informes de proyecto de grado

    Un informe muestra cómo ha avanzado un proyecto de grado en cuanto a su desarrollo e implementación. El sistema trabgrado_ua permite registrar la presentación de informes con el fin de lograr un registro de los avances entregados oficialmente.

    Ilustración 24. Presentación de informes a una proyecto de grado

    La tarea de la presentación de informes asociados a un proyecto de grado se realiza a través de un formulario que se carga una vez que se haya seleccionado el proyecto a relacionar con el informe y hacer clic en el enlace ‘Presentar informes’. Se pueden registrar dos tipos de informes: uno parcial y uno final. Para registrar un informe, primero se selecciona el tipo de informe, y dependiendo del tipo de informe, se requerirán otros datos.

    Informe parcial: se ingresa el resumen del informe. Informe final: Se ingresa el resumen del informe, luego se ingresa la fecha de finalización del proyecto, el número de acta, la nota correspondiente, y si aplica, seleccionar los evaluadores que dieron aval al proyecto. Una vez ingresado la información, se debe hacer clic en el botón ‘Presentar informe’ para que el sistema realice los cambios. Téngase en cuenta que al presentar el informe final a un proyecto, se da por terminado el proceso de seguimiento del proyecto de grado.

    4.2.2.5. Seguimiento de proyectos de grado finalizados A continuación se observa el módulo de seguimiento para proyectos de grado que ya finalizaron su proceso de seguimiento. Aquí se maneja la información de los proyectos de grado cuyo informe final fue aprobatorio y por ende fueron dados como finalizados. Para acceder al módulo simplemente debe hacer clic en el enlace ‘Proyectos’, allí aparecerá un formato de consulta de trabajos de grado por estado. Para los proyectos en curso, se selecciona de la lista la opción ‘Finalizado’ para ver los proyectos finalizados en cuanto a su proceso de seguimiento.

    Ilustración 25. Sección de seguimiento de proyectos terminados

    El módulo de seguimiento para los proyectos terminados posee una funcionalidad específica. Dado que la lista de resultados de la consulta de proyectos terminado lanza una sola operación: Cargar archivo, cuyos detalles se mencionan a continuación:

    4.2.2.5.1. Carga de archivos para un trabajo de grado

    La Ilustración 25 muestra una lista de proyectos cuyo estado dentro del proceso de seguimiento indica que ya se finalizó correctamente. Ahora, para que un proyecto esté totalmente finalizado, éste debe aparecer dentro de las consultas

    generales que se realizan en la página de inicio (ver ¡Error! No se encuentra el

    origen de la referencia.). Para entrar al módulo de carga de documentos relacionados con un trabajo de grado, se debe hacer clic en el enlace con nombre ‘Cargar archivo’, que aparece debajo del título del proyecto a revisar.

    Ilustración 26. Módulo de carga de documento relacionado con un trabajo de grado

    En este módulo, se muestra un formulario que consta de una caja de carga de archivo, con esta caja los usuarios podrán seleccionar un archivo desde la carpeta donde éste se encuentra. Dicho documento, debe ser un archivo en formato PDF. Una vez seleccionado el archivo, se debe dar clic en el botón ‘Subir archivo’, con lo cual el sistema inicia la subida del archivo. El buen resultado de la carga del archivo, permitirá la publicación del proyecto para su consulta

    posterior desde la página de inicio, y la lectura de dicho archivo desde los resultados.

    4.3.4 Consulta General En la página de inicio, en el lado superior derecho se encuentra una barra de búsqueda. La cual permitirá la consulta por texto de proyectos de grado. Para usarlo, basta con ingresar texto, palabras clave para dar con el proyecto. Una vez realizada la búsqueda, el sistema mostrará una sección con una lista de resultados, como se muestra a continuación:

    Ilustración 27. Consulta de trabajos de grado desde la página de inicio

    La lista de resultados muestra el título del proyecto que concuerda con el texto ingresado para la consulta. En cada elemento de la lista se ven opciones de vista, con las cuales, se puede ver la ficha técnica y el resumen del proyecto en

    formato PDF. A continuación se muestra una ficha técnica seleccionada de la lista de resultados, para verla, basta con hacer clic en el enlace ‘Ver ficha’ asociado al proyecto a revisar:

    Ilustración 28. Módulo de consulta general de trabajos de grado

    Adicionalmente a la ficha técnica, se puede ver un documento PDF asociado al proyecto de grado. Para verlo, basta con hacer clic en el enlace ‘Ver documento’. Para ver el documento, tenga en cuenta que debe tener el plugin PDF de adobe, y los navegadores web Internet Explorer o Mozilla Firefox, caso contrario, el sistema le notificará sobre el plugin.

    4.3.5 Consulta Avanzada Los usuarios con cuentas administrativas cuentan con la posibilidad de revisar la información de los trabajos de grado a través de una consulta, utilizando los criterios aplicables a los trabajos de grado de acuerdo con su seguimiento. Para entrar a esta sección, en el menú principal a la izquierda del sitio, se debe hacer clic en el enlace ‘Consulta avanzada’.

    Ilustración 29. Módulo de consulta avanzada de trabajos de grado (coord.)

    La sección consta de un formulario con criterios de consulta, tales como el número de acta, el director, la línea de investigación, la calificación y el seguimiento. Para usarlo, primero debe seleccionar el seguimiento. Puede ser de dos valores, anteproyecto o proyecto. Una vez seleccionado, se habilitan o deshabilitan las casillas de acuerdo con la selección anterior, luego selecciona e

    ingresa la información dada con los criterios de consulta. A continuación se describe la forma de ingresar la información:



    Número de acta: se ingresa primero digitando el año y luego el número de acta de tres dígitos separados por un guion (-).



    Director: seleccionar uno de la lista desplegable.



    Línea de investigación: seleccionar una línea de la lista desplegable.



    Calificación (cuando se seleccionó buscar por proyecto): seleccionar una opción de la lista desplegable.

    Una vez listo, hacer clic en el botón ‘Iniciar consulta’.

    Ilustración 30. Consulta avanzada (coord.)

    La imagen anterior muestra una consulta realizada en esta sección. El listado se muestra en la parte derecha junto con el formulario de búsqueda. Arriba de la lista se puede revisar el total de resultados y las páginas a revisar. El listado muestra el número IPA, el título del proyecto, la fecha de registro y el estado.

    CONCLUSIONES

    Trabajando mancomunadamente con la Coordinación de Programa de Ingeniería Industrial de la Universidad del Atlántico se logró identificar los requerimientos para la administración de los proyectos de grado. El análisis de esta información permitió tomar una decisión respecto al sistema y lenguaje de programación apropiados información,

    que debían utilizarse para el almacenamiento y gestión de la así

    como

    la

    lógica

    de

    funcionamiento.

    Este

    proceso

    de

    identificación de requerimientos fue llevado a cabo de manera transversal, durante el desarrollo del proyecto, las indicaciones y recomendaciones por parte de la Coordinación de Programa surgían cuando se le presentaba versiones preliminares de la Aplicación, además de las recomendaciones de la directora del proyecto que es miembro activo del comité de grado y cuyas ideas se tuvieron en cuenta para lo que fue la versión final de la Aplicación. Como decisión final y teniendo en cuenta los pros y contras de varias opciones se optó por utilizar un sistema de base datos en MySQL, siendo un sistema que reúne muchas ventajas (fiable, seguro, veloz, etc.) y es altamente compatible con otros sistemas. A partir de esto se creo un modelo relacional el cual se fue modificando a través del desarrollo del proyecto, para ajustarse a las necesidades. Simplificándose cada vez más en torno a la figura del proyecto como eje principal del modelo y uniéndolo a las demás entidades de este (estudiantes, profesores, líneas de investigación, etc.) Con está información también se lograron definir los requerimientos funcionales y no funcionales de la aplicación los cuales definen las actividades y lo que se

    espera en cuestión de rendimiento de la Aplicación. Además se definieron los Actores del Sistema y las funciones, privilegios y limitantes de cada uno de ellos. La siguiente etapa de este proyecto pasaba por hallar la forma de organizar y presentar la información contenida en la base de datos de forma eficiente e intentando armonizar la vista de usuario en un entorno web similar al de la página oficial de la Universidad del Atlántico, (www.uniatlantico.edu.co). El diseño final de la Interfaz Gráfica de la Aplicación resultó de la combinación de 2 programas de la línea Macromedia el primero Macromedia Fireworks se utilizó para la edición de las imágenes, logotipos, símbolos y aplicación de colores institucionales, el segundo Macromedia Dreamweaver se utilizó para el diseño y la programación de cada una de las funciones de la aplicación. El programa Macromedia Dreamweaver nos brindó la posibilidad de programar una aplicación que conjugara las funciones de varios programas en la Interfaz Gráfica, estos programas o plataformas de apoyo son: Mysql, Filezilla y Acrobat Reader, cada uno cumple con funciones determinantes para el almacenamiento y gestión de datos, almacenamiento de archivos y presentación de documentos. La aplicación se sometió a un conjunto de pruebas documentadas en esta tesis en las que se ingresó inicialmente al personal docente de la Universidad, esto incluye el ingreso de su información personal, datos de contacto e información concerniente a su relación laboral con la Universidad del Atlántico, luego se procedió a registrar un anteproyecto y llevándolo desde sus inicios hasta las instancias finales de éste, detallando paso a paso las diferentes instancias por la cual pasa y las opciones que fueron determinadas en conjunción con la Coordinación de Programa para el registro de los anteproyectos. Las demás

    pruebas van dirigidas al uso de las herramientas de búsqueda para el usuario común y el usuario administrador, para cada una se detallan las opciones, limitaciones y modo de uso. Durante la realización de estas pruebas, la Aplicación cumplió de manera exitosa con los criterios de integridad de los datos almacenados y la seguridad en los controles de acceso para las diferentes clases de usuarios. Por último se elaboró un Manual de Usuario en donde se documentaron, los detalles de estructura y funcionamiento de la Aplicación. En este se describen las distintas funciones, privilegios, limitantes de cada uno de los Actores del Sistema, acompañado de screenshots de la Aplicación para hacer más claro su entendimiento. Las funciones del personal administrativo de sistemas de la Universidad del Atlántico consisten principalmente en la administración de las contraseñas de los usuarios en caso de cambios en el personal administrativo y la adaptación de la Aplicación a las tecnologías usadas actualmente en la Universidad del Atlántico. Con la realización de este proyecto se diseñó una herramienta de fácil manejo y administración que cumple con las expectativas y necesidades propuestas por la Coordinación de Programa de Ingeniería Industrial; una herramienta adaptable cuyo diseño integra y hace uso de las virtudes de los protocolos y lenguajes de programación para emular y apoyar las actividades de control y seguimiento de los trabajos de grado realizadas en las dependencias del Programa de Ingeniería Industrial de la Universidad del Atlántico, de una manera sistematizada, eficiente y segura.

    BIBLIOGRAFIA

    INSTITUTO COLOMBIANO DE NORMAS TÉCNICAS Y CERTIFICACIÓN. Documentación. Citas y notas de pie de página. Segunda actualización. Bogotá: ICONTEC, 2007. 7p. (NTC 1487)

    ________Documentación. Presentación de tesis, trabajos de grados y otros trabajos de investigación. Quinta actualización. Bogotá: ICONTEC, 2007. 34p.: il. (NTC 1486)

    ACHOUR, Mehdi; BETZ Friedhelm. Manual de php. Edited By: Philip Olson, 2010. + CAIRÓ BATTISTUTTI, Osvaldo. Metodología de la programación: Algoritmos, diagramas de flujo y programas. 3 ed. México: Alfaomega, 2005. 464 p.

    GILFILLAN Ian, La Biblia de MySQL: Anaya multimedia, 2003. p. 288.

    MENDELSON, Ale. Introducción a las base de datos relacionales: Prantice HallPearson Addison Wesley, 2000.

    RAMAKRISHNAN, Raghu y GEHRKE, Johannes. Sistemas de gestión de Base de Datos. 3ed: McGraw Hill, 2003.

    ROB, Peter Y CORONEL, Carlos. Sistemas de Bases de Datos: Diseño, implementación y administración: Cengage Learning Editores. 2004. SANCHEZ, Jorge. Sistema de gestión de Base de Datos. Academia ORACLE: Ebook.

    SILBERSCHATZ Abraham, KORTH Henry F. Fundamentos de Bases de Datos. 4ed: McGraw Hill, 2002.

    SOMMERVJLLE, Jan. Ingeniería Del Software. 7ed: Pearson Addison Wesley, 2005.

    UNIVERSIDAD DEL ATLÁNTICO, Reglamento para la administración, presentación, ejecución de los trabajos de grado de la facultad de ingeniería., Diciembre 1997.

    Sistemas de base de datos . [En línea] Citado 1 de octubre de 2008.

    Related Documents

    Proyecto De Grado Final
    February 2021 1
    Proyecto De Grado
    February 2021 1
    Proyecto De Grado
    February 2021 1
    Proyecto De Grado
    February 2021 1
    Proyecto De Grado (1)
    February 2021 1
    Proyecto De Grado
    February 2021 1

    More Documents from "David Jaramillo"