• No se han encontrado resultados

Sistema de gestión de reportes

N/A
N/A
Protected

Academic year: 2020

Share "Sistema de gestión de reportes"

Copied!
63
0
0

Texto completo

(1)Universidad Central “Marta Abreu” de Las Villas Facultad de Matemática, Física y Computación. . TRABAJO DE DIPLOMA “Sistema de Gestión de Reportes.”. AUTOR Maykel Lucilo Alonso Martínez. TUTORES Dr. C. –Ing. Inty Sáez Mosquera Ing. Adrián González Oliva. SANTA CLARA - 2009 “Año del 50 Aniversario del Triunfo de la Revolución”. 1.

(2) Dictamen.. Hago constar que el presente trabajo fue realizado en la Universidad Central “Marta Abreu” de Las Villas como parte de la culminación de los estudios de la especialidad de Ciencia de la Computación, autorizando a que el mismo sea utilizado por la institución, para los fines que estime conveniente, tanto de forma parcial como total y que además no podrá ser presentado en eventos ni publicado sin la autorización de la Universidad.. ___________________ Firma del autor. Los abajo firmantes, certificamos que el presente trabajo ha sido realizado según acuerdos de la dirección de nuestro centro y el mismo cumple con los requisitos que debe tener un trabajo de esta envergadura referido a la temática señalada.. ________________ Firma del tutor. _____________________ Firma del jefe del Laboratorio. 2.

(3) 3.

(4) En la vida triunfan aquellos que no se dejan abrumar por el fracaso, aquellos que se levantan cada vez que se caen, aquellos que no se cansan nunca de perseguir sus sueños. Lens Cejudo. 4.

(5) Dedico todo el esfuerzo realizado en este trabajo: A mis padres y familia que me han forjado y sustentado hasta aquí.. 5.

(6) A mi compañera de toda una vida Rosabel, por su apoyo en todos los momentos difíciles de la carrera. A mi hijo Luis Daniel motor de todos mis esfuerzos. Agradezco especialmente mis tutores Dr. C. –Ing. Inty Sáez Mosquera Ing. Adrián González Oliva al Ing. Julio Cesas Báez Vergara, al Ing Yenier Cruz Brito y. 6.

(7) a todos los profesores y estudiantes que me han apoyado Incondicionalmente en este proyecto. A mi suegro Rolando por su apoyo en los momentos que necesite de el. A todos mis amigos El moñi, Julito, Viti, Alcuria, Yorday y Franklin, especialmente valiosos para mí por hacerme sentir que siempre estarán cuando los necesito.. 7.

(8) Resumen El presente trabajo consiste en el diseño e implementación de un sistema de gestión de reportes que permita relacionar la información requerida con el contexto empresarial en que se emplean, que lidie con la heterogeneidad de formatos existente entre y dentro de los flujos de trabajo. El sistema se implementa como una aplicación Web con arquitectura cliente-servidor, desarrollada en Adobe Flex 3, en el cual se usaron lenguajes como MXML, Action Script 3 y E4X (este ultimo para el trabajo con XML) todos soportados por esta plataforma componiendo el FrontEnd, el BackEnd fue desarrollado usando PHP-MySQL. Mediante los subsistemas que componen los módulos de gestión de reportes y administración, se logra realizar con facilidad todas las actividades de este sistema.. Abstract. 8.

(9) The main purpose of this research is to design and implement a management reporting system able to link the information required by the knowledge worker to the business context where it is used, and deal with the heterogeneity of formats that exist within and between workflows. The system is implemented as a web application with client-server architecture, developed in Adobe Flex 3, using languages such as MXML, Action Script 3 and E4X (the latter to work with XML), all supported by the composition of this platform it is called the FrontEnd, the BackEnd was developed using PHP-MySQL.. 9.

(10) Índice INTRODUCCIÓN ......................................................................................................................................... 1 CAPÍTULO 1: MARCO TEÓRICO REFERENCIAL. .......................................................................... 4 1.1 INTERCAMBIO DE INFORMACIÓN ENTRE LOS FLUJOS DE TRABAJOS.........................................................4 1.1.1 Heterogeneidad estructural de los formatos de intercambio de información. ........6 1.1.2 Recuperación de la información. .........................................................................................6 1.2 ASOCIACIÓN DE LA INFORMACIÓN CON EL CONTEXTO EMPRESARIAL EN QUE SE CREA. .........................8 1.3 SERVICIOS DE REPORTES...........................................................................................................................12 1.3.1 Soluciones Existentes ..................................................................................................................14 1.3.1.1 Alcance. ..................................................................................................................................................... 15. 1.4 CONCLUSIONES PARCIALES. ......................................................................................................................17 CAPÍTULO 2: DISEÑO DE LA SOLUCIÓN. ................................................................................... 18 2.1. ETAPA DE ANÁLISIS Y DISEÑO DEL SISTEMA...........................................................................................18 2.1.1. Diagrama de actividades. .........................................................................................................19 2.1.2. Actores del sistema y sus funciones. ...................................................................................20 2.1.3. Casos de uso generales del sistema. ...................................................................................21 2.1.4. Descripción de los casos de uso generales del sistema. ..............................................22 2.1.5. Diseño de la base de datos. ....................................................................................................25 2.2. ETAPA DE IMPLEMENTACIÓN. ....................................................................................................................28 2.2.1. Herramientas utilizadas en la etapa de implementación. ............................................28 2.3 CONCLUSIONES PARCIALES ........................................................................................................................32 CAPÍTULO 3: MANUAL DE USUARIOS. .......................................................................................... 34 3.1 CARACTERÍSTICAS GENERALES DEL SISTEMA..........................................................................................34 3.1.1 Requerimientos mínimos. ..........................................................................................................34 3.1.2 Instalación. ......................................................................................................................................35 3.2 AUTENTIFICACIÓN EN EL SISTEMA. ...........................................................................................................35 3.3 DESCRIPCIÓN DEL MÓDULO GESTIÓN DE REPORTES. ........................................................................36 3.3.1 Crear y Modificar Reportes. ......................................................................................................37 3.3.1.1 3.3.1.2 3.3.1.3 3.3.1.4. Insertar Texto. ........................................................................................................................................ 38 Insertar Imagen. .................................................................................................................................... 39 Lista de consultas. ................................................................................................................................. 39 Tablas y Gráficos. .................................................................................................................................. 40. 3.3.2 Lista de Reportes. .........................................................................................................................44 3.4 MÓDULO DE ADMINISTRACIÓN..................................................................................................................45 3.4.1 Crear Usuarios. ..............................................................................................................................46 3.4.2 Ver y Eliminar Usuarios. .............................................................................................................46 3.4.3 Departamentos ..............................................................................................................................47 3.5 CONCLUSIONES PARCIALES. ......................................................................................................................48 CONCLUSIONES GENERALES ............................................................................................................. 49 RECOMENDACIONES ............................................................................................................................. 50. 10.

(11) BIBLIOGRAFÍA ......................................................................................................................................... 51. 11.

(12) Introducción En un tiempo, las organizaciones dependían de sus departamentos de sistemas de información para proporcionarles reportes estándar y personalizados. Esto ocurrió en los días de los mainframes y mini computadoras, cuando la mayoría de los usuarios no tenía acceso directo a las computadoras. Sin embargo, esto comenzó a cambiar en los años 70’s cuando los sistemas basados en servidores se convirtieron en la moda. Aún así estos sistemas eran usados principalmente para transacciones de negocios y sus capacidades de realizar reportes se limitaba a un número predefinido de ellos. Los sistemas de información se sobrecargaban y los usuarios tenían que esperar por días o semanas para obtener sus reportes en caso que requirieran reportes distintos a los estándares disponibles. Los sistemas de información actuales pueden ser entendidos como un conjunto de aplicaciones diversas y subsistemas, que deben ser integrados y coordinados para resolver necesidades particulares en las organizaciones. Cada vez existen más estudios orientados a analizar la información como factor clave para la toma de decisiones en la empresa, clave de la gestión empresarial, y eje conceptual sobre el que gravitan los sistemas de información empresariales. Para que la información pueda utilizarse de modo eficiente, debe ser de confianza, apropiada, importante, fácil de usar y utilizada en su contexto .[1] Con el paso del tiempo, fueron desarrollados los sistemas de información ejecutiva (EIS, por sus siglas en inglés), los cuales fueron adaptados para apoyar a las necesidades de ejecutivos y administradores. Con la entrada de la PC, y de computadoras en red proveyeron a los usuarios de la tecnología para crear sus propios reportes.[2] El objetivo de este trabajo es precisamente diseñar e implementar un Sistema de Gestión de reportes que permita relacionar la información requerida con el contexto 1.

