Mercadillo Online de libros

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Mercadillo Online de libros"

Transcripción

1 Departament d Enginyeria Informàtica i Matemàtiques Mercadillo Online de libros TITULACIÓN: Ingeniería Técnica Informática de Gestión AUTOR: Salvador García Rizos DIRECTOR: Pere Millán Marco FECHA: Septiembre / 2012

2 Índice de contenido 1Objetivos del proyecto...5 2Especificaciones del proyecto Introducción Requisitos funcionales Área pública o front-end Área de usuario Área de administración API de servicios Requisitos no funcionales...8 3Diseño Decisiones a nivel de metodología Qué es Scrum? Elementos que adoptaremos de Scrum Decisiones a nivel de aplicación Model View Controller Elección de Symfony como framework Symfony Características de Symfony La implementación del MVC que realiza Symfony Organización del código Estructura de la raíz del proyecto Estructura de cada aplicación Estructura de cada módulo Estructura del sitio web Decisiones a nivel técnico Lenguaje de scripting - PHP Servidor web Apache Persistencia de datos MYSQL Standar html XHTML Transitional Framework JavaScript JQuery Framework CSS Twitter Bootstrap

3 4Desarrollo Historias de usuario Evolución de historias de usuario Mockups Modelo de datos Usuario Asignatura Libro Registrado Libro Libro Registrado Asignatura Mensaje Diagrama entidad-relación Clases Schema Desarrollo de la aplicación Implementación de la arquitectura inicial de la aplicación Ejemplo de implementación del módulo 'home' Reglas de enrutado o routing Método action del controlador Uso de layouts Desarrollo del resto de módulos Importación de datos de DocNet libros.csv (pertenece a la entidad libro registrado) asignaturas.csv (asignaturas) Evaluaciones Conclusiones Metodología utilizada Colaboración estrecha del cliente Predisposición y respuesta al cambio Simplicidad. Supresión de artefactos innecesarios en la gestión de proyecto Uso de Symfony como framework Uso de frameworks JavaScript y CSS Recursos utilizados Enlaces consultados Hardware

4 7.1.3Software Anexos Glosario Documentación adjunta Instalación del proyecto

5 1 Objetivos del proyecto El objetivo del proyecto consiste en desarrollar una aplicación web para poner en contacto a usuarios propietarios de libros: ofertantes*, con usuarios que buscan estos libros: demandantes*. La aplicación web está situada en un contexto universitario, es decir, se quiere que la aplicación sea utilizada por usuarios que estén cursando alguna carrera universitaria. Las razones por las que me he decidido por este proyecto son varias: A lo largo de la carrera universitaria, los alumnos necesitamos libros que sirvan de apoyo en el curso de algunas asignaturas. Estos libros suelen ser caros y además rara vez se utilizan para varias asignaturas o son de uso frecuente fuera del ámbito de la asignatura. Por esta razón, una aplicación que pusiera en contacto a demandantes y ofertantes, ayudaría a los dueños de los libros a recuperar parte de la inversión realizada y a los demandantes a obtener libros por un precio menor del que se puedan encontrar en las tiendas. Si además tenemos en cuenta el actual contexto de crisis, encuentro que este proyecto será útil. Por otra parte, el desarrollo web es atractivo porque implica el dominio de varias tecnologías y facetas: bases de datos, programación a nivel de servidor y de cliente web, diseño, usabilidad, etc. Oportunidad de usar un framework en el proyecto web y comprobar la productividad y rendimiento de éste. 5

6 2 Especificaciones del proyecto 2.1 Introducción Este apartado recoge las especificaciones iniciales para poder desarrollar una aplicación web. El Lunes 11 de Octubre de 2010 se realiza una primera entrevista con Pere Millán, para realizar una recogida de requisitos inicial. La aplicación web debe dar la posibilidad de poner en contacto a usuarios que estén interesados en vender o comprar libros de segunda mano. También se requiere un control de la bibliografía publicada en la web y una API que permita el intercambio de información con otras webs. Después de esta entrevista se extrae una primera recogida de requisitos, tanto funcionales como no funcionales. 2.2 Requisitos funcionales Básicamente se trata de realizar una aplicación web que tenga 3 áreas diferenciadas: una área pública, una área de usuario, una área de administrador, y en el caso de que el tiempo de desarrollo lo permita, también se proporcionará una API de servicios Área pública o front-end Se trata de una área que proporciona al usuario varias funcionalidades: Home o página inicial. Es el punto donde se inician todas las acciones posibles por el usuario: se podrá realizar una búsqueda de un libro, darse de alta como usuario de la aplicación o autenticarse para acceder al área de usuario. Buscador de libros. Se requiere un motor de búsqueda con el que el usuario pueda encontrar los libros que desea comprar. Detalle de un libro. Es una ficha detallada con la información de un libro: ISBN, título, autor o autores, edición e información de publicación. Además se mostrarán las asignaturas relacionadas con el libro. Solicitud de contacto de un libro. Si un usuario está interesado en un libro, debemos dar la posibilidad de que se pueda poner en contacto con el ofertante mediante un formulario de contacto. Autoregistro de un usuario. Se trata de un formulario con el que el usuario se pueda dar de alta en la aplicación web y de esta manera poder publicar libros y recibir solicitudes de contacto de los demandantes. Cuando se realice este autoregistro, se enviará un correo de activación de cuenta al registrado con tal de asegurarnos que el usuario es el propietario del . 6

7 Autenticación de un usuario. Punto de acceso del área de usuario registrado. Se trata de una validación clásica para entrar en esta área. Recordar contraseña de un usuario. Es una funcionalidad estándar y básicamente se trata de que el usuario que no se acuerde de su contraseña, se le proporcione un mecanismo con tal de poder restablecer una nueva. Aviso legal de la web. Concretar aviso legal para cumplir la LOPD Área de usuario Se trata de un área de la web, donde un usuario registrado puede realizar la gestión de sus libros y mensajes. Las funcionalidades son las siguientes: Home o página inicial. Es el punto donde el usuario inicia todas las acciones que ofrece el área: se podrá gestionar libros, modificar los datos de la cuenta o consultar los contactos recibidos de los ofertantes. Alta, edición, baja y publicación de un libro. Básicamente se trata de la gestión de libros por parte del usuario registrado. Se podrán realizar todas las acciones que tienen que ver con los libros: dar de alta, publicar, modificar o dar de baja. Mensajería de peticiones de contactos de usuarios. Esta funcionalidad permite ver los contactos recibidos relacionados con los libros del usuario. Baja de la cuenta de usuario. Dar la posibilidad de dar de baja a un usuario dentro de la aplicación. Gestión de datos personales. Dar la posibilidad de cambiar los datos personales de un usuario. Cambiar contraseña. Dar la posibilidad de modificar la contraseña a un usuario. Cerrar sesión. Esta funcionalidad permite cerrar una sesión de usuario dentro de su área privada. 7

8 2.2.3 Área de administración Se trata de una área donde el administrador pueda gestionar la bibliografía permitida dentro de la web y los usuarios de la web API de servicios Se trata de proporcionar una API de servicios que permita el intercambio de información con otras webs. De momento no está contemplado qué servicios se ofrecerán. Se decide con Pere Millán que esta funcionalidad se realizará siempre que estemos dentro de los límites de tiempo de desarrollo. 2.3 Requisitos no funcionales El proyecto es una aplicación web y como tal debe poder servirse en un servidor preparado para ello. El código html generado deberá cumplir con el estándar XHTML transitional y la maquetación será semántica para de cumplir con un mínimo de calidad a nivel de accesibilidad para el mayor número de dispositivos que utilicen navegador. 8

9 3 Diseño Tras la primera entrevista se toman las siguientes decisiones, que hemos agrupado a 3 niveles: metodología, aplicación y decisiones técnicas. 3.1 Decisiones a nivel de metodología Para realizar este proyecto se optan por una metodología de desarrollo ágil. Debido a que el proyecto es pequeño, sólo tenemos un cliente (en este caso Pere Millán) y un integrante del equipo de desarrollo. Para este contexto se decide que lo más conveniente es aplicar Scrum* de manera parcial, es decir, se aplicarán algunas cualidades que nos proporciona Scrum Qué es Scrum? Scrum es un marco de trabajo para la gestión y desarrollo de software basada en un proceso iterativo e incremental utilizado comúnmente en entornos basados en el desarrollo ágil de software Elementos que adoptaremos de Scrum Algunas de las ventajas que nos da SCRUM es un mayor control de las desviación del desarrollo del proyecto y una mayor capacidad de maniobra, ya que el cliente está informado del desarrollo del proyecto y forma parte del equipo. Los puntos que adoptaremos de esta metodología son: 1. Figura del Product Owner. Representa la voz del cliente. Se asegura de que el equipo Scrum trabaja de forma adecuada desde la perspectiva del negocio. El Product Owner escribe las historias de usuario, las prioriza y las coloca en un Product Backlog. Esta figura estará representada por Pere Millán. 2. Figura del ScrumMaster. El Scrum es facilitado por un ScrumMaster, cuyo trabajo primario es eliminar los obstáculos que impiden que el equipo alcance el objetivo del sprint. El ScrumMaster no es el líder del equipo (porque ellos se auto-organizan), sino que actúa como una protección entre el equipo y cualquier influencia que le distraiga. El ScrumMaster se asegura de que el proceso Scrum se utiliza como es debido. El ScrumMaster es el que hace que las reglas se cumplan. En principio yo haré de ScrumMaster. 3. Equipo de desarrollo. El equipo tiene la responsabilidad de entregar el producto. Un pequeño equipo de 3 a 9 personas con las habilidades transversales necesarias para realizar el trabajo (análisis, diseño, desarrollo, pruebas, documentación, etc). En este caso, únicamente hay un programador. 4. Historias de usuario. Una historia de usuario es una representación de un requisito de software escrito en una o dos frases utilizando el lenguaje común 9

