











































Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Modelo de la defensa del primer proyecto de tecnologia web email
Tipo: Resúmenes
1 / 51
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!












































CAPITULO 1: PERFIL En el presente capítulo se detallan el plan de proyecto, introducción, antecedentes, objetivos, descripción del problema, situación problemática y el alcance del proyecto.
El constante crecimiento del internet a nivel mundial, la globalización, la tecnología y las comunicaciones, hacen que el público demande nuevas maneras de obtener productos o poder realizar compras, demandando no solo calidad, sino que también esperan que se les brinde mayor accesibilidad a los servicios ya disponibles, y una mejor atención al cliente. El correo electrónico es una de las aplicaciones TCP/IP más utilizadas en estos días. El correo electrónico es un recurso tecnológico que nos permite comunicarnos desde cualquier parte del mundo a través de Internet. El correo electrónico (también conocido como e-mail, un término inglés derivado de electronic mail) es un servicio que permite el intercambio de mensajes a través de sistemas de comunicación electrónicos. El concepto se utiliza principalmente para denominar al sistema que brinda este servicio vía Internetmediante el protocolo SMTP (Simple Mail Transfer Protocol), pero también permite nombrar a otros sistemas similares que utilicen distintas tecnologías. Los mensajes de correo electrónico posibilitan el envío, además de texto, de cualquier tipo de documento digital. El funcionamiento del correo electrónico es similar al del correo postal. Ambos permiten enviar y recibir mensajes, que llegan a destino gracias a la existencia de una dirección. El correo electrónico también tiene sus propios buzones: son los servidores que guardan temporalmente los mensajes hasta que el destinatario los revisa.
El correo electrónico antecede a Internet, y, de hechopara que ésta pudiera ser creada, fue una herramienta crucial. En una demostración del MIT (Massachusetts Institute of Technology) de 1961, se exhibió un sistema que permitía a varios usuarios ingresar a una IBM 7094 desde terminales remotas, y así guardar archivos en el disco. Esto hizo posible que surjan nuevas formas de compartir información. El correo electrónico comenzó a utilizarse en 1965 en una supercomputadora de tiempo compartido y, para 1966, se había extendido rápidamente para utilizarse en las redes de computadoras. El correo electrónico fue creado en 1971 por RayTomlinson, un ingeniero de BoltBeranek and Newman, la empresa encargada de poner en marcha Arpanet. Tomlinson no consideró realizar un invento importante. A pesar de que no existía la manera de enviar mensajes de manera unipersonal
Recabar información del funcionamiento y de los procesos de negocio del supermercado. Analizar la información obtenida en la investigación para cubrir los requerimientos del negocio. Identificar los requisitos funcionales del sistema a través de los requerimientos del usuario. Diseñar e implementar una base de datos utilizando un SGBD “MySQLWorkBench”, capaz de soportar todos los requerimientos que se están estableciendo. Diseñar una interfaz gráfica fácil de manejar para los clientes que vayan a realizar pedidos, así como para los administradores. Implementar el sistema utilizando un lenguaje de programación PHP 5.6 y un framework de desarrollo laravel 5. Realizar pruebas pertinentes y necesarias sobre el buen funcionamiento del sistema, analizando que cumplan todos los requerimientos planteados previos al desarrollo.
Brindar permanentemente calidad en la atención y el servicio para satisfacer las necesidades y requerimientos de nuestros clientes a través de la mejora continua en cada uno de nuestros productos, con base en un espíritu noble de responsabilidad social.
Ser la cadena de Supermercados líder a nivel nacional, en servicio al cliente, variedad de productos, precios accesibles y proyección comunitaria.
La Empresa de Supermercado Tia se encuentra ubicado en la calle 24 de septiembre esquina Cuellar Central: Calle 24 de Septiembre esquina Cuellar
La tienda TIA es uno de los supermercados más conocidos y grandes que llegan a muchos lugares de Santa Cruz de la sierra, algunos de estos supermercados no cuentan con un servicio de correo electrónico para brindar información de manera eficiente.
1.8.1 Hardware Los recursos físicos necesarios para el funcionamiento del sistema serán: Servidor IBM 1.8.2 Software Entre los recursos lógicos, manejaremos los siguientes: Sistema Operativo Fedora 24 (64 bits) 1.8.3 Datos Entre los datos que manejará el sistema tenemos: Producto Clientes Encargado Gerente
1.8.4 Personas Quien o quienes tendrán acceso al sistema: Cliente Encargado de zona Gerente 1 .8.5 Procesos Las políticas de Negocios a seguir son: Gestión usuarios Gestión clientes Gestión productos Gestión categoría productos Gestión promoción de los productos
1.9.1 Sistema Operativo El Sistema operativo utilizado como plataforma para nuestro proyecto es Fedora 24 ya que es un sistema que cumple con todos los requerimientos necesarios, y además de gratuito. 1.9.2 Sistema gestor de Base de Datos Las características que pueda tener un Gestor de Base de Datos es muy importante, ya que tienen que cumplir con exigencias transaccionales y de ella depende en gran medida el buen funcionamiento de la base de datos y su vida útil, entre las más importantes se pueden mencionar los siguientes: Control de redundancia de datos que evita que los usuarios tengan información repetida y que provoca problema en la administración. Restricción de acceso no autorizado para crear cuentas y asignar privilegios, de acceso evitando el ingreso de personas no autorizadas a ciertas operaciones, esta característica es vita en un Gestor de Base de Datos. Representación de vínculos complejos entre datos sin perder os enlaces manteniendo con rapidez y eficacia datos que estén mutuamente relacionados. Cumplir con las restricciones de integridad, como el tamaño de los datos establecidos en la base de datos, no todas las restricciones podrán se especificadas en el Gestor de datos, no todas las restricciones podrán se especificadas en el Gestor de Base de Datos, otras pueden requerir verificación mediante programas de actualización cuando se introduce los datos. Respaldo y recuperación de los datos cuando ocurren fallas en el sistema. Características operacionales Transacciones (transactions) Disparadores (triggerd) Backup y recuperación (Backup and Recovery) Procedimientosalmacenados IntegridadReferencial Tomando en cuenta las características analizadas elegimos como gestor de Base de Datos PostgreSQL que es gratuito y cumple con todas las exigencias mencionadas con anterioridad. 1.9.3 Herramientas CASE Se utilizará Enterprise Architect 9.3 (EA) que es una herramienta flexible, completa y potente de modelado en UML bajo plataforma Windows. Provee lo más nuevo en desarrollo de sistemas, administración de proyectos y análisis de negocio.EA es una herramienta que abarca integralmente
CAPITULO 2: MARCO TEORICO
Laravel es un framework de código abierto para el desarrollo de aplicaciones web en PHP 5 que posee una sintaxis simple, expresiva y elegante. Fue creado en 2011 por Taylor Otwell, inspirándose en Ruby on Rails y Symfony, de los cuales ha adoptado sus principales ventajas. Laravel facilita el desarrollo simplificando el trabajo con tareas comunes como la autenticación, el enrutamiendo, gestión sesiones, el almacenamiento en caché, etc. Algunas de las principales características y ventajas de Laravel son: Esta diseñado para desarrollar bajo el patrón MVC (modelo - vista - controlador), centrándose en la correcta separación y modularización del código. Lo que facilita el trabajo en equipo, así como la claridad, el mantenimiento y la reutilización del código. Integra un sistema ORM de mapeado de datos relacional llamado Eloquent aunque también permite la construcción de consultas directas a base de datos mediante su Query Builder. Permite la gestión de bases de datos y la manipulación de tablas desde código, manteniendo un control de versiones de las mismas mediante su sistema de Migraciones. Utiliza un sistema de plantillas para las vistas llamado Blade, el cual hace uso de la cache para darle mayor velocidad. Blade facilita la creación de vistas mediante el uso de layouts, herencia y secciones. Facilita la extensión de funcionalidad mediante paquetes o librerías externas. De esta forma es muy sencillo añadir paquetes que nos faciliten el desarrollo de una aplicación y nos ahorren mucho tiempo de programación. Incorpora un intérprete de línea de comandos llamado Artisan que nos ayudará con un montón de tareas rutinarias como la creación de distintos componentes de código, trabajo con la base de datos y migraciones, gestión de rutas, cachés, colas, tareas programadas, etc.
El modelo–vista–controlador (MVC) es un patrón de arquitectura de software que separa los datos y la lógica de negocio de una aplicación de la interfaz de usuario y el módulo encargado de gestionar los eventos y las comunicaciones. Para ello MVC propone la construcción de tres componentes distintos que son el modelo, la vista y el controlador, es decir, por un lado define componentes para la representación de la información, y por otro lado para la interacción del usuario. Este patrón de arquitectura de software se basa en las ideas de reutilización de código y la separación de conceptos, características que buscan facilitar la tarea de desarrollo de aplicaciones y su posterior mantenimiento.
De manera genérica, los componentes de MVC se podrían definir como sigue: El Modelo: Es la representación de la información con la cual el sistema opera, por lo tanto gestiona todos los accesos a dicha información, tanto consultas como actualizaciones. Las peticiones de acceso o manipulación de información llegan al 'modelo' a través del 'controlador'. El Controlador: Responde a eventos (usualmente acciones del usuario) e invoca peticiones al 'modelo' cuando se hace alguna solicitud de información (por ejemplo, editar un documento o un registro en una base de datos). Por tanto se podría decir que el 'controlador' hace de intermediario entre la 'vista' y el 'modelo'. La Vista: Presenta el 'modelo' y los datos preparados por el controlador al usuario de forma visual. El usuario podrá interactuar con la vista y realizar otras peticiones que se enviarán al controlador.
.env – Este fichero ya lo hemos mencionado en la sección de instalación, se utiliza para almacenar los valores de configuración que son propios de la máquina o instalación actual. Lo que nos permite cambiar fácilmente la configuración según la máquina en la que se instale y tener opciones distintas para producción, para distintos desarrolladores, etc. Importante, este fichero deberí a estar en el .gitignore. composer.json – Este fichero es el utilizado por Composer para realizar la instalación de Laravel. En una instalación inicial únicamente se especificará la instalación de un paquete, el propio framework de Laravel, pero podemos especificar la instalación de otras librerías o paquetes externos que añadan funcionalidad a Laravel.
La carpeta app es la que contiene el código principal del proyecto, como son las rutas, controladores, filtros y modelos de datos. Si accedemos a esta carpeta veremos que contiene a su vez muchas sub-carpetas, pero la principal que vamos a utilizar es la carpeta Http: app/Http/Controllers – Contiene todos los archivos con las clases de los controladores que sirven para interactuar con los modelos, las vistas y manejar la lógica de la aplicación. app/Http/Middleware – Son los filtros o clases intermedias que podemos utilizar para realizar determinadas acciones, como la validación de permisos, antes o después de la ejecución de una petición a una ruta de nuestro proyecto web. app/Http/routes.php – Este documento define todas las rutas de nuestro sitio web, enlazando una URL del navegador con un método de un controlador. Además nos permite realizar validaciones (mediante Middleware ) y otras operaciones sobre las rutas de nuestro sitio. Además de esta carpeta encontraremos muchas otras como Console , Events , Exceptions , Jobs , Listeners , Policies y Providers. Más adelante veremos algunas de estas carpetas pero de momento la única que vamos a utilizar es Http. En la raíz de app también podemos encontrar el fichero User.php. Este fichero es un modelo de datos que viene predefinido por Laravel para trabajar con los usuarios de la web, que incluye métodos para hacer login, registro, etc. En el capítulo sobre bases de datos hablaremos más sobre esto.
El funcionamiento básico que sigue Laravel tras una petición web a una URL de nuestro sitio es el siguiente: Todas las peticiones entran a través del fichero public/index.php, el cual en primer lugar comprobará en el fichero de rutas (app/Http/routes.php) si la URL es válida y en caso de serlo a que controlador tiene que hacer la petición. A continuación se llamará al método del controlador asignado para dicha ruta. Como hemos visto, el controlador es el punto de entrada de las peticiones del usuario, el cual, dependiendo de la petición: o Accederá a la base de datos (si fuese necesario) a través de los "modelos" para obtener datos (o para añadir, modificar o eliminar). o Tras obtener los datos necesarios los preparará para pasárselos a la vista. En el tercer paso el controlador llamará a una vista con una serie de datos asociados, la cual se preparará para mostrarse correctamente a partir de los datos de entrada y por último se mostrará al usuario. A continuación se incluye un pequeño esquema de este funcionamiento:
3.1.2 Priorización de casos de uso
3.1.3 Detalle de casos de uso
Ingresar el correo y contraseña Hacer click en Login uc cu1 Login cu1 Login Usuario (from Actores)
Introducir los datos para registrar al cliente (nombre, correo, contraseña). Hacer click en registrar
Error en los tipos de datos introducidos. Error campos no rellenados
uc cu2 Gestionar clientes Cliente (from Actores) cu2 Gestionar clientes (^) «include» cu1 Login