(13) empresarial en que se emplean y que lidie con la heterogeneidad de formatos existente entre y dentro de los flujos de trabajo. Para esto se decidió que el sistema se implemente como una aplicación Web con arquitectura cliente-servidor. El contenido de la tesis fue dividido en tres capítulos. En el primer capítulo se describe el marco teórico de la temática y se aborda sobre el estado actual de los sistemas para la administración de reportes en las empresas. Se plantea de la importancia de solucionar el problema de relacionar la información requerida con el contexto empresarial en que se emplean y que lidien con la heterogeneidad de formatos existente entre y dentro de los flujos de trabajo. En el capítulo dos se exponen las etapas de análisis, diseño e implementación, explicando en cada caso las herramientas utilizadas. Por último, en el capítulo número tres se realiza una guía detallada para el navegador y se brinda una serie de especificaciones y características. generales. del. funcionamiento. del. sistema,. tanto. para. los. administradores como para los usuarios del mismo. Problema Científico La no existencia de una solución que permita relacionar la información requerida con el contexto empresarial en que se emplean y que permita reducir progresivamente la heterogeneidad de formatos existente, tanto entre como dentro de los flujos de trabajo, constituye un problema científico a resolver. Hipótesis General de la Investigación: El diseño e implementación de una solución que permita relacionar la información requerida con el contexto empresarial en que se emplean, que lidie con la heterogeneidad de formatos existente entre y dentro de los flujos de trabajo, constituye una solución al problema científico planteado. Objetivo general de la investigación Crear un Sistema de Gestión de reportes que permita relacionar la información requerida con el contexto empresarial en que se emplean y que lidie con la heterogeneidad de formatos existente entre y dentro de los flujos de trabajo. 2.

(14) Objetivos específicos de la investigación 1. Realizar un diseño estructural y visual del sistema. 2. Implementar el módulo de “Gestión de Reportes”. 3. Implementar un módulo de “Administración”.. 3.

(15) Capítulo 1: Marco teórico referencial. La evolución de los sistemas de información debe conducir a una forma alternativa de pensar en el problema de la heterogeneidad de las fuentes, el acceso a la información,. así. como. su. representación,. organización,. estructuración. y. almacenamiento. En este capítulo se hace referencia al intercambio de información entre los flujos de trabajos que existen en una empresa en la actualidad, un análisis de la heterogeneidad estructural de formatos en ese intercambio de información donde se aborda sobre algunos conceptos como “Flujos de Trabajos”, una investigación acerca de las fuentes de información, como recuperar dicha información de ellas enfocado en las bases de datos.[3]. 1.1 Intercambio de información entre los flujos de trabajos. El ambiente del mundo de los negocios de hoy exige una aplicación cada vez más eficiente de la información disponible. Algo peor que no tener dicha información es tener mucha y no saber qué hacer con ella. En este nuevo mundo, la información reina. Vivimos en una época en que la información es la clave para obtener una ventaja competitiva en el mundo de los negocios.[4] El término "Flujo de Trabajo", hace referencia a la gestión modelada de todas las tareas que deben llevarse a cabo y de los distintos protagonistas involucrados en realizar el proceso de negocios (también llamado proceso operativo).[5] De todas las empresas existe un gran número de flujos de trabajo, en su gran mayoría, y para que una tarea se considere terminada tiene que pasar, por todos y cada uno de los pasos que conforman el Flujo de Trabajo. Las reglas del Flujo de Trabajo son definidas por la compañía. Dentro de estos flujos de trabajos existen problemas como: dependencia al uso del papel, dificultad para llevar un registro del estatus de la tarea y problemas para medir el tiempo de proceso y costo .[6]. 4.

(16) El Flujo de Trabajo le proporciona a cada protagonista la información necesaria para que pueda completar su tarea, esto trae como consecuencia que haya un intercambio de información entre los procesos de negocios de la empresa. Hasta hace poco, el correo electrónico, el intercambio electrónico de datos (EDI) y las redes públicas como Internet, habían definido el panorama de la conectividad Interempresarial. Estas herramientas trabajan bien en el caso de intercambio de información simple y en el de las transacciones estructuradas, pero no se adaptan con la misma precisión a las aplicaciones colaborativas de negocio a negocio, que trasladan documentos a través de un proceso de varias etapas.[7] Para ampliar las posibilidades de la empresa, hay que considerar varios criterios al elegir una plataforma de comunicaciones: soporte de múltiples plataformas para entornos operativos heterogéneos, seguridad robusta y multinivel, conectividad abierta y flexible, capacidades de desarrollo y distribución rápida para las aplicaciones y documentos, herramientas de trabajo para usuarios de informática móvil. Un entorno cliente/servidor debe facilitar la rápida creación de documentos, permitir la distribución automática y el mantenimiento de los mismos, operar a través de las principales plataformas y redes cliente/servidor, permitir trabajar a usuarios temporales y a los que necesitan viajar (incluso cuando estén desconectados).[7] La distribución automatizada resuelve muchos de los problemas a los que se enfrentan las organizaciones en la actualidad. Anteriormente no existían las herramientas adecuadas para gestionar la gran variedad de documentación informativa y que constituye la clave de la mayoría de los procesos empresariales. Aun así en la era de la Tecnología de la Información resulta sorprendente comprobar que muchos procesos comerciales aún se basan en el intercambio de documentos comerciales tradicionales impresos manualmente.. 5.

(17) 1.1.1. Heterogeneidad. estructural. de. los. formatos. de. intercambio. de. información. La diversidad de sistemas, subsistemas y aplicaciones legales que persisten en las organizaciones generó un problema adicional: la heterogeneidad de tipo estructural de los formatos en que los datos son expresados, esto ha reducido en cierta medida los esfuerzos de las organizaciones para estar mejor informadas. En la actualidad los sistemas de información tienen que lidiar con una gran variedad de formatos para el intercambio de información entre los procesos empresariales, esto dificulta en cierta medida la interoperatibilidad de esta, es decir la operatividad de los sistemas con esta información debido a que no siempre encuentran esta en un mismo formato y a veces es difícil cambiarla al que se desea. La comunidad científica ha tomado estrategias para disminuir la heterogeneidad estructural de formatos tratando de que toda la información que fluye entre y a través de los flujos de trabajos converja hacia un mismo formato, evitando así que la información final sea heterogénea; otra medida que se ha tomado para resolver este problema es implementando sistemas flexibles a varios de estos formatos logrando así que el impacto de este no disminuya la interoperatividad de la información que a su vez se necesita para ayudarles para tomar mejores decisiones, ser mas ágiles como organización y tener una mayor comprensión de sus negocios. 1.1.2 Recuperación de la información. Para mantenerse competitiva una empresa, los gerentes y tomadores de decisiones requieren de un acceso rápido y fácil a información útil y valiosa de la empresa. Los sistemas operacionales procesan datos para apoyar las necesidades operacionales críticas. Para hacer eso, se han creado las bases de datos operacionales históricas que proveen una estructura de procesamiento eficiente, para un número relativamente pequeño de transacciones comerciales bien definidas.. 6.