10 del usuario. Las historias de usuario son utilizadas en las metodologías de desarrollo ágiles para la especificación de requisitos (acompañadas de las discusiones con los usuarios y las pruebas de validación). Cada historia de usuario debe ser limitada, esta debería poderse escribir sobre una nota adhesiva pequeña. Las historias de usuario son una forma rápida de administrar los requisitos de los usuarios sin tener que elaborar gran cantidad de documentos formales y sin requerir de mucho tiempo para administrarlos. Las historias de usuario permiten responder rápidamente a los requisitos cambiantes. 5. Product Backlog. Es un documento que recoge todas las historias de usuario. Nos permite tener listadas todas las funcionalidades que requiere la aplicación web. 3.2 Decisiones a nivel de aplicación Se adopta una arquitectura MVC que permite una mejor organización del código y nos asegura una escalabilidad de la aplicación Model View Controller La arquitectura MVC separa la lógica de negocio (el modelo) y la presentación (la vista) por lo que se consigue un mantenimiento más sencillo de las aplicaciones. Si por ejemplo una misma aplicación debe ejecutarse tanto en un navegador estándar como un un navegador de un dispositivo móvil, solamente es necesario crear una vista nueva para cada dispositivo; manteniendo el controlador y el modelo original. El controlador se encarga de aislar al modelo y a la vista de los detalles del protocolo utilizado para las peticiones (HTTP, consola de comandos, , etc.). El modelo se encarga de la abstracción de la lógica relacionada con los datos, haciendo que la vista y las acciones sean independientes de, por ejemplo, el tipo de gestor de bases de datos utilizado por la aplicación. 10

11 El principio más importante de la arquitectura MVC es la separación del código del programa en tres capas, dependiendo de su naturaleza. La lógica relacionada con los datos se incluye en el modelo, el código de la presentación en la vista y la lógica de la aplicación en el controlador. La programación se puede simplificar si se utilizan otros patrones de diseño. De esta forma, las capas del modelo, la vista y el controlador se pueden subdividir en más capas Elección de Symfony como framework Para aumentar la productividad de la aplicación se utilizará un framework. Un framework, por lo general, se define como aquella aplicación o conjunto de módulos que permiten el desarrollo ágil de aplicaciones mediante la aportación de librerías y/o funcionalidades ya creadas, para que nosotros las usemos directamente. El objetivo es hacer que nos centremos en nuestro verdadero problema, y no preocuparnos por implementar funcionalidades de uso común en muchas aplicaciones, como podría ser el proceso de conectar con la base de datos o realizar caché. Entre otras ventajas tendremos: 1. Organización del código de una manera estructurada. 2. Soluciones a problemas típicos en cualquier proyecto web, como por ejemplo facilitar la conexión a base de datos, generación de una base de datos, uso de validadores de formularios (clases que permiten definir validaciones de formularios). 3. Al tener resueltos la mayoría de problemas típicos, permite al desarrollador centrarse en las verdaderas funcionalidades de la aplicación. 4. Funcionalidades extras que siempre son interesantes en un proyecto web: tests funcionales, caché, routing. 5. Comunidad de desarrolladores. Tener una comunidad grande de desarrolladores es importante a la hora de resolver dudas. 6. Posibilidad de tener entornos de desarrollo, test y producción. 7. Herramientas de debug de la aplicación. En nuestro caso escogeremos Symfony como framework PHP. La versión escogida es la debido a que al inicio del desarrollo de proyecto era la más estable Symfony Symfony es un completo framework diseñado para optimizar, gracias a sus características, el desarrollo de las aplicaciones web. Para empezar, separa la lógica de negocio, la lógica de servidor y la presentación de la aplicación web. Proporciona varias herramientas y clases encaminadas a reducir el tiempo de desarrollo de una aplicación web compleja. Además, automatiza las tareas más comunes, permitiendo al desarrollador dedicarse por completo a los aspectos específicos de cada aplicación. El resultado de todas 11

12 estas ventajas es que no se debe reinventar la rueda cada vez que se crea una nueva aplicación web. Symfony está desarrollado completamente con PHP5. Ha sido probado en numerosos proyectos reales y se utiliza en sitios web de comercio electrónico de primer nivel. Symfony es compatible con la mayoría de gestores de bases de datos, como MySQL, PostgreSQL, Oracle y SQL Server de Microsoft. Se puede ejecutar tanto en plataformas *nix (Unix, Linux, etc.) como en plataformas Windows Características de Symfony Symfony se diseñó para que se ajustara a los siguientes requisitos: Fácil de instalar y configurar en la mayoría de plataformas (y con la garantía de que funciona correctamente en los sistemas Windows y *nix estándares). Independiente del sistema gestor de bases de datos. Sencillo de usar en la mayoría de casos, pero lo suficientemente flexible como para adaptarse a los casos más complejos. Basado en la premisa de "convenir en vez de configurar", en la que el desarrollador sólo debe configurar aquello que no es convencional. Sigue la mayoría de mejores prácticas y patrones de diseño para la web. Preparado para aplicaciones empresariales y adaptable a las políticas y arquitecturas propias de cada empresa, además de ser lo suficientemente estable como para desarrollar aplicaciones a largo plazo. Código fácil de leer que incluye comentarios de phpdocumentor y que permite un mantenimiento muy sencillo. Fácil de extender, lo que permite su integración con librerías desarrolladas por terceros. Automatización de características de proyecto web. Entorno de desarrollo y herramientas. Comunidad de desarrolladores: En ese momento, los frameworks para el desarrollo de aplicaciones web estaban en pleno apogeo. Symfony dispone de una comunidad de desarrolladores importante, que siempre es conveniente a la hora de consultar dudas La implementación del MVC que realiza Symfony A continuación explicamos las diferentes capas que utiliza Symfony con las que sigue el patrón MVC: La capa del Modelo - Abstracción de la base de datos. 12

13 - Acceso a datos. La capa de la Vista - Vista. - Plantilla. - Layout. La capa del Controlador - Controlador frontal. - Acción. En primer lugar, el controlador frontal y el layout son comunes para todas las acciones de la aplicación. Se pueden tener varios controladores y varios layouts, pero solamente es obligatorio tener uno de cada. El controlador frontal es un componente que sólo tiene código relativo al MVC, por lo que no es necesario crear uno, ya que Symfony lo genera de forma automática. Las clases de la capa del modelo también se generan automáticamente, en función de la estructura de datos de la aplicación. La librería Propel se encarga de esta generación automática, ya que crea el esqueleto o estructura básica de las clases y genera automáticamente el código necesario. Cuando Propel encuentra restricciones de claves foráneas (o externas) o cuando encuentra datos de tipo fecha, crea métodos especiales para acceder y modificar esos datos, por lo que se facilita la manipulación de datos. La abstracción de la base de datos es completamente invisible al programador, ya que la realiza otro componente específico llamado Creole. Así, si se cambia el sistema gestor de bases de datos en cualquier momento, no se debe reescribir ni una línea de código, ya que tan sólo es necesario modificar un parámetro en un archivo de configuración. Por último, la lógica de la vista se puede transformar en un archivo de configuración sencillo, sin necesidad de programarla. 13

14 3.2.6 Organización del código Symfony nos da una estructura de directorios organizada para poder comenzar a trabajar de inmediato. Explicaremos brevemente para hacernos una idea general de cómo está organizado el código del proyecto Estructura de la raíz del proyecto apps/ frontend/ backend/ cache/ config/ data/ sql/ doc/ lib/ model/ log/ 14

15 plugins/ test/ bootstrap/ unit/ functional/ web/ css/ images/ js/ uploads/ Directorio Descripción apps/ Contiene un directorio por cada aplicación del proyecto (normalmente, frontend y backend para la parte pública y la parte de gestión respectivamente). cache/ Contiene la versión cacheada de la configuración y (si está activada) la versión cacheada de las acciones y plantillas del proyecto. config/ Almacena la configuración general del proyecto data/ En este directorio se almacenan los archivos relacionados con los datos, como por ejemplo el esquema de una base de datos, el archivo que contiene las instrucciones SQL para crear las tablas. doc/ Contiene la documentación del proyecto, formada por tus propios documentos y por la documentación generada por PHPdoc. lib/ Almacena las clases y librerías externas. Se suele guardar todo el código común a todas las aplicaciones del proyecto. El subdirectorio model guarda el modelo de objetos del proyecto. log/ Guarda todos los archivos de log generados por Symfony. plugins/ Almacena los plugins instalados en la aplicación. test/ Contiene las pruebas unitarias y funcionales escritas en PHP y compatibles con el framework de pruebas de Symfony. web/ La raíz del servidor web. Los únicos archivos accesibles desde Internet son los que se encuentran en este directorio Estructura de cada aplicación apps/ 15

