Sistema para el Análisis de Problemas (SAEP) Diseño Conceptual y requerimientos funcionales V1 (2011) El presente documento reúne el diseño conceptual y de requerimientos funcionales del sistema SAEP realizado en el 2010 y el primer semestre del 2011. Actualmente el SAEP abre la posibilidad a ser integrado con otros proyectos de desarrollo local y toma de decisiones. Por ello, en el presente diseño se da un primer paso para ampliar el SAEP con un sistema para el monitoreo de aguas. Carlos Andrés Méndez Rodríguez 25/07/2011 Sistema para el Análisis Espacial de Problemas (SAEP) Diseño conceptual y requerimientos funcionales. Métricas (Transformador) 1. 2. 3. 4. 5. Actores Sociales “Contenedores” (También Transformador) 1. 2. 3. 4. 5. 6. 7. Semana 1 Las métricas son fórmulas que relacionan los atributos de una categoría (Base de datos SIRZEE). En la realización de la métrica se pueden incluir números constantes (enteros y decimales). Las métricas empleadas quedan registradas en el sistema. Los atributos de una métrica son: Nombre (cadena), descripción (archivo html o pdf), autorNombre (cadena), autorFecha (cadena), autorURL(cadena). Permitir operaciones como sumar, multiplicar, dividir, restar, promedio y porcentaje. Semana 1, 2 y 3 Un actor social es un contenedor o componente de transformación. La creación de un contenedor implica la inclusión una lista de insumos (producidos por otros contenedores o no), una o más funciones de transformación (métricas) y un producto (opcionalmente una lista de productos). El contenedor puede estar compuesto de otros contenedores (ver abajo “Taller”). Esto es que, los productos que genera un actor social pueden ser insumos en otro actor social. Atributos del contenedor: ver anexo Componente. Operaciones requeridas: crear contenedor, ejecutar contenedor, eliminar contenedor, modificar contenedor, agregar métrica a contenedor, eliminar métrica a contenedor, agregar insumos, eliminar insumos, agregar productos, eliminar productos, editar nombre, editar descripción (archivo html o pdf), editar icono, editar autorNombre, editar autorInst, editar autorFecha, editar version, editar autorURL, editar insumo, editar unidadMedidaInsumo y editar pureza. Los contenedores tienen un atributo icono (el icono tiene coordenadas) por lo que pueden ser espacialmente georeferenciados. Al hacer click en el icono, deben visualizarse los atributos del componente de transformación asociado y la operación de ejecutar contenedor. 8. 8. Sistema puntuación: Adicionalmente, cada componente de transformación debe tener como atributo “votos” (del tipo Entero). Se requiere una operación “votar” similar a otros sitios como youtube y facebook. 9. Sistema de comentarios: Asimismo, el componente de transformación tiene como atributo una lista de comentarios. En vez de tener un blog en un sitio separado, se desea tener la operación de insertar comentario inmediatamente después de abrir el componente de transformación. 10. El usuario le puede subir un icono deseado, como en siguiente imagen (operaciones requeridas: agregar y modificar icono): Ejemplos de contenedores: Vivienda, taller, fábrica, centro de educación, entre otros. Ejemplo de anidamiento: Categorías (componente de datos) Semana 4 1. Una categoría (Entidad) representa un tipo de dato almacenado en la base de datos del SIRZEE. 2. Una categoría puede tener varios atributos. (Las métricas realizan operaciones con los atributos) 3. Las categorías y sus atributos son editables sólo por los profesores. Asimismo, el creador de la categoría debe otorgar el permiso. 4. La inserción de datos puede realizarse subiendo un archivo de Excel (también requiere permiso). 5. El administrador de la base de datos del SIRZEE debe incluir este proyecto en la base de datos. Es importante que siempre se conozca si un dato pertenece al proyecto o no. 6. Además, los componentes de datos tienen un atributo “veracidad” que indica si los datos son reales o no. Usuarios y Equipos Buscador 1. Los permisos del uso del sistema son otorgados a usuarios que pueden ser estudiantes o profesores. 2. Un equipo está conformado por al menos un usuario. 3. Los permisos de modificación de categorías son otorgados únicamente a usuarios (de profesores). 1. El sistema debe permitir la búsqueda de contenedores y métricas dado un nombre, un autorNombre, o zona geográfica. NUEVO Dirección URL Es importante una dirección URL concisa, corta, fácil de recordar y que funcione sin el www. Metadatos Sería conveniente el uso de etiquetas que describen el contenido del sitio e incorporan palabras claves que facilitarán a los motores de búsqueda encontrarlo en sus resultados. Noticias Debe tener una sección de noticias recientes para dar a conocer componentes (de transformación y de datos) que los equipos han incorporado. Formulario Información de contacto (correos, teléfonos, dirección física) de los de Contacto encargados del mantenimiento del sitio. Además en caso de existir un encargado de evaluar y aprobar los componentes, se requiere un formulario para su contacto y envío de documentos. Retroalimentación Tener algún sistema que le permita al usuario calificar las funcionalidades del sistema. Por ejemplo: “¿Le resultó útil?” y “Exprese su opinión”. Asimismo, los encargados del mantenimiento del sitio deben poner acceder a dicha información. Guía de usuario En el menú de ayuda mostrar los objetivos del SAEP, sugerencias para alcanzarlos y una sección de preguntas frecuentes. Lo ideal es contar con un personaje guía interactivo (con opción de ocultar-mostrar) que ofrezca sugerencias, pasos o “tips” al usuario. Titles Cuando el mouse señale un ícono, debe mostrar un título o mensaje. Ej. Los íconos de los contenedores deben mostrar el nombreComponente o autorNombre. Versión JUEGO Motivaciones Actores Sociales Taller Es conveniente motivar el uso del sistema a los usuarios mediante ciertas facilidades y técnicas. Observar el sistema como un juego simulador puede estimular su uso máxime que son estudiantes de octavo año. Aspectos que se mejoran con esta versión: 1. Facilitar la toma de decisiones de los usuarios respecto a datos geolocalizables: sistemas de transporte, planeación de la arquitectura urbanística, planificación del uso del suelo y generar el encadenamiento productivo (contenedores anidados). 2. La interrelación de los equipos. Esto debido a la existencia de una mayor comunicación y el sistema de puntuación. Cambiar el nombre de “Contenedor” por “Actor Social”. Algunos Actores Sociales que aparecerán en el inicio del juego son un centro de acopio, una fábrica de tintes orgánicos, una fábrica de papel de banano y una empresa suministradora de agua reutilizada. Área de trabajo donde se pueden ir integrando Componentes, permitiendo la creación de componentes de mayor complejidad. Una vez concluido y probado el trabajo de modelado se pone a disposición el nuevo actor en la ventana respectiva. Lo ideal Para diseñar en el taller, el usuario solo debe hacer uso del “drag and drop” de Actores sociales, los interrelaciona e inclusive los puede anidar. Tal como se muestra en la siguiente figura: Otras opciones Debido al costo de programar lo ideado, una opción es la utilización de herramientas de interfaz html como el combo box y forms. El despliegue de los Actores Sociales deberá ser actualizado. Encargado de evaluación Si se crea un juego donde los distintos colegios compiten sería conveniente asignar un encargado que evalúe las investigaciones realizadas por los Sistema de puntuación equipos. De esta manera, la evaluación es imparcial y asignará un puntaje equitativo. Otorgar 100 puntos por la creación de un componente (Actor Social o componente de datos). Por cada insumo que pueda ser proveído por otro actor social ganará 50 puntos adicionales. Tanto el equipo con el actor demandante como el proveedor ganarán los 50 puntos. En el juego, los Actores Sociales son beneficiosos o productivos en la economía de la Región Huetar Norte. Por lo tanto cada 24hrs los equipos pueden reclamar 5 puntos por cada Actor Social que tengan. Para ello, basta con hacer click en el componente. Cuando el mouse sobre posicione el icono, un title deberá informar al usuario que ya puede reclamar los puntos. INDEPENDENCIA DE BASES DE DATOS SEAP Plataforma SIRZEE Base de datos Otros Modulos SEAP El SEAP propuesto puede implicar una inevitable ampliación de los archivos del host y entidades en la base de datos de la Plataforma SIRZEE. No obstante, hay que separar en la medida posible en otros módulos de programación esta ampliación y dejar la Plataforma SIRZEE lo más independiente posible; esto por dos razones: 1. En el futuro se pueden requerir habilitar otras versiones del SAEP por lo que dificultará sus construcciones y mantenimientos. 2. Por la seguridad de la base de datos del SIRZEE. No deseamos, que los datos suministrados por estudiantes se combinen con los datos oficiales que la Plataforma SIRZEE utiliza en otros proyectos. Diagrama de casos de uso SAEP + MONITOREO AGUA La propuesta es incluir en el SAEP el sistema para el monitoreo de agua, tal como se muestra en el siguiente diagrama. El usuario inicialmente consulta el mapa y luego selecciona en los componentes de datos (capas / categorías) lo que desea observar: estaciones para el monitoreo del agua, actores sociales (transformadores), carreteras, ríos, distritos o cualquier otro dato. Una solución es utilizar el sistema para el monitoreo de aguas “Juturna” ofrecido por el profesor Martin Bunch de la Universidad de York, Canadá bajo la Licencia Pública General GNU. Más información en http://www.juturna.ca Sin embargo, debemos terminar de analizar algunos aspectos como los requerimientos de instalación, los lenguajes de programación utilizados, la integración que podamos realizar con el SAEP, y el costo de implementar e implantar el sistema, así como su mantenimiento futuro. Por otra parte, el presente diseño debe ser ampliado y sometido a constante desarrollo para incorporar nuevos requerimientos demandados por otros proyectos (para toma de decisiones), tales como “volcán” en el observatorio, sistemas de información local (ej, Santa Ana). En otras palabras, un atributo de calidad que el diseño debe mantener es escalabilidad, esto porque algunos de los posibles nuevos requerimientos no están determinados aún. ANEXOS Modelo para el Análisis Espacial de Problemas (MAEP) El sistema propuesto es una herramienta de propósito general que permite: simular, experimentar, medir, administrar y analizar problemas contextualmente situados geográficamente. El sistema está concebido para ser usado en procesos de toma de decisiones respecto a datos geolocalizables y en la educación ambiental de estudiantes de octavo año del sistema educativo costarricense. Sin embargo su concepción de implementación incremental, y su facilidad de integración le permite crecer en sofisticación y complejidad, permitiendo su uso en contextos más amplios. Está conceptuado como una construcción en bloques incrementales, conectados funcionalmente unos a otros formando redes, permitiéndose que unos bloques estén contenidos en otros. De esta forma, se constituyen en unidades de proceso, transformación y transferencia de información. El sistema propuesto está orientado amistosamente al usuario, permitiendo fácilmente su manejo, construcción e interpretación. Sin embargo, sus herramientas de conexión, construcción, la incorporación de un sistema estadístico y las transferencias de información, lo constituyen como una herramienta de análisis, experimentación y evaluación en la simulación, comprensión y construcción de problemas. La especificidad de esos bloques constructivos, relaciones y parámetros de análisis, definen su marco de referencia de uso. En ese sentido, si bien se hace una exposición general de sus componentes, como ejemplo específico se buscará tratar el problema del manejo de residuos sólidos, su contexto social, su administración, etc. que le permitirá al estudiante de secundaria la generación de propuestas, experimentación y análisis sobre ese tema. Se prevé que el sistema pueda integrar datos tanto digitados, leídos de archivos o bases de datos, como suministrados por componentes de mediación externos de conexión a puerto. Específicamente se propone el diseño e implementación de acumuladores de datos provenientes de dispositivos de sensado de variables medio ambientales, como temperatura, humedad relativa, pluviosidad, luminosisdad solar y otras, lo que le permitirán al usuario vincular el modelo virtual de representación de su comunidad, con variables ambientales reales y de esta forma ajustar su estudio, análisis, y simulaciones a su realidad cotidiana. El diseño del Maep se asienta en la Internet y por lo tanto posee las facilidades de comunicación que brinda esta red. Podrá funcionar tanto auto-contenido localmente en un computador, como en diálogo dinámico entre usuarios o comunidades de usuarios. Los siguientes son módulos del SAEP A. Modelador de hechos (MH): Banco de trabajo para la creación de actores sociales. Misión La misión del MH es la de fomentar la creatividad de los usuarios, quienes solos o en equipo trabajan en el diseño, implementación y distribución de actores sociales. Para referirse a estos actores sociales se usarán también los nombres de clases o de componentes, siendo así que cada una de ellas tendrá asociado un nombre, una descripción y un conjunto de iconos, así como un conjunto de funciones definidas por el usuario para su aprovechamiento. Propósito Brindarle una herramienta gráfica al usuario mediante la cual se puedan crear nuevas clases reutilizables en diversas sesiones. Descripción Mediante el uso de este módulo el usuario crea componentes de dos tipos: componentes de datos y componentes transformadores. Para lo cual se van a tener una serie de ventanas y de cajas de herramientas a disposición, cuya descripción se da a continuación. Los componentes de datos almacenan datos de una dimensión dada y pueden asociarse con otros componentes, por ende cada componente de datos debe contener al menos la definición de una entidad así como diversas asociaciones. Los componentes transformadores poseen funciones de transformación que permiten tomar una o más entradas, así como diversas constantes o funciones de transformación y generar con ello nuevos valores. Ej: Para posibilitar la reutilización de componentes cargados en tiempo de ejecución, se dispone de una API estandarizada que sigue el paradigma de diseño basado en componentes, lo que permite el aprovechamiento de datos de entrada, así como brindar información sobre la funcionalidad que posee el componente y las salidas que produce, para ello –entre otras funciones- se proveen las siguientes: Ejemplo de un componente transformador Descripción: Ejemplo de una posible jerarquía de categorías que permiten el manejo de residuos sólidos. Para la creación de esta jerarquía, se podría plantear que el manejo especializado de residuos sólidos incrementa la reutilización de los mismos, siendo así que entre mayor sea la uniformidad (homogenidad) del residuo, mayor será el valorKilo que alcance. Clase: Residuo Atributos de la clase: produccionPerCapita (kilos por semana) Composición elemento porcentaje gradoContaminante factorDeDescomposicion funcionDeTransformacion() factorHomogeneidad valorKilo La clase Residuo se puede especializar ortogonalmente en cada una de las siguientes clases: Residuo_Organico Residuo_Aluminio Residuo_Vidrio Residuo_Carton Residuo_Papel Residuo_Plastico Residuo_Metal ComponenteTransformador Para los propósitos del caso se va a entender un ComponenteTransformador como un “Actor Social” definido dentro del modelo, que posee una lista de insumos, una o más funciones de transformación y una lista de los productos que genera. Los objetos de tipo ComponenteTransformador se pueden crear, relacionar y usar dentro de otros componentes (sea para uniformar el tipo de unidades, la temporalidad o simplemente para permitir que el usuario invente una función de transformación más adecuada con sus intereses). Ejemplos de ComponenteTransformador Vivienda Taller Comercio Agro Centro Educativo Centro Salud Medio de transporte Centro de acopio Botadero / Vertedero Incinerador Dentro del Maep los actores sociales del ejemplo anterior se conceptualizan como consumidores, transformadores y generadores de residuos sólidos que pueden dirigirse hacia diversos sitios: centros de acopio, cuerpos de agua, carreteras. Componentes de la interfaz gráfica Además de la barra de herramientas para el manejo aspectos de edición, formato y manejo de artefactos, el juego constará de las siguientes ventanas: Taller Área de trabajo donde se pueden ir integrando Componentes, permitiendo la creación de componentes de mayor complejidad. Para diseñar en el taller, el usuario solo debe hacer uso del “drag and drop” de Actores sociales, los interrelaciona e inclusive los puede anidar. Es responsabilidad del usuario velar por las debidas relaciones entre puertos de entrada y de salida según se aprecia en la siguiente figura, así como guardar los diversos actores mientras se modelan. Una vez concluido y probado el trabajo de modelado se pone a disposición el nuevo actor en la ventana respectiva. Actores sociales Ventana donde se muestran todos aquellos componentes desarrollados completamente en el taller. Una vez finalizada la labor en el taller, si se decide guardar un nuevo Componente, éste solo se exportará como Actor Social y se mostrará en dicha ventana. B. Modulo: Modelador de Entornos Misión Fomentar el uso creativo del Maep en un ambiente concreto, sea comunidad, institución académica u otro, permitiéndole al usuario diseñar tal ambiente empleando el concepto de capas y de base de datos espacial. Propósito Permitir que el usuario gestione el área donde se va a realizar la simulación. Descripción En este módulo se cuenta una interfaz de SIG que les permite a los usuarios modelar y visualizar su entorno (sea su institución o área geográfica de su preferencia). Los mapas que se utilizan pueden ser "shapes" creados por el usuario. Forma de trabajo Este módulo reconoce un mecanismo para la gestión de mapas: [1] Usar mapas digitalizados. El usuario podrá usar un mapa digital a escala como área de interés, y también puede definir nuevas capas sobre el mismo. Asociado con estos mapas el usuario puede tener tablas con datos. Las tablas de datos también pueden generarse automáticamente mediante la interrelación de componentes en el ambiente, pero la interfaz tipo SIG debe identificar que se trata de una simulación y no de datos reales (lo anterior para evitar confusiones). Una vez definida la escala, el usuario va a poder arrastrar actores hacia el área de creación de entornos. Funciones básicas requeridas Acerca de capas a. Cargar capa b. Guardar capa Acerca de datos c. Importar base de datos d. Guardar base de datos e. Asociar datos con mapa Acerca de edición gráfica f. Arrastrar Componente hacia localidad específica, sea desde MH o desde un lugar hacia otro en la misma capa. Acerca de funcionalidad especializada g. Definir recorrido con base en parametrización hecha por el usuario. Por ejemplo dado un conjunto de caminos transitables por un camión recolector de residuos (puede gestionarse como capa de caminos vecinales), y dado un rol de recolección basado en número de unidades disponibles y en periodicidad y tipo de recolección que se haga, se requiere establecer un conjunto de rutas que permitan satisfacer el rol de recolección definido por el usuario.