(18) Sin embargo, a causa del enfoque limitado de los sistemas operacionales, las bases de datos diseñadas para soportar estos sistemas, tienen dificultad al acceder a los datos para otra gestión o propósitos informáticos. Esta dificultad en acceder a los datos operacionales es amplificada por el hecho que muchos de estos sistemas tienen de 10 a 15 años de antigüedad. El tiempo de algunos de estos sistemas significa que la tecnología de acceso a los datos disponible para obtener los datos operacionales, es así mismo antigua. Si se desea ampliar un negocio, se necesita que la información sea comprensible, para muchas empresas esto significa un gran Data Warehouse que muestre, junto a los datos no filtrados y dispersos, nuevas formas creativas de presentación de dicha información. Ciertamente, la meta de Data Warehousing es liberar la información que es almacenada en bases de datos operacionales y combinarla con la información desde otra fuente de datos, generalmente externa. El nivel de acceso a la información de la arquitectura data Warehouse, es el nivel del que el usuario final se encarga directamente. En particular, representa las herramientas que el usuario final normalmente usa día a día. Por ejemplo: Excel, LOTUS 1-2-3, FOCUS, Access, SAS, etc. Este nivel también incluye el hardware y software involucrados en mostrar información en pantalla y emitir reportes de impresión, hojas de cálculo, gráficos y diagramas para el análisis y presentación. Actualmente, existen herramientas más y más sofisticadas para manipular, analizar y presentar los datos, sin embargo, hay problemas significativos al tratar de convertir los datos tal como han sido recolectados y que se encuentran contenidos en los sistemas operacionales en información fácil y transparente para las herramientas de los usuarios finales. Una de las claves para esto es encontrar un lenguaje de datos común que puede usarse a través de toda la empresa.. 7.

(19) El nivel de acceso a los datos de la arquitectura Data Warehouse está involucrado con el nivel de acceso a la información para conversar en el nivel operacional. En la red mundial de hoy, el lenguaje de datos común que ha surgido es SQL. Originalmente, SQL fue desarrollado por IBM como un lenguaje de consulta, pero en los últimos veinte años ha llegado a ser el estándar para el intercambio de datos. El nivel de acceso a los datos no solamente conecta DBMSS diferentes y sistemas de archivos sobre el mismo hardware, sino también a los fabricantes y protocolos de red. Una de las claves de una estrategia Data Warehousing es proveer a los usuarios finales con "acceso a datos universales".[7, 8] El acceso a los datos universales significa que, teóricamente por lo menos, los usuarios finales sin tener en cuenta la herramienta de acceso a la información o ubicación, deberían ser capaces de acceder a cualquier o todos los datos en la empresa que es necesaria para ellos, para hacer su trabajo.. 1.2 Asociación de la información con el contexto empresarial en que se crea. La información es un recurso clave para cualquier tipo de organización e insistir en la necesidad de gestionarla de forma eficiente puede resultar, cuanto menos, repetitivo. Nadie se atrevería a cuestionar su valor como algo que fomenta la productividad, la innovación, capaz de permitir un mayor acercamiento y proximidad tanto con clientes como con proveedores. El diseño de nuevos productos y servicios, la eficiencia de las operaciones y la capacidad de reaccionar ante cambios en el entorno competitivo depende, en gran medida, de la capacidad de adquirir, procesar y analizar información procedente de distintas fuentes, tanto internas como externas, y de asegurar su calidad e integridad. Siguiendo las prácticas de esta disciplina, las organizaciones han comenzado a considerar la criticidad de ampliar el marco tradicional de la gestión de información, limitado habitualmente a la información procedente del exterior y gestionada desde los “centros de documentación” y “centros de procesamiento de datos” tradicionales. El nuevo marco debe gestionar también una información mucho más difícil de capturar y compartir, debido a su carácter implícito: el conocimiento que reside en la experiencia de sus propios empleados y, principal mente, el. 8.

(20) situado en los equipos, que puede generarse a partir de la interacción entre personas en el entorno de trabajo. El control de las distintas actividades desarrolladas por una organización encaminadas a la captura, organización y uso de la información. En los últimos años, la generalización de la gestión del conocimiento ha supuesto un gran paso hacia adelante en la optimización de los procesos y de las prácticas dirigidas a la gestión eficiente de la información. Las nuevas tendencias en este sentido es la gestión de la memoria de la organización, donde se planifica, organiza y se controla el stock de los activos de conocimiento de la organización con el propósito de adaptarse de forma ágil a cambios en el entorno. Es necesario que todos los activos de conocimiento estén contextualizados para que tenga valor para la organización, una de las estrategias que se utiliza es vincular la información que se consumen por los flujos de trabajos a los procesos definidos en la empresa. Muchas organizaciones como estrategia para definir sus procesos de negocio utilizan Frameworks de clasificación de procesos que han sido aceptados como estándares. En el caso de procesos de la cadena de suministro SCOR ha sido el mas aceptado y adoptado. En el caso de los procesos internos de las empresas, el centro americano de procesos de calidad y productividad (APQC, siglas en ingles) propone PCF (Process Classification Framework).. El modelo SCOR (Supply Chain Operations Reference Model, Modelo SCOR) es un framework para modelar, analizar y configurar Cadenas de Suministro; fue desarrollado en 1996 por el consejo de la cadena de suministro(SCC, siglas en ingles), una organización sin ánimo de lucro. Dado que el modelo emplea componentes básicos de proceso para describir la CS, puede emplearse para representar CS muy simples o muy complejas usando un conjunto común de definiciones, por consiguiente, diferentes empresas pueden unirse para configurar en profundidad y anchura prácticamente cualquier CS. De la misma forma, el modelo soporta la orientación al cliente de la cadena al incorporar todos los recursos necesarios para la modelación de las actividades de negocios necesarias para la satisfacción de las necesidades de los mismos. Contiene tres niveles de detalle de procesos, a saber:. 9.

(21) 1. nivel superior (tipos de procesos), 2. nivel de configuración (categorías de procesos o taxonomía de estos), y 3. nivel de elementos de procesos (detalles de los procesos) Nivel superior En este nivel se define el alcance y contenido del modelo, se analizan las bases de competencias y se establecen los objetivos de rendimiento competitivo. Los indicadores de Nivel 1 son medidas de alto nivel que recorren múltiples procesos de SCOR, que no se relacionan necesariamente con todos los procesos del mismo nivel. Los tres primeros son externos mientras costos y pasivos son internos Nivel de Configuración En el segundo nivel se consideran 26 Categorías de Procesos que corresponden a:  Plan (se desglosa en 5 categorías mas)  Suministro (pertenecen a ejecución)  Producción (pertenecen a ejecución)  Distribución (pertenecen a ejecución)  Devolución (de aprovisionamiento y de distribución)  Activación de información (se desglosa en 5 categorías mas) Nivel de Elementos de Procesos En el tercer nivel se representan los distintos procesos de la CS de manera más detallada descomponiendo las categorías en elementos de procesos. Estos se representan en secuencia lógica con entradas (inputs) y salidas (outputs) de información y materiales. El Framework de clasificación de procesos. El APQC (American Productivity and Quality Center) creó un Framework de Clasificación de Procesos (PCF) que describe todos los procesos de una organización. El PCF fue originalmente concebido como una taxonomía de los procesos de negocio y un lenguaje común a través de la cual los miembros de las organizaciones APQC podrían comparar sus procesos. El diseño inicial APQC involucraba a más de 80 organizaciones con un fuerte interés en la promoción del uso de la evaluación comparativa en los Estados Unidos y en todo el mundo. Desde su creación en 1992, el PCF ha sido testigo de cambios a. 10.

(22) la mayor parte de su contenido. Es un estándar abierto para facilitar el proceso de mejora a través de la gestión y la evaluación comparativa, con independencia de la industria, el tamaño o la geografía. Organiza los procesos de gestión y de funcionamiento en 12 categorías, incluyendo grupos de proceso y más de 1.000 procesos y actividades conexas.. El PCF esta estructurado en cuatro niveles: 1. Categoría de procesos. 2. Grupos de procesos 3. Procesos y 4. Actividades. 11.

(23) Navegando por estos niveles las organizaciones pueden definir todos sus procesos de negocios.[9]. 1.3 Servicios de reportes. Muchas organizaciones hoy en día tienen que lidiar constantemente con el hecho de obtener y analizar información de repositorios de datos heterogéneos. Los servicios de reportes proporciona la información habitual y apropiada, con la capacidad de generar reportes para obtener detalles específicos, ayuda a las empresas a entender los datos más rápidamente a fin de que puedan tomar mejores y más rápidas decisiones y,. finalmente, mejorar. sus movimientos hacia la. consecución de objetivos de negocios. Por tal razón se necesita trabajar en función de resolver la problemática de brindar un servicio de reporte que permita relacionar la información requerida con el contexto empresarial en que se emplean, una de las limitaciones que tiene este servicio en la actualidad. Reporting Services es una plataforma que puede ser empleada para crear, distribuir formatos de reportes dentro de una organización o a través de múltiples organizaciones y administrar reportes tabulares, de matrices, gráficos y de libre formato, la información de estos reportes pueden provenir de diferentes orígenes de datos. Los reportes que se definen pueden ser administrados a través de una conexión basada en Web. Las empresas utilizan software de elaboración de reportes para distribuir información a los usuarios que utilizan reportes para tomar decisiones, identificar oportunidades o analizar amenazas. Reporting Services incluye una amplia gama de herramientas y servicios listos para usar que le permitirán crear, implementar y administrar reportes para la organización. Siempre que se piensa en elaborar reportes, tenemos que distinguir claramente algunos aspectos: 1). Definición del reporte, momento en que el autor del reporte define los datos y la manera de presentación de estos. En esta etapa normalmente hay que definir conexiones a los distintos orígenes de datos para ver de donde obtener los resultados que debe reflejar el reporte. 12.