16 [nombre aplicacion]/ config/ i18n/ lib/ modules/ templates/ layout.php Directorio Descripción config/ Contiene archivos de configuración creados con YAML. Aquí se almacena la mayor parte de la configuración de la aplicación, salvo los parámetros propios del framework. i18n/ Contiene todos los archivos internacionalización de la aplicación. lib/ Contiene las clases y librerías utilizadas exclusivamente por la aplicación. modules/ Almacena los módulos que definen las características de la aplicación. templates/ Contiene las plantillas globales de la aplicación, es decir, las que utilizan todos los módulos. Por defecto contiene un archivo llamado layout.php, que es el layout principal con el que se muestran las plantillas de los módulos utilizados para la Estructura de cada módulo apps/ [nombre aplicacion]/ modules/ [nombre modulo]/ actions/ actions.class.php config/ lib/ templates/ indexsuccess.php Directorio actions/ config/ Descripción Normalmente contiene un único archivo llamado actions.class.php y que corresponde a la clase que almacena todas las acciones del módulo. Puede contener archivos de configuración adicionales con 16

17 parámetros exclusivos del módulo. lib/ Almacena las clases y librerías utilizadas exclusivamente por el módulo. templates/ Contiene las plantillas correspondientes a las acciones del módulo Estructura del sitio web web/ css/ images/ js/ uploads/ 3.3 Directorio Descripción css/ Contiene los archivos de hojas de estilos. images/ Contiene las imágenes del sitio. js/ Contiene los archivos de JavaScript. uploads/ Se pueden almacenar los archivos subidos por los usuarios Decisiones a nivel técnico En este apartado se explican las decisiones tomadas a nivel técnico y la razón por las que se ha optado por ellas Lenguaje de scripting - PHP 5.0 Se decide escoger este lenguaje debido a su productividad y su curva de aprendizaje relativamente baja Servidor web Apache 2.0 Es el servidor web más implantado y no suele dar problemas a la hora de instalarlo en diferentes plataformas Persistencia de datos MYSQL 5.0 Sistema gestor de base de datos. Es un modelo de base de datos relacional. 17

18 3.3.4 Standar html XHTML Transitional 1.0 Para poder cumplir ciertos requisitos web, optamos por seguir este estándar. A esto le sumaremos la aplicación de CSS2 para el diseño de la web Framework JavaScript JQuery Jquery es un framework JavaScript que posee funciones ya implementadas que permiten realizar la más variada cantidad de acciones: modificar valores CSS, propiedades, efectos sobre los elementos, llamadas AJAX. Escogemos Jquery por ser uno de los frameworks JavaScript más ligeros y con una comunidad importante de desarrolladores que lo utilizan Framework CSS Twitter Bootstrap Twitter Bootstrap es un potente framework que combina HTML5, CSS y Javascript. Originalmente, es el framework que creó Twitter para su aplicación (liberó el código hace unos meses). Su objetivo es simplificar el proceso de diseño web y permitir la compatibilidad con diferentes navegadores. 18

19 4 Desarrollo 4.1 Historias de usuario Como se ha decidido optar por adaptarnos a Scrum, en lugar de tener descripciones de especificaciones de la aplicación, se realizan las historias de usuario. Estas historias de usuario vienen a sustituir las descripciones de casos de uso. Cada historia de usuario debe responder a 3 incógnitas: Como Quiero Para Un ejemplo simple de historia de usuario sería la siguiente. El equivalente de la descripción de la funcionalidad de un formulario de publicación del libro de un usuario registrado es la siguiente: Como ofertante de libros quiero un formulario de alta de libro para publicar un anuncio en internet Las historias de usuario se encuentra en un anexo que se llama Product Backlog. En ella se resumen todas las tareas. Hay que hacer hincapié que en este Product Backlog se encuentran las historias de usuario iniciales. En un apartado posterior, se explica cómo se modificaron algunas de ellas después de realizar un seguimiento a la aplicación. Consultar anexo 'product-backlog.pdf' Evolución de historias de usuario Las especificaciones iniciales se han ido modificando por unas serie de entrevistas realizadas a lo largo del desarrollo del proyecto. En un principio, dentro del Product. Después de una entrevista, el 20 de Octubre de 2010 con Pere, se decide contactar con DocNET para que nos proporcionen la información de estos libros en un formato XML. Hola, estic dirigint un projecte final de carrera d'informàtica https://deim.urv.cat/~pfc/detall.php?id=1087 que consisteix en desenvolupar un aplicatiu web que permeti als estudiants de la URV adquirir/oferir llibres de 2a ma de la bibliografia de les assignatures de la URV. La idea seria que aquest aplicatiu estigués enllaçat al catàleg de la biblioteca (a la fitxa dels llibres de bibliografia). 19

