scieee AI-readable full text Open interactive document viewer

Geonature : portal de naturaleza y medio ambiente

Seco de Herrera Gómez, Pedro Antonio

Abstract

Grado en Ingeniería Informática de Servicios y Aplicaciones

Full text

Universidad de Valladolid E. U. de Informática (Segovia) Ingeniería Técnica en Informática de Gestión - GEONATURE - PORTAL DE NATURALEZA Y MEDIO AMBIENTE Alumno: Pedro Antonio Seco de Herrera Gómez Tutor: Pilar Grande González GEONATURE GEONATURE GEONATURE ¡Hello World! A mis padres, compañeros de piso y de pupitre, profesores, amigos y toda la gente que de una forma u otra han contribuido a que llegue hasta aquí. A Segovia, ciudad donde pasé los mejores años de mi vida. GEONATURE ÍNDICE GENERAL DE CONTENIDOS 1. Analisis del Sistema ........................................................................................ 2 2. Diseño del Sistema ....................................................................................... 25 3. Manual de Usuario ...................................................................................... 169 4. Plan de pruebas. ......................................................................................... 311 5. Cronograma de Actividades ....................................................................... 328 ANÁLISIS DEL SISTEMA GEONATURE Análisis del Sistema ANÁLISIS DEL SISTEMA GEONATURE 2 ANÁLISIS DEL SISTEMA GEONATURE 3 ÍNDICE DE CONTENIDO 1. INTRODUCCIÓN. DEFINICION METODOLOGICA ...................................... 5 2. DEFINICIÓN DEL PROYECTO ..................................................................... 6 2.1. Ámbito y alcance del proyecto. ................................................................ 6 2.1.1. Definición del proyecto. .................................................................... 6 2.1.2. Objetivo y etapas del proyecto. ........................................................ 6 2.1.3. Identificación de los módulos ........................................................... 7 2.2. Requisitos de Software ........................................................................... 7 3. ESTABLECIMIENTO DE REQUISITOS ........................................................ 9 3.1. Catálogo de requisitos generales del sistema. ........................................ 9 3.2. Catálogo de requisitos funcionales del sistema. ................................... 10 4. IDENTIFICACIÓN Y DESCRIPCIÓN DE MÓDULOS DE ANÁLISIS. ......... 11 4.1. Módulo público o parte pública .............................................................. 12 4.1.1. Descripción resumida ..................................................................... 12 4.1.2. Alcances previstos ......................................................................... 12 4.1.3. Diagrama de casos de uso para el módulo público ....................... 13 4.2. Módulo privado o parte privada ............................................................. 14 4.2.1. Descripción resumida ..................................................................... 14 4.2.2. Alcances previstos ......................................................................... 14 4.2.3. Diagrama de casos de uso para el módulo privado ....................... 14 5. INTERFACES DE USUARIO ....................................................................... 15 5.1. Pantallas de entrada de datos ............................................................... 15 5.2. Pantallas de Consulta ............................................................................ 15 5.2.1. Entradas de consultas .................................................................... 15 5.2.2. Presentación de resultados de consultas ....................................... 16 5.3. PANTALLAS DE ADMINISTRACIÓN .................................................... 16 6. PLATAFORMA TECNOLÓGICA DE CONSTRUCCIÓN ............................. 17 6.1. Arquitectura ........................................................................................... 17 ANÁLISIS DEL SISTEMA GEONATURE 4 7. ESPECIFICACIÓN DEL PLAN DE PRUEBAS ............................................. 18 8. FASE DE DISEÑO ........................................................................................ 19 GLOSARIO ........................................................................................................... 20 Anexo 1 ................................................................................................................ 21 Catalogo de requisitos .......................................................................................... 21 ANÁLISIS DEL SISTEMA GEONATURE 11 4. IDENTIFICACIÓN Y DESCRIPCIÓN DE MÓDULOS DE ANÁLISIS. GEONATURE debe contar con dos partes claramente diferenciadas  Módulo público  Módulo privado De cada módulo se ha hecho el análisis completo abarcando las siguientes componentes: Descripción resumida Una descripción breve del módulo indicando sus objetivos. Alcances previstos Alcances del módulo basado en los Términos de Referencia. Análisis de casos de usos Los objetivos de los casos de uso son los siguientes: - Capturar los requisitos funcionales del sistema y expresarlos desde el punto de vista del usuario. - Guiar todo el proceso de desarrollo del sistema de información. Un caso de uso es una secuencia de acciones realizadas por el sistema, que producen un resultado observable y valioso para un usuario en particular, es decir, representa el comportamiento del sistema con el fin de dar respuestas a los usuarios. Aquellos casos de uso que resulten demasiados complejos se pueden descomponer en un segundo nivel, en el que los nuevos casos de uso que intervengan resulten más sencillos y manejables. Especificación de un caso de uso Un caso de uso recoge, en un primer momento, una descripción general. Esta descripción reflejará posiblemente uno o varios requisitos funcionales del sistema o formará parte de algún requisito. ANÁLISIS DEL SISTEMA GEONATURE 12 Se puede completar la descripción definiendo cuáles son las precondiciones y postcondiciones del sistema, es decir, qué condiciones deben cumplirse para que se realice un caso de uso y cuales son aquellas condiciones que se cumplen posteriormente al caso de uso. También se pueden enumerar los diferentes escenarios del caso de uso si los tuviese y dar una breve descripción de ellos. Los escenarios son los distintos caminos por los que puede evolucionar un caso de uso, dependiendo de las condiciones que se van dando en su realización. Análisis de clases Las clases son el vocabulario y terminología de un área del conocimiento. En UML un rectángulo es el símbolo que representa una clase. El nombre de la clase es, por convención, una palabra con la primera letra en mayúscula y normalmente se coloca en la parte superior del rectángulo. El diagrama de clases recoge las clases de objetos y sus asociaciones. Una clase describe un conjunto de objetos con propiedades (atributos) similares y un comportamiento común. Los objetos son instancias de las clases. Un atributo es una propiedad o característica de una clase y describe un rango de valores que la propiedad podrá contener en los objetos (esto es, instancias) de la clase. Una clase podrá contener varios o ningún atributo. Por convención, si el atributo consta de una sola palabra se escribe en minúsculas. Una operación es algo que la clase puede realizar, o que el usuario (u otra clase) pueden hacer a una clase. A continuación se describirán cada módulo según los 5 componentes arriba indicados. 4.1. Módulo público o parte pública 4.1.1. Descripción resumida El módulo público comprende aquellas secciones de la aplicación que son accesibles para cualquier usuario. 4.1.2. Alcances previstos ANÁLISIS DEL SISTEMA GEONATURE 13  Mostrar al usuario público la portada del sitio Web.  Mostrar al usuario una visión general del Sitio Web.  Mostrar al usuario público un listado de noticias.  Mostrar al usuario público un listado de Animales y plantas.  Mostrar al usuario un listado de enlaces a otras páginas  Posibilitar al usuario a inscribirse a un servicio de boletines periódicos que serán enviados a su correo electrónico.  Posibilitar al usuario escribir una sugerencia a través de un sencillo formulario.  Mostrar al usuario un listado de correos y contactos personas y posibilitar el intercambio de información entre ambos  Mostrar al usuario un foro público donde pueda publicar comentarios y gestionar su cuenta de usuario.  Posibilitar al usuario administrador acceder al modo de personalización del sistema. 4.1.3. Diagrama de casos de uso para el módulo público usuario Módulo Público accede portada noticias contactos enlaces Animales y plantas boletines periódicos buzón de sugerencias «extends» «extends» «extends» «extends» «extends» «extends» «extends» Foro «extends» ANÁLISIS DEL SISTEMA GEONATURE 14 4.2. Módulo privado o parte privada 4.2.1. Descripción resumida Éste módulo comprende toda la parte de administración de la aplicación por parte del usuario administrador. 4.2.2. Alcances previstos  Permite al usuario administrador entrar en el sistema, a través de unas credenciales Permitir al usuario administrador gestionar toda la Información que se pone a disposición del usuario publico 4.2.3. Diagrama de casos de uso para el módulo privado administrador Módulo Privado accede indentificación «uses» Gestionar portada gestionar noticias gestionar correos y contactos gestionar enlaces gestionar Animales y plantas gestionar boletines periódicos gestionar buzón de sugerencias «extends» «extends» «extends» «extends» «extends» «extends» «extends» configurar aplicación «extends» Foro «extends» ANÁLISIS DEL SISTEMA GEONATURE 15 5. INTERFACES DE USUARIO El presente documento tiene como objetivo dar guías generales de diseño de las formas Web. Todas las interfaces de entrada/salida del sistema deberán utilizar el mismo esquema general de diseño que se especificará a continuación. 5.1. Pantallas de entrada de datos Los campos de entrada deben estar organizados en grupos lógicos de manera que tengamos varias secciones de campos relacionados. Las etiquetas de campos deben estar justificadas a la izquierda para facilitar su visualización general, la anchura de las cajas de texto deben determinarse de manera que deben dar una idea de la cantidad de caracteres o números requeridos para cada entrada. Se debe utilizar en la medida de lo posible, controles tipo combo box para filtrar errores por ingreso de usuario. Los botones de acción deben estar estandarizados en todas las pantallas que los requieran. 5.2. Pantallas de Consulta Existen dos tipos de formas asociadas con las consultas, la primera es la forma en la que el usuario ingresa los datos y la segunda es la forma en la que se despliegan los resultados de la consulta. 5.2.1. Entradas de consultas Existen varios aspectos importantes a tomar en cuenta al momento de diseñar una forma ANÁLISIS DEL SISTEMA GEONATURE 16 de consulta: 1. Interfaz simple. 2. Minimización de entradas directas del usuario. 3. El texto o botones incluidos deben ser bastante informativos al usuario acerca de la entrada que se espera de él. Otro aspecto a tener en cuenta es que los valores por omisión de la interface son aquellos en los que se prevé que estadísticamente serán los más elegidos. 5.2.2. Presentación de resultados de consultas La salida de una consulta debe coincidir exactamente con lo que el usuario esperaba ver, un texto descriptivo antes de las filas de salida ayuda bastante. 5.3. PANTALLAS DE ADMINISTRACIÓN Las pantallas de administración son las encargadas de dar de alta, baja (si es permitido) o modificar, la mayoría de los parámetros e información clave de las bases de datos, en general, estas pantallas deben facilitar al usuario el ingreso de datos, tomando en cuenta aspectos como rapidez de ingreso, validación de datos, minimización de tecleo con una interfaz intuitiva y simple que incorpore facilidades de búsqueda. Un ejemplo de pantalla de alta podría ser la siguiente: En la figura anterior se presenta un ejemplo típico de pantalla de alta, se procura facilitar la entrada mediante cajas de selección. ANÁLISIS DEL SISTEMA GEONATURE 17 6. PLATAFORMA TECNOLÓGICA DE CONSTRUCCIÓN 6.1. Arquitectura La arquitectura seleccionada para satisfacer las necesidades de GEONATURE emplea los siguientes elementos:  El sistema operativos utilizado será Windows: o Para los servidores: Windows Server 2003  Como herramientas de desarrollo se utilizarán: o Por ser un estándar dentro de la programación .NET se utilizará el entorno Visual Studio.NET 2010 y como lenguaje de programación C# y ASP.NET 3.5 o Herramienta CASE: Microsoft Visio 2003.  Navegadores o Optimizado para Internet Explorer 8, pero con soporte para todos los navegadores actuales (Chrome, Firefox, Safari, etc ..) ANÁLISIS DEL SISTEMA GEONATURE 18 7. ESPECIFICACIÓN DEL PLAN DE PRUEBAS El tipo de pruebas que se realizarán a lo largo de las siguientes fases del ciclo de vida serán las siguientes:  Pruebas Unitarias. Prueban el diseño y el comportamiento de cada uno de los componentes una vez codificados.  Pruebas de Integración. Comprueban la correcta unión de los componentes entre sí a través de sus interfaces, y si cumplen con la funcionalidad establecida.  Pruebas del Sistema. Prueban a fondo el sistema, comprobando su funcionalidad e integridad globalmente, en un entorno lo más parecido posible al entorno final de producción.  Pruebas de Implantación. Comprueba el correcto funcionamiento del sistema dentro del entorno real de producción.  Pruebas de Aceptación. Verifican que el sistema cumple con todos los requisitos indicados y permite que los usuarios del sistema den el visto bueno definitivo.  Pruebas de Regresión. El objetivo es comprobar que los cambios sobre un componente, no generan errores adicionales en otros componentes no modificados. ANÁLISIS DEL SISTEMA GEONATURE 19 8. FASE DE DISEÑO La fase siguiente contempla la definición de todos los detalles de los módulos, dentro del marco de este documento de análisis. Se definirán los siguientes elementos de cada subsistema: - casos de uso en detalla con sus diagramas de interacción - interfaces de usuario - modelo de clases detallado - modelo físico de datos - carga de datos inicial - plan de pruebas ANÁLISIS DEL SISTEMA GEONATURE 20 GLOSARIO ASP Active Server Page SQL Server Sistema gestor de bases de datos relacional de Microsoft DISEÑO DEL SISTEMA GEONATURE 27 ÍNDICE DE CONTENIDO 1. ANTECEDENTES ...................................................................................................... 33 1.1. DEFINICIÓN DEL PROYECTO. .................................................................................. 33 1.2. OBJETIVO Y ETAPAS DEL PROYECTO. ...................................................................... 33 1.3. CONTEXTO DEL SISTEMA ....................................................................................... 34 1.3.1. Fuentes de datos ........................................................................................ 34 1.3.2. Identificación de los módulos ...................................................................... 34 1.3.3. Catálogo de requisitos generales del sistema ............................................ 35 1.3.4. Catalogo de requisitos funcionales del sistema ......................................... 36 1.4. DEFINICION METODOLOGICA ......................................................................... 36 2. DESCRIPCIÓN Y OBJETIVOS .................................................................................. 38 3. DEFINICIÓN DE LA ARQUITECTURA DEL SISTEMA ............................................ 39 3.1. IDENTIFICACIÓN DE REQUISITOS DE DISEÑO Y CONSTRUCCIÓN ............................... 39 3.2. ESPECIFICACIÓN DE EXCEPCIONES GENERALES ...................................................... 40 3.2.1. Domain Name System (DNS) ..................................................................... 40 3.2.2. Internet Information Services (IIS) .............................................................. 41 3.2.3. Servidor de base de datos .......................................................................... 41 3.2.4. Sistema de Almacenamiento ...................................................................... 41 3.3. ESPECIFICACIÓN DE ESTÁNDARES Y NORMAS DE DISEÑO Y CONSTRUCCIÓN ............ 42 3.3.1. Convenciones del documento .................................................................... 42 3.3.2. Terminología y Definiciones ....................................................................... 43 3.3.3. Resumen ilustrativo .................................................................................... 45 Estándares de C# ............................................................................................................... 45 Estilos de codificación ......................................................................................................... 49 Uso del lenguaje ................................................................................................................. 49 3.3.4. Convenciones de nombres ......................................................................... 50 Recomendaciones generales .............................................................................................. 50 Uso de nombres y sintaxis .................................................................................................. 51 3.3.5. Estilo de codificación .................................................................................. 53 Formato ............................................................................................................................... 53 Comentarios ........................................................................................................................ 54 3.3.6. Uso del lenguaje ......................................................................................... 54 General ............................................................................................................................... 54 Variables y Tipos ................................................................................................................. 54 Control de flujos .................................................................................................................. 55 Control de excepciones ....................................................................................................... 55 Eventos, Delegados e Hilos ................................................................................................ 56 Composiciones de objetos .................................................................................................. 56 DISEÑO DEL SISTEMA GEONATURE 28 3.3.7. Consideraciones de Arquitectura ................................................................ 56 Capa de Acceso a los datos (DAL) ...................................................................................... 57 Capa de lógica del negocio (BLL) ........................................................................................ 58 Capa de presentación (UI) ................................................................................................... 58 3.4. IDENTIFICACIÓN DE SUBSISTEMAS DE DISEÑO ......................................................... 58 3.5. ESPECIFICACIÓN DEL ENTORNO TECNOLÓGICO ...................................................... 59 3.5.1. Arquitectura Tecnológica ............................................................................ 59 3.5.2. Estructura lógica del sistema ...................................................................... 60 3.6. ESPECIFICACIÓN DE REQUISITOS DE OPERACIÓN Y SEGURIDAD .............................. 61 3.6.1. Aspectos de seguridad ............................................................................... 62 4. DISEÑO DE CASOS DE USO REALES .................................................................... 63 4.1. DIAGRAMAS DE CASOS DE USO PARA EL SISTEMA GEONATURE ............................ 64 4.2. DIAGRAMA DE CASO DE USO: CONFIGURACIÓN DEL PORTAL .................................... 65 4.2.1. Caso de uso: Autenticación de Usuarios .................................................... 65 4.2.2. Caso de uso: Modificar Contraseña de Acceso ......................................... 66 4.2.3. Caso de uso: Modificar configuración de correo saliente (SMTP) ............. 67 4.2.4. Caso de uso: Modificar cuentas de correo asociadas ................................ 68 4.3. DIAGRAMA DE CASO DE USO: PUBLICACIÓN DE NOTICIAS ......................................... 69 4.3.1. Caso de uso: Gestión de Publicación de Noticias ...................................... 69 4.4. DIAGRAMA DE CASO DE USO: LISTA DE CORREOS Y CONTACTOS .............................. 73 4.4.1. Caso de uso: Visualización de Correos y contactos .................................. 74 4.4.2. Caso de uso: Gestión de Correos y Contactos .......................................... 75 4.5. DIAGRAMA DE CASO DE USO: PUBLICACIÓN DE ENLACES ......................................... 78 4.5.1. Caso de uso: Visualización de Enlaces ...................................................... 79 4.5.2. Caso de uso: Gestión de Enlaces .............................................................. 80 4.6. DIAGRAMA DE CASO DE USO: BUZÓN DE SUGERENCIAS ........................................... 83 4.6.1. Caso de uso: Uso del Buzón ...................................................................... 83 4.7. DIAGRAMA DE CASO DE USO: ANIMALES Y PLANTAS ................................................ 84 4.7.1. Caso de uso: Visualización de las animales y plantas ............................... 85 4.7.2. Caso de uso: Gestión de publicación de Animales y plantas ..................... 85 4.8. DIAGRAMA DE CASO DE USO: BOLETÍN PERIÓDICO .................................................. 89 4.8.1. Caso de uso: Inscripción al boletín ............................................................. 90 4.8.2. Caso de uso: Gestión de Inscripciones ...................................................... 90 4.9. DIAGRAMA DE CASO DE USO: FORO ........................................................................ 93 4.9.1. Caso de uso: Registro en el Foro ............................................................... 95 4.9.2. Caso de uso: Entrada en el Foro ................................................................ 95 4.9.3. Caso de uso: Gestión de usuarios y temas ................................................ 98 5. DISEÑO DE CLASES ..............................................................................................100 DISEÑO DEL SISTEMA GEONATURE 29 5.1. IDENTIFICACIÓN DE OPERACIONES DE LAS CLASES ............................................... 100 5.2. SUBSISTEMA DE PORTAL ..................................................................................... 100 5.2.1. Diagrama de clases: Portal ....................................................................... 100 5.3. DISEÑO DE CLASES. CAPA DE DATOS ................................................................... 100 5.3.1. Clase SqlHelper ........................................................................................ 101 5.3.2. Clase ConexionAD ................................................................................... 103 5.3.3. Clase LoginAD .......................................................................................... 104 5.3.4. Clase ConfigAD ........................................................................................ 104 5.3.5. Clase NoticiaAD ........................................................................................ 106 5.3.6. Clase AnimalesPlantasAD ........................................................................ 108 5.3.7. Clase SuscripcionesAD ............................................................................ 111 5.3.8. Clase ForoAD ........................................................................................... 113 5.4. DISEÑO DE CLASES. CAPA DE NEGOCIO: MÉTODOS DE NEGOCIO .......................... 118 5.4.1. Clase ConfigMN ........................................................................................ 118 5.4.2. Clase LoginMN ......................................................................................... 119 5.4.3. Clase NoticiasMN ..................................................................................... 120 5.4.4. Clase AnimalesPlantasMN ....................................................................... 123 5.4.5. Clase SuscripcionMN ............................................................................... 126 5.4.6. Clase ForoMN ........................................................................................... 128 5.5. DISEÑO DE CLASES. CAPA DE NEGOCIO: OBJETOS DE NEGOCIO ........................... 133 5.5.1. Clase ImagenON ...................................................................................... 133 5.5.2. Clase NoticiaON ....................................................................................... 134 5.5.3. Clase EspecieON ..................................................................................... 135 5.5.4. Clase SuscripcionON ................................................................................ 136 5.6. DISEÑO DE CLASES. CAPA DE PRESENTACION: PORTAL ........................................ 136 5.6.1. Clase Config.ascx.cs ................................................................................ 137 5.6.2. Clase Ed_Especies.ascx.cs ...................................................................... 138 5.6.3. Clase Ed_Noticias.ascx.cs ....................................................................... 142 5.6.4. Clase Login.ascx.cs .................................................................................. 146 5.6.5. Clase Default.aspx.cs ............................................................................... 147 5.6.6. Clase animalesplantas.aspx.cs ................................................................ 149 5.6.7. Clase Boletines.aspx.cs ............................................................................ 152 5.6.8. Clase contacto.aspx.cs ............................................................................. 153 5.6.9. Clase contactos.asp.cs ............................................................................. 155 5.6.10. Clase enlaces.aspx.cs .............................................................................. 157 5.6.11. Clase Historico.aspx.cs ............................................................................ 158 5.6.12. Clase Noticias.aspx.cs .............................................................................. 159 5.6.13. Clase QuienesSomos.aspx.cs .................................................................. 161 5.6.14. Clase Sugerencias.aspx.cs ...................................................................... 162 DISEÑO DEL SISTEMA GEONATURE 30 5.6.15. Clase Foro/index.aspx.cs..........................................................................164 5.6.16. Clase Foro/tema.aspx.cs ..........................................................................166 5.6.17. Clase Foro/configperfil.aspx.cs .................................................................167 5.6.18. Clase Foro/cambiarcontrasena.aspx.cs ...................................................168 5.7. DISEÑO DE CLASES. CAPA DE PRESENTACION: WEBPARTS ...................................169 5.7.1. Información General sobre los WebParts .................................................169 5.7.2. Clase bannerEditorPart.cs ........................................................................169 5.7.3. Clase bannerWebPart.cs ..........................................................................171 5.7.4. Clase boletinEditorPart .............................................................................173 5.7.5. Clase boletinWebPart ...............................................................................175 5.7.6. Clase contactoEditorPart.cs .....................................................................177 5.7.7. Clase contactoWebpart.cs ........................................................................180 5.7.8. Clase correoEditorPart.cs .........................................................................181 5.7.9. Clase correoWebPart.cs ...........................................................................183 5.7.10. Clase enlaceEditorPart.cs ........................................................................185 5.7.11. Clase enlaceWebPart.cs...........................................................................187 5.7.12. Clase enlaceSimpleEditorPart.cs .............................................................189 5.7.13. Clase enlaceSimpleWebPart ....................................................................190 5.7.14. Clase fileUploadEditorPart.cs ...................................................................192 5.7.15. Clase fileUploadWebPart.cs .....................................................................194 5.7.16. Clase inputTextEditorpart.cs .....................................................................195 5.7.17. Clase inputTextWebPart.cs ......................................................................197 5.7.18. Clase LiteralEditorpart.cs ..........................................................................199 5.7.19. Clase LiteralWebPart.cs ...........................................................................200 5.7.20. Clase SeccionesWebPart .........................................................................202 5.7.21. Clase SliderEditorpart.cs ..........................................................................203 5.7.22. Clase SliderWebPart .................................................................................205 5.7.23. Clase TextoImagenEditorpart.cs ..............................................................206 5.7.24. Clase TextoImagenWebPart .....................................................................208 5.7.25. Clase TramiteEditorpart.cs .......................................................................210 5.7.26. Clase TramiteWebPart ..............................................................................212 5.7.27. Clase VideoEditorpart.cs ..........................................................................213 5.7.28. Clase VideoWebPart .................................................................................215 6. DISEÑO FÍSICO DE DATOS ...................................................................................217 6.1. DISEÑO DEL MODELO FÍSICO DE DATOS ...............................................................217 6.1.1. Diagrama Entidad-Relación: BBDD Portal ...............................................217 Diagrama: Funcionamiento general de la aplicación ......................................................... 217 Diagrama: Gestión de suscripciones al boletín periódico ................................................. 218 DISEÑO DEL SISTEMA GEONATURE 31 Diagrama: Gestión de publicación de noticias .................................................................. 219 Diagrama: Gestión de publicación de especies ................................................................ 220 6.1.2. Paso del Modelo de Entidad-Relación al modelo Relacional ................... 221 6.1.3. Diagrama de Base de Datos: BBDD Portal .............................................. 227 6.2. PROCEDIMIENTOS ALMACENADOS: BBDD PORTAL ............................................... 229 6.2.1. Definición .................................................................................................. 229 6.2.2. Tabla de relación de Procedimientos Almacenados ................................ 229 7. INTERFAZ DE USUARIO ........................................................................................ 239 7.1. ESPECIFICACIONES DE LA INTERFAZ DE USUARIO .................................................. 239 7.1.1. Funcionamiento general ........................................................................... 239 7.1.2. Acceso al sistema ..................................................................................... 239 7.1.3. Ventana principal ...................................................................................... 239 7.2. REVISIÓN DE LA INTERFAZ DE USUARIO ................................................................. 240 7.2.1. Secciones del portal ................................................................................. 240 7.2.2. Interfaz de usuario para Portal ................................................................. 241 8. GENERACIÓN DE ESPECIFICACIONES DE CONSTRUCCIÓN .......................... 250 8.1. ESPECIFICACIÓN DEL ENTORNO DE CONSTRUCCIÓN .............................................. 250 8.1.1. Hardware .................................................................................................. 250 Servidor de Base de Datos y Aplicaciones. Central .......................................................... 250 Servidor de acceso a Internet, de Base de Datos y de Licencias. .................................... 251 8.1.2. Software .................................................................................................... 251 8.2. COMUNICACIONES ............................................................................................... 252 Red Interna ....................................................................................................................... 252 Red Externa ...................................................................................................................... 252 8.2.1. Requisitos de operación y seguridad del entorno de construcción .......... 252 9. ESPECIFICACIÓN TÉCNICA DE NIVELES DE PRUEBA ..................................... 254 9.1.1. Pruebas unitarias ...................................................................................... 254 Caja blanca ....................................................................................................................... 254 Caja negra ........................................................................................................................ 257 9.1.2. Pruebas de integración ............................................................................. 258 9.1.3. Pruebas de sistema .................................................................................. 259 9.1.4. Pruebas de implantación .......................................................................... 259 9.2. REVISIÓN DE LA PLANIFICACIÓN DE PRUEBAS ....................................................... 259 9.2.1. Pruebas de Acceso y Navegabilidad en módulo público. ........................ 259 9.2.2. Pruebas de funcionalidad en módulo público. .......................................... 260 9.2.3. Pruebas de Acceso y Navegabilidad en módulo privado. ........................ 263 DISEÑO DEL SISTEMA GEONATURE 32 10. ESTABLECIMIENTO DE REQUISITOS DE IMPLANTACIÓN ...........................268 10.1. ESPECIFICACIÓN DE REQUISITOS DE DOCUMENTACIÓN DE USUARIO ..................268 DISEÑO DEL SISTEMA GEONATURE 33 1. ANTECEDENTES 1.1. Definición del proyecto. El Sistema de Información GEONATURE es una aplicación web que tiene como función principal, generar, consultar y transferir información estadística de carácter forestal, medioambiental y animal. Para ello, se desarrollará una aplicación dividida en módulos (parte pública y parte privada). 1.2. Objetivo y etapas del proyecto. El objetivo del proyecto no es otro que el Análisis, Desarrollo e Implantación de GEONATURE (hardware, software base, software aplicativo y comunicaciones).  Se deben alcanzar procedimientos de entrenamiento y seguimiento para el desarrollo, utilización, operación, actualización y mantenimiento del Portal y los sistemas de información. Las etapas consideradas para llegar a estos objetivos se enumeran a continuación. • Levantamiento de información. • Análisis de requerimientos. • Diseño. • Desarrollo. • Pruebas. • Implementación. • Capacitación y seguimiento. • Operación y mantenimiento. DISEÑO DEL SISTEMA GEONATURE 34 1.3. Contexto del Sistema 1.3.1. Fuentes de datos Las fuentes de datos para el sistema GEONATURE provienen de toda la información actual disponible en las siguientes bases de datos: - portal - webparts 1.3.2. Identificación de los módulos A continuación se enumeran los distintos subsistemas que forman parte de la aplicación. La descripción detallada de sus procesos y requerimientos se expondrá no obstante, en el Capitulo 4 de este informe. Parte Pública La parte pública de la aplicación es aquella en la cual cualquier usuario público puede visitar sin restricciones. Dicha parte pública consta de diversos módulos o secciones:  Módulo de Información  Módulo de Noticias  Módulo de Enlaces  Módulo de sugerencias  Módulo de Animales y Plantas (Información Forestal)  Módulo de Boletines periódicos  Módulo de Correos y contactos  Módulo de Foro Parte Privada La parte privada de la aplicación es aquella que sólo es accesible para un usuario administrador y a través de la cual se encarga de la administración de la aplicación y se DISEÑO DEL SISTEMA GEONATURE 35 comprende de un único módulo:  Módulo de Personalización. 1.3.3. Catálogo de requisitos generales del sistema INTERFAZ Dado que la aplicación tiene que poder estar disponible para un gran número de usuarios localizados en ubicaciones diferentes, la interfaz será de tipo Web. La aplicación estará basada en tecnología ASP .NET. (Framework 3.5) PORTAL La aplicación debe ser muy fácil de utilizar y intuitiva. De esta manera personas que no posean apenas conocimientos en manejo de software, podrán ser usuarios del sistema. FLEXIBILIDAD El Sistema GEONATURE debe ser totalmente flexible. Es decir, la introducción futura de nuevos objetos, fácil y de muy bajo impacto para el conjunto del sistema. VOLÚMENES DE DATOS Se espera que GEONATURE sea capaz de gestionar la introducción de grandes volúmenes de datos por año. Si a esto le sumamos la necesidad de que el sistema sea capaz de mostrar tendencias y patrones a lo largo de varios años, podemos suponer que es requisito imprescindible la capacidad de manejar grandes volúmenes de datos. DISPONIBILIDAD Debido a la naturaleza de la aplicación, resulta necesario que GEONATURE este disponible 24 horas al día, 7 días a la semana. SEGURIDAD E INTEGRIDAD En cuanto a la seguridad, se requiere un alto grado de protección para la información contra la intrusión de agentes externos. Además es indispensable que existan distintos DISEÑO DEL SISTEMA GEONATURE 36 niveles de acceso a los diversos datos, que garantice una correcta segregación de los distintos usuarios. 1.3.4. Catalogo de requisitos funcionales del sistema En función de los distintos tipos de usuarios que se prevé van a intervenir en el sistema, y de las actividades que se supone van a realizar, se establecen una serie de requisitos funcionales que nos dictan cual debe ser la funcionalidad básica que ofrecerá el sistema GEONATURE. GEONATURE proveerá los medios para que cada uno de los actores identificados pueda:  Acceder al sistema a través de un medio seguro y segregado.  Consultar los datos relativos a un tema en particular  Realizar consultas sobre el conjunto de los datos Para aquellos usuarios que sean considerados como proveedores de información (administradores del sistema) debe permitir:  Crear un nuevos registros  Actualizar información de un registro ya existente.  Modificar los contenidos del portal Web. 1.4. DEFINICION METODOLOGICA Los estudios adelantados permitieron la adopción de la metodología Métrica Versión 3.0, como el sistema guía de orientación y desarrollo del proyecto. Esta metodología fue definida en España por el Ministerio de Administraciones Públicas, país que se ha especializado en estudio y desarrollo de sistemas de información, siendo probada y adoptada por diferentes entidades públicas y privadas en diferentes países del mundo. De acuerdo a la metodología seleccionada, el desarrollo del proyecto se realizar siguiendo tres grandes etapas: - Etapa de Planificación del Sistema de Información, en la que se busca obtener DISEÑO DEL SISTEMA GEONATURE 43 documento para añadir énfasis. Enseguida algunas de las convenciones usadas a través del documento. Color y Énfasis: Azul El texto en color azul, indica una palabra clave de C# Negrita Texto con énfasis adicional para resaltarlo Palabras Claves Siempre Enfatiza que la regla se debe cumplir. Nunca Enfatiza que la acción nunca se debe ejecutar. Evitar Enfatiza que la acción debe ser prevenida, pero algunas excepciones pueden existir. Tratas Enfatiza que la regla debe de cumplirse siempre y cuando sea posible y se adecuado. Ejemplo Precede al texto usado para ilustrar la regla o recomendación. Razón Explica el propósito detrás de la regla o recomendación. 3.3.2. Terminología y Definiciones La siguiente terminología es referenciada a través de esta sección del documento: Modificador de acceso Las palabras clave de C# o de VB. NET que declaran el nivel de accesibilidad de código DISEÑO DEL SISTEMA GEONATURE 44 que se tiene para los métodos y/o variables. Ejemplo: [C#] private, public, internal, protected, static Aunque los modificadores de acceso varían, las clases y la mayoría de sus miembros usan por defecto Private o private. Las excepciones para esto son la interfaces y enumeradores los cuales por defecto son públicos. En la sección de breve resumen se muestra una tabla de modificaciones de accesos para C#. Camel Case Forma de escribir una palabra donde la primera letra es minúscula y la primera letra de las siguientes palabras empieza en mayúscula. Ejemplo: nombreVendedor fechaInicialPago Pascal Case Forma de escribir una palabra donde la primera letra es mayúscula y la primera letra de las siguientes palabras empieza en mayúscula. Ejemplo: NombreVendedor FechaInicialPago Common Type System (CTS) El sistema común de tipo (CTS) del .NET Framework define como son declarados, usados y manejados los diferentes tipos de datos. Todos los tipos nativos de C# están basados sobre el CST para asegurar el soporte de la integración de los diferentes DISEÑO DEL SISTEMA GEONATURE 45 lenguajes de .NET Framework. Identificador El desarrollador define un nombre único para declarar un objeto o instancia de alguno. 3.3.3. Resumen ilustrativo Esta sección contiene cuadros y tablas describiendo a alto nivel el resumen de las recomendaciones y estándares de nombres, estilos de codificación y uso del lenguaje. Estándares de C# Propósito C# Programación Orienta a Objetos Construcción de una clase. public class MiClase { public MiClase(…) {… } … } Declaración de Clase. class DISEÑO DEL SISTEMA GEONATURE 46 Propósito C# Herencia de Clase. public class A : B { … } Indica que la clase solo puede ser heredara y no instanciada. abstract Indica que la clase no puede ser heredada. sealed Referir a los miembros de la clase base desde una clase derivada. base Indica que el método o la propiedad sobrescriben la implementación de la clase padre override Indicar que la clase sólo se puede utilizar como clase base de otras clases. abstract Indica que el método o propiedad no pueden ser sobrescritos en clases derivadas sealed Indica que el método o propiedad pueden ser invalidada en clases derivadas virtual Sobrecarga de procesos, funciones o métodos [se define funciones con el mismo nombre pero con diferente cantidad de parámetros] Refiere al objeto actual this Declaración de un tipo enumerado enum Declaración de un tipo una interface interface DISEÑO DEL SISTEMA GEONATURE 47 Propósito C# Implementación de una interface class Miclase : IDisposable Indicador índice public string this {int [index] { get {return list[index];} set {List[index]=value;} } Modificadores de acceso de clases Indica que la clase es accesible desde fuera del proyecto o de un ensamblado public Indica que la clase es accesible solo dentro de los archivos de su mismo ensamblado internal Indica que la clase solo es accesible en el proyecto por clases anidadas dentro de esta clase private Modificadores de acceso de miembros de una clase Indica que el miembro es accesible desde fuera de la clase y proyecto. public Indica que el miembro es accesible solo en el ámbito de la clase private Indica que el miembro es accesible solo para la clase y para las clases derivadas protected DISEÑO DEL SISTEMA GEONATURE 48 Propósito C# Indica que el miembro es compartido a través de todas las instancias de la clase static Otros Indica comentario //,/* */ /// para comentarios XML Indica constante const, readonly Declaración de una función o método sin valor de retorno void Declaración de eventos event Declaración de una estructura struct Declaración de u objeto nulo. null Declaración de un espacio de nombres namespace { … } Indica el uso de un espacio de nombres using Devuelve un carácter de una cadena literal [] Devuelva la dirección de una función delegate Prueba si un objeto es nulo obj == null Bloqueo de hilos Lock DISEÑO DEL SISTEMA GEONATURE 49 Estilos de codificación Código Estilo Archivo Fuente Un espacio de nombres por archivo y una clase por archivo. Llaves “{“ Una por línea. Usar siempre las llaves cuando sea opcional. Comentarios [C#] usar // o /// pero no /* … */ y no utilizar marcos de asteriscos. Utilizar /// para comentarios XML de las funciones y métodos. Variables Una variable por declaración. Uso del lenguaje Código Estilo Tipo Nativos de Datos  Usar datos nativos de datos de C# en lugar de los tipos del CTS del .NET. Ejemplo:  [C#] Usar int y NO System.Int32  [VB.NET] Usar integer y NO System.Int32 Propiedades  Evitar utilizar prefijos Get o Set. Condicionales  Evitar evaluar condiciones booleanas contra true o false.  No utilizar asignaciones en la condición.  Evitar usar invocaciones a métodos dentro de las condiciones. DISEÑO DEL SISTEMA GEONATURE 50 Excepciones  Usar throw e; cuando se necesite relanzar excepciones.  Capturar las excepciones solo cuando se vayan a manejar.  Usar validaciones para evitar excepciones.  Heredar siempre las excepciones desde la clase Exception. Eventos  Chequear los valores nulos antes de invocarlos. Dispose() y Close()  Siempre deben ser invocados dentro de la clase. Finalizadores  Evitarlos, o en su defecto usar los destructores de C#. 3.3.4. Convenciones de nombres Esta sección se concreta completamente en el trabajo de nombrar proyectos, archivos de código fuente, identificadores incluyendo campos, variables, propiedades, métodos, parámetros, clases, interfaces y espacios de nombres. Recomendaciones generales  Utilizar siempre nombres con estilo de escritura camelCase o PascalCase.  Evitar nombres totalmente en mayúsculas o en minúsculas. Los nombres de una solo palabra serán escritos totalmente en minúsculas si se usa el estilo camelCase.  Nunca utilizar nombres que comiencen con caracteres numéricos.  Utilizar siempre nombres específicos y con significado en sí mismos.  Las variables y propiedades deben describir la entidad que se está representando.  Nunca usar notación húngara.  Evitar el uso de abreviaturas a menos que el nombre completo sea excesivo.  La longitud de las abreviaturas no debe ser mayor a 5 caracteres.  Cualquier abreviatura debe ser totalmente conocida y aceptada por el equipo de desarrollo. DISEÑO DEL SISTEMA GEONATURE 51  Usar mayúsculas en caso de abreviaciones de 2 letras, y estilo de escritura PascalCase para abreviaturas más largas.  No se debe utilizar palabras reservadas para nombres.  Evitar conflictos de nombres con los espacios de nombres o tipos existentes en el .NET Framework.  Evitar añadir redundancia en prefijos y sufijos de los identificadores.  No se debe incluir el nombre de la clase en los nombres de las propiedades.  Tratar de utilizar los siguientes prefijos en las variables y propiedades booleanas, “puede”, “es” o “tiene”. Uso de nombres y sintaxis Identificador Convención de nombramiento Archivo de proyecto  Utilizar estilo de escritural PascalCase.  El nombre del ensamblado y el espacio de nombre raíz deben ser iguales. Archivo fuente  Utilizar estilo escritura PascalCase.  El nombre de la clase y el nombre del archivo deben ser iguales.  Evitar incluir más de una clase, enumerador (global) o delegado (global) por archivo.  Usar un nombre descriptivo para el archivo que contenga múltiples clases, enumeradores o delgados. Espacio de Nombre (Namespace)  Estilo de escritura PascalCase.  Tratar de que el nombre de ensamblado coincida con el del proyecto. DISEÑO DEL SISTEMA GEONATURE 52 Identificador Convención de nombramiento Clase o Estructura  Utilizar estilo de escritura PascalCase.  Usar un sustantivo o frase de sustantivos para el nombre de la clase.  Agregar un sufijo apropiado cuando se trate de una  Sub clase. Interfase  Utilizar estilo de escritura PascalCase.  Agregar siempre el prefijo “I”. Método  Utilizar estilo de escritura PascalCase.  Tratar de utilizar un verbo o la combinación verboobjeto. Ejemplo: consultarPersona, Propiedad  Utilizar estilo de escritura PascalCase.  El nombre de la propiedad debe representar la entidad que devuelve.  Nunca utilizar los prefijos “Get” o “Set”. Atributo (público, protegido, privado, interno)  Utilizar estilo de escritura CamelCase.  Evitar el uso de campos públicos, usar propiedades en lugar de estos campos. Constante o Campo Estatico  Tratar como campo. Enumerador  Utilizar estilo de escritura PascalCase. Delegado o Evento  Tratar como campo. DISEÑO DEL SISTEMA GEONATURE 59  Módulo de Foro Parte Privada: La parte privada de la aplicación es aquella que sólo es accesible para un usuario administrador y a través de la cual se encarga de la administración de la aplicación y se comprende de un único módulo:  Módulo de Personalización. 3.5. Especificación del Entorno Tecnológico El entorno tecnológico de GEONATURE, de forma general, incluye los siguientes elementos:  Servidor del Gestor de Base de Datos.  Servidor de la Aplicación GEONATURE.  Protocolo de comunicaciones TCP/IP.  Computadoras de usuario con un navegador Internet.  Servidor de datos y conexión a internet 3.5.1. Arquitectura Tecnológica El particionamiento físico de GEONATURE viene determinado por la estructura de desarrollo de aplicaciones modelo cliente-servidor, siendo, para este caso, un cliente ligero sobre navegador Web que no engloba lógica de negocio. Así pues, el diseño lógico del sistema será en tres capas: 1. Ubicación de la lógica de negocio en la capa servidora que, físicamente, deberá correr sobre el servidor de la aplicación GEONATURE en el servidor de aplicaciones. 2. Capa de acceso a datos, ubicados físicamente sobre un esquema de datos relacional en el servidor de Base de Datos. DISEÑO DEL SISTEMA GEONATURE 60 3. Capa cliente. Cliente ligero sobre navegador Web. El servidor de la aplicación GEONATURE mandará la información al navegador a través de la red, una vez validados los requisitos de acceso al servidor de aplicaciones. Entre otras, las ventajas de este sistema son:  Centralización y actualización constante de una única base de datos espacial y alfanumérica.  Flexibilidad ante cambios de máquinas.  Facilidad de mantenimiento en cada una de las capas. La arquitectura de tres capas consiste en la siguiente distribución: 3.5.2. Estructura lógica del sistema Como se puede observar en el gráfico anterior, la aplicación se conecta a una base de datos sobre la que se realizan todas las operaciones relativas a los datos que maneja la aplicación. La base de datos constituye una de las capas del diseño de GEONATURE. La siguiente capa la conforma el servidor, cuya misión es hacer de puente o enlace entre los distintos clientes y la base de datos. Para ello se establece una conexión desde el servidor con la base de datos. La última capa la conforma cada uno de los puestos cliente que estén conectados al servidor. El componente “ConexionAD” se encarga de iniciar la DISEÑO DEL SISTEMA GEONATURE 61 conexión y tratar el tráfico de información que se produce entre servidor de base de datos y los clientes; cada componente concreto de la lógica de negocio es responsable de gestionar la información que tratan a través del componente ConexionAD. 3.6. Especificación de Requisitos de Operación y Seguridad Cada máquina cliente, conectada a la red y mediante accesos HTTP, carga la capa cliente de la aplicación GEONATURE. La información y la lógica de negocio han de estar centralizadas para que todas las máquinas cliente gestionen sobre la misma información. El servidor es el encargado de gestionar tanto las solicitudes de transacciones y modificaciones que realiza cada instancia de la aplicación, como de devolver correctamente a cada cliente la información solicitada. Para ello, se conecta al servidor de Base de Datos. El servidor de Base de datos alberga toda la información de proyectos, instrumentos, indicadores y usuarios que se requiere desde las máquinas cliente. La lógica de negocio de la capa servidora en el lenguaje correspondiente al servidor de Base de Datos, es que debe ejecutar las consultas y reflejar siempre a todos los clientes la situación más actualizada de toda la información contenida. En el siguiente gráfico se describe de forma visual una estructura de la red sobre la que funcionará GEONATURE. DISEÑO DEL SISTEMA GEONATURE 62 3.6.1. Aspectos de seguridad Al ser una aplicación de tres capas, se tienen dos niveles de seguridad:  El acceso a la aplicación y a las operaciones disponibles en la aplicación.  El acceso a los datos almacenados en las Bases de Datos. Base de datos Por una cuestión de seguridad y dada la cantidad de usuario conectados al sistema, se plantearán las siguientes medidas:  Sólo debe existir un único usuario administrador. Ingreso al sistema La validación del usuario para su ingreso al sistema se realizará:  Por nombre de usuario y contraseña. DISEÑO DEL SISTEMA GEONATURE 63 4. DISEÑO DE CASOS DE USO REALES Esta actividad, que se realiza solo en el caso de Diseño Orientado a Objetos, tiene como propósito especificar el comportamiento del sistema de información para un caso de uso mediante objetos o subsistemas de diseño que interactúan, y determinar las operaciones de las clases e interfaces de los distintos subsistemas de diseño. Para ello, una vez identificadas las clases participantes dentro de un caso de uso, es necesario completar los escenarios que se recogen del análisis, incluyendo las clases de diseño que correspondan y teniendo en cuenta las restricciones del entorno tecnológico, esto es, detalles relacionados con la implementación del sistema. Es necesario analizar los comportamientos de excepción para dichos escenarios. Algunos de ellos pueden haber sido identificados en el proceso de análisis, aunque no se resuelven hasta este momento. Dichas excepciones se añadirán al catálogo de excepciones para facilitar las pruebas. Algunos de los escenarios detallados requerirán una nueva interfaz de usuario. Por este motivo es necesario diseñar el formato de cada una de las pantallas o impresos identificados. DISEÑO DEL SISTEMA GEONATURE 64 4.1. Diagramas de casos de uso para el Sistema GEONATURE En esta sección se describen y documentan los casos de uso del Portal. Incluye el acceso al portal y el cambio de clave del usuario y las gestiones propias de la información publicada dentro del portal. DISEÑO DEL SISTEMA GEONATURE 65 4.2. Diagrama de caso de uso: Configuración del Portal administrador autenticación de usuarios identificarse «uses» Modificar contraseña de acceso Configuración de correo saliente SMTP Modificar cuentas de correo asociadas «extends» «extends» «extends» 4.2.1. Caso de uso: Autenticación de Usuarios Descripción: Interfase mediante la cual los usuarios acreditan que están autorizados para visualizar determinadas partes del sistema. Para realizar esta acreditación, en la ventana modal que se abre se encuentran 2 campos de texto que permiten introducir el nombre de usuario y contraseña Precondiciones: No hay Poscondiciones: Se accede al Portal generando el menú personalizado para el usuario administrador. Excepciones: No hay Actores: Cualquier persona que acceda al Portal privado. DISEÑO DEL SISTEMA GEONATURE 66 Clases: Usuarios Flujo: 1. El usuario accede al portal Web. 2. Introduce su nombre de usuario, contraseña y acepta. 3. El sistema verifica el usuario y la contraseña y si es correcto accede al Portal presentando en la parte lateral derecha el vinculo para administar el portal Diagrama de interacción. Usuario Portal Internet 1: Introduce nombre y contraseña UsuariosBD 2: Verifica 3: Genera menú 4.2.2. Caso de uso: Modificar Contraseña de Acceso Descripción: Modifica la contraseña de acceso del usuario autentificado Precondiciones: Usuario autentificado. Poscondiciones: Registro con contraseña modificada de la tabla “usuario” de la BD Excepciones: No hay Actores: Usuarios de GEONATURE Clases: Usuarios DISEÑO DEL SISTEMA GEONATURE 67 Flujo: 1. El usuario selecciona la opción de modificar su contraseña en la pestaña de configuración. 2. Se le pide la antigua y nueva contraseña de acceso 3. Se modifica el campo contraseña de la tabla “Usuarios” de la BD Diagrama de interacción Usuario GUI Gestión Cambio Contraseña 1: Presiona Botón UsuariosBD 2: Modifica Registro 4.2.3. Caso de uso: Modificar configuración de correo saliente (SMTP) Descripción: Modifica La configuración del servidor de correo saliente. Precondiciones: Usuario autentificado. Poscondiciones: Registro con los campos modificados de la tabla “config” de la BD Excepciones: No hay Actores: Usuarios de GEONATURE Clases: Usuarios Flujo: 1. El usuario accede al sistema con las credenciales correctas. 2. El usuario navega hasta la opción “personalizar”. 3. El usuario pincha en la pestaña “configuración” Diagrama de interacción DISEÑO DEL SISTEMA GEONATURE 68 Usuario GUI Gestión Cambio SMTP 1: Presiona Botón UsuariosBD 2: Modifica Registro 4.2.4. Caso de uso: Modificar cuentas de correo asociadas Descripción: Modifica La configuración de las cuentas de correo asociadas. Precondiciones: Usuario autentificado. Poscondiciones: Registro con contraseña modificada de la tabla “config” de la BD Excepciones: No hay Actores: Usuarios de GEONATURE Clases: Usuarios Flujo: 1. El usuario accede al sistema con las credenciales correctas. 2. El usuario navega hasta la opción “personalizar”. 3. El usuario pincha en la pestaña “configuración” Diagrama de interacción DISEÑO DEL SISTEMA GEONATURE 75 4.4.2. Caso de uso: Gestión de Correos y Contactos Descripción: El usuario de GEONATURE podrá añadir, borrar, ver, modificar y buscar correos y contactos publicados en el Portal. Para ello dispone de una página en la que le aparece un listado con los correos y contactos. Precondiciones: Usuario con derechos de administración. Poscondiciones: No hay. Excepciones: No hay Actores: Usuarios de GEONATURE (administradores) Clases: Contactos Flujo: Listar: 1. El usuario accede a la página de gestión de correos y contactos. Si es usuario autorizado le aparece el listado con los correos y contactos, y los botones de Añadir, Modificar y Eliminar Añadir: 1. El usuario accede a la página de gestión de correos y contactos. Si es usuario autorizado le aparece el listado con los correos y contactos, y los botones de Añadir, Modificar y Eliminar..El usuario presiona añadir nuevo correo y contacto. 2. El sistema muestra una pequeña ventana en la que el usuario introduce los datos necesarios (Nombre, Correo, Teléfono, Departamento y una foto opcionalmente) y presiona aceptar. 3. El sistema inserta un nuevo registro en la tabla correspondiente. Modificar: 1. El usuario accede a la página de gestión de correos y contactos. Si es usuario autorizado le aparece el listado con los correos y contactos y los botones de Añadir, Modificar y Eliminar. 2. El usuario presiona el botón Modificar correo y contacto DISEÑO DEL SISTEMA GEONATURE 76 3. Aparece la misma interfase que se usa para la creación de correos y contactos, pero con los valores ya introducidos 4. El usuario establece los nuevos valores y presiona aceptar 5. El sistema modifica el registro en la tabla correspondiente. Borrar: 1. El usuario accede a la página gestión de correos y contactos. Si es usuario autorizado le muestra el listado con los correos y contactos y los botones de Añadir, Modificar y Eliminar. 2. El usuario selecciona uno o varios registros de la tabla de correos y contactos, y a continuación presiona el botón Borrar Correo y contacto. 3. El sistema le muestra una advertencia y tras aceptar el usuario, borra los registros de la tabla correspondiente Diagrama de interacción: Usuario GUI Contactos 1: Listado Listar Correos y contactos DISEÑO DEL SISTEMA GEONATURE 77 Usuario GUI Contactos GUI Añadir Contacto 1: Presiona Añadir 2: Muestra 3: Rellena valores y acepta ListaCorreosBD 4: Inserta registro Añadir Correos y contactos Usuario GUI Contactos 1: Presiona Buscar Mostrar Correos y contactos 2: Muestra registro ListaCorreosBD Usuario GUI Contactos GUI Modificar Contacto 1: Presiona Modificar 2: Muestra 3: Rellena valores y acepta ListaCorreosBD 4: Modifica registro Modificar Correos y contactos DISEÑO DEL SISTEMA GEONATURE 78 Usuario GUI Contactos 1: Selecciona Correos 2: Presiona Borrar 3: Muestra 4: Acepta ListaCorreosBD 5: Borra registros Advertencia Borrar Correos y contactos 4.5. Diagrama de caso de uso: Publicación de Enlaces administrador Publicación de Enlaces identificarse «uses» Añadir enlaces Borrar enlaces modificar enlaces «extends» «extends» «extends» Visualizar enlaces «extends» DISEÑO DEL SISTEMA GEONATURE 79 4.5.1. Caso de uso: Visualización de Enlaces Descripción: La lista de enlaces se muestra en la sección “enlaces” Precondiciones: No hay Poscondiciones: Se visualizan los enlaces en la sección correspondiente, Excepciones: No hay Actores: Tarea automática del sistema Clases: Enlaces Flujo: 1. El sistema obtiene la lista de enlaces . 2. Muestra un listado Diagrama de interacción: GUI Enlaces 1: Obtiene enlaces EnlacesBD 2: Publica enlaces Enlaces DISEÑO DEL SISTEMA GEONATURE 80 4.5.2. Caso de uso: Gestión de Enlaces Descripción: El usuario de GEONATURE podrá añadir, borrar, ver y modificar enlaces publicados en el portal.. Para ello dispone de una página en la que le aparece un listado con los enlaces. Precondiciones: Usuario con derechos de gestión. Poscondiciones: No hay. Excepciones: No hay Actores: Usuarios de GEONATURE (administradores) Clases: Enlaces Flujo: Listar: 1. El usuario accede a la página de gestión de enlaces. Si es usuario autorizado le aparece el listado con los enlaces, y los botones de Añadir, Modificar y Eliminar. Añadir: 1. El usuario accede a la página de gestión de enlaces. Si es usuario autorizado le aparece el listado con los enlaces, y los botones de Añadir, Mostrar, Modificar, Eliminar y Buscar. Se le permite hacer una búsqueda que se muestra en forma de listado. 2. El usuario presiona añadir nuevo enlace. 3. El sistema muestra una pequeña ventana en la que el usuario introduce los datos necesarios (Identificador, Nombre, Enlace) y presiona aceptar. 4. El sistema inserta un nuevo registro en la tabla correspondiente. Modificar: 1. El usuario accede a la página de gestión de enlaces. Si es usuario autorizado le aparece el listado con los enlaces y los botones de Añadir, Modificar y Eliminar. El usuario presiona el botón Modificar enlace 2. Aparece la misma interfase que se usa para la creación de enlaces, pero con los valores ya introducidos DISEÑO DEL SISTEMA GEONATURE 81 3. El usuario establece los nuevos valores y presiona aceptar 4. El sistema modifica el registro en la tabla correspondiente. Borrar: 1. El usuario accede a la página gestión de enlaces. Si es usuario autorizado le muestra el listado con los enlaces y los botones de Añadir, Mostrar, Modificar, Eliminar y Buscar. Se le permite hacer una búsqueda que se muestran en forma de listado. 2. El usuario selecciona uno o varios registros de la tabla de enlaces, y a continuación presiona el botón Borrar enlace. 3. El sistema le muestra una advertencia y tras aceptar el usuario, borra los registros de la tabla correspondiente. Diagrama de interacción: Usuario GUI Enlaces 1: Listado Listar Enlaces DISEÑO DEL SISTEMA GEONATURE 82 Usuario GUI Enlaces GUI Añadir Enlaces 1: Presiona Añadir 2: Muestra 3: Rellena valores y acepta EnlacesBD 4: Inserta registro Añadir Enlaces Usuario GUI Enlaces GUI Modificar Enlaces 1: Presiona Modificar 2: Muestra 3: Rellena valores y acepta EnlacesBD 4: Modifica registro Modificar Enlaces Usuario GUI Enlaces 1: Selecciona Enlaces 2: Presiona Borrar 3: Muestra 4: Acepta EnlacesBD 5: Borra registros Advertencia Borrar Enlaces DISEÑO DEL SISTEMA GEONATURE 83 4.6. Diagrama de caso de uso: Buzón de Sugerencias usuario Buzón de sugerencias Enviar sugerencia «extends» 4.6.1. Caso de uso: Uso del Buzón Descripción: El Portal dispondrá de un buzón de sugerencias donde los usuarios puedan reflejar sus sugerencias, quejas o reclamos. Precondiciones: No hay Poscondiciones: Formulario que recogerá las sugerencias de los usuarios. Excepciones: No hay Actores: Usuarios de GEONATURE Clases: Buzón Flujo: DISEÑO DEL SISTEMA GEONATURE 84 1. El usuario accede a la página de envío de sugerencias. 2. El sistema muestra una página en la que el usuario introduce los datos de la queja. y presiona aceptar. 3. El sistema almacena la queja del usuario en la Tabla correspondiente. Diagrama de interacción: Usuario GUI Sugerencias 1: Accede Formulario Buzón de sugerencias SugerenciasBD 2. Envia Queja 4.7. Diagrama de caso de uso: Animales y Plantas administrador Gestión de Animales y Plantas identificarse «uses» Añadir animales y plantas Borrar animales y plantas modificar animales y plantas «extends» «extends» «extends» Visualizar animales y plantas «extends» DISEÑO DEL SISTEMA GEONATURE 91 Precondiciones: Usuario con derechos de gestión (administrador) Poscondiciones: No hay Excepciones: No hay Actores: Usuarios de GEONATURE (administradores) Clases: BoletinWebpart Flujo: Listar: 1. El usuario accede a la página de gestión de boletines. Si es usuario autorizado le aparece el listado con los boletines, y los botones de añadir, modificar, eliminar y enviar. Añadir: 1. El usuario accede a la página de gestión de boletines. Si es usuario autorizado le aparece el listado con los boletines, y los botones de añadir, modificar, eliminar y enviar. 2. El usuario presiona añadir nueva boletin 3. El sistema muestra una pequeña ventana en la que el usuario introduce los datos necesarios y presiona aceptar. 4. El sistema inserta un nuevo registro en la tabla de boletines Modificar: 1. El usuario accede a la página de gestión de boletines. Si es usuario autorizado le aparece el listado con los boletines, y los botones de añadir, modificar, eliminar y enviar. 2. El usuario presiona el botón Modificar boletin. Aparece la misma interfase que se usa para la creación de un boletín, pero con los valores ya introducidos 3. El usuario establece los nuevos valores y presiona aceptar 4. El sistema modifica el registro del boletín. Borrar: 1. El usuario accede a la página de gestión de boletines. Si es usuario DISEÑO DEL SISTEMA GEONATURE 92 autorizado le aparece el listado con los boletines, y los botones de añadir, modificar, eliminar y enviar. 2. El usuario selecciona uno o varios registros de la tabla de boletines, y a continuación presiona el botón Borrar. 3. El sistema le muestra una advertencia y tras aceptar el usuario, borra los registros del boletín Enviar 1. El usuario accede a la página de gestión de boletines. Si es usuario autorizado le aparece el listado con los boletines, y los botones de añadir, modificar, eliminar y enviar. 2. El usuario selecciona uno o varios registros de la tabla de usuarios suscritos, y a continuación presiona el botón Borrar. 3. El sistema le muestra una advertencia y tras aceptar el usuario, borra los registros del boletín Diagrama de interacción: Usuario GUI Inscripciones 1: Listado Listar Inscripciones DISEÑO DEL SISTEMA GEONATURE 93 Usuario GUI Inscripciones 1: Selecciona Enlaces 2: Presiona Borrar 3: Muestra 4: Acepta InscripcionesBD 5: Borra registros Advertencia Borrar Inscripciones 4.9. Diagrama de caso de uso: Foro usuario «extends» Foro registro DISEÑO DEL SISTEMA GEONATURE 94 usuario «extends» Foro escribir temas identificarse «uses» replicar cambiar perfil «extends» «extends» administrador Gestión del Foro identificarse «uses» Gestionar usuarios Gestionar temas «extends» «extends» DISEÑO DEL SISTEMA GEONATURE 95 4.9.1. Caso de uso: Registro en el Foro Descripción: Se permitirá solicitar la inscripción al foro a través de un formulario Precondiciones: El email no debe encontrarse previamente en la Base de Datos Poscondiciones: No hay. Excepciones: No hay Actores: Usuario de GEONATURE Clases: Foro Flujo: 1. Muestra formulario de inscripción 2. Inserta la inscripción en donde el usuario introduce los datos necesarios y presiona aceptar. Diagrama de interacción: GUI Inscripción 1: Inserta inscripcion InscripcionBD Registrarse en el Foro 4.9.2. Caso de uso: Entrada en el Foro Descripción: El usuario de GEONATURE podrá entrar, añadir temas, añadir replicas y ver los temas del foro Para ello dispone de una página en la que puede entrar en el sistema y una vez dentro acceder al listado de temas del foro. DISEÑO DEL SISTEMA GEONATURE 96 Precondiciones: Usuario registrado en el foro. Poscondiciones: No hay Excepciones: No hay Actores: Usuarios de GEONATURE Clases: Foro Flujo: Entrar: 1. El usuario accede al listado de temas del foro una vez que se comprueba que sus credenciales con válidas. Añadir Tema: 1. El usuario accede al listado de temas del Foro. 2. El usuario elige un título para el tema y una descripción. 3. El usuario envía el tema al administrador para que lo evalúa y decida si lo publica junto con el resto de temas del foro. Añadir Réplica: 1. El usuario accede a un tema determinado 2. El usuario elige una descripción como réplica al tema elegido. 3. El usuario envía la réplica al foro. Diagrama de interacción: DISEÑO DEL SISTEMA GEONATURE 97 Usuario GUI Temas GUI Añadir Tema 1: Presiona Añadir 2: Muestra 3: Rellena valores y acepta ForoBD 4: Inserta registro Añadir Tema Usuario GUI Tema GUI Añadir Replica 1: Presiona Añadir 2: Muestra 3: Rellena valores y acepta ForoBD 4: Inserta registro Añadir Réplica Usuario GUI TEMAS 1:Identificarse Entrar al foro DISEÑO DEL SISTEMA GEONATURE 98 4.9.3. Caso de uso: Gestión de usuarios y temas Descripción: El usuario de GEONATURE puede gestionar todos los usuarios y temas que pertenecen al foro. Para ello dispone de una página en la que le aparece un listado de los temas y de los usuarios. Precondiciones: Usuario con derechos de gestión (administrador) Poscondiciones: No hay Excepciones: No hay Actores: Usuarios de GEONATURE (administradores) Clases: Foro Flujo: Listar Usuarios/Temas: 1. El usuario accede a la página de gestión del foro. Si es usuario autorizado le aparece el listado con los usuarios/temas, y cambar visibilidad y eliminar Cambiar Visibilidad: 1. El usuario accede a la página de gestión de foro. Si es usuario autorizado le aparece el listado con los usuarios/temas, y los botones de cambiar visibilidad 2. El usuario presiona “cambiar visibilidad” 3. El tema/usuario seleccionado pasará a estar activo en el foro. Borrar: 1. El usuario accede a la página de gestión de foro. Si es usuario autorizado le aparece el listado con los usuarios/temas, y los botones de eliminar. 2. El usuario selecciona uno o varios registros de la tabla de boletines, y a continuación presiona el botón Borrar. 3. El sistema le muestra una advertencia y tras aceptar el usuario, borra el usuario/tema seleccionado DISEÑO DEL SISTEMA GEONATURE 99 Diagrama de interacción: Usuario GUI TEMAS_USUARIOS 1: Listado Listar Inscripciones Usuario GUI Perso Usuarios/Temas GUI Perso Usuarios/Temas 1: Presiona cambiar 2: Muestra 3: acepta ForoBD 4: Inserta registro Cambiar visibilidad usuarios/temas Usuario GUI Temas/Usuarios 1: Selecciona Usuarios/Temas 2: Presiona Borrar 3: Muestra 4: Acepta ForoBD 5: Borra registros Advertencia Borrar Usuarios/Temas DISEÑO DEL SISTEMA GEONATURE 100 5. DISEÑO DE CLASES El propósito de esta actividad, que se realiza sólo en el caso de Diseño Orientado a Objetos, es transformar el modelo de clases lógico, que proviene del análisis, en un modelo de clases de diseño. Dicho modelo recoge la especificación detallada de cada una de las clases, es decir, sus atributos, operaciones, métodos, y el diseño preciso de las relaciones establecidas entre ellas, bien sean de agregación, asociación o jerarquía. Para llevar a cabo todos estos puntos, se tienen en cuenta las decisiones tomadas sobre el entorno tecnológico y el entorno de desarrollo elegido para la implementación. 5.1. Identificación de Operaciones de las Clases Todas las clases de GEONATURE deberán implementar los métodos necesarios para:  Dar de alta un registro en la base de datos: Insertar o Guardar.  Dar de baja un registro en la base de datos: Eliminar.  Actualizar un registro en la base de datos: Actualizar.  Consultar todos los campos de un registro: Consultar.  5.2. Subsistema de Portal 5.2.1. Diagrama de clases: Portal Mantener y consultar información publicada en el subsistema Portal. Incluye el acceso de los usuarios y la gestión de la información publica del portal. 5.3. Diseño de clases. Capa de datos DISEÑO DEL SISTEMA GEONATURE 107 Parámetros de entrada: Identificador Tipo de retorno: Dataset que contiene la noticia. Método: obtenerInterNoticiaImagen Descripción: Obtiene la relación entre una noticia y sus imágenes asociadas. Parámetros de entrada: Identificador Tipo de retorno: Dataset con las imágenes de la noticia. Método: insertarNoticia Descripción: Inserta una noticia en la Base de Datos. Parámetros de entrada: Noticia (objeto de negocio). Tipo de retorno: Ninguno Método: actualizarVisibilidadNoticia Descripción: Actualiza la visibilidad de una noticia. Parámetros de entrada: Identificador y valor booleano. Tipo de retorno: Ninguno Método: borrarImagenNoticia Descripción: Elimina una imagen de la Base de Datos. Parámetros de entrada: Identificador. DISEÑO DEL SISTEMA GEONATURE 108 Tipo de retorno: Ninguno Método: borrarNoticia Descripción: Elimina una noticia de la Base de Datos. Parámetros de entrada: Identificador. Tipo de retorno: Ninguno Método: editarNoticia Descripción: Modifica una noticia de la Base de Datos. Parámetros de entrada: Noticia (objeto de negocio). Tipo de retorno: Ninguno 5.3.6. Clase AnimalesPlantasAD Los objetivos de esta clase es gestionar la visualización y gestión de los correos y contactos publicados en el Portal. Atributos  Ninguno. DISEÑO DEL SISTEMA GEONATURE 109 Métodos públicos Método: obtenerRegiones Descripción: Obtiene todas regiones de la Base de Datos Parámetros de entrada: Ninguno Tipo de retorno: Dataset con todas las regiones. Método: obtenerRegion Descripción: Obtiene una región determinada. Parámetros de entrada: Identificador. Tipo de retorno: Dataset con la región perteneciente al identificador. Método: obtenerEspecies Descripción: Obtiene todas las especies de un tipo y región determinado de la Base de Datos. Parámetros de entrada: tipo, región Tipo de retorno: Dataset con las especies asociadas al tipo y región. Método: obtenerEspeciesVisibles Descripción: Obtiene Obtiene todas las especies visibles de un tipo y región determinado de la Base de Datos. Parámetros de entrada: tipo, región. DISEÑO DEL SISTEMA GEONATURE 110 Tipo de retorno: Dataset con las especies asociadas al tipo y región. Método: obtenerRegionesEspecie Descripción: Obtiene todas las regiones relacionadas con una especie Parámetros de entrada: Identificador de la especie Tipo de retorno: Dataset con las regiones asociadas a la especie. Método: leerEspecie Descripción: Obtienes todos los datos de una especie. Parámetros de entrada: Identificador de la especie. Tipo de retorno: Dataset con los datos de la especie. Método: borrarEspecie Descripción: Elimina una especie de la Base de Datos. Parámetros de entrada: Identificador de la especie. Tipo de retorno: ninguno. Método: insertarEspecie Descripción: Inserta una nueva especie en la Base de Datos Parámetros de entrada: especie (Objeto de Negocio) Tipo de retorno: ninguno. Método: editarEspecie DISEÑO DEL SISTEMA GEONATURE 111 Descripción: Modifica una nueva especie determinada de la Base de Datos Parámetros de entrada: especie (Objeto de Negocio) Tipo de retorno: ninguno. 5.3.7. Clase SuscripcionesAD Los objetivos de esta clase es gestionar las suscripciones al boletín periódico del portal. Atributos  Ninguno. Métodos Método: obtenerSuscripciones . Descripción: Obtiene todas las suscripciones a boletines. Parámetros de entrada: Ninguno Tipo de retorno: Dataset con todas las suscripciones. Método: obtenerSuscripcion Descripción: Obtiene los datos de una suscripción determinada.. Parámetros de entrada: dirección de correo. Tipo de retorno: Dataset con los datos de la suscripción. Método: obtenerSuscripcion DISEÑO DEL SISTEMA GEONATURE 112 Descripción: Obtiene los datos de una suscripción determinada.. Parámetros de entrada: dirección de correo. Tipo de retorno: Dataset con los datos de la suscripción. Método: insertarSuscripcion Descripción: Inserta una suscripción en la Base de Datos Parámetros de entrada: dirección de correo. Tipo de retorno: Ninguno. Método: insertarEnvioBoletin Descripción: Inserta una entrada de envío de boletín en la Base de Datos. Parámetros de entrada: Identificador y nombre del boletín, correo de la persona suscrita. Tipo de retorno: Ninguno. Método: borrarSuscripcion Descripción: Elimina una suscripción de la Base de Datos. Parámetros de entrada: Identificador y nombre del boletín, correo de la persona suscrita. Tipo de retorno: Ninguno. DISEÑO DEL SISTEMA GEONATURE 113 5.3.8. Clase ForoAD Los objetivos de esta clase es gestionar el acceso a datos al foro del portal. Atributos  Ninguno. Métodos Método: nuevoUsuarioForo . Descripción: Inserta un nuevo usuario en el Foro. Parámetros de entrada: Datos de registro del usuario Tipo de retorno: Ninguno. Método: nuevoTemaForo Descripción: Inserta un nuevo tema en el foro. Parámetros de entrada: Datos del tema. Tipo de retorno: Ninguno. Método: nuevoComentarioTemaForo Descripción: Inserta un nuevo comentario de un tema en el foro. Parámetros de entrada: Datos del comentario. Tipo de retorno: Ninguno DISEÑO DEL SISTEMA GEONATURE 114 Método: eliminarUsuarioForo Descripción: Elimina a un usuario del foro. Parámetros de entrada: Email del usuario. Tipo de retorno: Ninguno. Método: eliminarTemaForo Descripción: Elimina un tema del foro. Parámetros de entrada: Identificador del tema. Tipo de retorno: Ninguno. Método: eliminarComentarioTemaForo Descripción: Elimina una comentario de un tema del foro. Parámetros de entrada: Identificador del comentario. Tipo de retorno: Ninguno. Método: activarUsuarioForo Descripción: Activa un usuario en el foro. Parámetros de entrada: email del usuario. Tipo de retorno: Ninguno. Método: desactivarUsuarioForo Descripción: desactiva un usuario en el foro. Parámetros de entrada: email del usuario. DISEÑO DEL SISTEMA GEONATURE 115 Tipo de retorno: Ninguno. Método: activarTemaForo Descripción: Activa un tema en el foro. Parámetros de entrada: identificador del tema Tipo de retorno: Ninguno. Método: desactivarTemaForo Descripción: desactiva un tema en el foro. Parámetros de entrada: identificador del tema. Tipo de retorno: Ninguno. Método: obtenerUsuariosActivosForo Descripción: Obtiene un listado de todos los usuarios activos del foro. Parámetros de entrada: Ninguno. Tipo de retorno: DataSet con todos los usuarios activos del foro. Método: obtenerUsuariosInactivosForo Descripción: Obtiene un listado de todos los usuarios inactivos del foro. Parámetros de entrada: Ninguno. Tipo de retorno: DataSet con todos los usuarios inactivos del foro. DISEÑO DEL SISTEMA GEONATURE 116 Método: obtenerTemasActivosForo Descripción: Obtiene un listado de todos los temas activos del foro. Parámetros de entrada: Ninguno. Tipo de retorno: DataSet con todos los temas activos del foro. Método: obtenerTemasInactivosForo Descripción: Obtiene un listado de todos los temas inactivos del foro. Parámetros de entrada: Ninguno. Tipo de retorno: DataSet con todos los temas inactivos del foro. Método: obtenerComentariosTemasForo Descripción: Obtiene un listado de todos los comentarios de un tema en cuestión. Parámetros de entrada: identificador del tema. Tipo de retorno: DataSet con todos los comentarios del tema en cuestión. Método: comprobarExisteUsuarioForo Descripción: Comprueba si un determinado usuario ya existe previamente en la Base de Datos. Parámetros de entrada: email del usuario. Tipo de retorno: “Cero” si no existe,”Uno” en caso contrario. Método: validarUsuarioForo Descripción: Comprueba si las credenciales del usuario son correctas DISEÑO DEL SISTEMA GEONATURE 123 Descripción: Borra físicamente una imágen Parámetros de entrada: Ruta del archivo. Tipo de retorno: Ninguno Método: guardarImagen Descripción: Guarda físicamente una imagen. Parámetros de entrada: El array de bytes de la imagen y la ruta física de la imagen. Tipo de retorno: Ninguno 5.4.4. Clase AnimalesPlantasMN Los objetivos de esta clase es realizar llamadas a métodos de negocio referentes a la seción de animales y plantas, con el objeto de encapsular la capa de presentación con la de acceso a datos. Atributos:  Ninguno Métodos públicos: Método: obtenerRegiones Descripción: Obtiene todas regiones de la Base de Datos Parámetros de entrada: Ninguno DISEÑO DEL SISTEMA GEONATURE 124 Tipo de retorno: Dataset con todas las regiones. Método: obtenerRegion Descripción: Obtiene una región determinada. Parámetros de entrada: Identificador. Tipo de retorno: Dataset con la región perteneciente al identificador. Método: obtenerEspecies Descripción: Obtiene todas las especies de un tipo y región determinado de la Base de Datos. Parámetros de entrada: tipo, región Tipo de retorno: Dataset con las especies asociadas al tipo y región. Método: obtenerEspeciesVisibles Descripción: Obtiene Obtiene todas las especies visibles de un tipo y región determinado de la Base de Datos. Parámetros de entrada: tipo, región. Tipo de retorno: Dataset con las especies asociadas al tipo y región. Método: obtenerRegionesEspecie Descripción: Obtiene todas las regiones relacionadas con una especie Parámetros de entrada: Identificador de la especie DISEÑO DEL SISTEMA GEONATURE 125 Tipo de retorno: Dataset con las regiones asociadas a la especie. Método: leerEspecie Descripción: Obtienes todos los datos de una especie. Parámetros de entrada: Identificador de la especie. Tipo de retorno: Dataset con los datos de la especie. Método: borrarEspecie Descripción: Elimina una especie de la Base de Datos. Parámetros de entrada: Identificador de la especie. Tipo de retorno: ninguno. Método: insertarEspecie Descripción: Inserta una nueva especie en la Base de Datos Parámetros de entrada: especie (Objeto de Negocio) Tipo de retorno: ninguno. Método: editarEspecie Descripción: Modifica una nueva especie determinada de la Base de Datos Parámetros de entrada: especie (Objeto de Negocio) Tipo de retorno: ninguno. Método: eliminarImagen DISEÑO DEL SISTEMA GEONATURE 126 Descripción: Borra físicamente una imágen Parámetros de entrada: Ruta del archivo. Tipo de retorno: Ninguno Método: guardarImagen Descripción: Guarda físicamente una imagen. Parámetros de entrada: El array de bytes de la imagen y la ruta física de la imagen. Tipo de retorno: Ninguno 5.4.5. Clase SuscripcionMN Los objetivos de esta clase es realizar llamadas a métodos de negocio referentes a la seción de suscripciones a los boletines periódicos, con el objeto de encapsular la capa de presentación con la de acceso a datos. Atributos:  Ninguno Métodos públicos: Método: obtenerSuscripciones . Descripción: Obtiene todas las suscripciones a boletines. Parámetros de entrada: Ninguno Tipo de retorno: Dataset con todas las suscripciones. Método: obtenerSuscripcion DISEÑO DEL SISTEMA GEONATURE 127 Descripción: Obtiene los datos de una suscripción determinada.. Parámetros de entrada: dirección de correo. Tipo de retorno: Dataset con los datos de la suscripción. Método: obtenerSuscripcion Descripción: Obtiene los datos de una suscripción determinada.. Parámetros de entrada: dirección de correo. Tipo de retorno: Dataset con los datos de la suscripción. Método: insertarSuscripcion Descripción: Inserta una suscripción en la Base de Datos Parámetros de entrada: dirección de correo. Tipo de retorno: Ninguno. Método: insertarEnvioBoletin Descripción: Inserta una entrada de envío de boletín en la Base de Datos. Parámetros de entrada: Identificador y nombre del boletín, correo de la persona suscrita. Tipo de retorno: Ninguno. Método: borrarSuscripcion Descripción: Elimina una suscripción de la Base de Datos. Parámetros de entrada: Identificador y nombre del boletín, correo de la persona DISEÑO DEL SISTEMA GEONATURE 128 suscrita. Tipo de retorno: Ninguno. 5.4.6. Clase ForoMN Los objetivos de esta clase es realizar llamadas a métodos de negocio referentes al foro, con el objeto de encapsular la capa de presentación con la de acceso a datos. Atributos  Ninguno. Métodos públicos: Método: nuevoUsuarioForo . Descripción: Inserta un nuevo usuario en el Foro. Parámetros de entrada: Datos de registro del usuario Tipo de retorno: Ninguno. Método: nuevoTemaForo Descripción: Inserta un nuevo tema en el foro. Parámetros de entrada: Datos del tema. Tipo de retorno: Ninguno. Método: nuevoComentarioTemaForo Descripción: Inserta un nuevo comentario de un tema en el foro. DISEÑO DEL SISTEMA GEONATURE 129 Parámetros de entrada: Datos del comentario. Tipo de retorno: Ninguno Método: eliminarUsuarioForo Descripción: Elimina a un usuario del foro. Parámetros de entrada: Email del usuario. Tipo de retorno: Ninguno. Método: eliminarTemaForo Descripción: Elimina un tema del foro. Parámetros de entrada: Identificador del tema. Tipo de retorno: Ninguno. Método: eliminarComentarioTemaForo Descripción: Elimina una comentario de un tema del foro. Parámetros de entrada: Identificador del comentario. Tipo de retorno: Ninguno. Método: activarUsuarioForo Descripción: Activa un usuario en el foro. Parámetros de entrada: email del usuario. Tipo de retorno: Ninguno. DISEÑO DEL SISTEMA GEONATURE 130 Método: desactivarUsuarioForo Descripción: desactiva un usuario en el foro. Parámetros de entrada: email del usuario. Tipo de retorno: Ninguno. Método: activarTemaForo Descripción: Activa un tema en el foro. Parámetros de entrada: identificador del tema Tipo de retorno: Ninguno. Método: desactivarTemaForo Descripción: desactiva un tema en el foro. Parámetros de entrada: identificador del tema. Tipo de retorno: Ninguno. Método: obtenerUsuariosActivosForo Descripción: Obtiene un listado de todos los usuarios activos del foro. Parámetros de entrada: Ninguno. Tipo de retorno: DataSet con todos los usuarios activos del foro. Método: obtenerUsuariosInactivosForo Descripción: Obtiene un listado de todos los usuarios inactivos del foro. DISEÑO DEL SISTEMA GEONATURE 131 Parámetros de entrada: Ninguno. Tipo de retorno: DataSet con todos los usuarios inactivos del foro. Método: obtenerTemasActivosForo Descripción: Obtiene un listado de todos los temas activos del foro. Parámetros de entrada: Ninguno. Tipo de retorno: DataSet con todos los temas activos del foro. Método: obtenerTemasInactivosForo Descripción: Obtiene un listado de todos los temas inactivos del foro. Parámetros de entrada: Ninguno. Tipo de retorno: DataSet con todos los temas inactivos del foro. Método: obtenerComentariosTemasForo Descripción: Obtiene un listado de todos los comentarios de un tema en cuestión. Parámetros de entrada: identificador del tema. Tipo de retorno: DataSet con todos los comentarios del tema en cuestión. Método: comprobarExisteUsuarioForo Descripción: Comprueba si un determinado usuario ya existe previamente en la Base de Datos. Parámetros de entrada: email del usuario. DISEÑO DEL SISTEMA GEONATURE 132 Tipo de retorno: “Cero” si no existe,”Uno” en caso contrario. Método: validarUsuarioForo Descripción: Comprueba si las credenciales del usuario son correctas Parámetros de entrada: email y password del usuario. Tipo de retorno: “Cero” si no es correcto,” Uno” en caso contrario. Método: ActualizarPerfilUsuarioForo Descripción: actualiza los datos del perfil del usuario en el foro Parámetros de entrada: nuevos datos del usuario. Tipo de retorno: Ninguno Método: CambiarContrasenaForo Descripción: actualiza la contraseña del usuario del foro. Parámetros de entrada: nuevo password y email del usuario. Tipo de retorno: Ninguno Método: obtenerTemaForo Descripción: Obtiene el contenido de un tema determinado. Parámetros de entrada: identificador del tema. Tipo de retorno: DataSet con los datos del tema DISEÑO DEL SISTEMA GEONATURE 139  saveDir  rutaImagen Métodos públicos: Método: BindData Descripción: Obtiene todas las especies y las asocia al control ListView que las renderiza en pantalla Parámetros de entrada: Ninguno Tipo de retorno: Ninguno Método: rellenarCampos Descripción: Rellena los campos de edición de la especie con los valores obtenidos de la base de datos Parámetros de entrada: fila y conjunto de regiones Tipo de retorno: Ninguno Método: validarCampos Descripción: Valida que el usuario haya introducido correctamente los datos de la especie una vez creada o editada. Parámetros de entrada: Ninguno Tipo de retorno: Ninguno Método: validarImagen Descripción: Valida que se haya incluido una imagen al insertar una nueva DISEÑO DEL SISTEMA GEONATURE 140 especie. Si el archivo no es una imagen, se mostrará un error. Parámetros de entrada: Ninguno Tipo de retorno: Ninguno Método: crearEspecie Descripción: Crea un objeto de negocio del tipo Especie con los datos obtenidos del formulario completado por el usuario a partir de un id. Parámetros de entrada: id de la nueva especie. Tipo de retorno: Objeto de negocio del tipo Especie. Método: crearImagenEspecie Descripción: Crea un objeto de negocio del tipo Imagen a partir de la ruta física almacenada en el control de subida de archivos que se encuentra en la página. Parámetros de entrada: id de la imagen. Tipo de retorno: Objeto de negocio del tipo Imagen. Método: insertarEspecie Descripción: Obtiene todos los datos necesarios para la creación de la especie, en función de los datos introducidos por el usuario en el formulario y finalmente inserta la entrada en la Base de Datos. Parámetros de entrada: Ninguno Tipo de retorno: Ninguno Método: editarEspecie DISEÑO DEL SISTEMA GEONATURE 141 Descripción: Obtiene y muestra al usuario los datos de la especie que se desea editar, y en el caso de que haya cambios los actualiza y refleja en la Base de Datos. Parámetros de entrada: Ninguno Tipo de retorno: Ninguno Eventos públicos: Método: btnMostrar_Click Descripción: Invoca al evento que renderiza los datos en el ListView Parámetros de entrada: objeto invocador y argumentos del evento Tipo de retorno: Ninguno Método: btnCerrarMpe_Click Descripción: Redirecciona al usuario a la sección de especies y de esta forma cerrar la ventana modal. Parámetros de entrada: objeto invocador y argumentos del evento Tipo de retorno: Ninguno Método: lwEspecies_PagePropertiesChanging1 Descripción: Actualiza las propiedades del contador de páginas asociados al ListView. Parámetros de entrada: objeto invocador y argumentos del evento. Tipo de retorno: Ninguno DISEÑO DEL SISTEMA GEONATURE 142 5.6.3. Clase Ed_Noticias.ascx.cs Clase del lado del servidor para el control de de edición de Noticias. Atributos:  Ds  extensionesPermitidas  saveDir  rutaImagen Métodos públicos: Método: BindData Descripción: Obtiene todas las noticias y las asocia al control ListView que las renderiza en pantalla Parámetros de entrada: Ninguno Tipo de retorno: Ninguno Método: rellenarCampos Descripción: Rellena los campos de edición de la noticia con los valores obtenidos de la base de datos Parámetros de entrada: fila y conjunto de Imagenes Tipo de retorno: Ninguno Método: actualizarRepeaterImagenesPie Descripción: Actualiza las imágenes de pie de la noticia con los nuevos valores DISEÑO DEL SISTEMA GEONATURE 143 introducidos por el usuario. Parámetros de entrada: Ninguno Tipo de retorno: Ninguno Método: crearNoticia Descripción: Crea un objeto de negocio del tipo Noticia con los datos obtenidos del formulario completado por el usuario a partir de un id. Parámetros de entrada: id de la nueva noticia. Tipo de retorno: Objeto de negocio del tipo Noticia. Método: crearImagenNoticia Descripción: Crea un objeto de negocio del tipo Imagen a partir de la ruta física almacenada en el control de subida de archivos que se encuentra en la página. Parámetros de entrada: id de la imagen, nombre y pie de imagen. Tipo de retorno: Objeto de negocio del tipo Imagen. Método: insertarNoticia Descripción: Obtiene todos los datos necesarios para la creación de la noticia, en función de los datos introducidos por el usuario en el formulario y finalmente inserta la entrada en la Base de Datos. Parámetros de entrada: Ninguno Tipo de retorno: Ninguno Método: editarNoticia DISEÑO DEL SISTEMA GEONATURE 144 Descripción: Obtiene y muestra al usuario los datos de la noticia que se desea editar, y en el caso de que haya cambios los actualiza y refleja en la Base de Datos. Parámetros de entrada: Ninguno Tipo de retorno: Ninguno Método: crearMiniatutaImagenSitio Descripción: Realiza un reescalado de la imagen deseada a un tamaño manejable, manteniendo su ratio de aspecto. Parámetros de entrada: nombre de la imagen, nombre de la nueva imagen y atributos de la nueva imagen. Tipo de retorno: Ninguno Método: existeImagen Descripción: Comprueba que el usuario haya introducido al menos una imagen en la noticia. Parámetros de entrada: Ninguno. Tipo de retorno: Ninguno Eventos públicos: Método: Page_Load Descripción: Evento que se le lanza al cargar el control. Parámetros de entrada: objeto invocador y argumentos del evento DISEÑO DEL SISTEMA GEONATURE 145 Tipo de retorno: Ninguno Método: Noticia_Command Descripción: Evento que se lanza cuando el usuario selecciona una acción de comando de noticia. Parámetros de entrada: objeto invocador y argumentos del comando. Tipo de retorno: Ninguno Método: ImagenNoticia_Command Descripción: Evento que se lanza cuando el usuario selecciona una acción de comando de imagen. Parámetros de entrada: objeto invocador y argumentos del comando. Tipo de retorno: Ninguno Método: btnAceptar_Command Descripción: Evento que se lanza cuando el usuario selecciona una acción de comando del botón aceptar. Parámetros de entrada: objeto invocador y argumentos del comando. Tipo de retorno: Ninguno Método: btnCancelar_Click Descripción: Evento que se lanza cuando el usuario hace click en el botón cancelar. Parámetros de entrada: objeto invocador y argumentos del comando. DISEÑO DEL SISTEMA GEONATURE 146 Tipo de retorno: Ninguno Método: lwNoticias_PagePropertiesChanging1 Descripción: Actualiza las propiedades del contador de páginas asociados al ListView. Parámetros de entrada: objeto invocador y argumentos del evento. Tipo de retorno: Ninguno Método: btnCerrarMpe_Click Descripción: Evento que se lanza al cerrar la ventana modal y que redirecciona a la página principal de noticias. Parámetros de entrada: objeto invocador y argumentos del evento. Tipo de retorno: Ninguno 5.6.4. Clase Login.ascx.cs Clase del lado del servidor para el control de Logeo del Usuario en la aplicación. Atributos:  Ninguno Eventos públicos: Método: LoginControl_Authenticate Descripción: Evento que se lanza cuando el usario pulsa el botón de entrada, y DISEÑO DEL SISTEMA GEONATURE 147 que verifica las credenciales introducidas. Parámetros de entrada: Objeto invocador y argumentos del evento. Tipo de retorno: Ninguno Método: CancelarButton_Click Descripción: Evento que se lanza cuando el usario pulsa el botón de cancelar, yque redirecciona a la página principal del portal. Parámetros de entrada: Objeto invocador y argumentos del evento. Tipo de retorno: Ninguno CLASES DE LAS SECCIONES Aquí se describen todas las clases de servidor asociadas a todas las secciones del portal. 5.6.5. Clase Default.aspx.cs Clase del lado del servidor para la página principal de la aplicación. Atributos:  Ninguno Métodos públicos: Método: cargarNoticias DISEÑO DEL SISTEMA GEONATURE 148 Descripción: Carga todas las últimas noticias de la Base de Datos en el ListView Parámetros de entrada: Ninguno. Tipo de retorno: Ninguno. Método: cargarContenidoDestacado Descripción: Carga el contenido destacado Parámetros de entrada: Ninguno. Tipo de retorno: Ninguno. Eventos públicos: Método: Page_Load Descripción: Evento que se lanza cuando se carga la página y que invoca los métodos de carga de noticias y de contenido destacado. Parámetros de entrada: Objeto invocador y argumentos del evento. Tipo de retorno: Ninguno Método: lnkTitulo_Click Descripción: Evento que se lanza cuando se pulsa sobre el título de la noticia, y que redirecciona a la notica completa. Parámetros de entrada: Objeto invocador y argumentos del evento. Tipo de retorno: Ninguno DISEÑO DEL SISTEMA GEONATURE 251 Servidor de acceso a Internet, de Base de Datos y de Licencias. Características Especificaciones Marca DELL Modelo DELL Power Edge 2900 Xeon Origen Definidas por el proponente Procesador Cuatro procesador de 2.0 GHz de velocidad. Tipo de Procesador Xeon Quad-Core Intel processor E54052x6MB cache. 2.0 GHz, 1333MHz FSB, PE2900 4X1GB. Dual Ranked. Memoria 2x250 GB Unidad Optica Lecto-Grabador tipo CDRW / DVD Drive. Disquetera 3,5” con capacidad de 1,44 MBytes (interno). Disco Duro 2 Discos duros Serial ATA 3 Gbps 3,5-Hot-plug de 250 GBytes Tarjeta de Video Tipo PCI memoria de video no compartida, de 128 MBytes. Tarjeta de red PCI integrada 1GB 8.1.2. Software La arquitectura seleccionada para satisfacer las necesidades de GEONATURE emplea los siguientes elementos:  El sistema operativo utilizado será Windows Server 2003:  La información tabular y espacial se guarda en un SGBDR Microsoft SQL Server 2005.  Como herramientas de desarrollo se utilizarán: o Por ser un estándar dentro de la programación .NET se utilizará el entorno Visual Studio.NET 2010 o Como lenguaje de programación se usará C# junto a ASP.NET. Se usará DISEÑO DEL SISTEMA GEONATURE 252 tecnología AJAX y lenguaje de script Javascript cuando sea necesario. o Herramienta CASE: Microsoft Visio 2003, eventualmente Microsoft Visio 2007.  Browser web o Microsoft Internet Explorer 7 8.2. Comunicaciones Red Interna Las computadoras clientes están conectadas en Red de Área Local (LAN) a través de Switches 10/100/1000. Red Externa En la red Externa se procederá con una zona desmilitarizada (DMZ), con dos dispositivos de seguridad. 8.2.1. Requisitos de operación y seguridad del entorno de construcción La seguridad se debe configurar en los siguientes niveles: Acceso al servidor: A nivel de sistema operativo, el servidor de base de datos y web, sólo debe ser administrado por un usuario con rol de administrador, cuya clave sea otorgada a la persona que va a cumplir esta función, y que asumirá la responsabilidad de proteger dicha clave. Usuario administrador de la base de datos: La base de datos debe ser administrada por un usuario con perfil de súper usuario o administrador, y protegido por clave, otorgada a la persona que va a cumplir esta función, y que asumirá la responsabilidad de proteger dicha clave. Administración de usuarios que accederán a la aplicación: El acceso lo definirá el usuario administrador, protegido con una clave que será otorgada a la persona que va a cumplir esta función, y que asumirá la responsabilidad de proteger dicha clave. DISEÑO DEL SISTEMA GEONATURE 253 Firewalls: Si la estación de trabajo estuviera conectada a Internet, esta deberá estar protegida por un firewall o cortafuegos, a los efectos de proteger esta información. Backups: Se realizarán copias de seguridad de todo el código fuente y de las bases de datos en forma diaria, de forma de proteger los desarrollos realizados. DISEÑO DEL SISTEMA GEONATURE 254 9. Especificación Técnica de Niveles de Prueba En esta actividad se realiza la especificación de detalle del plan de pruebas del sistema de información para cada uno de los niveles de prueba establecidos en el proceso Análisis del Sistema de Información. 9.1.1. Pruebas unitarias Normalmente cabe distinguir una fase informal antes de entrar en la fase de pruebas propiamente dicha. La fase informal la lleva a cabo el propio codificador, y consiste en ir ejecutando el código para convencerse de que el código "básicamente, funciona". Esta fase suele consistir en pequeños ejemplos que se intentan ejecutar. Si el módulo falla, se suele utilizar un depurador para observar la evolución dinámica del sistema, localizar el fallo, y repararlo. Más adelante, cuando el módulo parece presentable, se entra en una fase de prueba sistemática. En esta etapa se empieza a buscar fallos siguiendo algún criterio para que "no se escape nada". Los criterios más habituales son los denominados de caja negra y de caja blanca. En la prueba caja blanca, se mira con lupa el código escrito y se intenta que falle. En una prueba de caja negra se prescinde de los detalles del código y se limita a lo que se ve desde el exterior. Intenta descubrir casos y circunstancias en los que el módulo no hace lo que se espera de él. Caja blanca En estas pruebas estamos siempre observando el código, que las pruebas se dedican a ejecutar con ánimo de "probarlo todo". Esta noción de prueba total se formaliza en lo que se llama "cobertura". Cobertura de segmentos A veces también denominada "cobertura de sentencias". Por segmento se entiende una DISEÑO DEL SISTEMA GEONATURE 255 secuencia de sentencias sin puntos de decisión. Como el ordenador está obligado a ejecutarlas una tras otra, es lo mismo decir que se han ejecutado todas las sentencias o todos los segmentos. El número de sentencias de un programa es finito. Basta coger el código fuente e ir contando. Se puede diseñar un plan de pruebas que vaya ejercitando más y más sentencias, hasta que hayamos pasado por todas, o por una inmensa mayoría. Cobertura de ramas La cobertura de segmentos es engañosa en presencia de segmentos opcionales. Por ejemplo: IF (Condición) EjecutaEsto; Desde el punto de vista de cobertura de segmentos, basta ejecutar una vez, con éxito en la condición, para cubrir todas las sentencias posibles. Sin embargo, desde el punto de vista de la lógica del programa, también debe ser importante el caso de que la condición falle (si no lo fuera, sobra el IF). Sin embargo, como en la rama ELSE no hay sentencias, con 0 ejecuciones tenemos el 100%. Para afrontar estos casos, se plantea un refinamiento de la cobertura de segmentos consistente en recorrer todas las posibles salidas de los puntos de decisión. Para el ejemplo de arriba, para conseguir una cobertura de ramas del 100% hay que ejecutar la prueba como mínimo 2 veces, una satisfaciendo la condición, y otra no. Estos criterios se extienden a las construcciones que suponen elegir 1 de entre varias ramas. Por ejemplo, el CASE. Cobertura de condición/decisión La cobertura de ramas resulta a su vez engañosa cuando las expresiones booleanas que usamos para decidir por qué rama ir son complejas. Por ejemplo: IF Condicion1 OR Condicion2 THEN HazEsto; END; Las condiciones 1 y 2 pueden tomar 2 valores cada una, dando lugar a 4 posibles combinaciones. No obstante sólo hay dos posibles ramas y bastan 2 pruebas para cubrirlas. Pero con este criterio podemos estar cerrando los ojos a otras combinaciones de las condiciones. DISEÑO DEL SISTEMA GEONATURE 256 Consideremos sobre el caso anterior las siguientes pruebas: Prueba 1: Condicion1 = TRUE y Condicion2 = FALSE Prueba 2: Condicion1 = FALSE y Condicion2 = TRUE Prueba 3: Condicion1 = FALSE y Condicion2 = FALSE Prueba 4: Condicion1 = TRUE y Condicion2 = TRUE Bastan las pruebas 2 y 3 para tener cubiertas todas las ramas. Pero con ellos sólo hemos probado una posibilidad para la Condición1. Para afrontar esta problemática se define un criterio de cobertura de condición/decisión que trocea las expresiones booleanas complejas en sus componentes e intenta cubrir todos los posibles valores de cada uno de ellos. Nótese que no basta con cubrir cada una de las condiciones componentes, sino que además hay que cuidar de sus posibles combinaciones de forma que se logre siempre probar todas y cada una de las ramas. Así, en el ejemplo anterior no basta con ejecutar las pruebas 1 y 2, pues aun cuando cubrimos perfectamente cada posibilidad de cada condición por separado, lo que no hemos logrado es recorrer las dos posibles ramas de la decisión combinada. Para ello es necesario añadir la prueba 3. El conjunto mínimo de pruebas para cubrir todos los aspectos es el formado por las pruebas 3 y 4. Aún así, nótese que no hemos probado todo lo posible. Por ejemplo, si en el programa nos colamos y ponemos AND donde queríamos poner OR (o viceversa), este conjunto de pruebas no lo detecta. Sólo queremos decir que la cobertura es un criterio útil y práctico; pero no es prueba exhaustiva. Cobertura de bucles Los bucles no son más que segmentos controlados por decisiones. Un bucle se ejecuta un cierto número de veces; pero ese número de veces debe ser muy preciso, y lo más normal es que ejecutarlo una vez de menos o una vez de más tenga consecuencias indeseables. Y, sin embargo, es extremadamente fácil equivocarse y redactar un bucle que se ejecuta 1 vez de más o de menos. Para un bucle de tipo WHILE hay que pasar 3 pruebas 0 ejecuciones DISEÑO DEL SISTEMA GEONATURE 257 1 ejecución más de 1 ejecución Para un bucle de tipo REPEAT hay que pasar 2 pruebas 1 ejecución más de 1 ejecución Los bucles FOR, en cambio, son muy seguros, pues en su cabecera está definido el número de veces que se va a ejecutar. Ni una más, ni una menos, y el compilador se encarga de garantizarlo. Basta pues con ejecutarlos 1 vez. También tiene "trampa" si contiene sentencias del tipo EXIT (que algunos lenguajes denominan BREAK) o del tipo RETURN. Todas ellas provocan terminaciones anticipadas del bucle. Si el programa contiene bucles LOOP, o simplemente bucles con trampa, la única cobertura aplicable es la de ramas. El riesgo de error es muy alto; pero no se conocen técnicas sistemáticas de abordarlo, salvo reescribir el código. En la práctica de cada día, se suele procura alcanzar una cobertura cercana al 100% de segmentos. Es muy recomendable conseguir una buena cobertura de ramas. La ejecución de pruebas de caja blanca puede llevarse a cabo con un depurador que permite la ejecución paso a paso. Esta tarea es muy tediosa, pero puede ser automatizada. Hay compiladores que a la hora de generar código máquina dejan incrustado en el código suficiente código como para poder dejar un fichero (tras la ejecución) con el número de veces que se ha ejecutado cada sentencia, rama, bucle, etc. Caja negra Las pruebas de caja negra se centran en lo que se espera de un módulo, es decir, intentan encontrar casos en que el módulo no se atiene a su especificación. Por ello se denominan pruebas funcionales, y el probador se limita a suministrarle datos como entrada y estudiar la salida, sin preocuparse de lo que pueda estar haciendo el módulo por dentro. Las pruebas de caja negra se apoyan en la especificación de requisitos del módulo. De hecho, se habla de "cobertura de especificación" para dar una medida del número de DISEÑO DEL SISTEMA GEONATURE 258 requisitos que se han probado. Es fácil obtener coberturas del 100% en módulos internos, aunque puede ser más laborioso en módulos con interfaz al exterior. En cualquier caso, es muy recomendable conseguir una alta cobertura en esta línea. El problema con las pruebas de caja negra no suele estar en el número de métodos proporcionados por la clase, sino en los datos que se le pasan a estas funciones. El conjunto de datos posibles suele ser muy amplio. La experiencia muestra que un buen número de errores aparecen en torno a los puntos de cambio de clase de equivalencia. Hay una serie de valores denominados "frontera" o valores “límite” que conviene probar, además de los elegidos en el párrafo anterior. Usualmente se necesitan dos valores por frontera, el inmediato superior y el inmediato inferior. 9.1.2. Pruebas de integración Las pruebas de integración se llevan a cabo durante la construcción del sistema, involucran a un número creciente de módulos y terminan probando el sistema en su conjunto. Estas pruebas se pueden plantear desde un punto de vista estructural o funcional. Las pruebas estructurales de integración son similares a las pruebas de caja blanca; pero trabajan a un nivel conceptual superior. En lugar de referirnos a sentencias del lenguaje, nos referiremos a llamadas entre módulos. Se trata pues de identificar todos los posibles esquemas de llamadas y ejercitarlos para lograr una buena cobertura de segmentos o de ramas. Las pruebas funcionales de integración son similares a las pruebas de caja negra. Aquí trataremos de encontrar fallos en la respuesta de un módulo cuando su operación depende de los servicios prestados por otro(s) módulo(s). Según nos vamos acercando al sistema total, estas pruebas se van basando más y más en la especificación de requisitos del usuario. En todas estas pruebas funcionales se siguen utilizando las técnicas de partición en clases de equivalencia y análisis de casos límite (fronteras). DISEÑO DEL SISTEMA GEONATURE 259 9.1.3. Pruebas de sistema Las pruebas finales de integración cubren todo el sistema y pretenden cubrir plenamente la especificación de requisitos del usuario. Además, a estas alturas ya suele estar disponible el manual de usuario, que también se utiliza para realizar pruebas hasta lograr una cobertura aceptable. 9.1.4. Pruebas de implantación Estas pruebas se realizan en el momento de la implantación del sistema para verificar el correcto funcionamiento en su entorno real. Se evalúan los aspectos de comunicaciones, rendimiento, seguridad y recuperación. 9.2. Revisión de la Planificación de Pruebas Un punto importante a considerar en los casos de prueba es que cuando el usuario realice ingresos o modificaciones en la base de datos, se debe tener en cuenta que el sistema se ha implementado en un entorno Web, y en lo posible las pruebas deben realizarse de forma simultánea y en paralelo. Esto con el propósito de cerciorarse que los datos no sean sobrescritos y verificar la coherencia en el instante en que sean recuperados. 9.2.1. Pruebas de Acceso y Navegabilidad en módulo público. Caso de prueba: Acceso a todas las secciones Nro. AP-001 Descripción Se intenta acceder a todas las secciones y páginas del Portal en su parte pública. DISEÑO DEL SISTEMA GEONATURE 260 Actividades  Acceso a Página Principal  Acceso sección “Quienes Somos”  Acceso sección “Noticias”  Acceso sección “Enlaces”  Acceso sección “Correos y Contactos”  Acceso sección “Animales y Plantas”  Acceso sección “Boletines Periódicos” Prerrequisitos Ninguno Resultados esperados Se puede acceder y navegar por todas las secciones Excepciones Si existe un fallo, se debe informar al usuario con mensajes informativos 9.2.2. Pruebas de funcionalidad en módulo público. Caso de prueba: Funcionalidad de la página principal o portada. Nro. AP-002 Descripción Se intenta probar toda la funcionalidad de la página principal o portada. Actividades  Redirigir a las diferentes secciones a través del Menú Principal.  Enviar un correo a través del botón “correo” de la cabecera.  Abrir un formulario de Contacto.  Redirigir a las diferentes secciones a través de la botonera de enlaces.  Mostrar la noticia completa al pinchar sobre su título Prerrequisitos Ninguno Resultados esperados Comprobar la funcionalidad completa de la página principal o portada Excepciones Si existe un fallo, se debe informar al usuario con mensajes informativos DISEÑO DEL SISTEMA GEONATURE 267 Actividades  Añadir una Entrada al listado de boletines  Editar una entrada al listado de boletines  Eliminar una entrada al listado de boletines  Enviar un boletín a una lista de correos  Consultar el histórico de envío de boletines  Visualizar y Elminar personas suscritas al boletin seleccionado Prerrequisitos Usuario autenticado. Resultados esperados Se personaliza con éxito la Sección “Animales y Plantas” Excepciones Si existe un fallo, se debe informar al usuario con mensajes informativos DISEÑO DEL SISTEMA GEONATURE 268 10. ESTABLECIMIENTO DE REQUISITOS DE IMPLANTACIÓN 10.1. Especificación de Requisitos de Documentación de Usuario La información será proporcionada en formato digital (Microsoft Word y PDF), siguiendo los parámetros establecidos a continuación.  Los textos serán entregados en formato digital, con tipo de letra Arial de 11 puntos.  Los manuales de usuario que se entreguen serán actualizados de acuerdo a la última versión de GEONATURE. La documentación que se entrega al usuario final es la que se detalla a continuación:  Análisis del sistema  Diseño del sistema  Manual de usuario.  Manual de Instalación  Plan de Pruebas MANUAL DE USUARIO GEONATURE 169 MANUAL DE USUARIO MANUAL DE USUARIO GEONATURE 170 MANUAL DE USUARIO GEONATURE 171 ÍNDICE DE CONTENIDO 1. Estructura y secciones de la página ......................................... 269 1.1. Mapa del sitio web ......................................................................................... 269 1.2. Página principal .............................................................................................. 270 2. Acceso a la gestión de contenidos ........................................... 271 3. Gestión de contenidos ................................................................ 272 3.1. Página principal .............................................................................................. 272 3.1.1. Cabecera ................................................................................................. 272 3.1.2. Contenido Destacado ............................................................................ 275 3.1.3. Eventos .................................................................................................... 279 3.1.4. Pie ............................................................................................................ 281 3.2. Control genérico de gestión de contenidos ............................................... 282 3.2.1. Editar texto con imagen ............................................................................ 283 3.2.2. Editar enlace ............................................................................................... 284 3.2.3. Editar archivo .............................................................................................. 284 3.2.4. Eliminar elemento de contenido .............................................................. 285 3.3. Gestión de noticias ........................................................................................ 285 3.4. Enlaces ............................................................................................................ 289 3.4.1. Crear Enlace ........................................................................................... 290 3.4.2. Editar Enlace .......................................................................................... 290 3.5 Correos y contactos ....................................................................................... 291 3.4.3. Crear Correo y Contacto ....................................................................... 291 3.4.4. Editar Correo y Contacto ...................................................................... 292 3.6 Animales y plantas ......................................................................................... 292 3.6.1 Crear especie ......................................................................................... 293 3.6.2 Editar especie ......................................................................................... 294 3.7 Boletines periódicos ...................................................................................... 295 3.7.1 Crear boletín ........................................................................................... 295 MANUAL DE USUARIO GEONATURE 172 3.7.2 Editar boletín .......................................................................................... 296 3.8 Envío y gestión de boletines ....................................................................... 296 Enviar Boletín ........................................................................................................ 297 Histórico de envíos ............................................................................................... 298 Gestión de subscripciones .................................................................................. 298 3.9 Foro ................................................................................................................. 299 3.9.1 Registrarse en el Foro .......................................................................... 299 3.9.2 Entrar en el foro ..................................................................................... 300 3.9.3 Funcionamiento del Foro ..................................................................... 301 3.9.4 Configuración del Foro ......................................................................... 306 4 Configuración ................................................................................ 309 4.1 Cambiar Contraseña .......................................................................................... 309 4.2 Configuración de correo saliente (SMTP) ...................................................... 310 4.3 Cuentas de correo asociadas ........................................................................... 310 5 Recomendaciones ....................................................................... 311 MANUAL DE USUARIO GEONATURE 269 1. Estructura y secciones de la página 1.1. Mapa del sitio web Inicio Quienes Somos Noticias Enlaces Correos y Contactos Sugerencias Animales y Plantas Boletines Periódicos Foro MANUAL DE USUARIO GEONATURE 270 1.2. Página principal En la siguiente imagen, se han resaltado los principales elementos que componen la página principal. MANUAL DE USUARIO GEONATURE 271 2. Acceso a la gestión de contenidos Para acceder al panel de control y poder gestionar los contenidos del Portal Web, se debe ingresar la siguiente URL en el navegador. http://localhost/login.aspx Una vez teclado la URL en el navegador, se nos muestra la siguiente ventana de validación de credenciales: Para ingresar al portal debe ingresar el nombre de usuario y contraseña y hacer clic en el botón “Enviar". Si la autenticación del usuario es incorrecta se despliega el mensaje “Datos erróneos. Inténtelo de nuevo” Una vez autenticado, se despliega la ventana principal del portal con un panel de control en la parte superior de la ventana donde se muestra, en la parte izquierda, el nombre del usuario autenticado y la opción Cerrar la sesión. En la parte derecha se muestran las opciones de personalización de los contenidos existentes en la página actual visualizada, inicialmente las de la página principal. Las opciones de personalización se mostrarán ordenadas por pestañas al hacer click sobre dicho enlace. MANUAL DE USUARIO GEONATURE 272 3. Gestión de contenidos Todos los contenidos de la página web pueden ser modificados de forma dinámica desde la parte privada. El usuario administrador tiene pleno acceso a la modificación de todos los elementos personalizables del portal. 3.1. Página principal La Página Principal es la primera página que aparece en el Portal, tanto si entramos en modo normal de navegación o en modo gestión de contenidos. En ella se muestran los enlaces a las diferentes secciones que conforman el Portal y a su vez muestra una cantidad de información propia tales como una cabecera, contenido destacado, Eventos y Pie de Página. 3.1.1. Cabecera La Cabecera de la Página Principal tiene como objetivo Mostar un carrusel de imágenes con texto (que denominaremos como ‘entrada’). Cada entrada de la cabecera consta de tres partes, título, texto e imagen. Para personalizar la cabecera, debemos estar en la Página Principal, y haber iniciado sesión con un usuario administrador. Al hacer clic sobre el enlace Personalizar se abrirán las diferentes pestañas que corresponden con las secciones que se pueden personalizar. Al pinchar sobre la primera pestaña, "imagen portada", se permitirá al administrador personalizar la imágen de cabecera y la descripción a su gusto. A continuación se señalan los elementos existentes en esta ventana. MANUAL DE USUARIO GEONATURE 279 escrito en éste modo será interpretado como código HTML y un mal uso puede provocar descuadres en la maquetación del portal.  Modo pre visualización: En éste modo podemos comprobar que lo que hemos escrito en los dos modos anteriores funciona correctamente. Sobre todo en el caso de que hayamos trabajado en modo HTML, es fundamental hacer una pre visualización para asegurarnos de que el producto es lo esperado. Pulsando primero sobre “Aplicar” y luego sobre “Aceptar” los cambios se verán reflejados y se volverá a la pantalla anterior. Pulsando sobre cancelar o cerrar, los cambios no se verán reflejados y se volverá a la pantalla anterior. 3.1.3. Eventos Los eventos son tres “banners” que se muestran en la parte inferior izquierda de la página principal. Cada evento consta de una imagen y una URL de destino que será abierta en una ventana nueva. MANUAL DE USUARIO GEONATURE 280 Para personalizar la cabecera, debemos estar en la Página Principal, y haber iniciado sesión con un usuario administrador. Al hacer clic sobre el enlace Personalizar se abrirán las diferentes pestañas que corresponden con las secciones que se pueden personalizar. Al pinchar sobre la tercera pestaña, "eventos", se permitirá al administrador personalizar los tres eventos a su gusto Según se ve en la imagen, se muestran tres eventos como máximo, que pueden ser editados en todo momento. Los eventos muestran una imagen por defecto según se muestra en la imagen anterior que contiene el texto “Pon Aquí tu Publicidad”. 3.1.3.1. Editar evento Para editar un evento, hacer clic sobre el enlace “editar” situado en la parte superior derecha de cada evento. A continuación se abre la ventana de edición de la URL e imagen del evento. Si la URL es externa al propio portal, deberá escribirse la dirección completa incluyendo de forma obligatoria al inicio “http://” (ejemplo. http://www.google.com). En caso MANUAL DE USUARIO GEONATURE 281 contrario, la URL será considerada como relativa y su funcionamiento puede ser incorrecto. Seleccione la imagen que desea para ilustrar el evento utilizando el botón “Examinar”. Pulsando primero sobre “Aplicar” y luego sobre “Aceptar” los cambios se verán reflejados y se volverá a la pantalla anterior. Pulsando sobre cancelar o cerrar, los cambios no se verán reflejados y se volverá a la pantalla anterior. 3.1.4. Pie El pie de página consta de un texto superior y un texto inferior de texto personalizables y un enlace estático al mapa web. Para personalizar la cabecera, debemos estar en la Página Principal, y haber iniciado sesión con un usuario administrador. Al hacer clic sobre el enlace Personalizar se abrirán las diferentes pestañas que corresponden con las secciones que se pueden personalizar. Al pinchar sobre la cuarta pestaña, "pie", se permitirá al administrador personalizar las dos diferentes descripciones que conforman el pie de página MANUAL DE USUARIO GEONATURE 282 Para editar cualquiera de los textos del Pie de página, deberá hacer clic sobre el enlace “editar” situado en la parte superior derecha del elemento. A continuación se abre la ventana de edición que contiene el control de texto enriquecido, cuyo funcionamiento ya ha sido explicado anteriormente. 3.2. Control genérico de gestión de contenidos La sección "quienes somos" se personaliza mediante el uso de un control genérico de gestión de contenidos que permite construir la información que se desee mostrar combinando uno o varios de los siguientes elementos:  Texto e imagen  Enlace  Archivo descargable Al seleccionar la opción de personalizar con control genérico se abre la ventana de edición de contenidos donde se pueden agregar, modificar o eliminar los elementos de contenido. En la parte superior de la ventana aparecen los enlaces para añadir cada uno de los elementos mencionados anteriormente. Al añadir un elemento de cualquier tipo, este se crea y se añade al panel de contenido, MANUAL DE USUARIO GEONATURE 283 por lo que se puede ver como vacío inicialmente. El elemento muestra en su cabecera el tipo de elemento de que se trata y dos opciones, una para poder editar su contenido y otra para eliminarlo. A continuación se presenta el método de edición para cada uno de estos elementos. 3.2.1. Editar texto con imagen Al editar un elemento de tipo texto con imagen se presenta una ventana que incluye un botón “Examinar” para seleccionar la imagen que se desea incluir y un editor de texto con las opciones más comunes para darlo formato (tipo, tamaño y color de fuente, alineados y centrados de párrafo, uso de viñetas, negrita, cursiva, etc.) Una vez seleccionada la imagen e ingresado y formateado el texto, hacer clic en el botón “Aplicar” y seguidamente en ”Aceptar” situados en la parte inferior de la ventana. La imagen se mostrará en la parte superior izquierda del contenido y el texto se mostrará desde la parte derecha de la imagen extendiéndose hacia abajo y hacia la izquierda de forma que siempre se encuentra rodeando la imagen. MANUAL DE USUARIO GEONATURE 284 3.2.2. Editar enlace Al editar un elemento de tipo enlace se presenta una ventana en la que se especificará el texto descriptivo que se mostrará para el enlace y la URL del enlace. La URL se deberá escribir de forma completa incluyendo siempre y de forma obligatoria http:// antes de la dirección. Una vez ingresado los datos, hacer clic en el botón “Aplicar” y seguidamente en ”Aceptar” situados en la parte inferior. 3.2.3. Editar archivo Al editar un elemento de tipo archivo se presenta una ventana en la que se especificará el nombre para mostrar para el archivo, la descripción para mostrar del archivo y el propio archivo que se desea incluir para que esté disponible para su descarga. Para seleccionar el archivo hacer clic en el botón “Examinar” y navegar por el explorador de archivos y carpetas. Una vez seleccionado pulsar el botón “Abrir”. Una vez ingresado los datos, hacer clic en el botón “Aplicar” y seguidamente en ”Aceptar” situados en la parte inferior. MANUAL DE USUARIO GEONATURE 285 3.2.4. Eliminar elemento de contenido Para eliminar un elemento, simplemente hacer clic en el enlace “[Eliminar]” ubicado en la cabecera del elemento. Antes de eliminar se mostrará mensaje de confirmación. Hacer clic en “Aceptar” para eliminar de forma definitiva. Este método de eliminación aplica a todos los diferentes elementos de contenidos existentes en el portal, por lo que no será necesario explicar esta funcionalidad de forma individualizada. 3.3. Gestión de noticias Para personalizar la cabecera, debemos estar en la Página Principal, y haber iniciado sesión con un usuario administrador. Al hacer clic sobre el enlace Personalizar se abrirán las diferentes pestañas que corresponden con las secciones que se pueden personalizar. Al pinchar sobre la pestaña, "noticias", la ventana mostrará un listado de las noticias existentes y las opciones para crear nueva, editar y eliminar MANUAL DE USUARIO GEONATURE 286 3.3.1.1. Añadir noticia Para crear una noticia nueva, hacer clic en el botón “Alta” situado en la parte inferior de la pantalla de gestión de noticias. Se abrirá nueva ventana donde introducir la información de la noticia. Para alguno de los campos de información es obligatorio ingresar datos y no podrán ser dejados en blanco. Estos campos aparecen identificados con un asterisco (*). MANUAL DE USUARIO GEONATURE 287 Titulo: Es el título que tendrá la noticia en el Portal Internet. Autor: Nombre de la persona que da de alta la noticia. Fecha: Fecha deseada para la noticia. Si la fecha es incorrecta, el sistema muestra un mensaje de error. Imágenes: Cabe la posibilidad de adjuntar en las noticias tanto imágenes como videos que deberán cumplir con los siguientes requisitos:  Los formatos de imagen soportados son: JPG, PNG, GIF, BMP y TIFF, cualquier otro formato será incorrecto y el sistema mostrará un mensaje de error.  El formato de video soportado es FLV, cualquier otro formato será incorrecto y el sistema mostrará un mensaje de error.  El primer archivo adjunto debe ser una imagen y nunca un video, en caso MANUAL DE USUARIO GEONATURE 288 contrario el sistema mostrará un mensaje de error. Pie de Imagen: Si se desea, se puede añadir un breve texto que se muestra debajo de la imagen o video Para añadir una imagen o video, hay que hacer lo siguiente  Hacer clic sobre el botón “examinar”.  Seleccionar la imagen o video a adjuntar.  Si se desea, añadir imagen o video.  Hacer clic sobre el botón “Subir”  Esperamos unos segundos/minutos (dependiendo del tamaño del archivo) a que se adjunte la imagen/video Una vez terminado el proceso de subida, el archivo se añade a la lista y se muestra en la parte derecha a modo de listado, pudiéndose eliminar la entrada si se desea, como se puede ver en la siguiente figura. Contenido corto: Consiste en una breve descripción de la noticia (máximo 255 caracteres). Contenido largo: Texto de longitud indefinida que es editado a través de un control que permite Texto enriquecido. El funcionamiento de dicho control ya ha sido explicado con anterioridad. Una vez que se han completado todos los campos, se deberá hacer clic sobre el botón “Aceptar” para dar de alta la noticia. En el caso de que no se hayan completado todos los campos correctamente, el sistema mostrará un mensaje de aviso sobre la información incorrecta. MANUAL DE USUARIO GEONATURE 295 se desea modificar. A continuación se abre la ventana de edición con la información de la propia especie para ser modificada. La ventana de edición tiene el mismo formato que la ventana de creación. Una vez realizadas las modificaciones, hacer clic en el botón “Aceptar”, para guardar los cambios y cerrar la ventana de edición. 3.7 Boletines periódicos Para personalizar los boletines periódicos, debemos estar en la Página Principal, y haber iniciado sesión con un usuario administrador. Al hacer clic sobre el enlace Personalizar se abrirán las diferentes pestañas que corresponden con las secciones que se pueden personalizar. Al pinchar sobre la pestaña, "boletines". A continuación se mostrará una ventana con el listado de boletines existentes y las opciones para añadir nuevo, editar y eliminar. Por defecto siempre existirá un primer boletín que no podrá ser eliminado y solo presentará la opción de Editar. El envío de boletines y gestión de suscripciones se verán más adelante fuera de este capítulo que está dedicado exclusivamente a la gestión de contenidos. 3.7.1 Crear boletín Desde la ventana del listado de Boletines, hacer clic en “Añadir Boletín” en la parte MANUAL DE USUARIO GEONATURE 296 superior de la ventana. Automáticamente se creará una nueva entrada vacía que deberá ser editada para establecer sus atributos. 3.7.2 Editar boletín Desde la ventana del listado de Boletines, hacer clic en “[Editar]” situado en la parte superior derecha del propio boletín que se desee modificar. A continuación se abrirá la siguiente ventana en la que se establecerán los valores de descripción, mes, año, y el archivo del boletín. El botón “Examinar” abrirá un explorador de Windows que facilitará la selección del archivo desde su ubicación física. Una vez especificados los valores para cada campo, haga clic en “Aplicar” y a continuación en “Aceptar” para guardar los cambios y cerrar la ventana de edición. Para salir sin guardar los cambios haga clic en el botón “Cancelar” o en el enlace “Cerrar” situado en la esquina superior derecha . 3.8 Envío y gestión de boletines Para realizar el envío de un boletín, iniciar sesión con un administrador, navegar hasta ella y hacer clic en “Personalizar” del panel de control. A continuación se mostrará una ventana con el listado de boletines existentes y las opciones para enviar boletín, ver histórico de envíos de un boletín y gestionar las subscripciones. MANUAL DE USUARIO GEONATURE 297 Enviar Boletín Desde la ventana de listado de boletines, hacer clic en el enlace “Enviar Boletín” del boletín deseado. Inmediatamente se abrirá una nueva ventana en la que se mostrará el listado de personas subscritas con un check box asociado que deberá ser marcado si se desea que esa persona reciba el boletín. Si se desea enviar a todos los subscritos, hacer clic en el check box general “marcar todo”. En esta ventana también se establece el texto que aparecerá como asunto en el correo de envío. Una vez seleccionados los destinatarios y establecido el texto del asunto hacer clic en el botón “Enviar” para realizar el envío. Una vez enviado, se mostrará mensaje resumen indicando cuantos envíos fueron satisfactorios y cuantos fallidos. MANUAL DE USUARIO GEONATURE 298 Para ver las cuentas de correo que han podido ser enviadas hacer clic en el enlace “Ver listado de errores”. Se abrirá una ventana mostrando un listado de las direcciones de correo para las que falló el envío. Histórico de envíos Desde la ventana de listado de boletines, hacer clic en el enlace “Histórico envíos” del boletín deseado. Inmediatamente se abrirá una nueva ventana en la que se mostrará el listado de personas con la fecha en la que se realizó el envío. Gestión de subscripciones Desde la ventana de listado de boletines, hacer clic en el enlace “Gestionar subscripciones” ubicado en la parte superior de la ventana. Inmediatamente se abrirá una nueva ventana en la que se mostrará el listado de personas subscritas con la opción de eliminar para cada una de ellas. Para eliminar una subscripción simplemente hacer clic en el enlace “Eliminar”. MANUAL DE USUARIO GEONATURE 299 3.9 Foro En este apartado se explicará el funcionamiento del Foro, tanto de su parte pública como la parte de configuración del mismo. El Foro es de acceso privado, luego para entrar serán necesarias las credenciales de usuario registrado. Cualquier persona podrá registrarse en el foro siempre y cuando la dirección de correo electrónico introducida sea única. 3.9.1 Registrarse en el Foro Todos los usuarios públicos que deseen usar el foro deberán introducir correctamente las credenciales de nombre de usuario y contraseña proporcionadas por él mismo en el momento del registro. Para ello, deberá cumplimentar un sencillo formulario de registro, que será enviado al administrador del sistema. A continuación se muestra el formulario de registro. MANUAL DE USUARIO GEONATURE 300 Se comprobará que se introducen todos los cambios obligatorios, que el email no esté previamente registrado y que la contraseña introducida sea correcta. En ese caso se mostrará un mensaje de éxito y un enlace a la pantalla de Login. 3.9.2 Entrar en el foro Una vez que el usuario se ha registrado correctamente en el foro, éste podrá acceder al mismo utilizando las credenciales. Si las credenciales son erróneas se mostrará un mensaje de error, tal y como se puede ver en la imagen. MANUAL DE USUARIO GEONATURE 301 En caso de introducir las credenciales correctas, se redirigirá a la página principal del foro dónde se puede ver el listado de temas. 3.9.3 Funcionamiento del Foro La pantalla principal del foro es el listado de todos los temas activos que lo componen. Los temas inactivos no aparecen hasta que el administrador del Portal da su visto bueno y lo activa. En esta pantalla podemos distinguir tres partes, el menú de usuario, la lista de temas y el formulario de “Nuevo tema”. MANUAL DE USUARIO GEONATURE 302 3.9.3.1 Menú de usuario El Menú de usuario se encuentra en la parte superior del Foro, y muestra diversa información y opciones referentes a dicho usuario. De izquierda a derecha, pasamos a explicar el funcionamiento de la barra de Menú de usuario:  Nombre de la cuenta: Muestra el email del usuario asociado a la cuenta  Configurar Perfil: Permite actualizar los datos de la cuenta de usuario  Cambiar contraseña: Permite cambiar la contraseña de entrada al foro.  Cerrar Sesión: Cierra la sesión y redirige a la pantalla de entrada del foro 3.9.3.1.1 Configurar Perfil de usuario Desde ésta pantalla el usuario puede actualizar los mismos datos que introdujo en su momento cuando se registró en el foro, exceptuando el correo electrónico. MANUAL DE USUARIO GEONATURE 303 3.9.3.1.2 Cambiar Contraseña Desde ésta pantalla el usuario puede cambiar su contraseña de acceso al foro. Para ello basta con introducir la contraseña actual y la nueva dos veces. La siguiente vez que acceda deberá hacerlo ya con su nueva contraseña. 3.9.3.2 Listado de Temas MANUAL DE USUARIO GEONATURE 304 Debajo del menú de usuario, se muestra el listado de temas activos del Foro. En el momento en el que el administrador da el visto bueno al contenido del tema y lo activa, éste aparecerá en el listado y los usuarios podrán hacer réplicas al mismo. De cada tema se muestra su título, su autor, la fecha y hora en la que lo escribió y el número de replicas que tiene actualmente dicho tema. Para acceder al tema, el usuario debe hacer click sobre el título del mismo, y será redirigido a una página en la cual podrá ver el contenido completo del tema así como de sus réplicas (en caso de haberlas) y tener la posibilidad de replicar él mismo. Por último, debajo del listado de temas se encuentra el formulario de alta de temas. 3.9.3.3 Alta de un nuevo Tema Si el usuario quiere escribir un nuevo tema, deber completar para ello el formulario de “nuevo tema” que se muestra justo a continuación del listado de temas, y que podemos ver en la siguiente imagen. MANUAL DE USUARIO GEONATURE 311 5 Recomendaciones Tamaño de imágenes y archivos Para optimizar el rendimiento de la página y los recursos del servidor donde se encuentra alojada la página, es recomendable que las imágenes y archivos sean manejados en formatos que permitan el menor tamaño posible. En el caso de las imágenes, se recomienda utilizar formatos comprimidos de imagen (JPG, PPNG, etc.) y que las imágenes sean tratadas previamente por herramientas de optimización para ajustar tanto al tamaño como a la calidad más adecuada. Las dimensiones de las imágenes deberán de adecuarse de forma proporcional a las dimensiones del control donde estén ubicadas dentro de la página, para evitar que se visualicen deformadas al realizar el re escalado. A menos que se desee de forma intencionada incluir imágenes de muy alta resolución, hay que tener en cuenta que los tamaños más habituales de resolución de monitor pueden variar entre 800x600 hasta 1280x1024 por tanto se recomienda que las imágenes sean tratadas para reducirlas, siempre de forma proporcional, hasta dimensiones similares a las mencionadas anteriormente de resolución de pantalla para mejorar los tiempos de descarga y visualización. Para los archivos se recomienda evitar formatos comerciales propietarios utilizando formatos genéricos como por ejemplo PDF para que puedan ser visualizados por todos los usuarios sin herramientas adicionales o no de distribución gratuita. Se recomienda también utilizar compresores de información (RAR, ZIP, etc.) para disminuir su tamaño. PLAN DE PRUEBAS GEONATURE 311 PLAN DE PRUEBAS PLAN DE PRUEBAS GEONATURE 312 PLAN DE PRUEBAS GEONATURE 313 ÍNDICE DE CONTENIDOS ÍNDICE DE CONTENIDOS ......................................................................................................... 313 1. NAVEGABILIDAD ............................................................................................................ 314 1.1. ACCESO ............................................................................................................................ 314 1.2. FUNCIONALIDAD ................................................................................................................. 315 1.2.1. Página Principal ..................................................................................................... 315 1.2.2. Noticias .................................................................................................................. 316 1.2.3. Quienes Somos ....................................................................................................... 316 1.2.4. Enlaces ................................................................................................................... 316 1.2.5. Correos y Contactos ............................................................................................... 316 1.2.6. Sugerencias ............................................................................................................ 317 1.2.7. Animales y Plantas ................................................................................................. 317 1.2.8. Boletines Periódicos ............................................................................................... 317 1.2.9. Foro ........................................................................................................................ 318 2. PERSONALIZACIÓN ......................................................................................................... 319 2.1. LOGIN............................................................................................................................... 319 2.2. PÁGINA PRINCIPAL .............................................................................................................. 319 2.2.1. Cabecera ................................................................................................................ 320 2.2.2. Contenido destacado ............................................................................................. 320 2.2.3. Eventos ................................................................................................................... 321 2.2.4. Pie .......................................................................................................................... 321 2.3. QUIENES SOMOS ................................................................................................................ 322 2.3.1. Presentación .......................................................................................................... 322 2.4. NOTICIAS .......................................................................................................................... 322 2.4.1. Añadir Entrada ....................................................................................................... 322 2.5. ENLACES ........................................................................................................................... 323 2.6. CORREOS Y CONTACTOS ....................................................................................................... 323 2.7. ANIMALES Y PLANTAS .......................................................................................................... 324 2.8. BOLETINES PERIÓDICOS ........................................................................................................ 324 2.9. FORO ............................................................................................................................... 325 2.10. CONFIGURACIÓN ............................................................................................................ 326 PLAN DE PRUEBAS GEONATURE 314 1. Navegabilidad Nro. Caso de prueba Objetivo Entrada Salida Resultado 1. Acceder la Página Principal Acceso a Página Principal - Se muestra la página CORRECTO 1.1. Acceso Nro. Caso de prueba Objetivo Entrada Salida Resultado 2. Acceder la Página Principal Acceso a Página Principal - Se muestra la página CORRECTO 3. Acceso sección “Quienes Somos” Acceso sección “Quienes Somos” - Se muestra la sección CORRECTO 4. Acceso sección “Noticias” Acceso sección “Noticias” - Se muestra la sección CORRECTO 5. Acceso sección “Enlaces” Acceso sección “Enlaces” - Se muestra la sección CORRECTO 6. Acceso sección “Correos y Contactos” Acceso sección “Correos y Contactos” - Se muestra la sección CORRECTO 7. Acceso sección “Sugerencias” Acceso sección “Sugerencias” - Se muestra la sección CORRECTO 8. Acceso sección “Animales y Plantas” Acceso sección “Animales y Plantas” - Se muestra la sección CORRECTO 9. Acceso sección “Boletines Periódicos” Acceso sección “Boletines Periódicos” - Se muestra la sección CORRECTO PLAN DE PRUEBAS GEONATURE 315 10. Acceso sección “Foro” Acceso sección “Foro” - Se muestra la sección CORRRECTO 1.2. Funcionalidad 1.2.1. Página Principal Nro. Caso de prueba Objetivo Entrada Salida Resultado 11. Redirigir a Secciones Redirigir a las diferentes secciones a través del Menú Principal - Se redirige a la sección deseada CORRECTO 12. Enviar Correo Enviar un correo a través del botón “correo” de la cabecera - Se abre el programa de envío de correo predeterminado CORRECTO 13. Contactar Abrir un formulario de Contacto Datos Completos Se envía el formulario CORRECTO Datos Incompletos Se muestra error 14. Enlaces Rápidos Redirigir a las diferentes secciones a través de la botonera de enlaces rápidos - Se redirige a la sección deseada CORRECTO 15. Mostrar Noticia Mostrar la noticia completa al pinchar sobre su título - Se muestra la noticia completa CORRECTO PLAN DE PRUEBAS GEONATURE 316 1.2.2. Noticias Nro. Caso de prueba Objetivo Entrada Salida Resultado 16. Mostrar Noticia Mostrar la noticia completa al pinchar sobre su título - Se muestra la subsección CORRECTO 1.2.3. Quienes Somos Nro. Caso de prueba Objetivo Entrada Salida Resultado 17. Mostrar Contenido Mostrar el contenido de la sección - Se muestra el contenido CORRECTO 1.2.4. Enlaces Nro. Caso de prueba Objetivo Entrada Salida Resultado 18. Mostrar Contenido Mostrar el contenido de la sección - Se muestra el contenido CORRECTO 1.2.5. Correos y Contactos Nro. Caso de prueba Objetivo Entrada Salida Resultado 19. Mostrar Contenido Mostrar el contenido de la sección - Se muestra el contenido CORRECTO 20. Enviar Correo a Contacto Enviar un correo electrónico al contacto seleccionado Datos completos Se envía el correo CORRECTO Datos incompletos Se muestra error PLAN DE PRUEBAS GEONATURE 317 1.2.6. Sugerencias Nro. Caso de prueba Objetivo Entrada Salida Resultado 21. Enviar Sugerencia Enviar una sugerencia. Datos Completos Se muestra el contenido CORRECTO Datos incompletos 1.2.7. Animales y Plantas Nro. Caso de prueba Objetivo Entrada Salida Resultado 22. Consultar Animal o Planta Mostrar todos los datos de un animal o planta al pinchar sobre “Ficha completa” - Se muestra la subsección CORRECTO 23. Filtrar por Region Filtrar el listado de Animales o plantas por region, a través del mapa interactivo o de la lista desplegable - Se filtra el listado de animales y plantas CORRECTO 24. Filtrar por especie Filtrar el listado de animales o plantas por especie, a través de la botonera - Se filtra el listado de animales y plantas CORRECTO 1.2.8. Boletines Periódicos Nro. Caso de prueba Objetivo Entrada Salida Resultado 25. Descargar Boletín Descargar el último boletín periódico al pinchar sobre el enlace - Se descarga el boletín CORRECTO 26. Suscribirse al boletín Permitir la suscripción al boletín Datos Completos Se realiza la suscripción CORRECTO PLAN DE PRUEBAS GEONATURE 318 periódico mediante un formulario de registro Datos Incompletos Se muestra error 1.2.9. Foro Nro. Caso de prueba Objetivo Entrada Salida Resultado 27. Acceder al Foro Permitir al usuario acceder al listado de temas del foro Nombre de usuario y contraseña Se accede al foro CORRECTO Se muestra error 28. Registrarse en el foro Permitir el registro del usuario en el foro Datos Completos Se realiza el registro CORRECTO Datos Incompletos Se muestra error 29. Ver temas del foro Permite al usuario ver los temas del foro - Se muestran los temas CORRECTO 30. Acceder a la configuracion de usuario Permite al usuario acceder a la pantalla de cofiguracion de perfil - Se muestra la pantalla de configuración del perfil COREECTO 31. Editar nombre y apellidos Permite al usuario editar el nombre y los apellidos Nombre de usuario y Apellidos Se muestra un mensaje de confirmación CORRECTO 32. Editar apodo Permite al usuario editar el apodo apodo Se muestra un mensaje de confirmación CORRECTO 33. Editar avatar Permite al usuario subir una imagen como avatar Imagen desde archivo Se muestra un mensaje de confirmación CORRECTO PLAN DE PRUEBAS GEONATURE 319 34. Editar sexo Permite al usuario cambiar de sexo Nuevo sexo Se muestra un mensaje de confirmación CORRECTO 35. Cambiar contraseña de usuario Permite al usuario cambiar la contraseña Antigua contraseña y nueva contraseña Se realiza el cambio CORRECTO Se muestra error 36. Acceder a un tema Permite al usuario acceder a un tema determinado - Se redirige a la pantalla del tema CORRECTO 37. Agregar un nuevo tema al foro Permite al usario agregar un tema al foro Titulo y descripción del tema Se agrega el tema CORRECTO Se muestra error 38. Agregar una réplica a un tema Permite al usuario agregar una réplica a un tema Descripción de la réplica Se agrega la réplica CORRECTO Se muestra error 2. Personalización 2.1. Login Nro. Caso de prueba Objetivo Entrada Salida Resultado 39. Acceder personalización Acceso al portal en modo personalización Usuario y clave válidos Entrada válida CORRECTO Usuario y clave inválidos Se muestra error 2.2. Página Principal PLAN DE PRUEBAS GEONATURE 326 76. Desactivar usuario foro Permite desactivar un usuario del foro - Usuario desactivado CORRECTO 77. Activar usuario foro Permite activar un usuario del foto - Usuario activado CORRECTO 78. Ver temas activos Permite ver un listado con todos los temas activos del foro - Muestra un listado con todos los temas activos del foro CORRECTO 79. Ver temas inactivos Permite ver un listado con todos los temas inactivos del foro - Muestra un listado con todos los temas inactivos del foro CORRECTO 80. Desactivar tema foro Permite desactivar un tema del foro - Tema desactivado CORRECTO 81. Activar tema foro Permite activar un tema del foto - Tema activado CORRECTO 2.10. Configuración Nro. Caso de prueba Objetivo Entrada Salida Resultado PLAN DE PRUEBAS GEONATURE 327 82. Configurar cuenta correo Establecer la configuración del servidor de correo saliente (SMTP) para la recepción de sugerencias, asi como la dirección de destino Datos completos Configuración establecida CORRECTO 83. Recepción de formularios de contacto Establecer la configuración del servidor de correo saliente (SMTP) para la recepción de formularios de contacto, asi como la dirección de destino Datos de configuración y dirección de destino Configuración establecida CORRECTO 84. Cambiar contraseña de administrador Establecer una contraseña distinta a la que está en ese momento establecida Contraseña antigua. Contraseña cambiada CORRECTO Id Nombre de tarea Duración Comienzo Fin 1Seguimiento de avance del proyecto 116,38 días lun 14/05/12 mar 23/10/12 2Reunion mensual de avance 1 1 día lun 14/05/12 lun 14/05/12 3Reunion mensual de avance 2 1 día jue 21/06/12 jue 21/06/12 4Reunion mensual de avance 3 1 día lun 20/08/12 lun 20/08/12 5Reunion mensual de avance 4 1 día lun 22/10/12 mar 23/10/12 6Análisis del Sistema 22,75 días lun 23/04/12 mié 23/05/12 7Definición del sistema (definicion y priorizacion sistemas y subsistemas) 1,75 días lun 23/04/12 mar 24/04/12 8Establecimiento de Requisitos 2,75 días mié 25/04/12 vie 27/04/12 9Análisis de los casos de Uso. 4,75 días lun 30/04/12 vie 04/05/12 10 Análisis de Clases 4,75 días lun 07/05/12 vie 11/05/1 2 11 Definición de Interfaces de usuario 2,75 días mar 15/05/12 jue 17/05/12 12 Especificación del plan de pruebas 4 días vie 18/05/12 mié 23/05/12 13 A probación del análisis del sistema de información (documento de analisis) 0 días mié 23/05/12 mié 23/05/12 14 Diseño del Sistema 29,75 días jue 24/05/12 mié 04/07/12 15 Definición de la arquitectura del sistema 4,75 días jue 24/05/12 mié 30/05/12 16 Diseño Casos de Uso Reales 5 días jue 31/05/12 mié 06/06/12 17 Diseño de Clases 5 días jue 07/06/12 mié 13/06/12 18 Diseño físico de datos. 4,75 días jue 14/06/12 mié 20/06/12 19 Verificación y aceptación de la arquitectura del sistema 2 días vie 22/06/12 lun 25/06/12 20 Generación de especificaciones de construcción 2,75 días mar 26/06/12 jue 28/06/12 21 Especificación técnica del plan de pruebas 4 días vie 29/06/12 mié 04/07/12 22 A probación del diseño del sistema de información (documento de diseño completo) 0 días mié 04/07/12 mié 04/07/12 23 Desarrollo (Construcción) del Sistema 85,38 días jue 05/07/12 jue 01/11/12 24 Preparación del entorno de generación y construcción 2,75 días jue 05/07/12 lun 09/07/12 25 Generación del código de los componentes y procedimientos. 68,75 días mar 10/07/12 vie 12/10/12 26 Desarrollo de componentes comunes (work flow, seguridad, controles de usuario) 5 días mar 10/07/12 lun 16/07/12 27 Capa de Acceso a Datos 15,75 días mar 17/07/12 mar 07/08/12 28 Métodos de acceso a datos de especies 2 días mar 17/07/12 mié 18/07/12 29 Métodos de acceso a datos de conexión 2 días jue 19/07/12 vie 20/07/12 30 Métodos de acceso a datos de configuración 2 días lun 23/07/12 mar 24/07/12 31 Métodos de acceso a datos de Login 2 días mié 25/07/12 jue 26/07/12 32 Métodos de acceso a datos de especies 2 días vie 27/07/12 lun 30/07/12 33 Métodos de acceso a datos de Noticias 2 días mar 31/07/12 mié 01/08/12 34 Métodos de acceso a datos de Suscripciones 2 días jue 02/08/12 vie 03/08/12 35 Método de acceso a datos del Foro 2 días lun 06/08/12 mar 07/08/12 36 Capa de Negocio 16,75 días mié 08/08/12 jue 30/08/12 37 Métodos de negocio de especies 2 días mié 08/08/12 jue 09/08/12 38 Métodos de negocio de conexión 2 días vie 10/08/12 lun 13/08/12 39 Métodos de negocio de configuración 2 días mar 14/08/12 mié 15/08/12 40 Métodos de negocio de Login 2 días jue 16/08/12 vie 17/08/12 41 Métodos de negocio de especies 2 días mar 21/08/12 mié 22/08/12 42 Métodos de negocio de Noticias 2 días jue 23/08/12 vie 24/08/12 43 Métodos de negocio de Suscripciones 2 días lun 27/08/12 mar 28/08/12 44 Método de negocio del Foro 2 días mié 29/08/12 jue 30/08/12 45 Capa de Presentación 15,75 días vie 31/08/12 vie 21/09/12 46 Métodos de presentación de especies 2 días vie 31/08/12 lun 03/09/12 47 Métodos de presentación de conexión 2 días mar 04/09/12 mié 05/09/12 48 Métodos de presentación de configuración 2 días jue 06/09/12 vie 07/09/12 49 Métodos de presentación de Login 2 días lun 10/09/12 mar 11/09/1 2 50 Métodos de presentación de especies 2 días mié 12/09/12 jue 13/09/12 51 Métodos de presentación de Noticias 2 días vie 14/09/12 lun 17/09/12 52 Métodos de presentación de Suscripciones 2 días mar 18/09/12 mié 19/09/12 53 Método de presentación del Foro 2 días jue 20/09/12 vie 21/09/12 54 Capa de Webparts 14,75 días lun 24/09/12 vie 12/10/12 55 Construcción de clases 15 días lun 24/09/12 vie 12/10/12 56 Pruebas funcionales del Sistema 13,38 días lun 15/10/12 jue 01/11/12 57 Navegabilidad 5,38 días lun 15/10/12 lun 22/10/12 58 Acceso 1 día lun 15/10/12 lun 15/10/12 59 Fucionalidad 4,38 días mar 16/10/12 lun 22/10/12 60 Página Principal 4 horas mar 16/10/12 mar 16/10/12 61 Noticias 4 horas mar 16/10/12 mar 16/10/12 62 Quienes Somos 4 horas mié 17/10/12 mié 17/10/12 63 Enlaces 4 horas mié 17/10/12 mié 17/10/12 64 Correos y Contactos 4 horas jue 18/10/12 jue 18/10/12 65 Sugerencias 4 horas jue 18/10/12 jue 18/10/12 66 Animales y Plantas 4 horas vie 19/10/12 vie 19/10/12 67 Boletines Periódicos 4 horas vie 19/10/12 vie 19/10/12 68 Foro 4 horas lun 22/10/12 lun 22/10/12 69 Personalización 7 días mar 23/10/12 jue 01/11/12 70 Login 4 horas mar 23/10/12 mar 23/10/12 71 Página Principal 1,75 días mié 24/10/12 jue 25/10/12 72 Cabecera 4 horas mié 24/10/12 mié 24/10/12 73 Contenido Destacado 4 horas mié 24/10/12 mié 24/10/12 74 Eventos 4 horas jue 25/10/12 jue 25/10/12 75 Pie 4 horas jue 25/10/12 jue 25/10/12 76 Quienes Somos 0,5 días vie 26/10/12 vie 26/10/12 77 Noticias 0,5 días vie 26/10/12 vie 26/10/12 78 Enlaces 0,5 días lun 29/10/12 lun 29/10/12 79 Correos y Contactos 0,5 días lun 29/10/12 lun 29/10/12 80 Animales y Plantas 0,5 días mar 30/10/12 mar 30/10/12 81 Boletines Periódicos 0,5 días mar 30/10/12 mar 30/10/12 82 Configuación 0,5 días mié 31/10/12 mié 31/10/12 83 Foro 1 día mié 31/10/12 jue 01/11/1 2 84 Elaboración de los manuales de usuario 5 días jue 01/11/1 2 jue 08/11/1 2 85 Carga inicial de datos 1 día jue 08/11/1 2 vie 09/11/1 2 15/10 L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L M X J V S D L 23 abr '12 30 abr '12 07 may '12 14 may '12 21 may '12 28 may '12 04 jun '12 11 jun '12 18 jun '12 25 jun '12 02 jul '12 09 jul '12 16 jul '12 23 jul '12 30 jul '12 06 ago '12 13 ago '12 20 ago '12 27 ago '12 03 sep '12 10 sep '12 17 sep '12 24 sep '12 01 oct '12 08 oct '12 15 oct '12 22 oct '12 29 oct '12 0 5 mayo 2012 j unio 2012 j ulio 2012 agosto 2012 septiembre 2012 octubre 2012 noviembre Tarea División Hito Resumen Tarea resumida División resumida Hito resumido Progreso resumido Tareas externas Resumen del proyecto Hito externo Tarea inactiva Hito inactivo Resumen inactivo Tarea manual Sólo duración Informe de resumen manual Resumen manual Sólo el comienzo Sólo fin Progreso Fecha límite Página 1 Proyecto: SNIF Fecha: 29 de agosto 2008