(24) 2) Administración del reporte, esta referido al hecho que en las organizaciones actuales se tiene distintas categorías de usuarios como por ejemplo los gerentes, los usuarios de servicio al cliente, etc. Por lo tanto, es importante definir quienes serán los usuarios del reporte, para ello hay que publicar los reportes. 3) Entrega del reporte, es muy común en las organizaciones que muchos reportes sean requeridos de manera periódica, por ejemplo el reporte de ventas diarias debe estar en la oficina del Gerente de Ventas todas las tardes a las 5 PM., o un reporte de inventario todos los fines de semana, podríamos entonces aprovechar distintos servicios como el de mensajería para que estos reportes lleguen a los usuarios requeridos. Reporting Services ofrece dos métodos para obtener acceso a los reportes y entregarlos: . Pull: El acceso a petición permite a los usuarios seleccionar los reportes desde una herramienta de visualización de reportes. Se puede utilizar el Report Manager, un WebPart de Microsoft SharePoint o un Browser.. . Push:. El. acceso. basado. en. suscripciones. genera. y. entrega. reportes. automáticamente a un destino. Puede entregar reportes a una bandeja de entrada de e-mail o a un recurso compartido de archivos.. Ventajas de Reporting Services: Una de las principales, es que se cuenta con una interfase Web para lo que es la administración de los reportes, desde esta interface se puede determinar en que formato debe llegar el reporte, es decir, podemos decidir que el reporte llegue a una de las gerencias en formato PDF y para el departamento de consolidación y validación de datos podría enviarse la información en formato XML. . Cuenta con un lenguaje de especificación estándar denominado Report Definition Lenguaje o simplemente RDL, el cual es un lenguaje de formato XML, que se encarga de definir el reporte.. . Para la distribución, los usuarios pueden acceder a los reportes en base a la infraestructura existente. Es decir, que los usuarios pueden acceder a los reportes a 13.

(25) través de una barra de herramientas en el browser. Los reportes son accedidos desde un repositorio centralizado, presentado como un folder en orden jerárquico. . Otra de las grandes características de Reporting Services, es que puede distribuir el reporte en distintos formatos, como hojas de Excel, documentos pdf, texto, XML, etc.. . La arquitectura de Reporting Services, permite a los desarrolladores preparar aplicaciones personalizadas que accedan a los reportes a través de una API que esta expuesta como un Web Services.[10] 1.3.1 Soluciones Existentes Entre las empresas más avanzadas en el servicio de reportes se encuentran Cognos que presenta Cognos 8 Business Intelligence, Microsoft con Microsoft SQL Server Reporting Services. También se encuentran software libre para la creación de reportes como: Jasper Reports y BIRT. El servicio de reportes es una de las principales capacidades de Cognos 8 Business Intelligence, da acceso a una completa lista de tipos de informes de autoservicio, se adapta a cualquier fuente de datos, y opera desde una única capa de metadatos para ofrecer beneficios en el servicio de reportes en múltiples idiomas.[1] Otros de los punteros en el servicio de reportes es Microsoft con su producto Microsoft SQL Server Reporting Services que ofrece un método completo que pone la funcionalidad de análisis y creación de informes empresariales a disposición de la más amplia gama posible de usuarios. Microsoft SQL Server Reporting Services ofrece capacidades de administración de datos, análisis y creación de informes incomparables.[11] Jasper Reports es una herramienta para la creación de reportes, que tiene la capacidad de generar reportes en pantalla, impresos o en formatos como: PDF, HTML, XLS, CSV and XML files. Jasper Reports esta escrita 100% en Java y puede colocarse en conjunto con otras aplicaciones Java para generar reportes dinámicos. Jasper Reports accesa cualquier Base de Datos a través de JDBC de acuerdo a un reporte diseñado y definido en un archivo XML. Para el diseño de los reportes se cuenta con herramientas gráficas como iReport Designer.. 14.

(26) BIRT es un producto del grupo Eclipse, es un sistema para la generación de reportes basado en Java/J2EE que tiene 2 componentes: un diseñador de reportes basado en Eclipse y un ambiente de ejecución que puede ser adicionado en un servidor de aplicaciones, ofrece un motor de gráficos como: barras, pies, etc. que le adicionan el componente gráfico a los reportes. BIRT cuenta con soporte interactivo para la visualización de los reportes, a través de JavaScript e incluso con el nuevo modelo propuesto por AJAX (Asynchronous JavaScript and XML). 1.3.1.1 Alcance. Cognos 8 Business Intelligence es uno de los pilares en el mundo de negocio y como era de esperarse ofrece un servicio de reportes con una infinidad de beneficios entre los cuales se pueden mencionar: . Una única arquitectura para visualizar, consultar, analizar y generar informes y promover contribuciones a cualquier informe.. . Es una solución que satisface todos los requerimientos de la empresa relacionados con reporting.. . Distribuye informes personalizados a múltiples ubicaciones y en múltiples formatos.. . El interfaz de usuario soporta más de 10 idiomas; los informes se proporcionan en más de 25 idiomas.. . Múltiples formatos de exportación: Excel, PDF, XML, HTML, y CSV.. . Métodos de distribución flexible: acceso centralizado, correo electrónico, integración de aplicaciones, MS Office.. . Las capacidades multi-idioma ofrecen automáticamente informes en el idioma de trabajo de los usuarios. Además se pueden realizar informes desde cualquier fuente de datos como:. . Fuentes relacionales incluyendo Oracle, SQL, IBM, Teradata, Sybase y ODBC.. . Fuentes dimensionales como Cognos OLAP, SAP BW, Microsoft SSAS, Essbase, Oracle 10G e IBM DB2 CubeViews. 15.

(27) . Sistemas ERP como SAP, PeopleSoft y Siebel.. . Fuentes modernas incluyendo XML, Java beans, JDBC, LDAP, WSDL.. . Fuentes satélite como archivos Excel, Access, y texto plano.. . Sistemas heredados y mainframes como VSAM, IMS, IDMS y Cobol Copybooks.. . Datos de gestión del contenido, incluyendo FileNet, Documentum y OpenSoft.. . Acceso a datos federados de alto rendimiento a través de todas las fuentes.. . Soporte para los sistemas operativos Windows, UNIX y Linux, incluyendo implantaciones de plataformas combinadas.. . BAPI® con certificación SAP e iViews, con certificación Powered by SAP NetWeaver®.. . Portal, capa de metadatos y punto de administración únicos.[1] Microsoft SQL Server Reporting Services proporciona una completa solución de creación, administración y distribución de informes en tiempo real ofrece un entorno de alto rendimiento que permite a las organizaciones y departamentos de tecnología de la información administrar análisis e informes, y proporcionar a los desarrolladores herramientas eficaces para crear informes e implementar soluciones personalizadas de creación de informes destinadas a usuarios individuales de toda la organización. SQL Server Reporting Services, está basado en Microsoft .NET Framework, admite una amplia gama de orígenes de datos, como OLE DB y ODBC, por lo que simplifica mucho la tarea de comunicar sistemas y soluciones.[8] Como está diseñado para apoyar todo el ciclo de vida de la creación de informes, Reporting Services proporciona capacidades de autoría de informes que permiten a los desarrolladores crear aplicaciones personalizadas que conecten con orígenes de datos personalizados, escribir el resultado en múltiples formatos y entregarlo en una amplia gama de dispositivos. Sus herramientas de administración de informes permiten a los administradores publicar y gestionar definiciones de informes, carpetas y recursos como servicios Web que pueden ejecutarse a petición o según una programación especificada. Las capacidades flexibles de entrega de informes permiten a los empleados recibir informes mediante una amplia gama de opciones, 16.