20 Per començar a treballar amb dades reals, necessitariem un llistat (en format XML, per exemple), amb "alguns" llibres que formin part de la bibliografia d'assignatures, per carregar-los al nou aplicatiu de llibres de 2a ma. He parlat amb la biblioteca Sescelades (Jose Luis González), i m'ha indicat que aquest llistat millor que us ho demani al SRE, que sou qui gestioneu el DocNet/guies docents, i disposeu d'aquesta informació.voldria saber amb qui he de parlar per demanar aquest llistat ( he parlat telefònicament amb Jordi Samarra, però m'ha dit que millor que us ho demani per mail). De moment el llistat no caldria que fos complet (podria ser, per exemple, només els llibres dels ensenyaments d'informàtica), però també hauriem de coordinar amb el SRE algun mecanisme "automàtic" que permetès anar actualitzant el nou aplicatiu, amb cada nova edició/curs del DocNet. Gràcies per avançat per la vostra col laboració, Una de las ventajas que tiene Scrum es que el Product Owner está dentro del proyecto y puede ir modificando las historias de usuario. A continuación explicaremos cómo quedaron las historias de usuario después de estas entrevistas: Las historias de usuario #21 y #22 son sustituidas por una nueva que trataría de hacer un script de carga de bibliografía permitida. Este script lo que hará es parsear 2 20

21 documentos en formato XML proporcionados por DocNet con la información de la bibliografía. Se añaden 2 historias de usuario que permiten la modificación de los datos personales y de la contraseña. Se añaden 3 historias de usuario más que incluyen una funcionalidad nueva no contemplada anteriormente: mensajería interna. Básicamente, cuando un demandante solicita información de un libro se crea un mensaje en el área del propietario. El ofertante tendrá una nueva sección donde verá todos los mensajes recibidos, y podrá borrar estos si no les interesa. Por falta de tiempo las historias de usuario #16, #17, #18, #19, #20 que son todas aquellas que pertenecen al área de administrador se descartan, ya que en principio siempre se puede realizar estableciendo consultas directamente a base de datos y entendemos que son las que menos priman a nivel de negocio. 4.2 Mockups Los mockups son, por así decirlo, un esquema básico de una web que sirve para hacerse una idea de como va a ser dicha web. Brevemente diremos que son la maqueta previa de una web y por tanto todo error que detectemos en la maqueta será más fácil y barato de subsanar que en el desarrollo final. De ahí viene todo su valor y utilidad. Podemos usarlas para presentarselas al cliente y que vea el aspecto y el funcionamiento primario de la página antes de empezar a desarrollarla. Así evitamos que luego no le guste o que no sea lo que esperaba y haya que rehacerla. También nos sirve para ir estudiando la usabilidad y la accesibilidad de la web. Podemos poner el mockup delante de un betatester y pedirle que nos diga que haría para realizar determinada tarea, como encontrar una sección de la web, buscar un contenido o ir a la Ayuda. Si vemos que tiene problemas para desarrollar alguna de esas tareas deberíamos plantearnos cambiar la definición del proyecto, hacer un nuevo mockup y volver a testarlo. 21

22 La herramienta que hemos utilizado para realizar nuestros mockups es Balsamiq Mockups. Una de las ventajas que tienen está herramienta es que crea pdfs interactivos, con los cuáles se hace muy fácil recrear un diagrama de flujo de pantallas. Se aconseja consultar anexo 'mockups.pdf' para poder comprobar el flujo de pantallas. 22

23 Home Registro de usuario 23

24 Acceso a área de usuario Recordar contraseña 24

25 Buscador de libros Detalle de un libro 25

26 Área de usuario Home Area de usuario Datos personales 26

27 Área de usuario Cambiar contraseña Área de usuario Bibliografía disponible 27

28 Área de usuario Publicar libro Área de usuario Detalle de un libro 28

29 Área de usuario Confirmar libro publicado Área de usuario Mis libros 29

30 Área de usuario Mensajes recibidos Área de usuario - Mensaje 30

31 4.3 Modelo de datos Tras analizar las diferentes historias de usuario se extraen las siguientes entidades de base de datos Usuario Corresponde a una entidad de un usuario registrado. Los atributos son los siguientes: Atributo Tipo Características id entero Clave primaria de la entidad. char(254) Este campo es único y será el identificador del usuario a la hora de logarse. estado entero Campo de control para los usuarios dentro de la aplicación. Gracias a este campo se pueden inhabilitar usuarios. Indica un estado del usuario, si está activo, o pendiente de confirmar. nombre varchar(128) Nombre del usuario. apellidos varchar(128) Apellidos del usuario. password char(32) Contraseña cifrada del usuario. hashkey varchar(128) Es una ristra de caracteres alfanuméricos que es útil para identificar peticiones que identifican al usuario. Se utilizan, por ejemplo, en activaciones de usuario mediante un enlace enviado por . Es un nivel de seguridad, para que no haya suplantación de usuarios. ip_aceptacion entero Ip desde donde se realizó la petición de creación del usuario. Es interesante conservarlo a nivel LOPD. created_at timestamp Fecha de creación del registro en la base de datos. updated_at timestamp Fecha de última actualización del registro en la base de datos Asignatura Corresponde a una entidad asignatura. Los atributos son los siguientes: 31

32 Atributo Tipo Características id entero Clave primaria de la entidad. codigo varchar(64) nombre varchar(128) Nombre de la asignatura. ubicacion varchar(64) Ubicación asignatura. created_at timestamp Fecha de creación del registro en la base de datos. updated_at timestamp Fecha de última actualización del registro en la base de datos. Este campo es un código que identifica la asignatura Libro Registrado Corresponde a una entidad que representa un libro registrado dentro de la URV. Los atributos son los siguientes: Atributo Tipo Características id entero Clave primaria de la entidad. num_registro entero autor varchar(128) Título del libro. edicion varchar(128) Edición del libro. publicacion varchar(128) Lugar y fecha de publicación. isbn varchar(16) Identificador del libro. coleccion varchar(64) Colección del libro. codigo_barras varchar(32) Código de barras. created_at timestamp Fecha de creación del registro en la base de datos. updated_at timestamp Fecha de última actualización del registro en la base de datos. Número de registro del libro. Este código nos permite relacionar con las asignaturas y corresponde a un valor definido por DocNet. 32

33 4.3.4 Libro Corresponde a una entidad que representa un libro. Los atributos son los siguientes: Atributo Tipo Características id entero Clave primaria de la entidad. usuario_id entero libro_registrado_id entero Clave foránea al libro registrado precio decimal Precio del libro. descripcion varchar(300) Descripción libre sobre el libro. El usuario puede describir el estado de éste, por ejemplo. estado entero Campo de control. Los estados son 'borrador' y 'publicado'. created_at timestamp Fecha de creación del registro en la base de datos. updated_at timestamp Fecha de última actualización del registro en la base de datos. Clave foránea al usuario propietario del libro Libro Registrado Asignatura Corresponde a las relaciones establecidas entre los libros registrados y las asignaturas a las cuáles pertenecen. Atributo Tipo Características id entero Clave primaria de la entidad. asignatura_id entero libro_registrado_id entero created_at timestamp Fecha de creación del registro en la base de datos. updated_at timestamp Fecha de última actualización del registro en la base de datos. Clave foránea relacionada. a la asignatura Clave foránea al libro registrado. 33

34 4.3.6 Mensaje Corresponde a los mensajes enviados a los usuarios registrados por parte de los demandantes. Atributo Tipo Características id entero Clave primaria de la entidad. libro_id entero nombre varchar(128) Nombre del usuario. char(254) Cuenta de correo del demandante. telefono varchar(15) Teléfono del demandante. comentario varchar(256) Comentario del demandante. estado entero Campo de control (si el mensaje es nuevo o se ha leído). created_at timestamp Fecha de creación del registro en la base de datos. updated_at timestamp Fecha de última actualización del registro en la base de datos. Clave foránea al libro al que se refiere el mensaje. 34

35 4.4 Diagrama entidad-relación Para poder visualizar de mejor manera el modelo de datos y sus relaciones, mostramos un diagrama de entidad-relación. 35

Framework Symfony PHP

Framework Symfony PHP Framework Symfony PHP Alexander Romero Narváez Este es un pequeño tutorial que consta de la instalación y programación de un ejemplo de este framework en PHP. U n i v e r s i d a d d e l C a u c a 2 9

Más detalles

Symfony. Framework para el desarrollo de aplicaciones Web con PHP

Symfony. Framework para el desarrollo de aplicaciones Web con PHP Symfony Framework para el desarrollo de aplicaciones Web con PHP Temario Conceptos Porque Utilizarlo? Características Herramientas Integradas Model Controller View Scaffolding Conceptos Framework para

Más detalles

Confección y publicación de páginas Web

Confección y publicación de páginas Web 2014 Confección y publicación de páginas Web Docente: Manuel Fernández Catalán 0 ÍNDICE 1 Presentación... 2 2 Objetivos... 2 3 Tecnología... 2 4 Metodología y evaluación... 3 5 Material didáctico... 3

Más detalles

Framework para el desarrollo ágil de aplicaciones

Framework para el desarrollo ágil de aplicaciones Framework para el desarrollo ágil de aplicaciones 1 Índice INTRODUCCIÓN... 3 QUÉ ES UN FRAMEWORK?... 3 VENTAJAS DE UTILIZAR UN FRAMEWORK... 4 DESVENTAJAS DE UTILIZAR UN FRAMEWORK... 5 CARACTERÍSTICAS DE

Más detalles

UF1304 Elaboración de plantillas y formularios

UF1304 Elaboración de plantillas y formularios UF1304 Elaboración de plantillas y formularios Tema 1. Formularios en la construcción de páginas web Tema 2. Plantillas en la construcción de páginas web OBJETIVOS: - Confeccionar plantillas para las páginas

Más detalles

EXPERIENCIAS EDUCATIVAS. CREAR UN PORTAL EDUCATIVO CON JOOMLA

EXPERIENCIAS EDUCATIVAS. CREAR UN PORTAL EDUCATIVO CON JOOMLA EXPERIENCIAS EDUCATIVAS. CREAR UN PORTAL EDUCATIVO CON JOOMLA AUTORÍA PEDRO J. MORENO GARCÍA TEMÁTICA TIC ETAPA ESO, BACHILLERATO,FP Resumen Con Joomla podemos crear en pocas horas un completo portal para

Más detalles

MAESTRO DE PHP PHP NIVEL 1

MAESTRO DE PHP PHP NIVEL 1 MAESTRO DE PHP MAESTRO DE PHP es el curso más completo diseñado para que aprendas desde 0 hasta poder desarrollar aplicaciones robustas utilizando Frameworks. Incluye los Cursos PHP Nivel 1 y PHP Avanzado

Más detalles

By: Ing. Jonathan Merino Farías.

By: Ing. Jonathan Merino Farías. By: Ing. Jonathan Merino Farías. CMS y Joomla Un CMS se compone de dos partes principales: 1. La parte web pública. Es la página web como tal que ven las personas que acceden a ella. 2. La parte web privada.

Más detalles

CURSO DE ESPECIALISTA EN DESARROLLO DE APLICACIONES WEB

CURSO DE ESPECIALISTA EN DESARROLLO DE APLICACIONES WEB CURSO DE ESPECIALISTA EN DESARROLLO DE APLICACIONES WEB Objetivos Generales: Al término de esta acción formativa los participantes alcanzarán los siguientes objetivos: Preparar profesionales para el desarrollo

Más detalles

PLAN FORMATIVO MODALIDAD I

PLAN FORMATIVO MODALIDAD I PLAN FORMATIVO MODALIDAD I Modalidad Acción: TELEFORMACIÓN Nº de la Acción: FPTO/2014/695/202 Familia Profesional: Tipo Especialidad: IFC / INFORMÁTICA Y COMUNICACIONES NUEVA ESPECIALIDAD Area Profesional:

Más detalles

Índice: Tema 4.2 4.2 Conexión con Bases de Datos

Índice: Tema 4.2 4.2 Conexión con Bases de Datos Índice: Tema 4.2 4.2 Conexión con Bases de Datos 4.2.1 Envío y recepción de datos mediante formularios 4.2.2 Administración de MySQL con phpmyadmin 4.2.3 Conexión con Bases de Datos desde PHP Índice: Tema

Más detalles

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

Capítulo III. Análisis y diseño. Capítulo III. Análisis y diseño. 3.1 Análisis. El análisis es el intermediario entre los requisitos del sistema y el diseño, esta sección definiremos el análisis con una serie de modelos técnicos del sistema,

Más detalles

DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA

DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA Nombre del Módulo: DISEÑO DE PAGINAS WEB CON HTML Código: CSTI0085 total: 3 Horas Objetivo General: Construir páginas Web en base

Más detalles

CURSO DE PROGRAMACIÓN PHP MySQL

CURSO DE PROGRAMACIÓN PHP MySQL CURSO DE PROGRAMACIÓN PHP MySQL MASTER EN PHP MÓDULO NIVEL BASICO PRIMER MES Aprende a crear Sitios Web Dinámicos con PHP y MySQL 1. Introducción Qué es PHP? Historia Por qué PHP? Temas de instalación

Más detalles

Especialista en Creación de Portales Web con Joomla 3.3

Especialista en Creación de Portales Web con Joomla 3.3 Especialista en Creación de Portales Web con Joomla 3.3 TITULACIÓN DE FORMACIÓN CONTINUA BONIFICADA EXPEDIDA POR EL INSTITUTO EUROPEO DE ESTUDIOS EMPRESARIALES Especialista en Creación de Portales Web

Más detalles

MANUAL DE ARQUITECTURA Y PROGRAMACION

MANUAL DE ARQUITECTURA Y PROGRAMACION http://tauproject.sourceforge.net MANUAL DE ARQUITECTURA Y PROGRAMACION Proyecto TAU 06 de diciembre de 2008 Versión 1.0 del 06/12/2008 1 1.OBJETO El presente documento, tiene como objeto, describir de

Más detalles

FIDELIZACIÓN DE CLIENTES

FIDELIZACIÓN DE CLIENTES Eurowin 8.0 SQL Manual de FIDELIZACIÓN DE CLIENTES Documento: me_fidelizacion Edición: 02 Nombre: Manual de Fidelización de Clientes de Eurowin Fecha: 28-10-2011 Tabla de contenidos 1. Introducción...

Más detalles

TFM Comunicación, Redes y Gestión de Contenidos

TFM Comunicación, Redes y Gestión de Contenidos TFM Comunicación, Redes y Gestión de Contenidos Aplicación móvil hibrida para control de asistencia y servicio técnico a domicilio y gestión de partes de trabajo Autor: Patricia Paguay Lara Tutorizado

Más detalles

Herramienta Páginas amarillas. Manual de Desarrollo

Herramienta Páginas amarillas. Manual de Desarrollo Herramienta Páginas amarillas Manual de Desarrollo Mayo 2013 Índice 1.Introducción... 3 2.Recomendaciones para el desarrollo...4 3.URLs de acceso... 4 4.Estructura de directorios de la aplicación...5 5.Versiones

Más detalles

Guía Reseller Onbile. Plan Reseller Pro

Guía Reseller Onbile. Plan Reseller Pro Guía Reseller Onbile Estimado Reseller, Tiene alguna duda sobre el funcionamiento del Panel de Administración del Plan Reseller de Onbile? Entonces, la Guía Reseller Onbile es lo que necesita! Las siguientes

Más detalles

GALA. Mca069. Manual Symfony, un framework para desarrollar aplicaciones WEB PHP. Sé diferente, intégrate. Autor: Orlando Gutiérrez Fecha: 01/01/2011

GALA. Mca069. Manual Symfony, un framework para desarrollar aplicaciones WEB PHP. Sé diferente, intégrate. Autor: Orlando Gutiérrez Fecha: 01/01/2011 Sé diferente, intégrate Mca069 Manual Symfony, un framework para desarrollar aplicaciones WEB PHP Autor: Orlando Gutiérrez Fecha: 01/01/2011 Copyright 2011 Reservados todos los derechos, prohibida la reproducción,

Más detalles

Adobe Dreamweaver CS3 - Curso online Creación profesional de sitios web

Adobe Dreamweaver CS3 - Curso online Creación profesional de sitios web Adobe Dreamweaver CS3 - Curso online Creación profesional de sitios web Índice Conceptos básicos En este capítulo se enseñan los conceptos básicos de trabajo en Adobe Dreamveaver CS3. También se describen

Más detalles

Qué es Blogger? Qué hay que hacer para tener una cuenta Blogger?

Qué es Blogger? Qué hay que hacer para tener una cuenta Blogger? Qué es Blogger? Blogger es un servicio creado por Pyra Labs y posteriormente adquirida por Google para crear y publicar una bitácora (blog) en línea. El usuario no tiene que escribir ningún código o instalar

Más detalles

Instalar y configurar W3 Total Cache

Instalar y configurar W3 Total Cache Instalar y configurar W3 Total Cache en WordPress Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199 www.hostalia.com La velocidad de carga de una web influye mucho a la hora de mejorar el

Más detalles

Cálculo de calidad del suministro eléctrico y Energía y Facturación. - Manual de Usuario

Cálculo de calidad del suministro eléctrico y Energía y Facturación. - Manual de Usuario Cálculo de calidad del suministro eléctrico y Energía y Facturación. - Manual de Usuario ÍNDICE 1. INTRODUCCIÓN 2. ASPECTOS COMUNES DE LA APLICACIÓN 3. GESTIÓN 3.1. USUARIOS 3.2. ORGANIZACIONES 3.3. ASOCIACIONES

Más detalles

Taller de Desarrollo de Aplicaciones Web

Taller de Desarrollo de Aplicaciones Web Universidad Nacional de José C. Paz Taller de Desarrollo de Aplicaciones Web Introducción a la programación web Prof. Martín Miguel Machuca Prof. Martín Miguel Machuca Introducción En la actualidad, cuando

Más detalles

ÁLAMO SOFTWARE PARA GESTIÓN INMOBILIARIA

ÁLAMO SOFTWARE PARA GESTIÓN INMOBILIARIA ÁLAMO SOFTWARE PARA GESTIÓN INMOBILIARIA Características Técnicas Soporte Servidor Apache (EasyPHP 5.3) Lenguajes utilizados PHP 5 JavaScript (framework jquery) HTML CSS Base de datos PostgreSQL 8.3 Características

Más detalles

Symfony2. Junio. Inicio. Curso Desarrollo de aplicaciones web con. Básico-Intermedio

Symfony2. Junio. Inicio. Curso Desarrollo de aplicaciones web con. Básico-Intermedio Inicio Informaciones Human Business Fonos: (02) 2698 9790 / (02) 2671 3567 E-mail: informaciones@hbusiness.cl Web: www.hbusiness.cl 23 de Junio tip ddy Web A p p s Marketing Fundamentación: CURSO: Symfony2

Más detalles

Características de OpenCms

Características de OpenCms Características de OpenCms Se basa en Java y Xml OpenCms está totalmente desarrollado en java bajo el estándar servlet. Por lo tanto, se puede integrar fácilmente en entornos hardware y software existentes,

Más detalles

ACCIÓN FORMATIVA FINANCIADA POR EL SERVICIO PÚBLICO DE EMPLEO ESTATAL

ACCIÓN FORMATIVA FINANCIADA POR EL SERVICIO PÚBLICO DE EMPLEO ESTATAL MF0491_3: PROGRAMACIÓN WEB EN EL ENTORNO CLIENTE. (IFCD0210: DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB) 180 HORAS PRESENCIALES Nº DE EXPEDIENTE: FC/2013/0064 ACCION 141 GRUPO 1 ACCIÓN FORMATIVA FINANCIADA

Más detalles

ACADEMIA DDW TEMARIO

ACADEMIA DDW TEMARIO ACADEMIA DDW TEMARIO Diseño Web / Maquetación / Semántica / SEO / JavaScript / HTML5 / CSS3 Introducción Definición de HTML Diferencias entre versiones HTML Maquetación Semántica DOM, Debugger y Navegadores

Más detalles

Ejemplo de aplicación PHP: Tienda

Ejemplo de aplicación PHP: Tienda Ejemplo de aplicación PHP: Tienda Aplicaciones Web/Sistemas Web Juan Pavón Mestras Dep. Ingeniería del Software e Inteligencia Artificial Facultad de Informática Universidad Complutense Madrid Material

Más detalles

Contratación de la migración de portales web estáticos a la plataforma de gestión de contenidos y portales OpenText del Banco de España

Contratación de la migración de portales web estáticos a la plataforma de gestión de contenidos y portales OpenText del Banco de España Dirección General de Servicios Abril 2015 Contratación de la migración de portales web estáticos a la plataforma de gestión de contenidos y portales OpenText del Banco de España Pliego de prescripciones

Más detalles

Projecte/Treball Fi de Carrera

Projecte/Treball Fi de Carrera Projecte/Treball Fi de Carrera Estudi: Eng. Tècn. Informàtica de Gestió. Pla 2001 Títol: Catalogador de música MP3 y reproductor de música vía Web con búsquedas de música basadas en la definición de unas

Más detalles

Curso Diseño Web con Software libre, VNU

Curso Diseño Web con Software libre, VNU 1. - QUE ES VNU? NVU (se pronuncia N-view, por "new view") es un editor de páginas web libre y gratuito desarrollado bajo la modalidad Open Source, o sea que cualquiera está autorizado para bajarlo sin

Más detalles

MANUAL ONLINE. Plataforma de Teleformación INAEM

MANUAL ONLINE. Plataforma de Teleformación INAEM MANUAL ONLINE Plataforma de Teleformación INAEM Índice 1. Acceso a la plataforma 3 2. Estructura de plataforma 5 Contenidos 5 Recursos 11 3. Herramientas de colaboración y comunicación 12 Foros de Debate

Más detalles

APLICACIÓN DE ACCESO REMOTO PARA POCKET PC. MANUAL DE USUARIO (Release 1.42)

APLICACIÓN DE ACCESO REMOTO PARA POCKET PC. MANUAL DE USUARIO (Release 1.42) APLICACIÓN DE ACCESO REMOTO PARA POCKET PC MANUAL DE USUARIO () Índice INTRODUCCIÓN... 3 MANUAL INSTALACIÓN DEL SOFTWARE... 4 GUIA USUARIO... 5 Iniciar la Aplicación Control Remoto... 5 Bienvenido... 5

Más detalles

ArquitecturaSW Portal para el Desarrollo de Aplicaciones y Soporte Comunidad de Madrid ICM

ArquitecturaSW Portal para el Desarrollo de Aplicaciones y Soporte Comunidad de Madrid ICM ArquitecturaSW Portal para el Desarrollo de Aplicaciones y Soporte Comunidad de Madrid ICM Versión 1.0 Área de Integración y Arquitectura de Aplicaciones Hoja de Control Título Documento de Referencia

Más detalles

Metodología de Ingeniería del Software para el desarrollo y mantenimiento de sistemas de información del Gobierno de Extremadura

Metodología de Ingeniería del Software para el desarrollo y mantenimiento de sistemas de información del Gobierno de Extremadura Metodología de Ingeniería del Software para el desarrollo y mantenimiento de sistemas de información del Gobierno de Extremadura Página 1 de 23 Índice del Documento 1.- Introducción... Página 4 2.- Propuesta

Más detalles

UF1303 Elaboración de hojas de estilo

UF1303 Elaboración de hojas de estilo UF1303 Elaboración de hojas de estilo TEMA 1. Hojas de estilo en la construcción de páginas web TEMA 2. Diseño, ubicación y optimización de los contenidos de una página web OBJETIVOS: - Describir las características

Más detalles

Especificación de requisitos de software Proyecto: SIS-WEB (Sistema de Información de Seminarios WEB) Revisión 1.0

Especificación de requisitos de software Proyecto: SIS-WEB (Sistema de Información de Seminarios WEB) Revisión 1.0 Especificación de requisitos de software Proyecto: (Sistema de Información de Seminarios WEB) Revisión 1.0 Tania Isadora Mora Dorance Moreno Luis Yovany Romo Septiembre 2007 Realizado Por: Tania I. Mora

Más detalles

Manual de NetBeans y XAMPP

Manual de NetBeans y XAMPP Three Headed Monkey Manual de NetBeans y XAMPP Versión 1.0 Guillermo Montoro Delgado Raúl Nadal Burgos Juan María Ruiz Tinas Lunes, 22 de marzo de 2010 Contenido NetBeans... 2 Qué es NetBeans?... 2 Instalación

Más detalles

MANUAL DE USUARIO. Versión: 1.0.0. Desarrollado por AloOnline Alojamiento Web. http://www.aloonline.es. soporte@aloonline.es

MANUAL DE USUARIO. Versión: 1.0.0. Desarrollado por AloOnline Alojamiento Web. http://www.aloonline.es. soporte@aloonline.es MANUAL DE USUARIO Versión: 1.0.0 Desarrollado por AloOnline Alojamiento Web http://www.aloonline.es soporte@aloonline.es 1 ÍNDICE 1. ACCEDER AL PANEL DE PRESTASHOP. 3 2. ADMINISTRAR CATEGORÍAS: 4 2.1.Crear

Más detalles

TRABAJO FIN DE GRADO. Tele-repaso android

TRABAJO FIN DE GRADO. Tele-repaso android TRABAJO FIN DE GRADO Título Tele-repaso android Autor/es Raul Lázaro López Director/es Eduardo Sáenz de Cabezón Irigaray Facultad Facultad de Ciencias, Estudios Agroalimentarios e Informática Titulación

Más detalles

INSTALACIÓN DE MEDPRO

INSTALACIÓN DE MEDPRO 1 Estimado Cliente: Uno de los objetivos que nos hemos marcado con nuestra nueva plataforma de gestión, es que un cliente pueda instalar MedPro y realizar su puesta en marcha de forma autónoma. Siga paso

Más detalles

Avanzado. tip. ddy. Informaciones Human Business Fonos: 22 698 9790 / 22 671 3567 E-mail: informaciones@hbusiness.cl Web: www.hbusiness.

Avanzado. tip. ddy. Informaciones Human Business Fonos: 22 698 9790 / 22 671 3567 E-mail: informaciones@hbusiness.cl Web: www.hbusiness. Informaciones Human Business Fonos: 22 698 9790 / 22 671 3567 E-mail: informaciones@hbusiness.cl Web: www.hbusiness.cl tip ddy Web Apps Marketing CURSO: Fundamentación Técnica: Symfony2 es un framework

Más detalles

all: doctrine: class: sfdoctrinedatabase param: dsn: mysql:host=localhost;dbname= bdd_erhaj username: erhaj password: admin

all: doctrine: class: sfdoctrinedatabase param: dsn: mysql:host=localhost;dbname= bdd_erhaj username: erhaj password: admin MANUAL TÉCNICO Creado el proyecto podemos hacer uso de los comandos, para lo cual presionamos clic derecho sobre el proyecto, escogemos Symfony, seguidamente pulsamos sobre Run Command. Esto abrirá una

Más detalles

EL ENTORNO DE TRABAJO SQL ORACLE

EL ENTORNO DE TRABAJO SQL ORACLE PREVIO 2 EL ENTORNO DE TRABAJO SQL ORACLE Y LENGUAJE DE DEFINICIÓN DE DATOS DDL) INTRODUCCIÓN A ORACLE Oracle10g es de las últimas versiones de esté manejador de base de datos, incorpora la tecnología

