540 likes | 728 Views
ESCUELA POLITÉCNICA DEL EJÉRCITO FACULTAD DE INGENIERÍA DE SISTEMAS E INFÓRMATICA. “ANÁLISIS, DISEÑO E IMPLEMENTACIÓN DE UNA APLICACIÓN WEB ACADÉMICO-ADMINISTRATIVA PARA EL COLEGIO MARÍA DE NAZARET, MEDIANTE EL USO DE TECNOLOGÍAS SOFTWARE LIBRE”. DIRECTOR: ING. TATIANA NOBOA
E N D
ESCUELA POLITÉCNICA DEL EJÉRCITO FACULTAD DE INGENIERÍA DE SISTEMAS E INFÓRMATICA “ANÁLISIS, DISEÑO E IMPLEMENTACIÓN DE UNA APLICACIÓN WEB ACADÉMICO-ADMINISTRATIVA PARA EL COLEGIO MARÍA DE NAZARET, MEDIANTE EL USO DE TECNOLOGÍAS SOFTWARE LIBRE” DIRECTOR: ING. TATIANA NOBOA CO – DIRECTOR: ING. CARLOS PRÓCEL REALIZADA POR: CARLOS MAURICIO QUILACHAMÍN SIMBAÑA ROBERTO ALEJANDRO SÁNCHEZ BUENAÑO
PLANTEAMIENTO DEL PROBLEMA • Las autoridades de la institución educativa manifiesta que el personal administrativo necesita un sistema web que automatice los procesos académicos-administrativos que se ejecutan en el Colegio María de Nazaret.
JUSTIFICACION • El Colegio María de Nazaret no cuenta con un sistema que cumpla con los requerimientos fundamentales que la institución exige y por tanto en muchas ocasiones ha tenido problemas, en realizar tareas de forma manual.
OBJETIVOS • OBJETIVO GENERAL: • Analizar, Diseñar e Implementar una aplicación web académico-administrativa para el Colegio María de Nazaret, mediante el uso de tecnologías de software libre. • OBJETIVOS ESPECÍFICOS: • Aplicar la metodología UWE + UML para el análisis, diseño y desarrollo del sistema. • Diseñar y Desarrollar un ambiente Web en el que la comunidad del Colegio pueda gestionar sus procesos académicos. • Realizar pruebas del sistema e implementar el mismo con todas las funcionalidades que requiere el Colegio.
ALCANCE • Se desarrolló una aplicación web que consta de los siguientes módulos: • Información Portal Web • Gestión de Datos de los Alumnos • Gestión de Datos del Representante del Alumno • Gestión de Datos de los Docentes • Gestión de Matriculación (Registro Alumnos) • Control de Asistencia • Administración de Calificaciones • Control de Niveles de Acceso al Sistema
APLICACIONES WEB • Herramientas de software que puede ser accedidas a través de Internet o de una intranet mediante un navegador Web. • Ofrecen una inmensidad de servicios a los usuarios teniendo siempre en cuenta los conceptos de seguridad, desempeño y calidad.
CARACTERÍSTICAS • Evolución constante e impredecible • Amplia gama de usuarios • Adaptación al medio • Seguridad y Privacidad • Constante cambio tecnológico • Contenido Diverso Requiere de una constante actualización y de un cuidadoso manejo de los controles de cambios, lo que compromete a la organización Deben ser claras en contenidos, usando notación estándar para que todos los usuarios puedan acceder sin mayor inconveniente a las mismas. Deben responder de la mejor manera posible según la velocidad de conexión, dispositivos móviles, y formatos en los que pueden ser utilizados. Estos requerimientos deben ser constantemente atendidos y monitoreados en este tipo de aplicaciones. Deben ir de la mano con los últimos estándares y tecnologías de desarrollo para ofrecer servicio de calidad, rapidez y seguridad. Los sitios que abarcan las aplicaciones Web poseen contenidos tales como gráficos, animaciones, video que pueden afectar tiempos de respuesta del sistema.
PROCESO DE DESARROLLO • Esta definido por un conjunto de pasos a ser ejecutados en la etapa de desarrollo de la aplicación. • El proceso de desarrollo inicia con el análisis del contexto que tendrá la aplicación. • Concluida la etapa de análisis, se procede con la etapa de diseño de la arquitectura.
PROCESO DE DESARROLLO • Posterior al diseño de la arquitectura, se diseña la interfaz, tomando en cuenta la presentación y la navegabilidad. • Una vez que se encuentra en producción, se debe tomar en cuenta que estas aplicaciones requieren un mantenimiento continuo. • El monitoreo continuo de fallos y problemas de seguridad es primordial para mantener al sitio libre de amenazas.
HERRAMIENTAS DE DESARROLLO • Permiten diseñar, construir, evaluar y dar soporte al desarrollo de la aplicación hasta que la misma sea implementada en un ambiente de producción. • Debido al alto costo de las licencias y la poca flexibilidad que se tiene con software propietario se ha escogido software libre como alternativa. • Libertad para personalizar, mejorar y modificar de acuerdo a los requerimientos funcionales de la institución, y extensa comunidad de soporte.
HERRAMIENTAS DE DESARROLLO • Para el desarrollo de la aplicación web académico – administrativa a ser implementada se cuenta con herramientas: • Gestor de contenidos CMS • Servidor de aplicaciones web • Motor de base de datos • Herramienta CASE modelado UML
DRUPAL • Es un administrador de contenidos que permite administrar páginas web dentro de un sitio mediante la edición de su contenido. • Es un programa libre, con licencia GNU/GPL, escrito en PHP, desarrollado y mantenido por una activa comunidad de usuarios. • Su flexibilidad y adaptabilidad, así como la gran cantidad de módulos adicionales disponibles, hace que sea adecuado para realizar sitios web.
CARACTERÍSTICAS DRUPAL • Optimiza contenidos. • WYSIWYG. • URL amigables. • Código fuente disponible bajo licencia GNU/GPL. • Gran cantidad de temas y módulos disponibles.
MySQL • MySql es un motor de base de datos relacional, multiusuario y multihilo, a partir de enero del 2008 se convirtió en subsidiaria de Sun Microsystems. • Se encuentra desarrollado como software libre bajo un esquema de licencias dual, bajo licencia GNU GPL. • Cuenta con diferentes API que facilitan el acceso a datos por parte de diferentes lenguajes de programación
CARACTERÍSTICAS MySQL • Estabilidad. • Seguridad. • Escalabilidad. • Replicación. • Gran disponibilidad en cantidad de plataformas. • Búsqueda e indexación de campos de texto.
APACHE • Es un servidor web HTTP de código abierto multiplataforma. • Implementa la noción de sitio virtual, bases de datos de autenticación y negociación de contenido.
PHP • Lenguaje de programación para la creación de páginas web dinámicas.
MAGIC DRAW • Facilita el análisis y el diseño de sistemas y bases de datos orientadas a objetos. • Esta herramienta posee un complemento llamado Magic UWE que permite realizar todos los diagramas que menciona la metodología UWE.
PRUEBAS DE SOFTWARE • Parte fundamental del proceso de desarrollo. • Permiten determinar si la aplicación desarrollada esta proporcionando información oportuna y confiable. • Se pueden aplicar en el proceso de desarrollo o cuando la aplicación se encuentra lista para ser ejecutada.
CLASIFICACIÓN • Pruebas de Unidad • Pruebas de Integración • Pruebas Funcionales • Pruebas no Funcionales
PRUEBAS DE UNIDAD • Se aplican antes de entregar una aplicación con el fin de encontrar fallos en cada uno de los módulos de código. • Para realizar su ejecución se requieren utilizar casos de prueba. • Especificar los datos ó entradas de prueba posibles junto con las salidas esperadas del sistema.
PRUEBAS DE CAJA BLANCA • Sirven para analizar el código fuente, buscando ejecutar cada línea de código al menos una vez. • Están diseñados para verificar todos los controles del programa. ENTRADA SALIDA
PRUEBAS DE CAJA NEGRA • Se realiza un análisis de entradas y salidas que produce un proceso. • En estas pruebas no se necesita conocer como esta elaborado por dentro cada módulo. • Deben realizar basados en los casos de uso y en las respuestas esperadas en cada uno de ellos. ENTRADA SALIDA
PRUEBAS DE INTEGRACIÓN • Tienen como objetivo probar en conjunto los módulos del sistema que interactúan entre si. • Pruebas Funcionales • Pruebas no Funcionales
PRUEBAS FUNCIONALES • Sirven para verificar que la aplicación desarrollada cumpla con las funciones que fueron definidas al momento del diseño. • Verificando las entradas y salidas del sistema. • Identificar relaciones entre módulos, sea esta de manera sincronizada o funcional. • Identificar la forma en que se comunica cada uno de los módulos.
PRUEBAS NO FUNCIONALES • Sirven para comprobar requisitos que no fueron establecidos en el levantamiento de información, tales como, rendimiento, usabilidad, portabilidad y seguridad. • Las pruebas de rendimiento permiten medir la respuesta de la aplicación ante condiciones extremas. • La prueba de stress es una de las más utilizadas para medir la capacidad de procesar las peticiones de información
METODOLOGÍA UWE • Es un proceso para el desarrollo de aplicaciones web enfocándose sobre un diseño estructurado, personalización y generación de escenarios que permiten que la planificación del proyecto sea la más adecuada. • Esta metodología nos provee de modelos de presentación y navegación.
ETAPAS DEL DESARROLLO • Las actividades de modelado principales son el • Análisis de Requerimientos • Diseño Conceptual • Diseño de Navegación • Diseño de Presentación ADAPTABILIDAD REQUERIMIENTOS ADAPTABILIDAD PROCESOS CONTENIDO NAVEGACIÓN
PROGRAMACIÓN ORIENTADA A OBJETOS • Expresa un programa como un conjunto de estos objetos, que colaboran entre ellos para realizar tareas. • Esto permite hacer los programas y módulos más fáciles de escribir, mantener y reutilizar. • Un objeto contiene toda la información que permite definirlo e identificarlo frente a otros objetos pertenecientes a otras clases ENCAPSULACIÓN POLIMORFISMO IDENTIDAD CLASIFICACIÓN HERENCIA
CAPTURA DE REQUISITOS • Se obtuvieron de citas con representantes del Colegio María de Nazaret. • Fueron agrupados como especificación de requerimientos funcionales. • Lluvia de Ideas. • Grupos Focales. • Skateholders.
REQUERIMIENTOS FUNCIONALES • RF01: ROLES DE USUARIO • Fueron agrupados como especificación de requerimientos funcionales.
REQUERIMIENTOS FUNCIONALES • RF02: NOTICIAS • Fueron agrupados como especificación de requerimientos funcionales.
REQUERIMIENTOS FUNCIONALES • RF03: ADMINISTRACIÓN ACADÉMICA • Fueron agrupados como especificación de requerimientos funcionales.
REQUERIMIENTOS FUNCIONALES • RF04: REPORTES • Fueron agrupados como especificación de requerimientos funcionales.
Pruebas de Caja Negra Página de Ingreso de Usuario: 811 ms – 17.10 KB
Pruebas de Caja BLANCA Página de Ingreso de Usuario: 811 ms – 17.10 KB