(28) entre las que se incluyen la entrega a través de un explorador Web, en aplicaciones de Microsoft Office System o embebidas en aplicaciones de línea de negocio.[11] En los software libres Jasper Reports y BIRT encontramos todas las herramientas necesarias para la implementación de servicios de reportes. La única diferencia con los productos privativos es que sobre esta plataforma no se encuentra un producto que lo haga todo. Esa es la mayor ventaja, pues en las experiencias de implementación en el desarrollo de proyectos de este tipo, rara vez se requiere todo; en algunos casos solo se necesita una herramienta de reportes, el éxito depende de qué tan claros están definidos los requerimientos y no en qué tan poderosa es la herramienta. La ventaja del software libre en los proyectos servicios de reportes, es que permite aprender a bajo costo sobre el tema.. 1.4 Conclusiones parciales. De todo lo anteriormente explicado, se puede concluir que: 1. La necesidad de relacionar la información con un contexto empresarial determinado y que permita reducir progresivamente la heterogeneidad de formatos existente entre los flujos de trabajo constituye un elemento necesario e imprescindible en la actualidad para los sistemas de administración de reportes. 2. Dados los inconvenientes que tiene los sistemas de administración de reportes, se hace necesario una nueva implementación de este tipo de servicio que resuelva sus principales limitaciones. 3. Es conveniente la utilización de una tecnología novedosa y eficaz como Adobe Flex 3 para la construcción de un sistema computacional con interfaz Web que solucione las limitaciones de los servicios de reportes.. 17.

(29) Capítulo 2: Diseño de la solución. En el presente capítulo se abordan los aspectos relacionados con la arquitectura del sistema haciendo hincapié en las tres etapas del desarrollo del software: análisis, diseño e implementación. Se enfocará en un análisis de las funcionalidades del sistema y el diseño usando para ello el Lenguaje Unificado de Modelado (UML) exponiendo los diferentes diagramas que permiten modelar, construir y documentar los elementos esenciales que forman el sistema. Luego se explicarán las herramientas utilizados para la realización del sistema y la lógica del negocio respectivamente.. 2.1. Etapa de análisis y diseño del sistema. El análisis y diseño de sistemas es una guía que permite estructurar el proceso de desarrollo de proyectos de software. Se trata. básicamente de determinar los. objetivos y límites del sistema objeto de análisis, caracterizar su estructura y funcionamiento, marcar las directrices que permitan alcanzar los objetivos propuestos y evaluar sus consecuencias. Se puede afirmar que esta etapa es de vital importancia en el ciclo de vida del proyecto, pues este procedimiento permite reducir al mínimo el riesgo de fracaso de nuevos proyectos, la instalación de un sistema sin la adecuada planeación puede conducir a grandes frustraciones y causar que el sistema sea subutilizado, o peor aún, deje de ser usado al no cumplir con las expectativas que le dieron origen. El sistema debe contar con la flexibilidad de crear reportes personalizados, tener la capacidad de realizar las transformaciones elementales a los datos que se ajusten a las condiciones del tipo de grafico especifico, que garantice que el usuario determine los niveles de acceso al reporte, debe brindar la posibilidad de editar un reporte ya existente y la capacidad de exportar reportes a formatos como pdf, XML y HTML. A continuación se muestran los diferentes diagramas que componen el modelado del software (diagrama de actividades, diagrama de casos de uso, diagrama de base de datos), además se exponen los actores que intervienen en el sistema y sus 18.

(30) funcionalidades, así como las especificaciones de los casos de uso más importantes mediante las Tablas de Eventos. 2.1.1. Diagrama de actividades. Un diagrama de actividades representa los flujos de trabajo paso a paso de negocio y operacionales de los componentes en un sistema, lo que es provechoso para entender el comportamiento de alto nivel de la ejecución de un sistema, sin profundizar en los detalles internos.[11] A continuación se muestra el diagrama de actividades para el caso de uso “Crear Reporte”.. Figura 2.1 Diagrama de Actividad para el caso de uso Crear Reporte.. 19.

(31) La Figura 2.1, que muestra el flujo de trabajo que necesita un autor para crear un reporte. El Actor en cuestión después de autentificarse tiene a su disposición una serie de herramientas para la realización del reporte, como son la posibilidad de insertar texto e imágenes, también puede escoger una consulta para luego mostrarla tanto en tablas como en gráficos, debe asignar el reporte a un cierto contexto en la empresa y ponerle titulo, todo eso sin un orden especifico lo cual posibilita la completa libertad estructural del reporte, y luego de terminado el mismo salvarlo para dar por concluido el trabajo.[12] 2.1.2. Actores del sistema y sus funciones. Un actor representa un conjunto coherente de roles que los usuarios de los casos de uso juegan al interactuar con éstos. Normalmente, un actor representa un rol que es jugado por una persona, un dispositivo hardware o incluso otro sistema al interactuar con nuestro sistema.[12] A continuación se muestran los Actores del sistema y sus funciones: Autor:  Realizar la elaboración de reportes.  Realizar la asignación de reportes.  Editar los reportes.  Realizar la impresión de reportes.  Realizar la entrega de reporte. Consultante:  Realizar la impresión de reportes. Actor Administrador:  Adicionar usuario al sistema  Modificar el tipo de los usuarios.  Eliminar usuario.  Adicionar departamentos al sistema.  Eliminar departamentos al sistema.. 20.

(32) 2.1.3. Casos de uso generales del sistema. “Un caso de uso es una descripción de un conjunto de secuencias de acciones, incluyendo. variantes,. que. ejecuta. el. sistema. para. producir. un. resultado. observable”.[11] En esta definición hay varias partes importantes:  Describe un conjunto de secuencias, donde cada secuencia representa una interacción. de los elementos externos al sistema (actores) con el propio. sistema, o sea que representa un requisito funcional del sistema.  Involucra la interacción de actores y el sistema.  Pueden tener variantes, o sea que se pueden encontrar casos de uso que son versiones especializadas de otros casos de uso.  Cada caso de uso realiza cierto trabajo cuyo efecto es tangible, por ejemplo el cálculo de un resultado, la generación de un nuevo objeto o un cambio de estado. A continuación se muestran los casos de uso generales de cada actor del sistema:. Fig. 2.2 Diagrama de casos de uso del Autor.. 21.

(33) Fig. 2.3 Diagrama de casos de uso del Consultante.. Fig. 2.4 Diagrama de casos de uso del Administrador.. 2.1.4. Descripción de los casos de uso generales del sistema. Las especificaciones de los casos de uso se hacen de forma tabular mediante una Tabla de Eventos que muestra la interacción entre los actores y el sistema. A continuación se describe algunos casos de uso importantes de cada actor. Descripción del caso de uso “Editar reporte”: Caso de Uso:. Editar reporte.. Actores:. Autor.. Propósito:. La modificación de un reporte.. 22.

(34) Resumen:. El Autor puede suministrar los datos del reporte para la modificación a partir de consultas predefinidas, imágenes y textos.. Tipo:. Primario. Curso normal de los eventos: Acción del actor. Respuesta del sistema. 1.Seleccionar el modulo Lista de Reportes. 2. Elegir el reporte a editar en la lista de reportes.. 1. Muestra la lista de reportes. 2. Muestra en la lista de reportes realizados el reporte seleccionado diferenciándolo de los demás.. 3. Pulsa botón “Cargar Reporte”.. 3. Muestra el reporte seleccionado en el editor de reportes del módulo Crear y modificar reporte.. 4. Editar contenido.. 4. Visualiza los cambios realizados en el contenido del reporte.. 5. Salvar reporte.. 5. Salva el reporte.. Cursos Alternos:  El autor deja de elegir un reporte para su edición. Indicar error “Debe elegir un reporte a cargar”. Descripción del caso de uso “Crear Usuario”: Caso de Uso:. Crear Usuario.. Actores:. Administrador.. Propósito:. La creación de un nuevo usuario al sistema.. Resumen:. El administrador puede crea un usuario llenando el formulario presente en la ventana “Crear Usuarios”. Tipo:. Primario. 23.