Más detalles

UF1302 Creación de páginas web con lenguajes de marcas

UF1302 Creación de páginas web con lenguajes de marcas UF1302 Creación de páginas web con lenguajes de marcas TEMA 1. Los lenguajes de marcas TEMA 2. Imágenes y elementos multimedia TEMA 3. Técnicas de accesibilidad y usabilidad TEMA 4. Herramientas de edición

Más detalles

inclusite Accesibilidad web GUÍA FUNCIONAL

inclusite Accesibilidad web GUÍA FUNCIONAL GUÍA FUNCIONAL 0ÍNDICE 1 Introducción Página 3 2 Primeros pasos Página 5 3 Conceptos Página 9 4 Navegación por voz Página 12 5 Navegación por teclado Página 16 6 Navegación por sonido Página 20 7 Compatibilidad

Más detalles

DreamWeaver. CS5 y CS6. Cursosindustriales. Curso de DreamWeaver CS6 1

DreamWeaver. CS5 y CS6. Cursosindustriales. Curso de DreamWeaver CS6 1 DreamWeaver CS5 y CS6 Cursosindustriales. Curso de DreamWeaver CS6 1 DREAMWEAVER CS5. DISEÑO DE PÁGINAS DINÁMICAS. En esta segunda sección de diseño de páginas Web con Dreamweaver CS, vamos a hablar sobre