(35) Curso normal de los eventos: Acción del actor. Respuesta del sistema. 1.Seleccionar el modulo Crear Usuarios. 1. Muestra el formulario para introducir los datos del usuarios. 2. llena el formulario introduciendo los datos del usuario.. 3. Pulsa botón “Agregar Usuario”. 3. Muestra el dialogo “El usuario ha sido creado satisfactoriamente”.. 4. Pulsa botón “OK”. 4. Muestra el formulario para introducir los datos del usuario.. Cursos Alternos:  El administrador deja campos vacíos o incorrectos de acuerdo con la especificación del mismo en el formulario. Indicar error “Ha introducido algunos datos incorrectos”. Descripción del caso de uso “Imprimir Reporte”: Caso de Uso:. Imprimir Reporte.. Actores:. Autor o consultante.. Propósito:. La impresión de un reporte.. Resumen:. El Autor o Consultante puede imprimir los reportes ya realizados por el autor y los realizados por los autores del departamento al que pertenecen.. Tipo:. Primario. 24.

(36) Curso normal de los eventos: Acción del actor. 1.Seleccionar el modulo Lista de Reportes. 2. Elegir el reporte a imprimir en la lista de reportes.. Respuesta del sistema. 1. Muestra la lista de reportes. 2. Muestra en la lista de reportes realizados el reporte seleccionado diferenciándolo de los demás.. 3. Pulsa botón “Cargar Reporte”. 3. Muestra el reporte seleccionado en el editor de reportes del módulo Crear y modificar reporte.. 4. Pulsa botón “Imprimir Reporte”. 4. Muestra la ventana de dialogo de impresión.. 2.1.5. Diseño de la base de datos. La estructura informativa del sistema se guarda en una base de datos MySQL tomando en cuenta los siguientes requisitos:  Almacenar solamente la información necesaria.  Seleccionar el tipo de dato apropiado para cada campo de la tabla.  Poner nombre a las tablas acorde a su función y en minúscula.  Utilizar la cadena “id” al comienzo de cada llave primaria en la tabla.  En la tabla colocar primero la llave primaria. Diagrama del modelo de la Base de Datos: A continuación se presenta el diagrama del modelo lógico de la Base de Datos realizado en la herramienta Case “ER - Studio”. La base de datos cuenta con 7 tablas donde se almacena toda la información necesaria.. 25.

(37) Figura 2.4 Diagrama de la Base de Datos.. Especificaciones de cada tabla de la base de datos: TABLA. ATRIBUTOS. DESCRIPCION. users. uid (llave primaria). Se guardan los datos específicos de cada usuario del sistema, el cual pertenece a un departamento y tiene diferentes reportes asignados a el o realizados por el.. name passwd did (llave extrangera) rid (llave extranjera) departaments. did (llave primaria). Se guardan los datos referentes a los departamentos.. name description rolls. Rid (llave primaria) mane description. 26. Se guardan los roles de los usuarios del sistema..

(38) report. Rid (llave primaria) title. Se guardan los datos del reporte, que fue realizado por un usuario de un departamento determinado.. uid (llave extranjera) did (llave extranjera) texts. tid (llave primaria) x. Se guardan los datos referentes a los textos de los reportes realizados por los usuarios.. y htmltext name page rid (llave extrangera) images. Iid (llave primaria). Se guardan los datos referentes a las imágenes de los reportes. x y source name page rid (llave extrangera) visuals. vid (llave primaria) type queryindex x y page rid (llave extranjera).. 27. Se guardan los datos referentes a los gráficos y tablas de los reportes..

(39) 2.2. Etapa de implementación. La fase de implementación es la encargada de convertir en código las actividades de la etapa de análisis y diseño. En ella cada módulo se asocia con un procedimiento o función, los cuales se programan y se prueban por separado y luego se integran en un solo sistema. Por tanto se puede afirmar que el objetivo principal de esta etapa es desarrollar la arquitectura y el sistema como un todo. De forma más específica los propósitos de la Implementación son:  Definir la organización del código.  Planificar las integraciones del sistema.  Implementar las clases y subsistemas encontrados durante la etapa de análisis. 2.2.1. Herramientas utilizadas en la etapa de implementación. Se decidió realizar una aplicación Web debido a que se facilita el trabajo a distancia, es decir, se puede trabajar desde cualquier computadora que esté conectada a la intranet universitaria, además se puede migrar de sistema operativo o cambiar el hardware libremente sin afectar el funcionamiento de las aplicaciones de servidor, no se requieren complicadas combinaciones de Hardware / software para utilizar estas aplicaciones, solo una computadora con un buen navegador Web, al funcionar en un navegador, se requiere un conocimiento básico de informática para utilizar una aplicación Web y actualizar o hacer cambios en la aplicación es sencillo y sin riesgos de incompatibilidades esto es debido a la existencia de solo una versión en el servidor, lo que implica que no hay que distribuirla entre los demás computadores por tanto el proceso es rápido y limpio. La interfaz Web que brinda Adobe Flex 3 es mucho más amigable para el usuario y más rica en cuanto a calidad de imágenes y efectos, estas son las razones por la que se decidió realizar una aplicación Web utilizando Adobe Flex 3. Flex es un marco de trabajo gratuito de código abierto para crear aplicaciones web expresivas y muy interactivas que se implantan coherentemente en los principales 28.

(40) exploradores, equipos de sobremesa y sistemas operativos. Ofrece un lenguaje basado en estándares moderno y un modelo de programación que admite los patrones de diseño habituales. MXML, un lenguaje declarativo basado en XML, se utiliza para describir el aspecto y comportamiento de la interfaz de usuario, y ActionScript 3, un potente lenguaje de programación orientado a objetos, se utiliza para crear la lógica de clientes. Asimismo, Flex incorpora una biblioteca de componentes muy completa con más de 100 componentes de interfaz de usuario extensibles y de eficacia, así como un depurador interactivo de aplicaciones de Flex. Las aplicaciones de Internet sofisticadas creadas con Flex pueden ejecutarse en el explorador utilizando el omnipresente software Adobe Flash® Player o en el escritorio utilizando Adobe AIR™. Esto permite que las aplicaciones de Flex se ejecuten de un modo coherente en todos los exploradores importantes y en múltiples sistemas operativos del escritorio. Y mediante Adobe AIR, el tiempo de ejecución en múltiples sistemas operativos, ahora las aplicaciones de Flex pueden acceder a los datos locales y a los recursos de sistema del escritorio.[13] Se utilizo para el desarrollo del sistema el Flex Builder que permite a los diseñadores y desarrolladores disponer y crear aplicaciones Flex de una forma más productiva. Los diseñadores pueden crear con agilidad prototipos para las interfaces de aplicaciones, disponiendo interfaces de usuarios Flex de una manera rápida y fácil y conectándolas a fuentes de datos del sistema central. Los desarrolladores pueden entonces codificar y depurar aplicaciones Flex de una forma productiva usando el código sugerido y las herramientas de depuración. Con Flex Builder, todos los miembros de su equipo de trabajo podrán producir con más eficiencia aplicaciones Flex dinámicas de Internet.[13] Adobe Flex™ Builder™ 3 acelera el desarrollo de aplicaciones de Flex. Es una herramienta de desarrollo basada en Eclipse™ que incorpora las siguientes funciones: códigos inteligentes, depuración interactiva estratificada, además del diseño visual del aspecto y comportamiento de la interfaz de usuario de las aplicaciones de Internet sofisticadas. Flex Builder 3 incluye el marco de trabajo 29.

(41) completo de Flex, incluidos los compiladores, la biblioteca de componentes y los depuradores.[14] Uno de los lenguajes mas utilizados para la elaboración del sistema fue ActionScript 3.0, un potente lenguaje de programación orientado a objetos, se utiliza para crear la lógica de clientes, utilizado en especial en aplicaciones Web animadas realizadas en el entorno Adobe Flash, la tecnología de Adobe para añadir dinamismo al panorama Web. Fue lanzado con la versión 4 de Flash, y desde entonces hasta ahora, ha ido ampliándose poco a poco, hasta llegar a niveles de dinamismo y versatilidad muy altos en la versión 10 (Adobe Flash CS4) de Flash. Es la versión más extendida actualmente, significo una mejora en el manejo de programación orientada a objetos al ajustarse mejor al estándar ECMA-262 y es utilizada en la última versión de Adobe Flash y Flex (recientemente comprada a Macromedia) y en anteriores versiones de Flex. Recientemente se ha lanzado la beta pública de Flex 2, que incluye el nuevo ActionScript 3, con mejoras en el rendimiento y nuevas inclusiones como el uso de expresiones regulares y nuevas formas de empaquetar las clases. ActionScript 3.0 se ha diseñado para facilitar la creación de aplicaciones muy complejas con conjuntos de datos voluminosos y bases de código reutilizables y orientadas a objetos, permite introducir unas mejoras de rendimiento que sólo están disponibles con AVM2, la nueva máquina virtual, ofrece un modelo de programación robusto que resultará familiar a los desarrolladores con conocimientos básicos sobre programación orientada a objetos.[13] Se utilizo la librería JSON (Librería PHP-JSON) para el intercambio de datos, para codificar y decodificar a y desde JSON, es decir, los objetos declarados en las paginas php pasan mediante JSON (realizando un proceso de serialización) al Flex, de esta forma se pueden usar los mismo objetos de php en el proyecto Flex que se desarrolla.. 30.

(42) JSON (JavaScript Object Notation - Notación de Objetos de JavaScript) es un formato ligero de intercambio de datos. Leerlo y escribirlo es simple para humanos, mientras que para las máquinas es simple interpretarlo y generarlo. Está basado en un subconjunto del Lenguaje de Programación JavaScript, Standard ECMA-262 3rd Edition - Diciembre 1999. JSON es un formato de texto que es completamente independiente del lenguaje pero utiliza convenciones que son ampliamente conocidos por los programadores de muchos lenguajes. Estas propiedades hacen que JSON sea un lenguaje ideal para el intercambio de datos. JSON está constituido por dos estructuras: . Una colección de pares de nombre/valor. En varios lenguajes esto es conocido como un objeto, registro, estructura, diccionario, tabla hash, lista de claves o un arreglo asociativo.. . Una lista ordenada de valores. En la mayoría de los lenguajes, esto se implementa como arreglos, vectores, listas o secuencias.. Estas son estructuras universales; virtualmente todos los lenguajes de programación las soportan de una forma u otra. Es razonable que un formato de intercambio de datos que es independiente del lenguaje de programación se base en estas estructuras.[15-17] El sistema trabaja a partir de varios XML, tomando la información que contienen estos proveniente de la base de datos de la empresa, información que el usuario necesita para la realización de sus reportes, esta información se presenta con cierta estructura y formato logrando con esto que el XML siempre se presente como el sistema pueda utilizar la información. Pero ¿Qué es XML? XML (eXtensible Markup Language) es un Lenguaje de Etiquetado Extensible muy simple, pero estricto, que juega un papel fundamental en el intercambio de una gran variedad de datos. Su función principal es describir datos y no mostrarlos. Es un formato que permite la lectura de datos a través de diferentes aplicaciones.. 31.

(43) Las tecnologías XML son un conjunto de módulos que ofrecen servicios útiles a las demandas más frecuentes por parte de los usuarios. Sirve además para estructurar, almacenar e intercambiar información. Que un documento sea "bien formado" solamente habla de su estructura sintáctica básica, es decir que se componga de elementos, atributos y comentarios como XML manda que se escriban. Ahora bien, cada aplicación de XML, es decir cada lenguaje definido con esta tecnología, necesitará especificar cuál es exactamente la relación que debe verificarse entre los distintos elementos presentes en el documento. Esta relación entre elementos se especifica en un documento externo expresada como DTD (Document Type Definition que quiere decir Definición de Tipo de Documento) o como XSchema. Crear uno de estos documentos equivale a crear un nuevo lenguaje de marcado, para una aplicación específica. Los documentos XML que se ajustan a su DTD o a su XSchema se denominan válidos. Para el trabajo con los XML se utilizo ECMAScript for XML (E4X) que es una extensión del lenguaje de programación que agrega el XML nativo soportado por JavaScript. Hace esto proporcionando el acceso al documento de XML en una forma que se sienta natural para los programadores de ECMAScript. La meta es proporcionar una sintaxis alternativa, más simple para tener acceso a documentos de XML que se interconecta vía DOM.[17]. 2.3 Conclusiones parciales De todo lo anteriormente explicado, se puede concluir que: 1. En la etapa de análisis del sistema se utilizó el lenguaje UML para modelar, construir y documentar los elementos esenciales que conforman el mismo, asegurando la consistencia de la fase preliminar. 2. En la etapa de diseño se adoptaron técnicas, procedimientos y métodos que aseguran la adecuación del diseño a las necesidades y habilidades de los usuarios, resultando en una interfaz clara, comprensible, amigable y de fácil adaptación para todo aquel que utilice el sistema. 32.

(44) 3. En cuanto a la implementación del sistema se utilizaron herramientas novedosas y de gran aceptación como es el caso de Adobe Flex 3 y además brinda una interfaz mucho más rica en cuanto a calidad de imágenes y efectos.. 33.

(45) Capítulo 3: Manual de Usuarios. El Sistema de Gestión de Reportes está diseñado con el objetivo de solucionar las principales limitaciones de los sistemas de reportes actuales planteados en la hipótesis general del sistema y facilitar los trámites de los usuarios de las empresas para la creación de reportes, brindando un sistema de fácil maniobrabilidad con el objetivo de darle comodidades para la creación, asignación, impresión y entrega de los reportes realizados en una empresa.. 3.1 Características Generales del Sistema. El Sistema de Gestión de reportes es una interfaz Web que permite a la las empresas la creación de reportes, así como su asignación a un contexto empresarial determinado y entrega de este en el formatos pdf. Cuenta con un diseño sencillo y de fácil operacionalidad, acorde con las características propias de un producto de software de este tipo. Tiene el sistema dos módulos fundamentales; uno referente a la gestión de reportes y otro para el de la administración del sistema. Estos módulos interactúan con una Base de Datos en MySQL que es utilizada para almacenar los datos necesarios de los procesos antes descritos. 3.1.1 Requerimientos mínimos. El sistema debe ser instalado sobre un servidor Web Apache. Igualmente se requiere un servidor de Base de Datos MySQL. Estos servidores pueden ser descargados desde Internet de forma gratuita por su condición de Software Libre. Los usuarios pueden acceder al sistema desde cualquier estación de trabajo de la red con cualquier tipo de navegador. Debido a que el sistema se confeccionó con Adobe Flex 3 se debe tener instalado el Adobe Flash Player Active X versión 8 o superior para el funcionamiento del sistema.. 34.

(46) Para la generación del reporte el formato pdf, se requiere del software Adobe PDF Creator. 3.1.2 Instalación. Para llevar a cabo la instalación del sistema se deben seguir los siguientes pasos:  Copiar el archivo “GenReport” para el directorio WWW o donde esté la ruta del servidor.  Crear una base de datos nueva en el servidor MySQL (se recomienda utilizar como cliente el PHPmyAdmin) y ejecutar el script contenido en la carpeta “Para generar BD”.  Para configurar los parámetros de la Base de Datos debe entrar dentro de la carpeta “Pages” y editar el fichero conf.php y en las siguientes líneas cambia lo que está subrayado y en negrita:. Línea 8:. $host_db = "localhost" (si el sitio está en una máquina diferente al Apache, pone el número IP de este). Línea 9:. $name_db = "Base Datos"; Nombre de la Base de Datos. Línea 10:. $user_db = "Usuario"; Nombre de usuario del administrador de la Base de Datos.. Línea 11:. $passwd_db = "Password";. Contraseña. 3.2 Autentificación en el sistema. La seguridad del sistema y de la información a la que este tiene acceso es esencial, no se podría pensar hoy en día un sistema sin seguridad, por eso el Sistema de 35.