Más detalles

Acá vamos a ocuparnos de cómo realizar la instalación de una red intra-aula sobre Linux, concretamente en la distribución de GNU/Linux Ubuntu 9.04.

Acá vamos a ocuparnos de cómo realizar la instalación de una red intra-aula sobre Linux, concretamente en la distribución de GNU/Linux Ubuntu 9.04. Instalación de una red intra-aula sobre Linux (Ubuntu 9.04) Introducción La idea y la fundamentación de la creación de redes intra-aula, se puede encontrar en el siguiente enlace: http://www.fedaro.info/2009/06/29/redes-intra-aula/

Más detalles

Joomla! 3.3 Cree y administre sus sitios Web

Joomla! 3.3 Cree y administre sus sitios Web Capítulo 1: Descubrir Joomla! A. Razones para crear un sitio con Joomla! 9 B. Documentarse sobre Joomla! 9 C. La hoja de ruta de Joomla! 10 D. Qué es un CMS? 12 E. HTML y XHTML 12 F. Diferenciar el contenido

Más detalles

MANUAL INICIAL PARA LA GESTIÓN DE CURSOS ONLINE

MANUAL INICIAL PARA LA GESTIÓN DE CURSOS ONLINE MANUAL INICIAL PARA LA GESTIÓN DE CURSOS ONLINE MEDIANTE LA PLATAFORMA WEB MOODLE INSTALADA EN LOS CENTROS EDUCATIVOS DE LA XUNTA DE GALICIA Moodle es un sistema de gestión de cursos de distribución libre

Más detalles

Pavel Kasík, Technet.cz

Pavel Kasík, Technet.cz Imagina que quieres crear tu propio sitio web. Normalmente, tendrías que descargar el software, instalarlo y comenzar a programar. Con Webnode no es necesario instalar nada. Puedes crear tu página web

Más detalles

Como usar Zend_Auth del Zend Framework

Como usar Zend_Auth del Zend Framework Como usar Zend_Auth del Zend Framework Elaborado por Rob Allen, www.akrabat.com Revision 1.0.4 Copyright 2007 Traducido por Claudio Cossio, www.ajaxcode.net El propósito de este tutorial es dar una introducción