(47) Gestión de Reportes se ha diseñado para que cada usuario de este se autentifique antes de tener el acceso a información de la empresa o tener intrusos en el sistema. En esta parte del sistema el usuario debe autentificarse para su acceso al mismo. Se han creado varios tipos de usuarios designando diferentes roles a cada uno con el objetivo de que solo pueda tener privilegios en el módulo con el cual se le esta permitido trabajar de acuerdo con la función que realice en la empresa. Esto permite una cierta seguridad en el sistema ya que un usuario de tipo autor solo pueda acceder con el modulo de Gestión de Reportes, el consultante va a encontrar todas las herramientas del sistema deshabilitadas menos la de imprimir reporte, solo puede realizar dicha impresión a los reportes de su departamento y el usuario de tipo administrador, aunque no tiene un rol determinado, solo pueda operar directamente con los tipos de usuarios, roles, departamentos, etc. y no acceder a la información de los reportes de la empresa. Tiene una contraseña ya predefinida por el sistema que a su vez le permite crear otros administradores del mismo. La figura 3.1 muestra el formulario de autentificación del sistema.. Figura 3.1 Autentificación del Sistema.. 3.3 Descripción del módulo Gestión de Reportes. Los usuarios del sistema que tienen el rol de autor son los relacionados con la creación, edición, asignación, impresión y entrega de un reporte Este tipo de usuario. 36.

(48) solamente interactúa con el Sistema de Gestión del reporte después de haberse autentificado. Este módulo tiene dos subsistemas, por llamarlo de alguna manera, el primero es para toda la gestión de reportes en si, el otro muestra una lista de los reportes que ha creado el autor y los que han sido asignados al departamento al que este pertenece. 3.3.1 Crear y Modificar Reportes. Este es el subsistema que se encarga de brindar todas las herramientas para la gestión de reportes (Figura 3.2). A continuación se expondrá el funcionamiento y características de todas estas herramientas antes mencionadas con el objetivo de facilitar el manejo y aprendizaje del sistema.. Figura 3.2 Crear y Modificar Reporte.. 37.

(49) 3.3.1.1 Insertar Texto. Es lógico pensar que todo reporte debe contener textos, así que no podía faltar en el sistema una herramienta que permita insertarlos, de otra forma no seria un reporte que facilite el buen entendimiento de los datos del mismo. Entre las herramientas de este se encuentran Insertar Texto, al pulsar en ella se despliega un editor de texto para la redacción de este, la Figura3.3 muestra dicho editor. Como se puede apreciar el propio editor brinda su una barra de herramientas para la edición del texto en redacción donde el autor puede seleccionar el formato de letra, tamaño, color, etc. Una vez terminada la redacción se puede insertar el texto en el reporte.. Figura 3.3. Editor de texto.. 38.

(50) 3.3.1.2 Insertar Imagen. Otra de las herramientas que brinda este módulo el la inserción de imágenes al reporte, esto da la ventaja de que se pueda usar imágenes ya prediseñadas y guardadas con anterioridad para la realización del reporte. La figura 3.4 muestra la ventana de dialogo para la selección de imágenes.. Figura 3.4 Ventana de Dialogo para la Selección de Imágenes.. 3.3.1.3 Lista de consultas. A la izquierda del Sistema de Gestión de Reportes se muestra una lista de consultas ya predefinidas de donde se puede obtener información de la base de datos y a su vez insertar los resultados en el reporte tanto en tablas como en graficas. Estas consultas se generan a partir de varios XML, evitando así la heterogeneidad de formatos con los que el usuario debe interactuar para obtener la información necesaria en la realización del reporte, de esta manera se cumple con uno de los dos objetivos fundamentales del sistema planteado en la hipótesis general de la investigación.. 39.

(51) Figura 3.5 Lista de Consultas.. 3.3.1.4 Tablas y Gráficos. Al seleccionar una de estas consultas, fuentes de la información a insertar, se muestra un formulario (Figura 3.6) donde se puede seleccionar como se desea insertar la información en el reporte, se puede hacer tanto en tabla como en gráfico.. Figura 3.6 Insertar Consulta.. Al seleccionar Como tabla, la información que contiene la consulta se insertara en el reporte en tabla como muestra la figura 3.7.. 40.

(52) Figura 3.7 Inserción de tablas en el reporte.. Si por el contrario se selecciona Como Gráfico se mostrara otra aplicación donde el autor podrá escoger entre una serie de modelos de gráficos ya predefinidos por el sistema con el cual desee insertar la información en el reporte.. Figura 3.8 Tipo de Gráficos.. A continuación se mostrara los cuatro modelos de gráficos que el sistema brinda para la inserción de información en el reporte, dando la posibilidad de que se pueda escoger el grafico que más se ajuste a los requerimientos del reporte. 41.

(53) Figura 3.11 Gráfico de Línea.. Figura 3.9 Gráfico de Columna.. Figura 3.12 Gráfico de Pie. Figura 3.10 Gráfico de Área.. Es bueno aclarar que todo el texto, imagen, tabla o gráfico que se inserta en el reporte son objetos que se pueden mover dentro del reporte como si fueran imágenes, esto da la ventaja que el autor puede organizar y estructurar el reporte como mas estime conveniente sin limitaciones de ningún tipo, solo arrastrar el objeto y ponerlo donde desee. En la parte superior del modulo de Gestión de Reportes se encuentran una gama de operaciones que se puede realizar en la confección de un reporte, estas brindan la 42.

(54) posibilidad de salvar o imprimir un reporte, eliminar o modificar un objeto determinado del mismo, o simplemente crear un nuevo reporte y asignar este a un departamento determinado de la empresa de acuerdo con el contexto del mismo (Figura 3.13). Además se encuentra de manera informativa el titulo del reporte en cuestión. Figura 3.14.. Figura 3.13 Operaciones para la redacción de reportes.. Figura 3.14 Titulo del Reporte.. En caso de que se desee modificar algún objeto del reporte en elaboración o de alguno ya realizado solo debe oprimir Modificar Objeto y el sistema le brindara, si este es un texto, el Editor de Texto con el mismo ya cargado para que se pueda modificar, si por el contrario es una imagen, tabla o gráfico se mostrara un diálogo (Figura 3.15) donde se puede ajustar este de acuerdo a su largo y ancho a conveniencia del autor.. Figura 3.15 Dialogo Editar Objeto.. Para la impresión del reporte se va a mostrar un dialogo como el de la Figura 3.15 en el mismo también se va a encontrar la herramienta necesaria para la conversión del reporte en formato pdf, esto solo si se instaló con anterioridad el Adobe PDF Creador como se aclaro en los requerimientos del sistema. 43.

(55) Figura 3.15 Dialogo de impresión y conversión del formato del reporte.. 3.3.2 Lista de Reportes. Esta es la parte de nuestro sistema que muestra la lista de los reportes que el usuario realizo o los que le fueron asignado a su departamento y además puede cargar el reporte para su modificación en caso de ser necesario o eliminarlo cuando ya no sea de utilidad para la empresa o haya que rehacerlo completamente. Se muestra el título de cada reporte, el autor de este y el departamento al cual le fue asignado.. 44.

Figure

Figura 2.1 Diagrama de Actividad para el caso de uso Crear Reporte.
Fig. 2.2 Diagrama de casos de uso del Autor.
Fig. 2.4 Diagrama de casos de uso del Administrador.
Figura 2.4 Diagrama de la Base de Datos.
+7

Referencias

Documento similar

Por otra parte, en relación con el conjunto de palmeras que se distinguen como palmeras datileras o en las que se detectan características que conducen a la sospecha de hibridación,

En nuestra opinión, las cuentas anuales de la Entidad Pública Empresarial Red.es correspondientes al ejercicio 2010 representan en todos los aspectos significativos la imagen fiel

En nuestra opinión, las cuentas anuales de la Entidad Pública Empresarial Red.es correspondientes al ejercicio 2012 representan en todos los aspectos

La Intervención General de la Administración del Estado, a través de la Oficina Nacional de Auditoría, en uso de las competencias que le atribuye el artículo 168

La Intervención General de la Administración del Estado, a través de la Oficina Nacional de Auditoría, en uso de las competencias que le atribuye el artículo

En cuarto lugar, se establecen unos medios para la actuación de re- fuerzo de la Cohesión (conducción y coordinación de las políticas eco- nómicas nacionales, políticas y acciones

Debido al riesgo de producir malformaciones congénitas graves, en la Unión Europea se han establecido una serie de requisitos para su prescripción y dispensación con un Plan

El contar con el financiamiento institucional a través de las cátedras ha significado para los grupos de profesores, el poder centrarse en estudios sobre áreas de interés