Más detalles

MANUAL DE CREACIÒN DE PAGINAS WEB CON LA APLICACIÓN ON-LINE JIMDO

MANUAL DE CREACIÒN DE PAGINAS WEB CON LA APLICACIÓN ON-LINE JIMDO MANUAL DE CREACIÒN DE PAGINAS WEB CON LA APLICACIÓN ON-LINE JIMDO 0. ÍNDICE 1. REGISTRARSE EN JIMDO... 2 1.1. Registrarse en la aplicación... 2 1.2. Acceso a la edición de nuestro sitio web... 3 2. HERRAMIENTAS

Más detalles

Abril 2011. WebApp STR- a3erp. Aplicación de registro de pedidos, albaranes y facturas para a3erp. Compatible con las principales plataformas

Abril 2011. WebApp STR- a3erp. Aplicación de registro de pedidos, albaranes y facturas para a3erp. Compatible con las principales plataformas WebApp STR- a3erp Aplicación de registro de pedidos, albaranes y facturas para a3erp Alto ahorro de costes en empresas con representantes y/o técnicos móviles Compatible con las principales plataformas

Más detalles

PLAN DE PRUEBAS DE LA SKILLS

PLAN DE PRUEBAS DE LA SKILLS PLAN DE PRUEBAS DE LA SKILLS 17 DISEÑO WEB 1.-Introducción Spainfood es una web que pretende crear una comunidad para potenciar y difundir la cocina española tradicional. Es bien sabido que "en el Sur

Más detalles

FORMACIÓN ESPECIALIZADA EN HERRAMIENTAS Y LENGUAJES DE PROGRAMACIÓN WEB

FORMACIÓN ESPECIALIZADA EN HERRAMIENTAS Y LENGUAJES DE PROGRAMACIÓN WEB HERRAMIENTAS Y LENGUAJES DE PROGRAMACIÓN WEB La consolidación de los medios online como soporte principal de comunicación, así como la coyuntura económica, que relega a los soportes publicitarios convencionales

Más detalles

c/ Ausias March 5, Bloque 7, 5C Denia, C.P. 03700 Alicante, España 644 317 266 info@soluciones4web.com

c/ Ausias March 5, Bloque 7, 5C Denia, C.P. 03700 Alicante, España 644 317 266 info@soluciones4web.com Manual de Buenas Prácticas de maquetación en html Una buena maquetación es fundamental para obtener un diseño elegante, compatible con todos los navegadores y que cumpla las normas de accesibilidad establecidas.

Más detalles

Requisitos técnicos para la instalación. Arquitectura Hardware Arquitectura Software. Instrucciones de instalación GONG-R

Requisitos técnicos para la instalación. Arquitectura Hardware Arquitectura Software. Instrucciones de instalación GONG-R v 3 Junio 2015 ÍNDICE Introducción Requisitos técnicos para la instalación Arquitectura Hardware Arquitectura Software Instrucciones de instalación Instalación módulo GONG2 Instalación módulo eporte Instrucciones

Más detalles

ENTORNO DE UN CURSO. Antes de empezar sería conveniente conocer la estructura de Moodle y entender los siguientes conceptos básicos:

ENTORNO DE UN CURSO. Antes de empezar sería conveniente conocer la estructura de Moodle y entender los siguientes conceptos básicos: ENTORNO DE UN CURSO Antes de empezar sería conveniente conocer la estructura de Moodle y entender los siguientes conceptos básicos: Cursos Categorías Cuentas de usuario y roles Perfil de usuario En Moodle,

Más detalles

Introducción a la plataforma Moodle Aníbal de la Torre 2006. Plataforma Moodle. Gestión y administración de un curso

Introducción a la plataforma Moodle Aníbal de la Torre 2006. Plataforma Moodle. Gestión y administración de un curso Plataforma Moodle Gestión y administración de un curso El panel de administración----------------------------------------------------------- 2 Gestión de personas (alumnos y profesores) ------------------------------------

Más detalles

ADMINISTRACIÓN MI PRIMER ARTÍCULO (Parte I) (Última revisión: domingo, 15 de febrero de 2009)

ADMINISTRACIÓN MI PRIMER ARTÍCULO (Parte I) (Última revisión: domingo, 15 de febrero de 2009) JOOMLA! ADMINISTRACIÓN MI PRIMER ARTÍCULO () (Última revisión: domingo, 15 de febrero de 2009) Cuando nos introducimos en el mundo de las páginas Web nuestro objetivo fundamental es poder comunicarnos

Más detalles

MASTER DE PHP es el curso más completo diseñado para que aprendas desde 0 hasta poder desarrollar aplicaciones robustas utilizando Frameworks.

MASTER DE PHP es el curso más completo diseñado para que aprendas desde 0 hasta poder desarrollar aplicaciones robustas utilizando Frameworks. MASTER DE PHP es el curso más completo diseñado para que aprendas desde 0 hasta poder desarrollar aplicaciones robustas utilizando Frameworks. Incluye los Cursos PHP Nivel 1 y PHP Avanzado y entrenamiento

Más detalles

ÍNDICE. Introducción... Capítulo 1. Novedades, mejoras y requisitos para la instalación... 1

ÍNDICE. Introducción... Capítulo 1. Novedades, mejoras y requisitos para la instalación... 1 Introducción... XIII Capítulo 1. Novedades, mejoras y requisitos para la instalación... 1 Novedades y mejoras en SQL Server 2008 R2... 1 Novedades... 1 Mejoras... 3 Ediciones y componentes en SQL Server

Más detalles

PLAN DE PRUEBAS 17 DISEÑO WEB

PLAN DE PRUEBAS 17 DISEÑO WEB PLAN DE PRUEBAS 17 DISEÑO WEB 1.-Introducción TempusFugit es una web en la que se compran y ofrecen servicios, pero en lugar de usar dinero, la moneda de intercambio es el tiempo. Los usuarios de la web

Más detalles

Manual del Profesor/a Por favor, mándenos sus comentarios, sugerencias y mejoras a vcampos@ciberaula.net

Manual del Profesor/a Por favor, mándenos sus comentarios, sugerencias y mejoras a vcampos@ciberaula.net Manual del Profesor/a Por favor, mándenos sus comentarios, sugerencias y mejoras a vcampos@ciberaula.net Introducción Proyectos es un Sistema de Gestión de Comunidades Virtuales en Web, creado por Quaderns

Más detalles

JOOMLA! ADMINISTRACIÓN MI PRIMER ARTÍCULO (Parte I) (Última revisión: miércoles, 2 de marzo de 2011)

JOOMLA! ADMINISTRACIÓN MI PRIMER ARTÍCULO (Parte I) (Última revisión: miércoles, 2 de marzo de 2011) JOOMLA! ADMINISTRACIÓN MI PRIMER ARTÍCULO () (Última revisión: miércoles, 2 de marzo de 2011) Cuando nos introducimos en el mundo de las páginas Web nuestro objetivo fundamental es poder comunicarnos con

Más detalles

Índice de contenido. Manual de administración de hospedaje para administradores de dominios

Índice de contenido. Manual de administración de hospedaje para administradores de dominios Índice de contenido 1. Webmin...2 1.1 Cambio de idioma y tema...2 2. Otros...3 2.1 Cargas y descargas...3 2.2 Conexión Telnet / SSH...4 2.3 Directorios Web Protegidos...5 2.4 Administrador de archivos...6

Más detalles

TFC J2EE. Tienda Online:WebCine

TFC J2EE. Tienda Online:WebCine TFC J2EE Tienda Online:WebCine Jose Luis Del Hoyo Fernández Consultor: Antoni Oller Arcas 13/01/2014 Índice del contenido 1. Introducción... 4 1.1 Descripción del proyecto... 4 1.2 Objetivos... 4 1.3

Más detalles

Manual de uso avanzado de la aplicación

Manual de uso avanzado de la aplicación Manual de uso avanzado de la aplicación Autor del documento Centro de Apoyo Tecnológico a Emprendedores, Fundación Parque Científico y Tecnológico de Albacete Datos de contacto E-Mail: bilib@bilib.es Página

Más detalles

Novedades ebd versión 3.2

Novedades ebd versión 3.2 Novedades ebd versión 3.2 En este documento se detallan los cambios más importantes realizados en la versión 3.2 de ebd. Además de estas modificaciones, se han implementado mejoras de rendimiento y corregido

Más detalles

Laboratorio de Sistemas Departamento de Ingeniería en Sistemas de Información Universidad Tecnológica Nacional Facultad Regional Córdoba. Porque PHP?

Laboratorio de Sistemas Departamento de Ingeniería en Sistemas de Información Universidad Tecnológica Nacional Facultad Regional Córdoba. Porque PHP? Porque PHP? PHP es un lenguaje de programación usado generalmente para la creación de contenido para sitios web. PHP es el (acrónimo recursivo de "PHP: Hypertext Preprocessor", inicialmente PHP Tools,

Más detalles

PRÁCTICA FINAL TECNOLOGÍA MULTIMEDIA 3 DE JUNIO DE 2015. ENDIAN LIN [Dirección de la compañía]

PRÁCTICA FINAL TECNOLOGÍA MULTIMEDIA 3 DE JUNIO DE 2015. ENDIAN LIN [Dirección de la compañía] PRÁCTICA FINAL TECNOLOGÍA MULTIMEDIA 3 DE JUNIO DE 2015 ENDIAN LIN [Dirección de la compañía] Índice Introducción... 3 Diseño... 3 Aspecto general... 3 Diagrama de páginas... 4 Herramienta externa... 4

Más detalles

1. Servidor Web. (apache). 2. PHP. 3. Manejador de base de datos (mysql, postgress).

1. Servidor Web. (apache). 2. PHP. 3. Manejador de base de datos (mysql, postgress). COMO DESARROLLAR UN SISTEMA EN PHP PASO A PASO. (Guía practica). La presente guía esta diseñada para orientar a los programadores que se están iniciando en el mundo del php, a desarrollar una aplicación

Más detalles

Manual de uso avanzado de la aplicación

Manual de uso avanzado de la aplicación Manual de uso avanzado de la aplicación Autor del documento Centro de Apoyo Tecnológico a Emprendedores, Fundación Parque Científico y Tecnológico de Albacete Datos de contacto E-Mail: bilib@bilib.es Página

Más detalles

Gestión Web De Alojamiento Vacacional

Gestión Web De Alojamiento Vacacional Escola Tècnica Superior d Enginyeria Informàtica Universitat Politècnica de València Gestión Web De Alojamiento Vacacional Proyecto Final de Carrera Ingeniería Técnica en Informática de Sistemas Autor:

Más detalles

Tus publicaciones digitales al alcance de tu mano

Tus publicaciones digitales al alcance de tu mano Tus publicaciones digitales al alcance de tu mano Desarrollado por Índice Qué me ofrece... 3 Visualización interactiva... 4 Previsualización y orientación... 5 Multimedia... 6 Enlaces y configuración...

Más detalles

Gestión de los contenidos de la Web de ATICA con Mambo

Gestión de los contenidos de la Web de ATICA con Mambo Gestión de los contenidos de la Web de ATICA con Mambo Juan Luis Serradilla juanlu@um.es MNCS - http://www.um.es/atica/mncs Marzo 2006 Nueba Web de ATICA El 2-2-2006 empezó a funcionar la nueva web de

Más detalles

- Bases de Datos - - Diseño Físico - Luis D. García

- Bases de Datos - - Diseño Físico - Luis D. García - Diseño Físico - Luis D. García Abril de 2006 Introducción El diseño de una base de datos está compuesto por tres etapas, el Diseño Conceptual, en el cual se descubren la semántica de los datos, definiendo

Más detalles

La capacidad de respuesta a las necesidades del mercado viene determinada por la adecuación y accesibilidad de la comunicación de la empresa.

La capacidad de respuesta a las necesidades del mercado viene determinada por la adecuación y accesibilidad de la comunicación de la empresa. La capacidad de respuesta a las necesidades del mercado viene determinada por la adecuación y accesibilidad de la comunicación de la empresa. Le Brindamos el Servicio de Implementación y Desarrollo de

Más detalles

Cómo tener tu Tumblr con un domino propio

Cómo tener tu Tumblr con un domino propio Cómo tener tu Tumblr con un domino propio Cardenal Gardoki, 1 48008 BILBAO (Vizcaya) Teléfono: 902 012 199 www.hostalia.com Desde hace algunos años, las redes sociales han adquirido una gran importancia

Más detalles

Tablas y Campos Nuevos

Tablas y Campos Nuevos Tablas y Campos Nuevos Maxicomercio tiene la capacidad para poder agregar tablas y campos nuevos para darle nueva funcionalidad al sistema, los cambios que realice a la estructura de la base de datos podrán

Más detalles

CUALIFICACIÓN CONFECCIÓN Y PUBLICACIÓN DE PÁGINAS WEB PROFESIONAL. Nivel 2. Versión 5 Situación RD 1201/2007 Actualización

CUALIFICACIÓN CONFECCIÓN Y PUBLICACIÓN DE PÁGINAS WEB PROFESIONAL. Nivel 2. Versión 5 Situación RD 1201/2007 Actualización Página 1 de 18 CUALIFICACIÓN CONFECCIÓN Y PUBLICACIÓN DE PÁGINAS WEB PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 2 Código IFC297_2 Versión 5 Situación RD 1201/2007 Actualización

Más detalles

Manual de v2cms v2cms v1.01

Manual de v2cms v2cms v1.01 Manual de v2cms v2cms v1.01 Introducción v2cms es un sistema de manejo de contenido que ofrece una gran flexibilidad para la creación de sitios web no importa el tamaño del mismo. El mismo permite una

Más detalles

MANUAL DE LA PLATAFORMA DEL CURSO ON-LINE

MANUAL DE LA PLATAFORMA DEL CURSO ON-LINE MANUAL DE LA PLATAFORMA DEL CURSO ON-LINE INDICE 1. DESCRIPCIÓN GENERAL DE AVANZO LMS ERROR! MARCADOR NO DEFINIDO. 1.1. FUNCIONALIDADES... ERROR! MARCADOR NO DEFINIDO. 1.2. DESCRIPCIÓN TÉCNICA... ERROR!

Más detalles

DESCRIPCIONES TÉCNICAS 17 DISEÑO WEB

DESCRIPCIONES TÉCNICAS 17 DISEÑO WEB 2015 DESCRIPCIONES TÉCNICAS 17 DISEÑO WEB INTRODUCCIÓN AMETIC y Microsoft asumen la coordinación y el patrocinio de la Competición Nacional de Formación Profesional, Spainskills 2015, en lo concerniente

Más detalles

Twig, el motor de plantillas para PHP que separa el código HTML

Twig, el motor de plantillas para PHP que separa el código HTML Twig, el motor de plantillas para PHP que separa el código HTML A la hora de llevar a cabo un desarrollo web, la arquitectura MVC (Modelo Vista Controlador) es la que más aceptación tiene entre la comunidad

Más detalles

Taller de Programación II J2EE

Taller de Programación II J2EE ᄎ INACAP Universidad Tecnológica de Chile Sede Santiago Centro Taller de Programación II J2EE Tema 03 Uso de las Bases de Datos con Java Ing. Manuel López R. Recordando conceptos sobre bases de datos...

Más detalles

Blogger: herramienta de creación y gestión de blogs

Blogger: herramienta de creación y gestión de blogs Blogger: herramienta de creación y gestión de blogs Objetivo de aprendizaje Las personas participantes serán capaces de crear y gestionar un blog con Blogger. Existen numerosos servicios gratuitos para

Más detalles

Manual del Desarrollador

Manual del Desarrollador Manual del Desarrollador Getsir TABLA DE CONTENIDO Introducción... 3 Ejecutar y validar el funcionamiento del proyecto.... 3 Arquitecta de la aplicación... 4 Relación entre las vistas, controladores y

Más detalles

HTML & Fila Zilla. Temario:

HTML & Fila Zilla. Temario: HTML & Fila Zilla Conocer la estructura de tus páginas te permite tener un control total sobre estas, sin mencionar, que también te permite modificar la apariencia de tus sitios con CSS y mejorar tu presencia

Más detalles

Manual de Formulario. www.sagasoluciones.com info@sagasoluciones.com C/ Salado, 11. Local 10. 41011 Sevilla +34 954 45 72 75

Manual de Formulario. www.sagasoluciones.com info@sagasoluciones.com C/ Salado, 11. Local 10. 41011 Sevilla +34 954 45 72 75 Manual de Formulario info@sagasoluciones.com C/ Salado, 11. Local 10. 41011 Sevilla +34 954 45 72 75 MANUAL DE FORMULARIO CONTROL DEL DOCUMENTOS Realizado (21/01/2010) Inmaculada Peña Ruiz Técnico Revisado

Más detalles

Web ITSM -GUIA RÁPIDA DE USUARIO-

Web ITSM -GUIA RÁPIDA DE USUARIO- Web ITSM -GUIA RÁPIDA DE USUARIO- Manual básico de la aplicación WebITSM donde se visualiza la funcionalidad completa de la misma y la forma adecuada y eficaz de utilizarla. Ingeniería Técnica en Informática

Más detalles

SISTEMA CORREO MASIVO UC

SISTEMA CORREO MASIVO UC SISTEMA CORREO MASIVO UC MANUAL DE USUARIO Versión 2.5 Subdirección de Innovación Tecnológica RESUMEN EJECUTIVO En la búsqueda constante de una mayor innovación, preocupados de incorporar las herramientas

Más detalles

Guía Taller I Conexión con la Base de Datos Introducción a PostgreSQL

Guía Taller I Conexión con la Base de Datos Introducción a PostgreSQL Guía Taller I Conexión con la Base de Datos Introducción a PostgreSQL 1. Conexión con la Base de Datos: se debe realizar a partir de algún programa que implemente el protocolo SSH (Secure Shell), a partir

Más detalles