You are on page 1of 195

UNIVERSIDAD PONTIFICIA COMILLAS

ESCUELA TCNICA SUPERIOR DE INGENIERA (ICAI)


INGENIERO EN INFORMTICA

PROYECTO FIN DE CARRERA

SISTEMA DE PRESUPUESTACIN Y REPORTING PARA LA EMPRESA

AUTOR:

PABLO COBREROS HERRERA

MADRID, SEPTIEMBRE 2007

Autorizada la entrega del proyecto del alumno: Pablo Cobreros Herrera

EL DIRECTOR DEL PROYECTO Jos Manuel Ferrer Hernndez Fdo.: Fecha: / /

VB del Coordinador de Proyectos Miguel ngel Sanz Bobi Fdo.: Fecha: / /

Sistema de presuspuestacin y reporting para la empresa

Resumen:
El presupuesto es uno de los documentos ms importantes y significativos en una administracin o empresa. La realizacin de presupuestos e informes financieros precisos, tiles y detallados ha sido uno de los objetivos principales de las empresas desde hace aos. La planificacin de los objetivos y las operaciones presupuestarias y administrativas y su posterior seguimiento supone hoy en da algo vital en toda organizacin empresarial para una mejora en la toma de decisiones. Por todas estas necesidades los sistemas de informacin gerencial y las herramientas Business Intelligence estn tratando de beneficiarse de las oportunidades que existen actualmente en el mercado. Se ha producido una gran evolucin en dichos sistemas por parte de los fabricantes en los ltimos aos. Los sistemas denominados ERPs (Enterprise Resource Planning) y CRMs (Customer Relationship Management) se desarrollaron para el control, gestin y planificacin de los recursos y contactos de las compaas, pero no trataban los desarrollos y el seguimiento de los presupuestos e informes presupuestarios. Es en los ltimos aos cuando se ha tratado de elaborar herramientas capaces de ello, estas herramientas son las denominadas CPMs (Corporate Performance Management) encargadas de la evaluacin general del rendimiento de las compaas. Todas estas herramientas estn dirigidas a grandes compaas con un amplio volumen de informacin, sin embargo, no existen demasiadas herramientas de gestin similares para pequeas y medianas empresas (PYMES). Las motivaciones del proyecto propuesto son por un lado la necesidad que tienen las pequeas y medianas empresas de herramientas de presupuestacin y reporting, y de

Sistema de presuspuestacin y reporting para la empresa herramientas de planificacin y por otro lado la gran oportunidad que hay en el mercado descrito y la evolucin de los sistemas citados. En este Proyecto Final de Carrera se ha desarrollado un sistema Web basado en informes presupuestarios, que siendo ms econmico que las herramientas de informacin gerencial actuales y ms adecuado para las pequeas y medianas empresas, pretende elaborar presupuestos e informes de comparacin de forma automtica, basndose en el anlisis de histricos, y permitir su posterior seguimiento. Por su potencia de desarrollo en soluciones Web, integracin de funciones, facilidad de uso y documentacin existente, el proyecto ha sido desarrollado en el leguaje de programacin java (jdk 1.5.08) (compilador y libreras) con el entorno de desarrollo Eclipse-SDK-3.1.1. y el banco de trabajo MyEclipse 5.0. Por razones similares el servidor de aplicaciones y el servidor de bases de datos utilizados han sido Apache Tomcat 5.5 y MySQL Server 4.1 respectivamente.

Asimismo las funciones de carga de datos maestros en la base de datos se han desarrollado en el lenguaje de programacin Microsoft Visual Basic 6.3 (compilador y libreras). El sistema permite al usuario la administracin de los usuarios, las unidades presupuestarias y las zonas de la empresa, la carga de informes con los datos que se dieron en la realidad y la generacin y seguimiento de presupuestos e informes de comparacin entre los presupuestos y los datos reales, todo ello con un tiempo de respuesta mnimo y un interfaz de usuario sencillo e intuitivo.

Los tipos de informes que puede generar y manejar el sistema son los siguientes: Presupuestos

II

Sistema de presuspuestacin y reporting para la empresa Informes de comparacin: Son informes que muestran las diferencias existentes entre un presupuesto que se gener en el sistema y las cifras que se dieron posteriormente en la realidad. Dichas cifras son cargadas con la funcionalidad de carga de datos externos. Informes de datos reales: Son los informes procedentes de tablas de ficheros Excel con los importes que se dieron en la realidad. La estructura de los informes utilizada mostrar todos los apuntes realizados en el informe. Cada apunte constar de la cuenta contable utilizada, la descripcin de dicha cuenta y el saldo de la misma. Las posibles cuentas a manejar son las descritas en el texto legal que regula la contabilidad de las empresas: el Plan General de Contabilidad. En la siguiente figura se muestra un presupuesto generado por el sistema:

Figura 1

III

Sistema de presuspuestacin y reporting para la empresa El sistema lleva un control de los usuarios y sus perfiles. Cada perfil asignado le conceder al usuario los privilegios en la aplicacin que conlleve el mismo. Se definen los siguientes perfiles para administracin, visualizacin de datos, generacin de informes y carga de datos: Administrador: Usuario con todos los permisos. Jefe de Zona: Usuario con permisos nicamente para su zona. Jefe de Unidad: Usuario con permisos nicamente para su unidad presupuestaria. La aplicacin se divide en cuatro mdulos que permiten realizar las funcionalidades descritas: Mdulo de administracin: Permite al usuario con perfil administrador aadir, buscar, modificar y eliminar tanto usuarios, unidades presupuestarias y zonas. Mdulo de seguimiento: Permite al usuario visualizar y modificar todos los informes, tanto presupuestos como informes de comparacin e informes de datos reales pertenecientes a las unidades presupuestarias que le conciernen. Mdulo de generacin: Permite la generacin automtica basada en anlisis de histricos de presupuestos e informes de comparacin. Mdulo de carga de datos reales: Permite la carga de informes en el sistema con los datos que se dieron en la realidad, procedentes de tablas de archivos Excel.

IV

Sistema de presuspuestacin y reporting para la empresa

Abstract:
The budget is one of the most significant documents of any administration and any enterprise. The accurate, useful and detailed budgeting and reporting development has been one of the essential objetives of companies for years. Nowadays, the planning of aims and the budgetary and administrative operations and its later follow-up is something vital for companies in order to improve the making decision process. Due to these needs the systems of managerial information and the tools of Business Intelligence are trying to benefit each other from the opportunities that exist nowadays on the market. A great evolution has taken place in the above mentioned systems on the part of the manufacturers in the last years. The systems named ERPs (Enterprise Resource Planning) and CRMs (Customer Relationship Management) have been developed for the control, management and planning of the resources and contacts of the companies, but they were not dealing with the development and the follow-up of the budgets and budgetary reports. Only recently have new tools been developed, they are known as CPMs (Corporate Performance Management)and are in charge of a global evaluation of the performance of the company. All these tools are aimed at big companies with a large sum of information. However, there are not too many tools fit for small and medium companies. The motivation for the proposed project are on one hand, the need that have small and medium companies of budgeting and reporting tools and on the other hand the great opportunity that exists on the described market and the evolution of the mentioned systems.

Sistema de presuspuestacin y reporting para la empresa In this final Project, has been developed a Web system based on budgetary reports, that being more economical than the current managerial information tools and more adapted for small and medium companies, tries to elaborate budgets and financial reports automatically, based on the historical analysis, and allows their later follow-up. The project has been totally developed under java language, due to its development power in Web solutions, function integration, easiness of use and existing documentation. The workbench used has been MyEclipse 5.0. Due to similar reasons, the aplications server used and the database server have been Apache Tomcat 5.5 and MySQL Server 4.1 respectively. Moreover, the programming language used for scripts that load the first entries in the database has been Visual Basic 6.3 ( compiler and libraries). The system allows to manage the users, budgetary units and departments of the

company, to load real information and to generate and follow-up the budgets and reports . All of this, with a short response time and with an intuitive and simple user interface. The system can manage three types of reports: Budgets Comparison Reports Real Data Reports

The structure of the reports used will show all the notes created in the report. Every note will consist of the account number, description of the account mentioned and its balance . The possible accounts to handle are described in the legal text that regulates the accounting of the companies: The General Plan of Accounting. In the following figure appears a budget generated by the system:

VI

Sistema de presuspuestacin y reporting para la empresa

Figure 1

The system takes control of the users and their profiles. Every assigned profile will grant the privileges to the user in the application. The following profiles are defined for administration, visualization of information, generation of reports and data load: Manager: User with all permissions Chief of Zone: User with permissions only for his zone. Chief of Unit: User with permissions only for his budgetary unit.

The application is divided in four modules that allow to realize the described functionalities: Administration module: It allows the user with administrator profile to add, delete, modify and search users, budgetary units and zones.

VII

Sistema de presuspuestacin y reporting para la empresa Follow-up module: It allows the user to visualize and to modify all reports, as much as budgets as reports of comparison and reports of real data belonging to budgetary units concerned. Generation module:It allows to generate reports automatically, based on the historical analysis of budgets and reports of comparison. Real Data load module: It allows to load reports in the system with the real data that belongs to Excel files.

VIII

Sistema de presuspuestacin y reporting para la empresa

NDICE
1. 2. 3. 4. 5. 6. 7. Introduccin______________________________________________________ 6 Objetivos del sistema ______________________________________________ 10 Abreviaturas y smbolos____________________________________________ 11 mbito y Alcance del sistema _______________________________________ 12 Inconvenientes de los sistemas actuales _______________________________ 13 Descripcin del sistema ____________________________________________ 15 Estudio de la generacin de presupuestos _____________________________ 17 7.1. 7.2. 7.3. 7.4. 7.5. 7.6. Definicin de presupuesto _____________________________________ 17 Funciones de los presupuestos __________________________________ 18 Importancia de los presupuestos ________________________________ 18 Objetivos de los presupuestos __________________________________ 19 El proceso presupuestario _____________________________________ 20 Clasificacin de los presupuestos _______________________________ 22

7.6.1. Segn la flexibilidad_________________________________________ 22 7.6.2. Segn el periodo que cubran __________________________________ 24 7.6.3. Segn el campo de aplicabilidad en la empresa ____________________ 24 7.6.4. Otras clasificaciones _________________________________________ 27 7.7. 8. El calendario presupuestal_____________________________________ 30

Estudio de las cuentas contables_____________________________________ 30

Sistema de presuspuestacin y reporting para la empresa 8.1. 8.2. 8.3. 9. 10. 11. Las cuentas contables _________________________________________ 30 El plan general contable_______________________________________ 31 Principios contables __________________________________________ 33

Diagrama de contexto _____________________________________________ 34 Perfiles y mbito _______________________________________________ 35 Anlisis_______________________________________________________ 36

11.1. Objetivo ____________________________________________________ 36 11.2. Anlisis de requisitos _________________________________________ 37 11.2.1. Requisitos funcionales _____________________________________ 37

11.2.1.1. Modelar la actividad _____________________________________ 37 11.2.1.2. Cargar la informacin del modelo __________________________ 38 11.2.1.3. Permitir alimentar el presupuesto ___________________________ 38 11.2.1.4. Permitir realizar la alimentacin real ________________________ 39 11.2.1.5. Permitir comparar y realizar el seguimiento___________________ 40 11.2.2. Requisitos no funcionales___________________________________ 41

11.2.2.1. Seguridad y control______________________________________ 41 11.2.2.2. Requisitos de calidad ____________________________________ 41 11.2.2.3. Requisitos de interfaces externas ___________________________ 41 11.3. Anlisis Funcional detallado ___________________________________ 43 11.3.1. Alta, Baja, Modificacin y bsqueda de usuarios, de unidades

presupuestarias y de zonas __________________________________________ 43 11.3.2. 11.3.3. Gestin segura de Usuarios y Grupos__________________________ 44 Generacin Presupuestaria __________________________________ 45 2

Sistema de presuspuestacin y reporting para la empresa 11.3.4. 11.3.5. 11.3.6. 11.3.7. 11.3.8. 11.3.9. Generacin de Informes de Comparacin ______________________ 46 Control de Estados de los Presupuestos ________________________ 47 Carga de datos reales en el Sistema ___________________________ 47 Realizacin de funciones de clculo___________________________ 48 Clculo del nivel de aproximacin ____________________________ 49 Almacenamiento de los datos________________________________ 49

11.3.10. Generacin de grficos de Datos _____________________________ 50 11.3.11. Visualizacin de informes __________________________________ 51 11.3.12. Modificacin de informes___________________________________ 52 11.3.13. Eliminacin de informes____________________________________ 52 11.3.14. Exportacin de datos a ficherso Excel _________________________ 53 11.4. Catlogo de requisitos ________________________________________ 53 11.5. Anlisis estructural___________________________________________ 59 11.6. Tipos de informes manejados por el sistema ______________________ 60 11.7. Formato de visualizacin de informes ___________________________ 61 11.8. Estados por lo que puede pasar un informe_______________________ 62 12. 13. Estudio de la arquitectura ________________________________________ 63 Diseo________________________________________________________ 70

13.1. Descripcin del Modelo de dominio _____________________________ 70 13.2. Modelo de datos _____________________________________________ 72 13.2.1. 13.2.2. Identificacin de las entidades _______________________________ 72 Identificacin de las relaciones_______________________________ 73

Sistema de presuspuestacin y reporting para la empresa 13.2.3. Modelo Entidad/Relacin ___________________________________ 74

13.3. Descripcin del Diseo de la base de datos _______________________ 74 13.4. Generacin del cdigo DDL de la base de datos ___________________ 86 13.5. Carga de datos maestros en la base de datos ______________________ 87 13.6. Modelo de Casos de Uso_______________________________________ 89 13.6.1. 13.6.2. 13.6.3. 13.6.4. Identificacin de los Casos de Uso____________________________ 89 Diagrama de Casos de uso _________________________________ 106 Descripcin de los Casos de uso_____________________________ 107 Diagramas de secuencia ___________________________________ 131

13.7. Diagrama de Paquetes ______________________________________ 154 13.7.1. 13.7.2. 13.7.3. 13.7.4. 14. 15. 16. 17. 18. 19. Paquete bean __________________________________________ 155 Paquete acciones_______________________________________ 156 Paquete servicios ______________________________________ 156 Paquete bd____________________________________________ 157

Pool de conexiones realizado ____________________________________ 157 Servlet Mapping efectuado ______________________________________ 159 Funciones realizadas para la generacin de grficas _________________ 160 Planes de Pruebas utilizados _____________________________________ 162 Implantacin _________________________________________________ 165 Mantenimiento________________________________________________ 169

19.1. Mantenimiento correctivo ____________________________________ 169 19.2. Mantenimiento adaptativo____________________________________ 169

Sistema de presuspuestacin y reporting para la empresa 20. 21. Planificacin _________________________________________________ 170 Estudio econmico_____________________________________________ 175

21.1. Recursos utilizados __________________________________________ 175 21.2. Costes del proyecto __________________________________________ 176 21.3. Costes de personal __________________________________________ 177 21.4. Costes de amortizacin de programas y equipos__________________ 179 21.5. Costes de material___________________________________________ 180 21.6. Costes indirectos ____________________________________________ 180 21.7. Coste total del proyecto ______________________________________ 181 22. 23. Conclusiones y lneas futuras ____________________________________ 182 Bibliografa __________________________________________________ 184

Sistema de presuspuestacin y reporting para la empresa

1. Introduccin
El objeto del presente documento es proporcionar una descripcin detallada del proyecto y de las fases realizadas, indicando el anlisis desarrollado, los modelos realizados durante el ciclo de diseo, las pruebas ejecutadas, la planificacin y los costes generados. Se explicarn, las necesidades y el alcance del sistema, los requisitos que debe cumplir y las funciones que realiza as como la estructura de los datos que maneja. Tambin se detallan los modelos y diagramas obtenidos durante la fase de diseo, la estructura de la base de datos y las estructuras de control y flujo de datos. En la actualidad los presupuestos constituyen una herramienta indispensable para la administracin de las empresas, las decisiones de tipo gerencial no se toman nicamente sobre una base de resultados histricos, al contrario, se debe realizar sobre

proyecciones efectivas que nos permitan anticiparnos a corregir hechos negativos que perjudiquen la economa de una empresa. La bsqueda de instrumentos vlidos de apoyo a la toma de decisiones gerenciales es una preocupacin constante desde los comienzos del siglo XX. La generalizacin en el empleo de cifras predeterminadas de acuerdo con unos criterios racionales fue el primer paso encaminado a mejorar los soportes de informacin. Ha sido a partir de 1950 cuando esta inquietud ha alcanzado su mximo desarrollo. La actividad de elaboracin de presupuestos, aplicacin de cifras predeterminadas y desarrollo de un control de gestin son hechos comunes, diramos que casi imprescindibles, en la vida empresarial. El ejercicio de la actividad presupuestaria exige una perfecta jerarquizacin de funciones y una completa coordinacin de todos los rganos empresariales, lo que supone aplicar la denominada pirmide de la informacin.

Sistema de presuspuestacin y reporting para la empresa El presupuesto representa la ltima etapa, es decir la de evaluacin y control expresada en trminos cuantificables (econmico financieros) de las diversas reas o unidades de la empresa como parte de sus planes de accin a corto plazo (generalmente 1 ao), todo esto enmarcado dentro del plan estratgico adaptado inicialmente por la empresa y determinando por la alta direccin. En una poca de cambios en la gerencia moderna, la toma de decisiones exige presin y rapidez, y por lo tanto el factor de prediccin y control de los presupuestos es de vital importancia, es por este propsito que nace este trabajo de investacin, el cual versa en el estudio de la elaboracin y manejo de los diferentes tipos de presupuestos dentro del entorno empresarial para enfrentar los futuros retos de las empresas actuales. En la actualidad las empresas que desean seguir el ritmo de los cambios estn evolucionando hacia la Presupuestacin Corporativa. Los Departamentos Financieros que constantemente buscan las mejores prcticas para sus procesos de Presupuestacin y Planificacin, saben que los sistemas de Budgeting y Planning basados en hojas de clculo limitan su capacidad para conseguir los mejores resultados. Muchas organizaciones han llegado a desilusionarse con sus sistemas de presupuestacin, que toman mucho tiempo en preparar, son muy costosos, y muchas veces no agregan valor a la empresa. En su frustracin, algunas organizaciones han abandonado por completo el proceso de presupuestacin. Sin embargo este es un grave error, ya que si se realizan buenas acciones presupuestarias se conseguir al reduccin de costes, la mejor utilizacin de recursos y servir de gran ayuda en la toma de decisiones. Es indudable que el ambiente competitivo en el que se vive en el mbito empresarial actualmente, requiere promover los procesos y actividades de negocio que generan las

Sistema de presuspuestacin y reporting para la empresa ventajas competitivas de las compaas ante sus ms fuertes competidores. Uno de estos procesos fundamentales es la generacin de informes presupuestarios. Por esto, desde hace ya varios aos, se ha dado mayor importancia a las Tecnologas de Informacin y su alineacin con las estrategias del negocio para mejorar sus procesos clave de negocio. Prueba de ello, es el incremento tan sustancial de adquisiciones de paquetes de software empresariales tales como el ERP (Enterprise Resource Planning), con los cuales los directivos de las compaas esperan tener integradas todas las reas o departamentos de la compaa que apoyan para la generacin de sus productos y servicios. En la actualidad existe una gran necesidad por parte de las empresas de herramientas de presupuestacin y reporting. Es la necesidad de sistemas de informacin que interacten entre s y que proporcionen informacin tanto para las necesidades de las operaciones como de la administracin. En las empresas existe un conjunto de informacin extensa y desordenada que debe ser transformada en una serie de informes estandarizados producidos regularmente que ayudan a la gestin y administracin empresarial. La presupuestacin, adems de representar un instrumento fundamental de optimizacin de la gestin a corto plazo, constituye una herramienta eficaz de participacin del personal en la determinacin de objetivos, y en la formalizacin de compromisos con el fin de fijar responsabilidades para su ejecucin. Realizar la presupuestacin y generar informes de manera automtica constituye una necesidad en las empresas actuales. Como se ha mencionado anteriormente la planificacin de los objetivos y las operaciones presupuestarias y administrativas supone hoy en da algo vital para las empresas. Pero adems es necesario el seguimiento de dicha planificacin. Dicho seguimiento consiste en conocer el punto en el que se encuentra la empresa y evaluando

Sistema de presuspuestacin y reporting para la empresa los datos reales hasta ese punto y los datos previstos se debe realizar una evaluacin de seguimiento. Esta evaluacin nos proporciona informacin del plazo de finalizacin, es decir, nos indica si se llegar a los objetivos fijados en el plazo de tiempo determinado con anterioridad o no, en ambos casos se deber presentar informes que ayuden a la toma de decisiones. Debido a estas necesidades existe una gran oportunidad en este mercado y son los sistemas de informacin gerencial los que aprovechan dicha oportunidad. Se ha producido una gran evolucin de los sistemas de informacin gerencial por parte de los fabricantes. En primer lugar se desarrollaron los ERPs (Enterprise Resource Planning) y los CRMs (Customer Relationship Management), posteriormente se realizaron sistemas similares en entornos WEB. Ms adelante y hasta la actualidad se desarrollan los BI (Business Intelligence). Y por ltimo los sistemas ms actuales son los CPMs (Corporate Performance Management). Los sistemas CPM realizan la gestin del rendimiento corporativo, cubren la gestin de rendimientos, el control presupuestario, los indicadores fundamentales, la simulacin y creacin de escenarios, los modelos de reparto de costes por actividad, la consolidacin de estados financieros y la planificacin a largo plazo. Con todo esto se permite a las compaas mejorar el control de todos los procesos, tomar decisiones en tiempo real, detectar ms rpidamente las desviaciones y aumentar su capacidad y eficacia para adaptarse a cualquier situacin. Como resumen se puede concluir que las motivaciones del proyecto son por un lado la necesidad que tienen las empresas de herramientas de presupuestacin y reporting, y de

Sistema de presuspuestacin y reporting para la empresa herramientas de planificacin y por otro lado la gran oportunidad que hay en el mercado descrito y la evolucin de los sistemas tratados. La finalidad del presente proyecto y sus posibles futuras mejoras es realizar presupuestos que estn basados en la informacin lo ms precisa posible que habr llegado en el momento adecuado, actualizar los presupuestos constantemente con la informacin "de ltimo minuto" proveniente de cualquier nivel dentro de la organizacin y anticiparse a las circunstancias que afectan al buen rendimiento del negocio.

2. Objetivos del sistema

Los objetivos fundamentales del sistema son los siguientes: 1. Entender la metodologa CPM (Corporate Performance Management), estructurarla y crear una aplicacin que haga viable la implantacin de la metodologa en cualquier mbito empresarial. 2. Permitir la expansin de la metodologa CPM por el amplio espectro de PYMES que pueblan el mercado empresarial espaol. 3. Facilitar la incorporacin de los mtodos de Gestin basada en el Rendimiento en las empresas medianas y pequeas facilitndoles una herramienta sencilla y gil que de respuesta a estos procesos de gestin. 4. Crear una herramienta que permita presupuestar y hacer seguimiento del presupuesto. 5. Permitir la presupuestacin de cada departamento en base a su complejidad. 6. Permitir el seguimiento de las actividades con respecto a lo presupuestado.

10

Sistema de presuspuestacin y reporting para la empresa 7. Permitir a la Direccin General monitorizar como van las operaciones de la empresa en base a los objetivos que estableci al inicio del ejercicio. 8. Conseguir estos objetivos para cualquier tipo de empresa, ya sea pequea empresa, mediana empresa, ministerio, hospital... 9. Utilizar herramientas de desarrollo actuales.

La finalidad de estos objetivos es realizar una herramienta til para las empresas que genere los informes adecuados de forma regular en el momento oportuno que ayude a la toma de decisiones, a planificacin y al seguimiento.

3. Abreviaturas y smbolos
En este punto se definen las abreviaturas y smbolos utilizados a lo largo de este documento. UPRES: Unidades Presupuestarias. CTA: Cuentas PP: Perodo Presupuestario PPTO: Presupuesto SDO: Saldo BD: Base de Datos ESTADOS: Cada una de las diferentes etapas en que se puede encontrar un Presupuesto y/o Informe. PBD: Base de Datos del histrico de datos presupuestarios. SPR: Acrnimo del sistema (Sistema de Presupuestacin y Reporting).

11

Sistema de presuspuestacin y reporting para la empresa

4. mbito y Alcance del sistema


La aplicacin SPR abarca una parte de la informacin ligada a la operacin que fluye entre el Director Financiero y las Unidades de negocio (Unidades presupuestarias), ambos incluidos en la misma compaa. La informacin contemplada incluye los presupuestos, los informes de comparacin y los informes de datos reales, los condicionantes temporales de operacin y los datos de administracin de usuarios, unidades de negocio y zonas. Quedan fuera de la misma otros informes financieros y los informes contables diarios. El mbito y alcance del proyecto para conseguir el nuevo sistema incluye principalmente las siguientes tareas:

Especificacin de requerimientos:

Esta tarea consiste en la generacin de las especificaciones correctas que describan con claridad, sin ambigedades, de forma consistente y compacta, el comportamiento del sistema. El resto de actividades est ligada y dependen de la terminacin de esta.

Anlisis y Diseo:

En esta tarea se cometer el anlisis, diseo bsico y diseo de detalle de los requerimientos especificados en la actividad anterior. As mismo, se plasmar el diseo del interfaz de usuario, informes y la definicin exacta de la base de datos.

Desarrollo Software y Pruebas:

Esta es la actividad en donde se implementar y se realizar la programacin software de las funcionalidades definidas y correspondientes al diseo en detalle de lo

12

Sistema de presuspuestacin y reporting para la empresa especificado. En esta tarea se implementar el sistema con el grado de ajuste definido en las actividades anteriores. A lo largo del desarrollo, con la idea de presentar, revisar y realizar pruebas del nuevo sistema se fijarn una serie de versiones. Una vez obtenida una versin se presentar como producto, para exponerla, realizar pruebas y verificar el correcto funcionamiento y los cambios y mejoras necesarios, as como continuar con el desarrollo de funcionalidades no implementadas en la versin. Una vez realizadas estas acciones se obtendr la versin definitiva.

En este alcance no se tiene en cuenta las tareas del acopio, que supone la adquisicin de los equipos, licencias y montajes bsicos e instalacin del software base y herramientas de produccin. Es necesario establecer las necesidades para que no interfieran en la duracin del proyecto. Para todas estas tareas es imprescindible la intervencin del director y de los distintos usuarios finales del sistema para conseguir una definicin y diseo exactos de las necesidades.

5. Inconvenientes de los sistemas actuales


Los motivos por los que los sistemas existentes no satisface en la actualidad enteramente los requerimientos de las pequeas y medianas empresas son:

- Desde el punto de vista de Tecnologa: En la actualidad no existen sistemas Web completos de generacin de informes financieros.

13

Sistema de presuspuestacin y reporting para la empresa

- Desde el punto de vista de los Datos: Los sistemas actuales estn dirigidos a grandes empresas con gran volumen de informacin. Por ello las pequeas y medianas empresas no pueden permitirse el coste de dichos sistemas, pues no lo amortizaran. Debido a ello dichas empresas utilizan sistemas de hojas de clculo en donde cada sistema de estos es independiente y tienen su propio espacio de almacenamiento de datos. De esta forma en los casos en los que los datos son utilizados por distintos usuarios, estos tienen que almacenar por duplicado el contenido de la misma informacin, al no poderse seguir una estructura de almacenamiento relacional. De esta forma, la informacin que tiene que estar duplicada puede provocar posibles problemas de inconsistencia de datos, lo que conlleva necesariamente, a un aumento de los recursos para conservar un mnimo grado de fiabilidad y para realizar el mantenimiento de los mismos. Los sistemas actuales no permiten la obtencin de datos externos reales mediante la lectura de ficheros con estructuras que difieran de la suya propia.

- Desde el punto de vista de los Procesos: La independencia de los sistemas de hojas de clculo implica que en una sesin de trabajo la explotacin de una aplicacin excluye la ejecucin de la otra. Desde el punto de vista de tratamiento de la informacin, en las aplicaciones existen procesos que, obviamente, no pueden realizarse en paralelo, de forma que en una misma sesin de trabajo no se pueden utilizar el conjunto de funcionalidades de todas aplicaciones. Los sistemas actuales ms sofisticados (ERPs) no permiten el seguimiento de los presupuestos segn sus estados. En la generacin de previsiones intervienen varias

14

Sistema de presuspuestacin y reporting para la empresa personas responsables de ello. Al no tener en cuenta los posibles estados de un presupuesto la comunicacin entre dichas personas es complicada al no saber quin ha revisado el presupuesto y quin no. Las funciones de generacin de los sistemas actuales (ERPs) son sencillas y no se basan en los datos que se dieron en la realidad con lo cual, los presupuestos generados son menos precisos.

6. Descripcin del sistema


Las mejoras de los sistemas existentes y las necesidades no realizadas por originan la necesidad de desarrollar un nuevo sistema, SPR. La ventaja principal del sistema SPR con respecto al resto de sistemas existentes es que la aplicacin propuesta es una solucin Web. stos

El nuevo sistema, SPR, parte de las funcionalidades de las aplicaciones existentes, y de las nuevas necesidades de los usuarios para proporcionar, adems de las mismas facilidades que estas aplicaciones, la ampliacin con aquellas facilidades que son necesarias para satisfacer los requerimientos de los usuarios de las distintas organizaciones y empresas. Por tanto, el nuevo sistema tratar de conseguir los

objetivos citados anteriormente:

- Permitir la expansin de la tecnologa CPM por el amplio espectro de PYMES que pueblan el mercado. - Facilitar la incorporacin de los mtodos de Gestin basada en el Rendimiento de las empresas medianas y pequeas facilitndoles una herramienta sencilla y gil que de respuesta a estos procesos de gestin.

15

Sistema de presuspuestacin y reporting para la empresa - Crear una herramienta que permita presupuestar y hacer un seguimiento del presupuesto segn sus estados. - Permitir la presupuestacin de cada departamento en base a su complejidad. - Permitir a la Direccin General monitorizar como van las operaciones de la empresa en base a los objetivos que se establecieron al inicio del ejercicio. - Conseguir estos objetivos para cualquier tipo de empresa, ya sea pequea empresa, mediana empresa, ministerio, hospital...

Con respecto a los sistemas basados en hojas de clculo es sistema trata de: - Proporcionar una integridad y homogeneidad de las aplicaciones. Actualmente las aplicaciones basadas en hojas de clculo son heterogneas, no estn integradas. Con la nueva aplicacin se pretende tener claramente definidos los procesos a realizar y tenerlos integrados bajo un sistema Web. - Subsanar los inconvenientes de los sistemas basados en hojas de clculo actuales respecto a la imposibilidad de simultanear procesos, por medio de la utilizacin de una aplicacin nica que agrupe los procesos y permita que en una misma sesin sean accesibles todas las funcionalidades. - Subsanar los inconvenientes respecto a la duplicidad de datos, por medio de la utilizacin de una base de datos relacional nica, no estando, de esta forma, la informacin fsicamente ms que en un espacio, mejorando el tratamiento y accesibilidad a los datos. De esta forma, el sistema SPR proporcionar una herramienta informtica que mantiene e incrementa la gama de facilidades disponibles actualmente, dentro de un entorno de trabajo nico y amigable que facilita su explotacin y produccin.

16

Sistema de presuspuestacin y reporting para la empresa

7. Estudio de la generacin de presupuestos


El objetivo del presente del apartado de investigacin es presentar un resumen coordinado de los conceptos que constituyen la teora de los presupuestos desde la perspectivas de diferentes autores. Principios, conceptos, trminos y temas que permitirn tener el conocimiento necesario para el desarrollo del sistema. Aqu se tratan algunos conceptos acerca de la Formulacin de presupuestos empresariales. Concepto de Presupuesto, Funciones, Importancia, Objetivos de la elaboracin del Presupuesto, Finalidades de los Presupuestos, Principios de la Presupuestacin, Motivos del fracaso de la Presupuestacin, el calendario Presupuestal y algunos trminos y definiciones sobre Presupuestos.

7.1.

Definicin de presupuesto

Es un plan de accin dirigido a cumplir una meta prevista, expresada en valores y trminos financieros que, debe cumplirse en determinado tiempo y bajo ciertas condiciones previstas, este concepto se aplica a cada centro de responsabilidad de la organizacin [BARA03]. Un presupuesto es la previsin de gastos e ingresos para un determinado lapso, por lo general un ao. Permite a las empresas, los gobiernos, las organizaciones privadas y las familias establecer prioridades y evaluar la consecucin de sus objetivos. Para alcanzar estos fines puede ser necesario incurrir en dficit (que los gastos superen a los ingresos) o, por el contrario, puede ser posible ahorrar, en cuyo caso el presupuesto presentar un supervit (los ingresos superan a los gastos) [FONT97]. En el mbito del comercio es tambin un documento o informe que detalla el coste que tendr un servicio en caso de realizarse. El que realiza el presupuesto se debe atener a l

17

Sistema de presuspuestacin y reporting para la empresa y no puede cobrarlo si el cliente acepta el servicio. El presupuesto se puede cobrar o no en caso de no ser aceptado [BARA03].

7.2.

Funciones de los presupuestos

- La principal funcin de los presupuestos se relaciona con el Control financiero de la organizacin. - El control presupuestario es el proceso de descubrir qu es lo que se est haciendo, comparando los resultados con sus datos presupuestados correspondientes para verificar los logros o remediar las diferencias. - Los presupuestos pueden desempear tanto roles preventivos como correctivos dentro de la organizacin. [FONT97]

7.3.

Importancia de los presupuestos

- Presupuestos: Son tiles en la mayora de las organizaciones como: Utilitaristas (compaas de negocios), no-utilitaristas (agencias gubernamentales), grandes (multinacionales, conglomerados) y pequeas empresas. - Los presupuestos son importantes porque ayudan a minimizar el operaciones de la organizacin - Por medio de los presupuestos se mantiene el plan de operaciones de la empresa en unos lmites razonables. - Sirven como mecanismo para la revisin de polticas y estrategias de la empresa y direccionarlas hacia lo que verdaderamente se busca. - Cuantifican en trminos financieros los diversos componentes de su plan total de accin. riesgo en las

18

Sistema de presuspuestacin y reporting para la empresa - Las partidas del presupuesto sirven como guas durante la ejecucin de programas de personal en un determinado periodo de tiempo, y sirven como norma de comparacin una vez que se hayan completado los planes y programas. - Los procedimientos inducen a los especialistas de asesora a pensar en las necesidades totales de las compaas, y a dedicarse a planear de modo que puedan asignarse a los componentes y alternativas con la importancia necesaria . - Los presupuestos sirven como medios de comunicacin entre unidades a determinado nivel y verticalmente entre ejecutivos de un nivel a otro. Una red de estimaciones presupuestarias se filtran hacia arriba a travs de niveles sucesivos para su ultimo anlisis. [BARA03].

7.4.

Objetivos de los presupuestos

- Planear integral y sistemticamente todas las actividades que la empresa debe desarrollar en un periodo determinado. - Controlar y medir los resultados cuantitativos, cualitativos y, fijar responsabilidades en las diferentes dependencias de la empresa para logar el cumplimiento de las metas previstas. - Coordinar los diferentes centros de costo para que se asegure la marcha de la empresa en forma integral. - Planear los resultados de la organizacin en dinero y volmenes. - Controlar el manejo de ingresos y gastos de la empresa. - Coordinar y relacionar las actividades de la organizacin. - Lograr los resultados de las operaciones peridicas. [FONT97]

19

Sistema de presuspuestacin y reporting para la empresa

7.5.

El proceso presupuestario

Debido a todo lo mencionado anteriormente se puede observar que el proceso presupuestario tiende a reflejar de una forma cuantitativa, a travs de los presupuestos, los objetivos fijados por la empresa a corto plazo, mediante el establecimiento de los oportunos programas, sin perder la perspectiva del largo plazo, puesto que sta condicionar los planes que permitirn la consecucin del fin ltimo al que va orientado la gestin de la empresa [FONT97]. Los presupuestos sirven de medio de comunicacin de los planes de toda la organizacin, proporcionando las bases que permitirn evaluar la actuacin de los distintos segmentos, o reas de actividad de la empresa y de la gerencia. El proceso culmina con el control presupuestario, mediante el cual se evala el resultado de las acciones emprendidas permitiendo, a su vez, establecer un proceso de ajuste que posibilite la fijacin de nuevos objetivos. Un proceso presupuestario eficaz depende de muchos factores; sin embargo, existen dos que pueden tener la consideracin de "requisitos imprescindibles". As, por un lado, es necesario que la empresa tenga configurada una estructura organizativa clara y coherente, a travs de la que se vertebrar todo el proceso de asignacin y delimitacin de responsabilidades. Un programa de presupuestacin ser ms eficaz en tanto en cuanto se puedan asignar adecuadamente las responsabilidades, para lo cual, necesariamente, tendr que contar con una estructura organizativa perfectamente definida. El otro requisito viene determinado por la repercusin que, sobre el proceso de presupuestacin, tiene la conducta del potencial humano que interviene en el mismo; esto es, el papel que desempean dentro del proceso de planificacin y de presupuestacin los factores de motivacin y de comportamiento. La presupuestacin,

20

Sistema de presuspuestacin y reporting para la empresa adems de representar un instrumento fundamental de optimizacin de la gestin a corto plazo, constituye una herramienta eficaz de participacin del personal en la determinacin de objetivos, y en la formalizacin de compromisos con el fin de fijar responsabilidades para su ejecucin. Esta participacin sirve de motivacin a los individuos que ejercen una influencia personal, confirindoles un poder decisorio en sus respectivas reas de responsabilidad [FONT97]. El proceso de planificacin presupuestaria de la empresa vara mucho dependiendo del tipo de organizacin de que se trate, sin embargo, con carcter general, se puede afirmar que consiste en un proceso secuencial integrado por las siguientes etapas:

Definicin y transmisin de las directrices generales a los responsables de la preparacin de los presupuestos: La direccin general, o la direccin estratgica, es la responsable de transmitir a cada rea de actividad las instrucciones generales, para que stas puedan disear sus planes, programas, y presupuestos; ello es debido a que las directrices fijadas a cada rea de responsabilidad, o rea de actividad, dependen de la planificacin estratgica y de las polticas generales de la empresa fijadas a largo plazo. Elaboracin de planes, programas y presupuestos: A partir de las directrices recibidas, y ya aceptadas, cada responsable elaborar el presupuesto considerando las distintas acciones que deben emprender para poder cumplir los objetivos marcados. Sin embargo, conviene que al preparar los planes correspondientes a cada rea de actividad, se planteen distintas alternativas que contemplen las posibles variaciones que puedan producirse en el comportamiento del entorno, o de las variables que vayan a configurar dichos planes [FONT97].

21

Sistema de presuspuestacin y reporting para la empresa - Negociacin de los presupuestos: La negociacin es un proceso que va de abajo hacia arriba, en donde, a travs de fases iterativas sucesivas, cada uno de los niveles jerrquicos consolida los distintos planes, programas y presupuestos aceptados en los niveles anteriores. - Coordinacin de los presupuestos: A travs de este proceso se comprueba la coherencia de cada uno de los planes y programas, con el fin de introducir, si fuera necesario, las modificaciones necesarias y as alcanzar el adecuado equilibrio entre las distintas reas. - Aprobacin de los presupuestos: La aprobacin, por parte de la direccin general, de las previsiones que han ido realizando los distintos responsables supone evaluar los objetivos que pretende alcanzar la entidad a corto plazo, as como los resultados previstos con base de la actividad que se va a desarrollar. Seguimiento y actualizacin de los presupuestos: Una vez aprobado el presupuesto es necesario llevar a cabo un seguimiento o un control de la evolucin de cada una de las variables que lo han configurado y proceder a compararlo con las previsiones. Este seguimiento permitir corregir las situaciones y actuaciones desfavorables, y fijar las nuevas previsiones que pudieran derivarse del nuevo contexto.

7.6.

Clasificacin de los presupuestos

Los presupuestos pueden clasificarse desde varios puntos de vista. A continuacin se expone una clasificacin de acuerdo con sus aspectos sobresalientes [FONT97]:

7.6.1. Segn la flexibilidad


- Rgidos, estticos, fijos o asignados. Estos se elaboran para un solo nivel de actividad. Una vez alcanzado este, no se permiten los ajustes requeridos por las variaciones que

22

Sistema de presuspuestacin y reporting para la empresa sucedan. De este modo se efecta un control anticipado, sin considerar el comportamiento econmico, cultural, poltico, demogrfico o jurdico de la regin donde acta la empresa. Esta forma de control anticipado dio origen al presupuesto que tradicionalmente utilizaba el sector pblico. - Flexibles o variables. Son los presupuestos que se elaboran para diferentes niveles de actividad y pueden adaptarse a las circunstancias que surjan en cualquier momento. Estos muestran los ingresos, costos y gastos ajustados al tamao de operaciones manufactureras o comerciales. Tienen amplia aplicacin en el campo de la presupuestacin de los costos, gastos indirectos de fabricacin, administrativos y ventas. El presupuesto flexible se elabora para distintos niveles de operacin, brindando informacin proyectada para distintos volmenes de las variables crticas, especialmente las que constituyen una restriccin o factor condicionante. Su utilidad es que evita la rigidez del presupuesto maestro esttico que supone un nivel fijo de trabajo, transformndolo en un instrumento dinmico con varios niveles de operacin para conocer el impacto sobre los resultados pronosticados de cada rango de actividad, como consecuencia de las distintas reacciones de los costos frente a aquellos. Esto significa que se confecciona para un cierto intervalo de volumen comprendido entre un mnimo y otro ms elevado, dado por el nivel mximo de actividad de la empresa. Se elabora en forma tabulada, representando cada columna los grados probables de actividad. Su clave es la diferenciacin del comportamiento de costos o gastos frente a variaciones en las cantidades producidas o vendidas, identificando los componentes fijos o variables de cada partida.

23

Sistema de presuspuestacin y reporting para la empresa

7.6.2. Segn el periodo que cubran


La determinacin del lapso que abarcarn los presupuestos depender del tipo de operaciones que realice la Empresa, y de la mayor o menor exactitud y detalle que se desee, ya que a ms tiempo corresponder una menor precisin y anlisis. As pues, puede haber presupuestos:

- A corto plazo: Son los presupuestos que se planifican para cubrir un ciclo de operacin y estos suelen abarcar un ao o menos. - A largo plazo: En este campo se ubican los planes de desarrollo del estado y de las grandes empresas. En el caso de los gobiernos los planes presupuestales estn bajo las normas constitucionales de cada pas. Los lineamientos generales suelen sustentarse en consideraciones econmicas, como generacin de empleo, creacin de infraestructura, lucha contra la inflacin, difusin de los servicios de seguridad social, fomento del ahorro, etc. Las grandes empresas adoptan este presupuesto cuando emprenden proyectos de inversin en actualizacin tecnolgica, ampliacin de la capacidad instalada, integracin de intereses accionarios y expansin de los mercados. Ambos tipos de presupuestos son tiles; es importante para los directivos tener de antemano una perspectiva de los planes del negocio para un perodo suficientemente largo, y no se concibe sta sin la formulacin de presupuestos para perodos cortos, con programas detallados para el periodo inmediato siguiente.

7.6.3. Segn el campo de aplicabilidad en la empresa


- Presupuesto maestro. Es un Presupuesto que proporciona un plan global para un ejercicio econmico prximo. Generalmente se fija a un ao, debiendo incluir el

24

Sistema de presuspuestacin y reporting para la empresa objetivo de utilidad y el programa coordinado para lograrlo. Consiste adems en pronosticar sobre un futuro incierto porque cuando ms exacto sea el presupuesto o pronstico, mejor se presentara el proceso de planificacin, fijado por la alta direccin de la Empresa. El presupuesto maestro consiste en la agrupacin de las lneas de actuacin que han sido previamente presupuestadas en las distintas parcelas de actividad de la empresa. Los pasos fundamentales en el desarrollo del presupuesto maestro inician con la estimacin de la variable que va a condicionar el desarrollo de la actividad de la empresa en un perodo determinado, teniendo en cuenta los objetivos a largo plazo y la concrecin a corto plazo que de los mismos se ha realizado; este proceso culmina con la presentacin de los estados que van a recoger de manera global las estimaciones previamente realizadas. La presentacin y contenido de estos estados es similar a la de los estados financieros formulados por las empresas el final del ejercicio econmico, con la nica diferencia que en este contexto las cifras son prospectivas. Para poder llegar a la presentacin de los estados financieros deber desarrollarse previamente un conjunto de lo que se podra denominar "presupuestos intermedios" que pueden agruparse en dos grandes reas:

- Presupuestos operativos: estos presupuestos hacen referencia, principalmente, al rea de comercializacin, produccin y a los gastos de gestin los cuales suelen abarcar un ejercicio econmico (un ao), si bien en algunos casos puede resultar aconsejable referenciarlos a otra subdivisin temporal tal como: trimestre, semestre, etc. Los elementos que integran estos presupuestos operativos son: Presupuesto de ventas Presupuesto de produccin

25

Sistema de presuspuestacin y reporting para la empresa Presupuesto de compras Presupuesto de gastos de venta Presupuesto de publicidad Presupuesto de investigacin y desarrollo Presupuesto de administracin. - Presupuestos de inversiones: cuantifican las necesidades en bienes de capital, consecuencia de las decisiones tomadas dentro de la planificacin estratgica. A partir de los presupuestos operativos y de inversiones se determinar el conjunto de cobros y pagos que configurarn el presupuesto de tesorera, para formular al final del proceso el balance de la situacin. Beneficios: Define objetivos bsicos de la empresa. Determina la autoridad y responsabilidad para cada una de las generaciones. Es oportuno para la coordinacin de las actividades de cada unidad de la empresa. Facilita el control de las actividades. Permite realizar un auto anlisis de cada periodo. Los recursos de la empresa deben manejarse con efectividad y eficiencia.

Limitaciones: El Presupuesto solo es un estimado no pudiendo establecer con exactitud lo que

suceder en el futuro. El presupuesto no debe sustituir a la administracin si no todo lo contrario es una

herramienta dinmica que debe adaptarse a los cambios de la empresa. Su xito depende del esfuerzo que se aplique a cada hecho o actividad.

26

Sistema de presuspuestacin y reporting para la empresa Este Presupuesto es un modelo a seguir por las caractersticas de su aplicacin y de

obtencin de resultados, es directo, es medirle, es comparativo y hasta cierto punto asegura el retorno de la inversin. -Presupuesto de Operacin: Son estimados que en forma directa tiene que ver con la parte Neurolgica de la Empresa, desde la produccin misma hasta los gastos que conlleve ofertar el producto o servicio, son componentes de este: - Presupuesto de Venta (estimados producido y en proceso) - Presupuesto de produccin (incluye gastos directos e indirectos) - Presupuesto de requerimiento de materiales (materia prima, insumos, auto partes, etc.) - Presupuesto mano de obra (fuerza bruta, personal cualificado y especializado) - Presupuesto gasto de fabricacin. - Presupuesto costo de produccin (sin el margen de ganancia) - Presupuesto gasto de venta (capacitacin, vendedores, publicidad) - Presupuesto gasto de administracin (requerimiento de todo tipo de mano de obra y distribucin del trabajo).

7.6.4. Otras clasificaciones


Por su Contenido - Principales: Estos presupuestos son una especie de resumen, en el que se presentan los elementos medulares en todos los presupuestos de la empresa. - Auxiliares: Son aquellos que muestran en forma analtica las operaciones estimadas por cada uno de los departamentos que integran la organizacin de la empresa. Por la Tcnica de Valuacin

27

Sistema de presuspuestacin y reporting para la empresa - Estimados: Son los presupuestos que se formulan sobre bases empricas; sus cifras numricas, por ser determinadas sobre experiencias anteriores, representan tan slo la probabilidad ms o menos razonable de que efectivamente suceda lo que se ha planeado. - Estndar: Son aquellos que por ser formulados sobre bases cientficas o casi cientficas, eliminan en un porcentaje muy elevado las posibilidades de error, por lo que sus cifras, a diferencia de las anteriores, representan los resultados que se deben obtener. Por su Reflejo en los Estados Financieros - De Posicin Financiera: Este tipo de presupuestos muestra la posicin esttica que tendra la empresa en el futuro, en caso de que se cumplieran las predicciones. Se presenta por medio de lo que se conoce como Posicin Financiera (Balance General) Presupuestada. - De Resultados: Que muestran las posibles utilidades a obtener en un perodo futuro - De Costos: Se preparan tomando como base los principios establecidos en los pronsticos de ventas, y reflejan, a un perodo futuro, las erogaciones que se hayan de efectuar por concepto del Costo Total o cualquiera de sus partes. Por las Finalidades que Pretende - De Promocin: Se presentan en forma de Proyecto Financiero y de Expansin; para su elaboracin es necesario estimar los ingresos y egresos que haya que efectuarse en el perodo presupuestal. - De Aplicacin: Normalmente se elaboran para solicitud de crditos. Constituyen pronsticos generales sobre la distribucin de los recursos con que cuenta, o habr de contar la Empresa.

28

Sistema de presuspuestacin y reporting para la empresa - De Fusin: Se emplean para determinar anticipadamente las operaciones que hayan de resultar de una conjuncin de entidades. Por reas y Niveles de Responsabilidad Cuando se desea cuantificar la responsabilidad de los encargados de las reas y niveles en que se divide una compaa. Por Programas Este tipo de presupuestos es preparado normalmente por dependencias

gubernamentales, descentralizadas, patronatos, instituciones, etc. Sus cifras expresan el gasto, en relacin con los objetivos que se persiguen, determinando el costo de las actividades concretas que cada dependencia debe realizar para llevar a cabo los programas a su cargo. Base Cero. Es aquel que se realiza sin tomar en consideracin las experiencias habidas. Este presupuesto es til ante la desmedida y continua elevacin de los precios, exigencias de actualizacin, de cambio, y aumento continuo de los costos en todos los niveles, bsicamente. Resulta ser muy costoso y con informacin extempornea. En la concepcin de algunos autores, el proceso de anlisis de cada partida presupuestaria, comenzando con el nivel actual de cada una de ellas, para despus justificar los desembolsos adicionales que puedan requerir los programas en el prximo ejercicio, es tpico de una administracin pblica y no debe ser el procedimiento para decidir en la esfera privada. Para ello, impulsaron el PBC (presupuesto base cero) como tcnica que sustenta el principio de que para el prximo perodo el importe de cada partida es cero. Mientras un enfoque da por vlido lo ejecutado con anterioridad, otro afirma que nada existe y todo debe justificarse a partir de cero, analizando la relacin costo beneficio de cada actividad. El primero de los sistemas (mtodo incremental)

29

Sistema de presuspuestacin y reporting para la empresa modifica las partidas del perodo anterior, mientras que el segundo transfiere a cada perodo la responsabilidad de su justificacin a los titulares de cada rea. La aparicin del PBC constituy una reaccin al procedimiento del sector pblico fundamentalmente cuantitativo y casi nada cualitativo que contribuye a un anlisis crtico de cada partida.

7.7.

El calendario presupuestal

Es la agenda en la cual se definen a travs del tiempo la ejecucin y el control (evaluacin) del presupuesto. Depende del tipo de organizacin y puede ser diario, semanal, quincenal, mensual, trimestral, semestral o anual.

8. Estudio de las cuentas contables


8.1. Las cuentas contables

La Cuenta Contable es la representacin grfica de los movimientos econmicos que sufre un Bien, un Derecho, una Obligacin, un Gasto o un Ingreso [BARA03]. Existe la necesidad de que todas las empresas (o instituciones que llevan contabilidad) homogeneicen sus operaciones contables para que cualquiera pueda entender la contabilidad escrita en sus libros. Para ello era necesario que el Estado dictara una ley que hiciera esta homogeneizacin. Si tenemos en cuenta que en cualquier operacin econmica se debe poner la cuenta contable correspondiente a esa operacin econmica, necesitamos una relacin de cmo quiere el estado que llamemos a esas cuentas y, adems, con la aparicin de los ordenadores se observa la necesidad de codificarlas. Es por ello, que la mayora de los pases tienen en su legislacin una ley homogeneizando esos nombres y nmeros de cuenta. EL PLAN GENERAL CONTABLE representa esta homogeneizacin.

30

Sistema de presuspuestacin y reporting para la empresa

8.2.

El plan general contable

Est publicado en el Artculo 1643/90 de 20 de diciembre de 1990 y aprobado en el B.O.E. 310 de 27 de diciembre de 1990. Consta de 5 partes: 1. Principios Contables: Son los que rigen como contabilizaremos nuestras

operaciones contables. 2. Cuadro de Cuentas: Homogeneizacin del nombre y el nmero de la cuenta

contable. 3. Definiciones y Relaciones Contables: Explica el significado de cada una de las

Cuentas y sus relaciones con otras Cuentas. 4. Cuentas Anuales: Las cuentas anuales son 3: El Balance, La Cuenta de Prdidas

y Ganancias y la Memoria. Son los resmenes de los estados contables de la empresa que tenemos que presentar en el Registro Mercantil anualmente. 5. Normas de Valoracin: Son normas dictadas por el Estado para regular el valor

de nuestros activos.

La contabilidad en la empresa se desarrollar aplicando obligatoriamente los principios contables. La Cuentas Anuales, (Balance de Situacin, Cuenta de Resultados y Memoria) deben expresar la Imagen Fiel del Patrimonio, de la situacin financiera y de los resultados de la Empresa.

IMAGEN FIEL: Es el resumen de todos los principios contables, es la norma bsica que los rige, y significa que la informacin econmica (movimientos contables) se reflejar fielmente tal y como est ocurriendo. Es decir, los gastos se contabilizarn

31

Sistema de presuspuestacin y reporting para la empresa cuando se produzca el gasto; el ingreso cuando se produzca el ingreso; el pago cuando se produzca el pago y el cobro cuando se produzca el cobro. El plan general de contabilidad divide todas las posibles cuentas contables en grupos, dos de dichos grupos de divisin y sus cuentas asociadas son los utilizados para la realizacin de presupuestos, estos grupos son el 60 y 70: Grupo 6: COMPRAS Y GASTOS Grupo 60: COMPRAS Grupo 61: VARIACIN DE EXISTENCIAS Grupo 62: SERVICIOS EXTERIORES Grupo 63: TRIBUTOS Grupo 64: GASTOS DE PERSONAL Grupo 65: OTROS GASTOS DE GESTIN Grupo 66: GASTOS FINANCIEROS Grupo 67: PRDIDAS PROCEDENTES DE INMOVILIZADO Grupo 68: DOTACIONES PARA AMORTIZACIONES Grupo 69: DOTACIONES A LAS PROVISIONES

Grupo 7: VENTAS E INGRESOS Grupo 70: VENTAS DE MERCADERAS Grupo 71: VARIACIN DE EXISTENCIAS Grupo 73: TRABAJOS REALIZADOS PARA LA EMPRESA Grupo 74: SUBVENCIONES A LA EXPLOTACIN Grupo 75: OTROS INGRESOS DE GESTIN Grupo 76: INGRESOS FINANCIEROS Grupo 77: BENEFICIOS PROCEDENTES DEL INMOVILIZADO

32

Sistema de presuspuestacin y reporting para la empresa Grupo 79: EXCESOS Y APLICACIONES DE PREVISIONES

8.3.

Principios contables

- Principio de Prudencia: nicamente se contabilizarn los beneficios realizados a la fecha del cierre del ejercicio. Las prdidas y los riesgos ciertos tambin se contabilizarn tan pronto se tenga conocimientos de ellos. Tambin se tendrn en cuenta las depreciaciones patrimoniales (la prdida de valor). - Principio de Empresa en Funcionamiento: Se considera que la gestin de la empresa tiene una duracin ilimitada en el tiempo. - Principio de Registro: Los hechos econmicos deben registrarse cuando nazcan los derechos u obligaciones que los generan (las facturas no se pueden tener 3 das en un cajn). - Principio de Precio de Adquisicin: Como norma general todos los bienes y derechos, se contabilizarn por su precio de adquisicin o su coste de produccin. - Principio de Devengo: Se contabilizarn los ingresos y los gastos cuando estos se produzcan y no cuando los paguemos o cobremos por Tesorera. - Principio de Correlacin de Ingresos y Gastos: El Resultado ser igual a los ingresos menos los gastos. - Principio de No Compensacin: En ningn caso podrn compensarse las partidas del Activo y Pasivo del Balance, ni las de Gastos e Ingresos que integran la Cuenta de Explotacin de Prdidas y Ganancias. - Principio de Uniformidad: Adoptado un criterio contable hay que seguirlo y mantenerlo.

33

Sistema de presuspuestacin y reporting para la empresa - Principio de Importancia Relativa: Podra admitirse la no-aplicacin estricta de los principios contables, siempre y cuando la variacin de tal hecho no sea muy significativa y respete la imagen fiel.

9. Diagrama de contexto
En este diagrama se reflejan las relaciones que SPR, como sistema, tiene con las entidades externas con las que interacciona. Una entidad externa simboliza cualquier otro sistema o elemento del entorno que interacciona con el sistema, pero que est fuera de su alcance de definicin.

Figura 2

34

Sistema de presuspuestacin y reporting para la empresa

10. Perfiles y mbito


Un usuario podr tener un nico perfil en la aplicacin. Cada perfil asignado le conceder al usuario los privilegios en la aplicacin que conlleve el mismo. Se definen los siguientes perfiles para administracin, visualizacin de datos, generacin de informes y carga de datos: Administrador de usuarios, unidades, zonas y de aplicacin: Ser la persona que

podr crear, modificar y eliminar usuarios y asignarles/cambiarles los perfiles. El administrador de usuarios podr asignar todos los perfiles posibles del sistema. Adems ser la persona que podr asignar permisos de administracin de la aplicacin y que tendr permisos de administracin en la base de datos.

Jefe de Zona: Ser la persona con permiso de acceso a las pantallas de consultas,

de carga de datos y de generacin de presupuestos e informes. Este acceso estar limitado nicamente a la zona o zonas de las cuales sea jefe, es decir, slo podr hacer consultas, cargar datos o generar informes en las unidades pertenecientes a su zona.

Jefe de Unidad: : Ser la persona con permiso de acceso a las pantallas de

consultas, de carga de datos y de generacin de presupuestos e informes. Este acceso estar limitado nicamente a la unidad o unidades de las cuales sea jefe.

El concepto zona es el de que cada miembro tiene la posibilidad de visualizar lo que haya hecho cualquiera del resto de los miembros de la misma. Ser su perfil el que indique qu podr hacer. Se corresponde con su zona de actuacin. Es decir, podr ver

35

Sistema de presuspuestacin y reporting para la empresa todo lo relacionado con las unidades de su zona. Una zona puede ser cualquier mbito de actuacin definido en la empresa.

El concepto unidad procede de las Unidades de Presupuestacin, consisten en los elementos pertenecientes a la empresa a los que se puede aplicar un presupuesto. Pueden ser desde un departamento hasta una tienda dependiendo de las necesidades de presupuestacin de la compaa y de su estructura y organizacin. Las unidades presupuestarias son definidas por la empresa segn sus necesidades.

11. Anlisis
11.1. Objetivo

El objeto del presente apartado es proporcionar una visin completa y general de las funcionalidades, datos que se deben considerar, tratamiento sobre datos y restricciones que debe reunir el sistema SPR propuesto. Las especificaciones que se exponen son el resultado de realizar diversas entrevistas con los usuarios, as como del estudio de la informacin proporcionada por el Director del Proyecto, con el fin de identificar los requisitos y el alcance real del sistema, que satisfaga las necesidades propuestas por el usuario. La informacin utilizada para realizar el apartado ha consistido en: Definicin y documentacin relativa al presupuesto e informes presupuestarios. Bases de datos para la realizacin de presupuestos. Hojas de clculo explicativas para la realizacin de presupuestos.

36

Sistema de presuspuestacin y reporting para la empresa

11.2.

Anlisis de requisitos

El objetivo de este apartado del Anlisis es alcanzar un conocimiento suficiente del sistema, definiendo las necesidades, problemas y requisitos del usuario, para expresarlo posteriormente mediante los modelos de procesos y de datos.

11.2.1.

Requisitos funcionales

11.2.1.1. Modelar la actividad


El modelado es la primera actividad que debe llevar a cabo el sistema. Dicho modelado consiste en la creacin de un esquema de informacin basado en tres datos fundamentales: Las Unidades Presupuestarias (UPRES): Son los objetos lgicos o fsicos que van a ser evaluados por el sistema. Son los centros sobre los cuales gira la funcionalidad del sistema. Las Cuentas: Son los Conceptos Presupuestarios, es decir, la razn por la que se produce un gasto o ingreso en la Unidad Presupuestaria (UPRE). Las cuentas se identifican por un nmero de concepto. Adems de este nmero de cuenta por el que se identifican tendrn una descripcin que mostrar la razn de esa cuenta. Los Perodos Presupuestarios (PP): Son los ciclos de tiempo transcurridos entre la realizacin de las actividades de presupuestacin. Es decir, definen los puntos en el tiempo donde se realizarn los presupuestos y las funciones de presupuestacin de las Unidades Presupuestarias.

37

Sistema de presuspuestacin y reporting para la empresa Mediante estos tres conceptos se forma estructura tridimensional en la que se establecern y se tendrn definidos de forma clara los gastos e ingresos realizados en la empresa.

11.2.1.2. Cargar la informacin del modelo


Esta actividad consiste en el almacenamiento de los datos de las tres dimensiones anteriormente citadas: las Unidades Presupuestarias, los Conceptos y los Perodos Presupuestarios. La informacin cargada ser una informacin general, es decir, ser la informacin del modelo de la empresa con los datos genricos de las tres dimensiones. En un apartado posterior se explicarn que datos se cargarn por cada una de las tres dimensiones.

11.2.1.3. Permitir alimentar el presupuesto


Dicha accin consiste en consentir al usuario que elabore el presupuesto. Para realizar el presupuesto ser necesario haber identificado que Unidad Presupuestaria estamos tratando, que Cuentas se reflejarn y para qu perodo de tiempo es el Presupuesto. La elaboracin del presupuesto se realiza con la utilizacin de plantillas que toman informacin de los datos cargados por el sistema. El presupuesto podr realizarse de varias maneras dependiendo de la eleccin del usuario: Automticamente: La propia aplicacin realizar el presupuesto basndose en el anlisis de los presupuestos anteriormente realizados en el sistema y otros datos necesarios. El usuario podr dictaminar la utilizacin de funciones de clculo para la realizacin del presupuesto como por ejemplo: incrementar el saldo de una cuenta (por

38

Sistema de presuspuestacin y reporting para la empresa ejemplo ventas) en un tanto por ciento con respecto a los presupuestos en los que se basar la aplicacin. Manualmente: El usuario podr realizar el informe presupuestario introduciendo los datos directamente. En este caso tambin podr utilizar funciones de clculo para la obtencin de los datos. Como se ha comentado anteriormente en ambos casos se podr visualizar el presupuesto en la plantilla seleccionada. La aplicacin deber permitir guardar, recalcular o rechazar el informe calculado. Adems, todos los presupuestos realizados anteriormente por la aplicacin podrn ser visualizados por el usuario. Igualmente se podrn modificar y recalcular dichos presupuestos tanto manual como automticamente. El presupuesto es el informe ms importante que deber calcular la aplicacin pero el sistema deber ser capaz de calcular y visualizar diferentes informes adems del presupuesto. Estos informes estarn basados del mismo modo que el presupuesto en las tres dimensiones citadas al inicio: Unidades Presupuestarias, Cuentas y Perodos Presupuestarios. Todos los informes que ser capaz de mostrar el sistema sern explicados posteriormente.

11.2.1.4. Permitir realizar la alimentacin real


Existen dos situaciones en las que se pueden encontrar los datos manejados por el sistema dependiendo de su estado temporal, por lo tanto se pueden diferenciar los datos en dos clases: Datos previstos: Son aquellos calculados por el sistema o introducidos por el usuario que se basan en un perodo de tiempo futuro. Son los datos presupuestados.

39

Sistema de presuspuestacin y reporting para la empresa Datos reales: Son aquellos datos histricos que se dieron en la realidad en un perodo de tiempo pasado. Cuanto ms se aproximen a los datos previstos mejor sern los presupuestos realizados anteriormente. El sistema deber permitir almacenar los datos reales cuando el usuario lo decida. Estos datos los tendr que tomar de ficheros Excel generados por la ERP utilizada por el usuario.

11.2.1.5. Permitir comparar y realizar el seguimiento


Se tendr que dar la posibilidad de comparar un informe con otros seleccionados. Es decir que el usuario podr ver las diferencias existentes entre los diversos informes calculados con los informes de datos reales. Est comparacin deber generar un informe que compare las cuentas parejas de un informe con las de otros seleccionados. Un punto de este informe de comparacin podr ser por ejemplo: La cuenta ventas del 31/03/2006 es un 10% superior a la del 30/04/2006. Aquellas cuentas que no tengan su pareja se mostrarn aisladas del resto como cuentas disparejas con sus datos. La comparacin entre informes del sistema permitir la comparacin de informes calculados con informes de datos reales sucedidos. Estos datos reales son los cargados en el sistema como se explic en el apartado anterior: Alimentacin real del Sistema. De esta manera se dota al sistema de una funcin de comparacin que permitir al usuario realizar un seguimiento de los informes calculados en la aplicacin. Es decir, el usuario podr ver la evolucin de los informes, la precisin de los mismos y la utilidad real que tienen dentro de su negocio.

40

Sistema de presuspuestacin y reporting para la empresa

11.2.2.

Requisitos no funcionales

11.2.2.1. Seguridad y control


En este punto y en siguiente se detallan las facilidades que proporcionar el sistema en cuanto a control de acceso, copia de respaldo y seguridad. La aplicacin solamente permitir el acceso a aquellas personas debidamente identificadas en el sistema, esto es, limita la entrada a la aplicacin mediante el uso de un nombre de usuario y una palabra secreta de paso, encriptada. Cada usuario debe haber sido incorporado en el sistema por el usuario administrador de usuarios.

11.2.2.2. Requisitos de calidad


La aplicacin debe de responder a todos los requisitos de calidad de la normativa ISO. Se hace especial hincapi en la velocidad de respuesta, en el control de errores y en la amigabilidad de la aplicacin para el usuario.

11.2.2.3. Requisitos de interfaces externas


A continuacin se describen las interfaces externas que requiere el sistema con el usuario y con otros sistemas, cuyos requisitos son importantes para el correcto desarrollo y funcionamiento.

- Interfaz de usuario
El objeto del interfaz de usuario es establecer un medio interactivo por el que el usuario pueda, por un lado acceder y elaborar la informacin contenida en la base de datos, y por otro ejecutar las funcionalidades de la aplicacin. (Ver diagrama contexto).

41

Sistema de presuspuestacin y reporting para la empresa El interfaz de usuario u hombre-mquina es importante ya que de su amigabilidad, agilidad y flexibilidad depender el xito y la amplia utilizacin que se haga del sistema. El interfaz con el usuario se realiza a travs de pantalla en las que se pueden introducir datos o criterios de seleccin de forma interactiva (a travs de barras de herramientas, listas dinmicas, botones, etc.), visualizar resultados y ser soportado por el uso del ratn y mens. El comportamiento y diseo de la interfaz grfica contemplar todos los criterios de calidad.

- Interfaz con otros sistemas


En el interfaz con otros sistemas se definen las comunicaciones a realizar por el sistema SPR con otros sistemas. El objetivo de esta comunicacin es enviar y recibir los datos necesarios para la aplicacin y las aplicaciones de otros sistemas. Estos interfaces son: - Base de datos SPR - Gestor de ficheros externos El interfaz con la base de datos SPR tiene como objeto el disponer en la aplicacin de los datos de todos los usuarios, la unidades presupuestarias y las zonas por un lado y de todos los presupuestos e informes por otro. El interfaz Gestor de Ficheros representa el archivo de ficheros relacionados con los datos que se dieron en la realidad en el sistema. El funcionamiento ser: - El usuario podr cargar documentos a un informe de datos reales. Estos documentos sern nicamente de tipo Excel (.xls) y podrn estar almacenados en cualquier parte del

42

Sistema de presuspuestacin y reporting para la empresa disco elegida por el usuario. Mediante una ventana de navegacin de ficheros el usuario podr seleccionar los documentos a cargar en el sistema. - Se prev 1 documento de una media de 30Mb, asociados a un presupuesto. - Las copias de seguridad de los documentos sern responsabilidad del administrador del sistema y se realizarn de forma independiente a la aplicacin.

- Mantenimiento de histricos
El mantenimiento de la base de datos queda a cargo del administrador del sistema. Esto incluye la administracin de la base de datos y sus espacios. El mantenimiento del Gestor de Ficheros tambin quedar a cargo del administrador y se deber realizar de forma independiente a la aplicacin.

11.3.

Anlisis Funcional detallado

En este captulo se describe la funcionalidad detallada de la aplicacin, es decir, las acciones bsicas que deber realizar la aplicacin para obtener los objetivos necesarios. Las funciones que debe realizar el sistema son las siguientes:

11.3.1.

Alta, Baja, Modificacin y bsqueda de usuarios, de

unidades presupuestarias y de zonas


El sistema deber permitir la gestin de estos conceptos pertenecientes al sistema. Las bsquedas se realizarn por el cdigo de usuario, unidad y zona dependiendo de la bsqueda que se realice. Para la alta de unidades el usuario deber introducir la zona a la que pertenece la unidad a insertar. En caso de no existir dicha zona el sistema deber notificrselo al usuario. Para la insercin de usuarios en el sistema, el administrador deber indicar el perfil del usuario a insertar. En caso de insercin de un Jefe de Zona o Unidad, el usuario deber

43

Sistema de presuspuestacin y reporting para la empresa indicar la zona o unidad de la que es responsable el usuario a insertar. Si dicha zona o unidad no existieran el sistema tendr que informar de ello. El sistema deber controlar que una zona no podr ser eliminada si tiene unidades presupuestarias asignadas o si existen usuarios dados de alta responsables de la zona. Del mismo modo no se podr eliminar una unidad presupuestaria si hay usuarios dados de alta responsables de dicha unidad. Todos los campos podrn ser modificados menos los cdigos de zona, unidad o usuario.

11.3.2.

Gestin segura de Usuarios y Grupos

Debido a lo mencionado en el apartado anterior el sistema debe permitir dar de alta y baja a los usuarios, esta funcin slo podr ser realizada por el administrador del sistema. Una vez realizadas las altas de usuarios cada uno de ellos podr acceder al sistema con su nombre de usuario y su contrasea correspondiente. Se deber realizar un control de acceso de usuarios dados de alta: Por el rea de men. Por perfiles. Por acceso a datos. El sistema admite la creacin de grupos de usuarios con los mismos permisos pero acceso diferente a los datos.

44

Sistema de presuspuestacin y reporting para la empresa

11.3.3.

Generacin Presupuestaria

Esta funcin consiste en la generacin del presupuesto del perodo de tiempo correspondiente seleccionado por el usuario. El sistema deber calcular, mostrar y almacenar el presupuesto generado. Como se explic con anterioridad se podrn generar los presupuestos de dos maneras: Manualmente: Generado por el usuario. Automticamente: Generados por la aplicacin. Para realizar esta funcin el usuario deber seleccionar la unidad presupuestaria para la que se desee realizar el presupuesto y el perodo presupuestario comprendido por el mismo. El algoritmo de generacin de presupuestos seguir los siguientes pasos: - Anlisis de histricos: Se obtienen los presupuestos almacenados en el sistema para la misma unidad presupuestaria que seleccion con anterioridad el usuario. Se consiguen los datos de cada presupuesto obtenido en el punto 1. Tomando como datos de entrada los conseguidos en el punto 2 se realiza una media por cada apunte de cada presupuesto. Cada cdigo de cuenta de cada apunte se compara con los cdigos de cuenta de todos los dems, si coincide se suman los importes y se incrementa en uno el contador para dicha cuenta. Posteriormente se divide la suma de cada cuenta por el contador asignado a la misma. El resultado de esta operacin es una estructura de datos de tipo Presupuesto cuyos apuntes son la media de los apuntes (de la misma cuenta contable) de los presupuestos anteriores.

45

Sistema de presuspuestacin y reporting para la empresa

11.3.4.

Generacin de Informes de Comparacin

Todos los informes generados estarn basados en las tres dimensiones citadas anteriormente: Unidades Presupuestarias (UPRES), Cuentas y Perodos Presupuestario (PP). Adems del presupuesto el sistema deber poder generar tanto automtica como manualmente informes de comparacin. Dichos informes muestran las diferencias por cuentas y apuntes entre los presupuestos y los informes de datos reales que tengan la misma unidad y el mismo perodo asignandos. nicamente se podrn realizar informes de comparacin de presupuestos que se encuentren en estado finalizado y que tengan informes de datos reales asociados, es decir, que pertenezcan a la misma unidad y que sean del mismo perodo presupuestario. El algoritmo de generacin de informes de comparacin deber seguir los siguientes pasos: Se deber obtener los datos del presupuesto Posteriormente se debern obtener los datos del informe real asociado al presupuesto. Se deber comparar cada apunte del presupuesto con cada apunte del informe y calcular la diferencia entre sus importes. Si el informe contiene ms apuntes realizados que el presupuesto, es decir, si en la realidad se realizaron ms movimientos que en la previsin, el informe de comparacin los tendr en cuenta y mostrar su importe total. Suceder lo mismo si es el presupuesto el que contiene ms apuntes que el informe, es decir, si se previeron ms movimientos de los que sucedieron en la realidad.

46

Sistema de presuspuestacin y reporting para la empresa

11.3.5.

Control de Estados de los Presupuestos

Los presupuestos generados por la aplicacin deben pasar por una serie de estados: INICIADO PENDIENTE DE REVISIN FINALIZADO PENDIENTE DE CORREGIR CORREGIDO RECHAZADO

La aplicacin deber controlar el estado en el que se encuentra cada presupuesto y mostrar su estado actual en cada momento. El flujo de estados se explica en un apartado posterior.

11.3.6.

Carga de datos reales en el Sistema

Como se explic anteriormente la aplicacin genera informes cuyo resultado son los datos previstos, es decir, los datos que se esperan obtener en el futuro. Estos datos deben aproximarse los ms posible a los datos reales, que son aquellos que efectivamente se obtienen en la realidad. La aplicacin deber cargar estos datos reales en el sistema almacenndolos en la base de datos. Los datos reales se obtendrn del ERP desde ficheros Excel. Para realizar esta funcin se deber conocer la estructura de los datos en el ERP para poder almacenarlos en la base de datos del sistema. Para la lectura de ficheros Excel el usuario podr seleccionar con una ventana de navegacin de ficheros el archivo Excel que desee cargar. El sistema deber controlar si

47

Sistema de presuspuestacin y reporting para la empresa el archivo seleccionado es de tipo Excel, de no ser as se deber informar al usuario de ello. Al cargar los datos reales el sistema deber mostrar el informe resultante. Dichos datos reales se utilizarn posteriormente para mostrarlos al usuario y para obtener informes comparativos.

11.3.7.

Realizacin de funciones de clculo

La aplicacin permitir al usuario la utilizacin de funciones matemticas para el clculo tanto manual como automtico de los informes. Estas funciones se podrn aplicar cuando el informe ya ha sido calculado y mostrado al usuario. Las posibles funciones de clculo ms importantes que se podrn utilizar son las siguientes: - Porcentaje Superior: El valor de salida ser un tanto por ciento superior al de entrada. - Porcentaje Inferior: El valor de salida ser un tanto por ciento inferior al de entrada. A continuacin se explica un ejemplo de utilizacin de clculo en la aplicacin: Si deseamos que el presupuesto que se va a generar tenga unas ventas de mercaderas un 10% superiores a las de los presupuestos calculados, el usuario deber utilizar la funcin Porcentaje superior en la cuenta Venta de Mercaderas.

48

Sistema de presuspuestacin y reporting para la empresa

11.3.8.

Clculo del nivel de aproximacin

La aplicacin deber llevar a cabo el clculo general de acierto de la aplicacin, es decir, deber, basndose en los presupuestos calculados y los datos reales, conocer el nivel de similitud de esos datos. Observando los presupuestos generados y los datos que posteriormente se dieron en la realidad se tendr que conocer que acierto se ha tenido en los datos previstos generados. Por supuesto para llevar a cabo esta funcin es necesario que la aplicacin haya generado al menos un presupuesto para un perodo y que los datos reales sucedidos en ese perodo hayan sido cargados en el sistema. En caso de no suceder esto el sistema mostrar un nivel de acierto del cero por ciento.

11.3.9.

Almacenamiento de los datos

Todos los datos, tanto los generados como los reales debern ser almacenados en el sistema. Estarn almacenados en la base de datos. La estructura de dicha base de datos ser explicada en apartados posteriores. Todos los informes sern almacenados automticamente por el sistema en el momento posterior a su generacin o a su modificacin por parte del usuario. Cuando se realizan modificaciones en los presupuestos o en los informes reales cargados, el sistema deber comprobar si existen informes de comparacin para la misma unidad presupuestaria y para el mismo perodo. En caso de existir el sistema deber llevar las modificaciones a los informes de comparacin de forma automtica y transparente. Lo mismo deber suceder si un presupuesto o un informe de datos reales es eliminado, el sistema deber buscar los informes de comparacin asociados y eliminarlos automticamente.

49

Sistema de presuspuestacin y reporting para la empresa Si un informe generado ya haba sido cargado con anterioridad en el sistema se deber realizar la modificacin del mismo de forma automtica, es decir, el nuevo informe se reemplazar por el ya existente.

11.3.10.

Generacin de grficos de Datos

El sistema deber mostrar las grficas que reflejen los importes totales presupuestados por cada unidad presupuestaria de cada zona. El usuario seleccionar la zona que desea visualizar y el sistema deber mostrar un informe con los siguientes datos: Las unidades presupuestarias que forman la zona seleccionada. Los importes totales presupuestados en cada zona desde el inicio de la creacin de cada una. Los perodos presupuestarios en los que se realizaron presupuestos para esa zona y el importe total presuestado para cada perodo anterior. Una grfica que muestre los importes totales presupuestados desde el inicio por las unidades que pertenecen a la zona seleccionada. Otra grfica que muestre la evolucin por perodos presupuestarios de los totales de los importes de los presupuestos de la zona. A continuacin se muestran dos ejemplos de las grficas mostradas: - Grfica de PieDataset:

50

Sistema de presuspuestacin y reporting para la empresa

Figura 3

-Grfica XYLine:

Figura 4

11.3.11.

Visualizacin de informes

Para la visualizacin de informes el usuario deber seleccionar la unidad presupuestaria que desee consultar. Los informes de cada unidad debern ser mostrados de forma ordenada (de mayor a menor) por el perodo presupuestario. El informe con el perodo ms cercano a la fecha

51

Sistema de presuspuestacin y reporting para la empresa actual deber ser el primero en mostrarse, y as sucesivamente hasta mostrar el informe con el perodo ms alejado a la dicha fecha.

11.3.12.

Modificacin de informes

Los presupuestos y los informes de datos reales podrn ser modificados en cualquier momento. El sistema deber permitir al usuario modificar el importe de cada apunte, aadir apuntes y eliminar apuntes. Para aadir un apunte el sistema deber mostrar al usuario las cuentas contables que an no han sido incluidas en el informe. Adems deber mostrarlas de forma ordenada de menor a mayor segn el nmero de cuenta para facilitar la bsqueda de cada una. Al modificar un informe su importe total deber ser modificado automticamente por el sistema. Como se ha mencionado anteriormente si un presupuesto o un informe de datos reales son modificados el sistema deber modificar el informe de comparacin asociado en caso de que exista.

11.3.13.

Eliminacin de informes

Todos los informes almacenados en el sistema pueden ser borrados en cualquier momento. Al igual que sucede en la modificacin, si un informe de datos reales o un presupuesto son eliminados el informe de comparacin asociado deber ser eliminado automticamente en caso de que exista.

52

Sistema de presuspuestacin y reporting para la empresa

11.3.14.

Exportacin de datos a ficheros Excel

El sistema deber permitir al usuario crear ficheros Excel con los datos de un presupuesto seleccionado cargado en el sistema. La estructura del fichero resultante ser igual a la del presupuesto cargado en el sistema. Si se desea generar un fichero Excel que ya ha sido generado anteriormente, el fichero nuevo reemplazar al anterior.

11.4.

Catlogo de requisitos

Siguiendo el orden segn los mdulos descritos con anterioridad se ha desarrollado el catlogo en el que se encuentran todos los requisitos que deber cumplir la aplicacin. Dicho catlogo ser de mucha ayuda no slo durante el desarrollo de la aplicacin sino tambin durante la realizacin de pruebas ya que los planes de pruebas estarn realizados basndose en el catlogo.

CATLOGO DE REQUISITOS

REQUISITOS GENERALES
1 2 3 4

Pool de conexiones a todas las bases de datos a las que accede la aplicacin (SPR). Instalacin de la aplicacin en el entorno de desarrollo. Plan de pruebas por cada Hito. Realizacin de documentacin (Documento de Diseo Bsico y Diseo de Detalle).

REQUISITOS FUNCIONALES MDULO DE INICIO DE SESIN


5 6

A la entrada de la aplicacin se le pedir al usuario su nombre de usuario y su password. Por defecto a la entrada se mostrar el modulo de Administracin con la pantalla de

53

Sistema de presuspuestacin y reporting para la empresa presentacin principal. En la parte superior de la pantalla de presentacin principal existir un men de acceso al resto de los mdulos y a sus funcionalidades (los accesos a las distintas opciones de
7

men estarn habilitados o no segn el perfil de usuario). Un usuario podr tener uno mas perfiles en la aplicacin. Cada perfil asignado le

conceder al usuario los privilegios en la aplicacin que conlleve el mismo.

I) REQUISITOS FUNCIONALES MDULO DE ADMINISTRACIN Modificacin de configuracin: El usuario con perfil administrador nicamente, podr
9 10 11 12 13 14 15 16 17 18 19 20 21

modificar el nombre de la compaa, su descripcin y el tipo de perodo presupuestario. El sistema deber permitir a usuario: Dar de alta una Zona . El sistema deber permitir a usuario: Borrar una Zona. El sistema deber permitir a usuario: Modificar una Zona. El sistema deber permitir a usuario: Buscar una Zona por cdigo de zona. El sistema deber permitir a usuario: Dar de alta una unidad presupuestaria. El sistema deber permitir a usuario: Borrar una unidad presupuestaria. El sistema deber permitir a usuario: Modificar una unidad presupuestaria. El sistema deber permitir a usuario: Buscar una unidad presupuestaria por su cdigo. El sistema deber permitir a usuario: Dar de alta un usuario. El sistema deber permitir a usuario: Modificar un usuario. El sistema deber permitir a usuario: Eliminar un usuario. El sistema deber permitir a usuario: Buscar un usuario por su cdigo.

54

Sistema de presuspuestacin y reporting para la empresa II) REQUISITOS FUNCIONALES MDULO DE SEGUIMIENTO El usuario podr ver todas las zonas a las que puede acceder segn su perfil. Por cada zona podr visualizar las grficas que muestren la evolucin de los presupuestos y los
22

totales presupuestados por cada zona. Por cada zona el usuario podr acceder a todas las unidades presupuestarias a las que

23

tenga permiso segn su perfil. Por cada unidad presupuestaria el usuario podr visualizar todos los informes

24 25

relacionados. Por cada informe que tenga una unidad el usuario podr verlo de forma detallada. Por cada informe el usuario podr eliminarlo. Al eliminar un informe de datos reales o un

26

presupuesto el sistema deber eliminar el informe de comparacin asociado. El usuario podr modificar los informes. Al modificar un informe de datos reales o un presupuesto el sistema deber modificar el informe de comparacin asociado. Tambin

27

se podrn generar ficheros Excel con los datos de los presupuestos. El usuario podr aadir y eliminar apuntes a los informes que sean presupuestos. Al modificar un informe de datos reales o un presupuesto el sistema deber modificar el

28

informe de comparacin asociado.

III) REQUISITOS FUNCIONALES MDULO DE GENERACIN El usuario podr generar presupuestos para todas las unidades presupuestarias para las
29

que tenga acceso segn su perfil y para cualquier perodo presupuestario. El usuario podr generar informes de comparacin para todas las unidades

30

presupuestarias para las que tenga acceso segn su perfil. El sistema deber calcular el

55

Sistema de presuspuestacin y reporting para la empresa grado de nivel de aproximacin.


31 32

ste mdulo deber cumplir todos los requisitos del Mdulo II: Mdulo de seguimiento El usuario podr almacenar todos los informes que se hayan generado. El sistema deber comprobar la validez de los perodos presupuestarios introducidos por

33

el usuario. El sistema deber llevar el control del tipo de perodo presupuestario establecido en el momento en el sistema y su relacin con los perodos presupuestarios introducidos por el

34

usuario.

IV) REQUISITOS FUNCIONALES MDULO DE CARGA DE DATOS EXT. El sistema deber permitir la lectura de ficheros Excel externos a la aplicacin. Estos ficheros podrn estar almacenados en cualquier lugar del disco. El sistema mostrar una
35 36 37

ventana de navegacin de ficheros. El usuario podr almacenar la informacin de los ficheros Excel en la base de datos. El usuario podr visualizar el informe con los datos cargados desde los ficheros Excel.

REQUISITOS NO FUNCIONALES

SEGURIDAD Y CONTROL

La aplicacin solamente permitir el acceso a aquellas personas debidamente identificadas en el sistema, esto es, limita la entrada a la aplicacin mediante el uso de un
38

nombre de usuario y una palabra secreta de paso, encriptada.

56

Sistema de presuspuestacin y reporting para la empresa Cada usuario debe haber sido incorporado en el sistema por el usuario administrador de
39

usuarios. REQUISITOS DE CALIDAD

La aplicacin debe de responder a todos los requisitos de calidad de la normativa ISO. Se hace especial hincapi en la velocidad de respuesta, en el control de errores y en la
40

amigabilidad de la aplicacin para el usuario. REQUISITOS DE INTERFACES EXTERNAS

INTERFAZ DE USUARIO

El interfaz de usuario u hombre-mquina es importante ya que de su amigabilidad,


41

agilidad y flexibilidad depender el xito y la amplia utilizacin que se haga del sistema. El interfaz con el usuario se realiza a travs de pantalla en las que se pueden introducir datos o criterios de seleccin de forma interactiva (a travs de barras de herramientas, listas dinmicas, botones, etc.), visualizar resultados y ser soportado por el uso del ratn

42

y mens. El comportamiento y diseo de la interfaz grfica contemplar todos los criterios de

43

calidad.
INTERFAZ CON OTROS SISTEMAS

El interfaz con el sistema SPR tiene como objeto el poder disponer en la aplicacin de
44

los datos de todos los informes, las unidades, las zonas y los usuarios. El interfaz Gestor de Ficheros representa el archivo de ficheros relacionados con las

45 46

datos externos del sistema. El funcionamiento ser: El usuario podr introducir la ruta de los ficheros mediante la ayuda de un navegador de

57

Sistema de presuspuestacin y reporting para la empresa ficheros.

ENTORNO DE DESARROLLO Y EXPLOTACIN

Los accesos a la base de datos se gestionarn por la aplicacin mediante un pool de


47

conexiones. El desarrollo y la explotacin del sistema ser va WEB, utilizando la intranet

48 49 50

corporativa (Microsoft Internet Explorer o Mozilla Firefox). Servidor Web y de Aplicaciones: Apache-Tomcat 5.5. S.O. : El sistema deber se aplicable a cualquier S.O Se utilizar la base de datos MySQL 4.1 llamada SPR. Esta base de datos ser

administrada por el administrador del sistema. Se prev una ocupacin media (a 5 aos)
51

de 2 Gb.

58

Sistema de presuspuestacin y reporting para la empresa

11.5.

Anlisis estructural

La estructura real utilizada en las empresas actuales y por lo tanto en la que se basar el sistema propuesto es mostrada en la siguiente figura:
DIRECCIN DE EMPRESA Director Financiero

ZONA 1 Jefe de Zona1

ZONA 2 Jefe de Zona2

ZONA 3 Jefe de Zona3

UNIDAD PRESUPUESTARIA 1 Jefe de Unidad 1

UNIDAD PRESUPUESTARIA 2 Jefe de Unidad 2

UNIDAD PRESUPUESTARIA 1 Jefe de Unidad 1

UNIDAD PRESUPUESTARIA 2 Jefe de Unidad 2

UNIDAD PRESUPUESTARIA 2 Jefe de Unidad 2

Como se puede observar la empresa es dirigida desde el punto de vista financiero por el Director, encargado de la gestin econmica de la compaa. El sector de actuacin de la empresa es dividido en zonas cada una de las cuales tendr un Jefe de Zona encargado de la gestin de la misma. Dichas zonas a su vez se dividen en Unidades Presupuestarias, ltimo concepto del sector de actuacin, que tendrn un Jefe de Unidad cada una. En el sistema propuesto el Jefe de Unidad ser el encargado de realizar la presupuestacin de la unidad que est a su cargo. El Jefe de Zona podr visualizar todas las operaciones realizadas en las unidades presupuestarias que pertenezcan a su zona. Para una mejor comprensin del diagrama se explica un ejemplo real: Suponiendo que la empresa en la que nos centramos consiste en una lnea de supermercados situados en Madrid, las zonas que podra tener son la zona Norte

59

Sistema de presuspuestacin y reporting para la empresa (Pozuelo), Sur (Legans), Este (Coslada) y Oeste (Moncloa). Cada zona estar formada por los supermercados que se encuentren en su radio de accin. Dichos supermercados sern en este caso las Unidades Presupuestarias que se deben gestionar.

11.6.

Tipos de informes manejados por el sistema

El sistema genera y gestiona tres tipos de informes posibles: Presupuestos: Estos informes se describieron detalladamente en el apartado 7. Informes de datos reales: Son los informes que contienen los datos procedentes de

los ficheros Excel. Estos datos se cargan en el mdulo cinco de carga de datos reales que se explicar en un apartado posterior. Este tipo de informes estarn codificados de forma interna en el sistema y por lo tanto transparente al usuario como informes tipo 3. Informes de comparacin: Estos informes almacenan las diferencias entre los

presupuestos generados en el sistema y los datos que posteriormente se dieron en la realidad y fueron cargados en el sistema, es decir, contienen las diferencias de importes o valores entre los presupuestos y los informes de datos reales. Este tipo de informes estarn codificados de forma interna en el sistema y por lo tanto transparente al usuario como informes tipo 2. Todos los informes tienen la misma estructura de visualizacin mostrada en el apartado 11.7.

60

Sistema de presuspuestacin y reporting para la empresa

11.7.

Formato de visualizacin de informes

El formato en el que se visualizarn todos los informes del sistema debe mostrar: La unidad presupuestaria a la que pertenece el informe. El perodo presupuestario. El cdigo del informe Por cada apunte realizado:

o o o -

El nmero de la cuenta La descripcin de la cuenta El importe para esa cuenta

El valor del total del informe

De este modo se visualiza la maqueta realizada para la visualizacin de informes en la siguiente figura:

Figura 5

61

Sistema de presuspuestacin y reporting para la empresa

11.8.

Estados por lo que puede pasar un informe

Los estados por los que puede pasar un informe son: Iniciado, Finalizado, Rechazado, Corregido, Pendiente de Corregir y Pendiente de Revisin. El estado Iniciado es utilizado para mostrar que el informe que se est tratando ha sido generado por el usuario correspondiente y todava no ha sido confirmado por el agente que lo realiz. Una vez se almacena el informe su estado pasa a Pendiente de Revisin, esto significa que todava no se ha realizado la revisin del mismo por parte del Jefe de Zona o de Unidad. El paso posterior por lo tanto es la revisin del informe por parte del responsable, si el informe es aceptado pasar al estado Finalizado, si por el contrario, tiene errores que deben ser corregidos pasar al estado Pendiente de Corregir, por lo tanto el este estado (Pendiente) podr tener dos significados, cuando el informe est pendiente de revisin y cuando est pendiente de correccin de errores. Posteriormente se deber realizar la correccin del informe, si los errores se pueden corregir se pasar al estado Corregido, pero si no es as el estado siguiente ser Rechazado. Los estados finales a los que deben llegar todos los informes son Finalizado o Rechazado. El siguiente diagrama de flujo muestra los estados por los que puede pasar cada informe y el camino que realiza para llegar a ellos:

62

Sistema de presuspuestacin y reporting para la empresa

Figura 6

12. Estudio de la arquitectura


A la hora de elegir la plataforma ms conveniente para la explotacin del Sistema SPR se han valorado una serie de factores: - El volumen de informacin a almacenar - Necesidades planteadas por las pequeas y medianas empresas - Disponibilidad de herramientas software

63

Sistema de presuspuestacin y reporting para la empresa - Facilidad de tratamiento y acceso a la informacin - Sistema multiusuario Dichos factores han llevado a elegir un sistema Web, con las siguientes caractersticas: - Sistema de Administracin de Base de Datos Relacional destinado a almacenar la informacin: - Se utilizar la base de datos MySQL llamada SPR. Esta base de datos ser administrada por el administrador del sistema. Se prev una ocupacin media (a 5 aos) de 2 Gb para una PYME. - Los accesos a la base de datos se gestionarn por la aplicacin mediante un pool de conexiones. - El desarrollo y la explotacin del sistema ser va WEB, utilizando cualquier

navegador de Internet como Microsoft Internet Explorer o Mozilla Firefox. - Servidor Web y de Aplicaciones: Apache-Tomcat 5.5. - S.O. : Debido a los recursos de desarrollo utilizados la aplicacin se podr implantar en cualquier Sistema Operativo. - Entorno de desarrollo: Eclipse-SDK-3.1.1. - Conexin a la base de datos: Debido a que la base de datos es MySQL la conexin ser jdbc utilizando el conector mysql-connector-java-5.0.6. Respecto a la arquitectura hardware se utilizar: - Ordenador HP , con microprocesador Pentium VI, 1GB de memoria RAM y 120GB de capacidad de disco duro. La eleccin de esta arquitectura ha sido el resultado del estudio de viabilidad de las posibles soluciones que satisfacen tanto los requisitos del usuario como las restricciones de diseo.

64

Sistema de presuspuestacin y reporting para la empresa Alternativas consideradas Alternativa 1: Servidor de aplicaciones J2EE JBoss 4.0. Sistema de gestin de base de datos relacional Oracle 9. Entorno de desarrollo Eclipse-SDK-3.1.1. Banco de trabajo MyEclipse 5.0. Leguaje de programacin (compilador y libreras) java (jdk 1.5.08)

Alternativa 2: Contenedor de servlets Apache Tomcat 5.5. Sistema de gestin de base de datos relacional MySQL Server 4.1. Entorno de desarrollo Eclipse-SDK-3.1.1. Banco de trabajo MyEclipse 5.0. Leguaje de programacin (compilador y libreras) java (jdk 1.5.08)

La portabilidad de Java permite que los servidores de aplicacines J2EE se encuentren disponibles sobre una gran variedad de plataformas como UNIX, Microsoft Windows y GNU/Linux. Debido a ello se ha escogido dicho lenguaje de programacin en ambas alternativas. Y por la misma razn se han elegido Servidores de aplicaciones J2EE. Teniendo como base un servidor de aplicaciones, se pueden desarrollar portales de Internet que permiten tener acceso a informacin y servicios (como servicios Web) de manera segura y transparente, desde cualquier dispositivo.

Con respecto al servidor de aplicaciones:

65

Sistema de presuspuestacin y reporting para la empresa - JBoss AS es el primer servidor de aplicaciones de cdigo abierto, preparado para la produccin y certificado J2EE 1.4. Un servidor J2EE compatible tiene que incluir un contenedor Web. contenedor Web = contenedor servlet + contenedor jsp Las caractersticas destacadas de JBoss incluyen : Producto de licencia de cdigo abierto sin coste adicional. Cumple los estndares. Confiable a nivel de empresa Incrustable, orientado a arquitectura de servicios. Flexibilidad consistente Servicios del middleware para cualquier objeto de Java Ayuda profesional 24x7 de la fuente Soporte completo para JMX

- Tomcat por el contrario es un contenedor de servlets nicamente. Implementa las especificaciones de los servlets y de JavaServer Pages (JSP) de Sun Microsystems. Por lo tanto Tomcat es un servidor Web con soporte de servlets y JSPs. Incluye el compilador Jasper, que compila JSPs convirtindolas en servlets. El motor de servlets de Tomcat a menudo se presenta en combinacin con el servidor Web Apache. Las caractersticas de Apache Tomcat 5.5 son: Implementado a partir de las especificaciones Servlet 2.4 y JSP 2.0 Recoleccin de basura reducida Capa envolvente nativa para Windows y Unix para la integracin de las plataformas Anlisis rpido JSP

66

Sistema de presuspuestacin y reporting para la empresa La eleccin tomada con respecto a estas dos tecnologas ha sido Apache Tomcat 5.5 debido a que el sistema nicamente necesita un contenedor de servlets y JBoss es un servidor de aplicaciones completo que ofrece servicios no necesarios (EJBs) para la aplicacin a tratar. Con respecto al servidor de bases de datos: - Se considera a Oracle como uno de los sistemas de bases de datos ms completos, destacando su: Soporte de transacciones. Estabilidad. Escalabilidad. Es multiplataforma.

Su mayor defecto es su enorme precio, que es de varios miles de euros (segn versiones y licencias). Otro aspecto que ha sido criticados por algunos especialistas es la seguridad de la plataforma, y las polticas de suministro de parches de seguridad, modificadas a comienzos de 2005 y que incrementan el nivel de exposicin de los usuarios. En los parches de actualizacin provistos durante el primer semestre de 2005 fueron corregidas 22 vulnerabilidades pblicamente conocidas, algunas de ellas con una antigedad de ms de 2 aos. Por lo tanto se ha elegido MySQL Server 4.1 debido, adems del coste econmico, a que es ms ligero que Oracle 9 que est orientado a sistemas con un gran volumen de datos que necesitan realizar muchas transacciones complejas. El sistema propuesto no tiene un gran volumen de datos y necesita transacciones ligeras que conlleven el menor tiempo posible por eso se ha escogido MySQL Server como servidor de bases de datos. Debido a todas las razones mencionadas la alternativa elegida ha sido:

67

Sistema de presuspuestacin y reporting para la empresa Alternativa 2: Contenedor de servlets Apache Tomcat 5.5. Sistema de gestin de bases de datos relacional MySQL Server 4.1. Entorno de desarrollo Eclipse-SDK-3.1.1. Banco de trabajo MyEclipse 5.0. Leguaje de programacin (compilador y libreras) java (jdk 1.5.08)

Para el desarrollo de la aplicacin se utilizar la el patrn de arquitectura software MVC (Modelo, Vista, Controlador): - Modelo: Esta es la representacin especfica de la informacin con la cual el sistema opera. La lgica de datos asegura la integridad de estos y permite derivar nuevos datos; por ejemplo, no permitiendo comprar un nmero de unidades negativo, calculando si hoy es el cumpleaos del usuario o los totales, impuestos o portes en un carrito de la compra. - Vista: Este presenta el modelo en un formato adecuado para interactuar, usualmente la interfaz de usuario. - Controlador: Este responde a eventos, usualmente acciones del usuario e invoca cambios en el modelo y probablemente en la vista.

Con esta tecnologa el flujo de control es el siguiente: - El usuario interacta con la interfaz de usuario de alguna forma (por ejemplo, el usuario pulsa un botn, enlace) - El controlador recibe (por parte de los objetos de la interfaz-vista) la notificacin de la accin solicitada por el usuario. El controlador gestiona el evento que llega, frecuentemente a travs de un gestor de eventos (handler) o callback.

68

Sistema de presuspuestacin y reporting para la empresa - El controlador accede al modelo, actualizndolo, posiblemente modificndolo de forma adecuada a la accin solicitada por el usuario (por ejemplo, el controlador actualiza el carro de la compra del usuario). Los controladores complejos estn a menudo estructurados usando un patrn de comando que encapsula las acciones y simplifica su extensin. - El controlador delega a los objetos de la vista la tarea de desplegar la interfaz de usuario. La vista obtiene sus datos del modelo para generar la interfaz apropiada para el usuario donde se refleja los cambios en el modelo (por ejemplo, produce un listado del contenido del carro de la compra). El modelo no debe tener conocimiento directo sobre la vista. Sin embargo, el patrn de observador puede ser utilizado para proveer cierta indireccin entre el modelo y la vista, permitiendo al modelo notificar a los interesados de cualquier cambio. Un objeto vista puede registrarse con el modelo y esperar a los cambios, pero aun as el modelo en s mismo sigue sin saber nada de la vista. El controlador no pasa objetos de dominio (el modelo) a la vista aunque puede dar la orden a la vista para que se actualice. Nota: En algunas implementaciones la vista no tiene acceso directo al modelo, dejando que el controlador enve los datos del modelo a la vista. - La interfaz de usuario espera nuevas interacciones del usuario, comenzando el ciclo nuevamente. La estructura del MVC sera como se muestra en la siguiente figura [HUNT01]:

69

Sistema de presuspuestacin y reporting para la empresa

Figura 7

13. Diseo
13.1. Descripcin del Modelo de dominio

El modelo de dominio diseado para la aplicacin desarrollada es el siguiente:

70

Sistema de presuspuestacin y reporting para la empresa

Figura 8

Las tres clases que dan sentido al espacio tridimensional en el que se aplicar el sistema son Upre, Cta y PP. Es decir Unidad presupuestaria, Cuenta y Perodos presupuestarios.

71

Sistema de presuspuestacin y reporting para la empresa

13.2.

Modelo de datos

El objetivo de este apartado es realizar una representacin lgica de la informacin que maneja el sistema. Por lo tanto este modelo se realiza para especificar los datos que se manejan, las relaciones entre ellos, su semntica asociada y las restricciones de integridad. En este apartado se expresa el modelo lgico de datos mediante el modelo entidad/relacin. Se ha escogido este modelo debido a su formalidad, su rigurosidad, su capacidad expresiva y su flexibilidad.

Por lo tanto, el objetivo de esta fase de diseo es llegar a obtener el diseo final de base de datos. A continuacin se describirn las fases realizadas para ello, se comenzar describiendo el modelo entidad/relacin y la aplicacin de las formas normales al mismo. Posteriormente se presentar el modelo final de la base de datos normalizado y se explicarn las tablas y relaciones definitivas.

13.2.1.

Identificacin de las entidades

A continuacin se describen las entidades resultantes de esta fase: Upre: Unidades presupuestarias. PP: Perodos presupuestarios Cta: Cuentas Zona: Zonas del sector comercial del negocio. Informe Presupuesto Informe presupuestario

72

Sistema de presuspuestacin y reporting para la empresa DatosP: Datos de los presupuestos. DatosI: Datos de los informes.

13.2.2.

Identificacin de las relaciones

A continuacin se describen las relaciones resultantes de esta fase: Pertenece_a: Relaciona las unidades presupuestarias y las zonas. Una upre slo debe pertenecer a una zona y una zona podr tener asociadas varias upres. Genera: Relaciona la entidad Usuario con la entidad Informe. Un usuario podr generar todos los informes que desee, pero un informe slo podr haber sido generado por un usuario. ES_UN: Esta es una relacin de herencia que establece conexin entre las

entidades Presupuesto e Informes presupuestarios con Informe. Es de herencia debido a que un presupuesto y un informe presupuestario tienen un comportamiento genrico que es representado por la entidad Informe. Consta_de: Relaciona la entidad Cta con Informe. Un informe estar compuesto

de 1 o varias cuentas y una cuenta podr estar presente en varios informes. PPInf: Relaciones PP con Informes ya que un informe es generado para un

perodo presupuestario concreto. Por otro lado un perodo podr estar asociado a ningn o varios informes. InUpre: Relaciona las entidades Informe y Upre ya que todos los informes se

generan para una unidad presupuestaria concreta. Cada informe estar generado para una nica unidad. Una unidad presupuestaria podr tener asociados varios informes.

73

Sistema de presuspuestacin y reporting para la empresa

13.2.3.

Modelo Entidad/Relacin

A continuacin se muestra el diagrama entidad/relacin realizado en la fase de diseo:

Figura 9

13.3.

Descripcin del Diseo de la base de datos

Partiendo del diagrama entidad/relacin se ha realizado la normalizacin del mismo y posteriormente se dise la base de datos final. Debido a la normalizacin se han creado las tablas renacidas y sus relaciones.

74

Sistema de presuspuestacin y reporting para la empresa La base de datos diseada para nuestro sistema se ha llamado srp de acuerdo con las siglas de la aplicacin (Sistema de Presupuestacin y Reporting). Consta de 16 tablas que se pueden observar en la figura mostrada. Las tablas en las que se almacenarn los datos de los tres conceptos fundamentales que forman las tres dimensiones del negocio (Unidades presupuestarias, Cuentas y Perodos Presupuestarios) son Upre, Cta y PP.

75

Sistema de presuspuestacin y reporting para la empresa

Figura 10

76

Sistema de presuspuestacin y reporting para la empresa A continuacin se describen cada una de las tablas, sus campos y sus relaciones: Upre:

Como vemos consta de siete campos: calle, nmero, tlf, fax se utilizarn para guardar la situacin y el contacto de la unidad presupuestaria. La clave primaria (PK) es cod_upre (cdigo de Unidad Presupuestaria) y se formar mediante un entero cualquiera que identifique cada unidad. Las claves de esta tabla se calculan mediante un incremento automtico empezando en 1 e incrementando las claves posteriores de una en una. El campo cod_zona (cdigo de Zona) identificar la zona a la que pertenece la unidad presupuestaria. Dicho campo por lo tanto ser una clave externa (FK) procedente de la tabla zona que se explicar ms adelante. Una unidad presupuestaria slo podr pertenecer a una zona concreta. Como es lgico una zona podr contener ms de una unidad presupuestaria. Por lo tanto y como se puede observar las unidades se agruparn por zonas. Este agrupamiento existe en la realidad de las empresas donde cada unidad pertenece a una zona y cada zona tiene un responsable. Cada unidad presupuestaria tiene tambin un responsable encargado de realizar y controlar los presupuestos e informes de la unidad.

Cta:

En dicha tabla se almacenarn todas las cuentas aplicables a los presupuestos e informes a realizar. Todas las cuentas tendr su cod_cta (cdigo de Cuenta) que ser el nmero de cuenta utilizado en el mundo contable real, por ejemplo existir la cuenta con cdigo (610).

77

Sistema de presuspuestacin y reporting para la empresa El siguiente campo, descripcin, ser la expresin literal de la cuenta. Dicha descripcin ser tambin la utilizada en contabilidad, siguiendo el mismo ejemplo puesto anteriormente la cuenta con cdigo 610 tendr la descripcin Gastos de personal. Todas las cuentas deben ser de un tipo concreto. Los tipos de cuenta existentes son Gastos e Ingresos, por esa razn se ha aadido el campo cod_tipo_cta (cdigo de Tipo de Cuenta) en la tabla. Dicho campo es una clave extranjera perteneciente a la tabla Tipo_Cta. De este modo se estable una relacin entre las tablas que permite conocer el tipo de la cuenta que se est tratando en cada momento.

PP:

La razn de esta tabla es almacenar los perodos presupuestarios en los que se realizaron los presupuestos e informes. Es decir, se almacenarn los espacios de tiempo en los cuales se detallaron todos los informes. El campo cod_pp ser el cdigo del perodo presupuestario, ser la clave primaria (PK) y estar formado por un entero que se aumentar automticamente en la base de datos. Para conocer la fecha de inicio del perodo y la fecha final se han utilizado los campos fecha_inicial y fecha_final del tipo Date. Los perodos presupuestarios pueden ser de tres tipos: Semanales, Mensuales y Anuales. Para almacenar dichos tipos se utiliza el campo cod_tipo_pp (cdigo del tipo presupuestario) que es clave primaria de la tabla Tipo_PP. De ah surge la relacin entre las dos tablas. Por ltimo el campo tipo de la tabla se utilizar para conocer donde se ha usado dicho perodo presupuestario, en un presupuesto o en un informe. En caso de haberse utilizado en un presupuesto dicha variable de tipo entero tendr un valor igual a 1, por otro lado,

78

Sistema de presuspuestacin y reporting para la empresa si se us en un informe su valor ser 2. Se realiza dicha distincin para conocer en que perodos se han realizado presupuestos y en cuales se realiz un informe. Debido a la informacin citada anteriormente en la tabla podrn existir dos registros con fecha_inicial, fecha_final y cod_tipo_pp exactamente iguales pero con los campos codigo_pp y tipo distintos. La diferencia entre ambos registros ser que uno se uso en un presupuesto y otro en un informe.

Usuario:

Para controlar los usuarios que acceden a la aplicacin y sus perfiles correspondientes se utilizan las tablas Usuario y Perfil. En dicha tabla se almacenarn todos los usuarios que podrn acceder al sistema. Slo el usuario con perfil de administrador podr agregar elementos a la tabla Usuario, al agregar un usuario tambin se deber introducir el cdigo del perfil que tiene el usuario introducido. Los campos utilizados son los siguientes: cod_usuario: Es el nombre de usuario, ser escogido por el propio usuario. contrasea: Palabra clave que no podr se nula. Para iniciar sesin el usuario deber introducir el cod_usuario y la contrasea. Estos datos se comprobarn en la base de datos y se permitir el acceso a la aplicacin nicamente si son correctos. nombre: Nombre del usuario. apellido1, apellido2: Apellidos del usuario tlf, fax: Telfono y fax. cod_perfil: Este campo es una clave extranjera de la tabla Perfil (FK), por lo tanto no podr ser nulo y deber encontrarse en su tabla correspondiente (Perfil).

79

Sistema de presuspuestacin y reporting para la empresa Perfil:

Cada usuario tendr un perfil. Dependiendo del perfil se podr acceder a unas funciones u otras de la aplicacin. Slo el usuario con perfil de administrador podr agregar elementos a esta tablas usuario, zona, upre y tipo_pp. Los campos de la tabla son los siguientes: cod_perfil: Ser el identificador de cada perfil y por lo tanto la clave primaria. Este campo ser introducido por la aplicacin. Podrn existir tres tipos de perfil: Administrador, Jefe de Zona y Jefe de Unidad. Por lo tanto existirn estos tres valores en la tabla para la entrada cod_perfil. El campo descripcin consiste en la explicacin de cada perfil.

Zona:

En esta tabla se almacenarn todas las zonas que estn definidas en el negocio de la empresa. El territorio en el que est afincada la empresa y sus unidades presupuestarias estar dividido en zonas que normalmente sern los puntos cardinales (Norte, Sur). Como se explic en la fase de anlisis cada zona tendr asignadas una o ms unidades presupuestarias. Los presupuestos e informes, en la aplicacin, se podrn generar por zonas. Para realizar esta operacin se tendrn en cuenta los presupuestos de todas las unidades presupuestarias que pertenezcan a la zona que se est tratando. Los campos utilizados son los siguientes: El campo cod_zona es un array de caracteres hasta un mximo de 25 necesario para identificar cada zona. Normalmente este campo tendr los valores Norte, Sur Debido a que cada zona tiene asignadas varias unidades presupuestarias se incluye el campo num_upres que identificar el nmero de unidades.

80

Sistema de presuspuestacin y reporting para la empresa Usuario_Zona:

Usuario_Zona es una tabla renacida que surgi al realizar la normalizacin en el diagrama entidad/relacin. Cada zona tiene asignado un usuario con el perfil Jefe de zona. Dicho usuario ser el nico que pueda acceder a la zona y podr generar los presupuestos e informes que desee para esta. Por lo tanto en esta tabla se almacenarn las parejas (usuario, zona). Los campos utilizados son cod_usuario y cod_zona. La combinacin de ambos campos formar la clave primaria y cada uno por separado ser clave extranjera de sus tablas correspondientes.

Usuario_Upre:

Usuario_Upre es una tabla renacida que surgi al realizar la normalizacin en el diagrama entidad/relacin. Como cada unidad presupuestaria debe tener asignado un usuario con perfil Jefe de Upre esta tabla almacena las parejas (usuario,unidad presupuestaria). Los campos utilizados son cod_usuario y cod_upre. La combinacin de ambos campos formar la clave primaria y cada uno por separado ser clave extranjera de sus tablas correspondientes.

Estado:

Dicha tabla almacena los posibles estados por los que pueda pasar un presupuesto y un informe. La clave primaria ser cod_estado que podr tomar los valores: Iniciado, Finalizado, Corregido, Pendiente y Rechazado. Los estados por los que puede pasar un informe o

81

Sistema de presuspuestacin y reporting para la empresa presupuesto y los cambios entre ellos estn explicados en el diagrama de flujo en la fase de Anlisis.

Tipo_informe:

Se almacenan las clases de informe que puede generar la aplicacin. Como se explic en la fase de anlisis existen dos tipos de informes: informes comparativos e informes tipo dos. Por lo tanto esta tabla tendr dos entradas. El campo cod_tipo_informe tendr los valores comparativo y tipoDos, este campo ser la clave primaria. El campo descripcin mostrar la explicacin de cada tipo de informe. Los campos utilizados en la tabla son los siguientes:

Informe:

En esta tabla se cargarn todos los informes que se han realizado durante la ejecucin de la aplicacin. Se almacenarn informes de los dos tipos posibles explicados con anterioridad. Los campos utilizados en la tabla son los siguientes: Cod_informe: Es la clave primaria de la tabla y por lo tanto identifica cada informe y tendr el formato: UUUU-FFFFFFF donde los cuatro primeros (UUUU) digitos sern el cdigo de la unidad presupuestaria a la que pertenece el informe. Los ocho siguientes sern el cdigo del perodo presupuestario para el que se realiz el informe. De esta manera se consigue distinguir de forma clara y sencilla los distintos informes realizados en la misma unidad presupuestaria.

82

Sistema de presuspuestacin y reporting para la empresa descripcin: Explicacin del informe realizado total: Este campo es la cantidad total que tiene el informe. Dependiendo del tipo de informe esta cantidad tendr un significado u otro. cod_tipo_informe: Es una clave extranjera procedente de la tabla tipo_informe explicada con anterioridad. Con este campo se conoce el tipo de informe que se est tratando. cod_upre: Consiste en otra clave extrajera procedente de la tabla upre que indica para que unidad presupuestaria se realiz el informe. cod_pp: Clave extranjera que muestra el perodo presupuestario para el que se gener el informe. cod_estado: Por ltimo este campo indica el estado actual en el que se encuentra el informe. Es otra clave extranjera procedente de la tabla estado.

Presupuesto:

La tabla presupuesto sigue una estructura muy similar a la tabla informe explicada anteriormente. Ambas tablas se han tratado de forma dividida debido a la importancia de los presupuestos en el sistema. Los campos utilizados son parejos a los de la tabla informe y su significado y razn de ser tambin. La clave primaria es cod_presupuesto y tendr el siguiente formato: PPPP-FFFFFFF donde PPPP ser el cdigo de la unidad presupuestaria a la que pertenece el presupuesto y FFFFFFF ser el cdigo del perodo presupuestario para el que se realiz el presupuesto.

83

Sistema de presuspuestacin y reporting para la empresa

Tipo_PP:

El objetivo de esta tabla es almacenar los tipos posibles de perodos presupuestarios. Como se explic en la fase de anlisis existen tres tipos: Anual, Semanal y Mensual. La clave primaria de la tabla lleva el nombre cod_tipo_pp. La tabla tendr tres entradas con los valores: Anual, Mensual y Semanal.

Datos_Informe:

Dicha tabla ha sido creada para almacenar cada una de las entradas de los informes entendiendo por entrada la cuenta, el valor y los atributos restantes necesarios para realizar un apunte en un informe. La clave primaria de la tabla es cod_dato_i que tendr el siguiente formato: UUUU-FFFFFFF-CCC donde UUUU-FFFFFFF es el cdigo del informe al que pertenece el apunte y CCC es el cdigo de la cuenta utilizada para realizar el apunte. Adems de cod_dato_i los campos utilizados en la tabla son los siguientes: importe: Es un double que almacena el importe total del presupuesto al que pertenece el apunte. descripcion: Explicacin del apunte. valor: Es un double que mostrar el valor imputado a la cuenta identificada por el campo cod_cta de la entrada del informe. cod_informe: Es la clave extranjera procedente de la tabla informe utilizado para identificar el informe al que pertenece el apunte.

84

Sistema de presuspuestacin y reporting para la empresa cod_cta: Es la clave extranjera procendente de la tabla cta. Identifica la cuenta utilizada en el apunte del informe.

Datos_Presupuesto:

La tabla Datos_presupuesto sigue una estructura muy similar a la tabla Datos_informe explicada anteriormente. Ambas tablas se han tratado de forma dividida debido a la importancia de los presupuestos en el sistema. Los campos utilizados son parejos a los de la tabla Datos_informe y su significado y razn de ser tambin. La clave primaria es cod_dato_p y tendr el siguiente formato: UUUU-FFFFFFF-CCC donde UUUU-FFFFFFF es el cdigo del presupuesto al que pertenece el apunte y CCC es el cdigo de la cuenta utilizada para realizar el apunte.

Tipo_Cta:

Esta tabla es utilizada para distinguir los tipos de cuenta existentes y utilizados por la aplicacin. Los tipos de cuenta vienen determinados por el Cuadro de Cuentas del Plan General de Contabilidad y sern los grupos en los que se engloban las cuentas finales. A continuacin se muestra un ejemplo de los tipos de cuenta utilizados:

Cod_tipo_Cta 64 66 76

Descripcin Gastos de Personal Gastos Financieros Ingresos Financieros

Cta 640 667 763

Descripcin Cta Sueldos y Salarios Prdidas de crditos Ingresos de crditos a corto plazo

85

Sistema de presuspuestacin y reporting para la empresa

13.4.

Generacin del cdigo DDL de la base de datos

Tras realizar el diseo completo de la base de datos se procede a la generacin del cdigo para la creacin de la misma. Dicho cdigo incluir las sentencias para el borrado de tablas, la creacin de las claves primarias y extranjeras y creacin de ndices y restricciones para todas las tablas descritas. A continuacin se detalla parte del cdigo DDL para la generacin de la tabla Usuario_Upre de la base de datos: USE spr; DROP TABLE Usuario_Upre; CREATE TABLE Usuario_Upre ( cod_usuario VARCHAR(25) NOT NULL, cod_upre INTEGER NOT NULL, PRIMARY KEY (cod_usuario, cod_upre), KEY (cod_upre), KEY (cod_usuario) ); ALTER TABLE Usuario_Upre ADD CONSTRAINT FK_Usuario_Upre_Upre FOREIGN KEY (cod_upre) REFERENCES Upre (cod_upre) ;

86

Sistema de presuspuestacin y reporting para la empresa

13.5.

Carga de datos maestros en la base de datos

Una vez que se ha creado la base de datos se deben almacenar los datos de las tablas maestras del sistema. Para llevar a cabo esta accin se han generado algoritmos de carga en el lenguaje Microsoft Visual Basic 6.3. Dichos algoritmos toman los datos de entrada de archivos en formato Microsoft Office Excel 2003 y los almacenan en las tablas maestras que correspondan. A continuacin se detalla la tabla con los datos de entrada de Tipo_Cta y el algoritmo utilizado para el almacenamiento de dichos datos: La tabla tipo_cta tiene dos campos: cod_tipo_cta y descripcin. Slo se muestran algunas de las entradas de la tabla:

cod_tipo_cta 60 61 62 63 64 65 66 67 68 69 70 71 73 74 COMPRAS

descripcin

VARIACIN DE EXISTENCIAS SERVICIOS EXTERIORES TRIBUTOS GASTOS DE PERSONAL OTROS GASTOS DE GESTIN GASTOS FINANCIEROS PRDIDAS PROCENDENTES DEL INMOVILIZADO DOTACIONES PARA AMORTIZACIONES DOTACIONES A LAS PROVISIONES VENTAS DE MERCADERAS VARIACIN DE EXISTENCIAS TRABAJOS REALIZADOS PARA LA EMPRESA SUBVENCIONES A LA EXPLOTACIN

87

Sistema de presuspuestacin y reporting para la empresa


75 76 79 OTROS INGRESOS DE GESTIN BENEFICIOS PROCEDENTES DEL INMOVILIZADO EXCESOS Y APLICACIONES DE PROVISIONES

El algoritmo mencionado anteriormente es el siguiente: Option Explicit Dim codigo As String Dim descripcion As String Dim i As Integer Private Sub CommandButton1_Click() For i = 1 To 17 'MsgBox (Worksheets(3).Cells(i, 2)) codigo = Worksheets(3).Cells(i, 2) descripcion = Str(Worksheets(3).Cells(i, 3)) Worksheets(3).Cells(i, 10) = "insert into tipo_cta (cod_tipo_cta,descripcion) values('" + codigo + "','" + nupres + "');" Next i End Sub

88

Sistema de presuspuestacin y reporting para la empresa

13.6.

Modelo de Casos de Uso


Identificacin de los Casos de Uso

13.6.1.

Los casos de uso ms destacados de la aplicacin se citan a continuacin: Cdigo--Descripcin CU1--Crear Usuario

Figura 11

89

Sistema de presuspuestacin y reporting para la empresa

CU2--Anular Usuario

Figura 12

90

Sistema de presuspuestacin y reporting para la empresa

CU3--Crear Unidad Presupuestaria

Figura 13

91

Sistema de presuspuestacin y reporting para la empresa

CU4--Establecer perodos presupuestarios

Figura 14

92

Sistema de presuspuestacin y reporting para la empresa

CU5--Crear Zona

Figura 15

93

Sistema de presuspuestacin y reporting para la empresa

CU6--Asignar Permisos

Figura 16

94

Sistema de presuspuestacin y reporting para la empresa

CU7--Buscar Usuario

Figura 17

95

Sistema de presuspuestacin y reporting para la empresa

CU8--Asignar Zona

Figura 18

CU9--Iniciar sesin

Figura 19

96

Sistema de presuspuestacin y reporting para la empresa

CU10--Generar presupuesto

Figura 20

97

Sistema de presuspuestacin y reporting para la empresa

CU11--Generar informe de comparacin

Figura 21

CU12--Cargar datos reales

Figura 22

98

Sistema de presuspuestacin y reporting para la empresa

CU13--Generar informe

Figura 23

99

Sistema de presuspuestacin y reporting para la empresa

CU14--Anular informe

Figura 24

CU15--Buscar informe Este caso de uso est incluido en otros casos de uso. La descripcin de inclusiones de casos de uso se explica en el apartado 13.6.2

100

Sistema de presuspuestacin y reporting para la empresa

CU16--Almacenar informe

Figura 25

CU17--Mostrar informe/presupuesto

Figura 26

101

Sistema de presuspuestacin y reporting para la empresa CU18--Buscar presupuesto Este caso de uso est incluido en otros casos de uso. La descripcin de inclusiones de casos de uso se explica en el apartado 13.6.2 CU19--Modificar informe

Figura 27

102

Sistema de presuspuestacin y reporting para la empresa

CU20--Modificar unidad presupuestaria

Figura 28

103

Sistema de presuspuestacin y reporting para la empresa

CU21--Modificar Zona

Figura 29

104

Sistema de presuspuestacin y reporting para la empresa

CU22-- Modificar Usuario

Figura 30

105

Sistema de presuspuestacin y reporting para la empresa

13.6.2.

Diagrama de Casos de uso

Los diagramas de casos de uso son los siguientes:

Figura 31

Figura 32

106

Sistema de presuspuestacin y reporting para la empresa

13.6.3.

Descripcin de los Casos de uso

A continuacin se describen los casos de uso ms importantes identificados con anterioridad: Caso de Uso CU1: Crear usuario Actor primario: Administrador Actores secundarios:-Precondiciones: -Trigger: Iniciado por el Administrador Escenario primario: 1.- El administrador introduce los datos del nuevo usuario. 2.- El sistema comprueba que esos datos no estn ya almacenados (CU6). 3.- El administrador introduce el perfil del nuevo usuario. 4.- El sistema comprueba si existe ese perfil. 5.- El sistema da de alta un nuevo usuario. Extensiones: 2a.- Los datos del usuario ya estn almacenados 1.- El sistema informa que esos datos ya estn almacenados. 2.- El administrador no quiere aadir el nuevo usuario. 3.- Finaliza el caso de uso 2a2a.- El administrador quiere modificar el perfil del usuario introducido. 1.- El administrador introduce el perfil nuevo del usuario a aadir. 2.- El sistema verifica que ese perfil existe. 3.- El sistema modifica el perfil del usuario correspondiente (CU7). 2a2a2a.- El perfil introducido no existe.

107

Sistema de presuspuestacin y reporting para la empresa 1.- El sistema informa que el perfil no existe. 2.- Finaliza el caso de uso. Descripcin de datos: Datos de usuario: - Cdigo de usuario (campo usuario). - Nombre y apellidos. - Contrasea. - Telfono y fax. - Perfil. Otros requerimientos: Casos de uso incluidos: 1.- Asignar permisos (CU6). 3.- El sistema modifica el perfil del usuario correspondiente (CU6). 2.- Buscar Usuario (CU7). 2.- El sistema comprueba que esos datos no estn ya almacenados (CU7). Caso de Uso CU2: Anular usuario Actor primario: Administrador Actores secundarios:-Precondiciones: -Trigger: Iniciado por el Administrador Escenario primario: 1.- El administrador introduce el cdigo del usuario. 2.- El sistema comprueba que ese cdigo existe. 3.- El sistema muestra todos los datos del usuario y pide confirmacin.

108

Sistema de presuspuestacin y reporting para la empresa 4.- El administracin confirma que desea borrar ese usuario. 5.- El sistema da de baja al usuario. Extensiones: 2a.- Los datos del usuario no estn almacenados 1.- El sistema informa que esos datos no estn almacenados. 2.- Finaliza el caso de uso Descripcin de datos: Datos del socio: - Cdigo de usuario (campo usuario). - Nombre y apellidos. - Contrasea. - Telfono y fax. - Perfil. Otros requerimientos: - No se puede dar de baja a un usuario si es el administrador del sistema y no existe otro. Caso de Uso CU3: Crear unidad presupuestaria Actor primario: Administrador Actores secundarios:-Precondiciones: El usuario debe haber seleccionado una zona con anterioridad. Trigger: Iniciado por el Administrador Escenario primario: 1.- El administrador introduce los datos de la unidad presupuestaria. 2.- El sistema comprueba que esos datos no estn ya almacenados.

109

Sistema de presuspuestacin y reporting para la empresa 3.- El sistema da de alta una nueva unidad presupuestaria. Extensiones: 2a.- Los datos de la unidad presupuestaria ya estn almacenados 1.- El sistema informa que esos datos ya estn almacenados. 2.- El administrador no quiere aadir la nueva unidad. 3.- Finaliza el caso de uso 2a2a.- El administrador quiere modificar la zona a la que pertenece la unidad presupuestaria. 1.- El administrador introduces la zona nueva. 2.- El sistema verifica que esa zona existe. 3.- El sistema modifica la zona de la unidad presupuestaria correspondiente (CU8). 2a2a2a.- La zona introducida no existe. 1.- El sistema informa que la zona no existe. 2.- Finaliza el caso de uso. Descripcin de datos: Datos de la unidad presupuestaria: - Cdigo de unidad. - Descripcin de unidad. - Por cada unidad presupuestaria: - Cdigo de la zona a la que pertenece la unidad presupuestaria. Casos de uso incluidos: 1.- Asignar zona (CU8). 3.- El sistema modifica la zona de la unidad presupuestaria correspondiente.

110

Sistema de presuspuestacin y reporting para la empresa Caso de Uso CU4: Establecer perodos presupuestarios Actor primario: Administrador Actores secundarios:-Precondiciones: El administrador debe haber configurado las unidades presupuestarias. (Debe haber unidades presupuestarias dadas de alta). Trigger: Iniciado por el Administrador Escenario primario: 1.- El sistema muestra los datos de perodos presupuestarios. 2.- El administrador selecciona el tipo de perodo y la descripcin para la realizacin de los informes. Extensiones: Descripcin de datos: Datos de perodos presupuestarios: - Tipo de perodo presupuestario. - Descripcin de perodo. Otros requerimientos: - No se podr modificar el tipo de perodo presupuestario. La eleccin del mismo se debe realizar en la configuracin inicial. Caso de Uso CU5: Crear zona Actor primario: Administrador Actores secundarios:-Precondiciones: -Trigger: Iniciado por el Administrador Escenario primario:

111

Sistema de presuspuestacin y reporting para la empresa 1.- El administrador introduce los datos de la zona a introducir. 2.- El sistema comprueba que los datos introducidos de la zona no existen. 3.- El sistema comprueba que el jefe de zona existe. 4.- El administrador confirma los datos de la nueva zona. 5.- El sistema da de alta la zona. 6.- El sistema introduce los permisos del usuario para esa zona (CU6) Extensiones: 2a.- Los datos de la zona ya existen. 1.- El sistema informa que los datos ya existen. 2.- El administrador cancela la operacin. 3.- Finaliza el caso de uso. 3a.- El usuario responsable de zona no existe. 1.- El sistema informa que no existe usuario con esos datos. 2.- El administrador introduce otro usuario. 3.- El sistema comprueba que existe un usuario con los datos recin introducidos (CU7). 4.- 4.- El sistema comprueba que el usuario tiene permisos para ser jefe de zona. 5.- El sistema da de alta la nueva zona. 3b.- El usuario responsable de zona existe pero no tiene perfil de jefe de zona. 1.- El sistema informa que el usuario no tiene perfil para ser responsable. 2.- El administrador introduce datos de otro usuario para ser el jefe de zona. 3.- El sistema comprueba que existe un usuario con los datos recin introducidos. 4.- El sistema comprueba que el usuario tiene permisos para ser jefe de zona.

112

Sistema de presuspuestacin y reporting para la empresa 5.- El sistema da de alta la nueva zona. Descripcin de datos: Datos de zona: Por cada Zona se tendr: - Cdigo de la zona. - Descripcin de la zona. - Nmero de unidades presupuestarias pertenecientes a la zona. - Jefe responsable de la zona. Casos de uso incluidos: 1.- Buscar usuario (CU7). 3.- El sistema comprueba que existe un usuario con los datos introducidos. 2.- Asignar permisos (CU6). 6.- El sistema introduce los permisos del usuario para esa zona (CU6)

Caso de Uso CU6: Asignar permisos Actor primario: Administrador Actores secundarios:-Precondiciones: El administrador debe haber seleccionado una zona. Trigger: Iniciado por el Administrador Escenario primario: 1.- El administrador introduce los datos del usuario que ser responsable de la zona. 2.- El sistema comprueba que los datos introducidos del usuario existen (CU7). 3.- El sistema comprueba que el usuario tiene permisos para se jefe de zona. 4.- El administrador asigna permisos de jefe de la zona al usuario introducido.

113

Sistema de presuspuestacin y reporting para la empresa Extensiones: 2a.- El usuario responsable de zona no existe. 1.- El sistema informa que no existe usuario con esos datos. 2.- El administrador introduce otro usuario. 3.- El sistema comprueba que existe un usuario con los datos recin introducidos (CU7). 4.- 4.- El sistema comprueba que el usuario tiene permisos para ser jefe de zona. 5.- El sistema da de alta la nueva zona. 3a.- El usuario responsable de zona existe pero no tiene perfil de jefe de zona. 1.- El sistema informa que el usuario no tiene perfil para ser responsable. 2.- El administrador introduce datos de otro usuario para ser el jefe de zona. 3.- El sistema comprueba que existe un usuario con los datos recin introducidos. 4.- El sistema comprueba que el usuario tiene permisos para ser jefe de zona. 5.- El sistema da de alta la nueva zona. Descripcin de datos: Datos de usuario: - Cdigo de usuario (campo usuario). - Nombre y apellidos. - Contrasea. - Telfono y fax. - Perfil. Casos de uso incluidos: 1.- Buscar usuario (CU7).

114

Sistema de presuspuestacin y reporting para la empresa 3.- El sistema comprueba que existe un usuario con los datos introducidos. Caso de Uso CU7: Buscar usuario Actor primario: Administrador Actores secundarios:-Precondiciones: -Trigger: Iniciado por el Agente Escenario primario: 1.- El agente introduce los datos del usuario a buscar. 2.- El sistema busca los datos recin introducidos del usuario. 3.- El sistema muestra los datos del usuario buscado. 4.- El sistema busca el perfil del usuario buscado. 5.- El sistema muestra el perfil del usuario. Extensiones: 2a.- Los datos del usuario no estn almacenados. 1.- El sistema notifica que los datos del usuario no existen. 2.- Finaliza el caso de uso. Descripcin de datos: Datos de usuario: - Cdigo de usuario (campo usuario). - Nombre y apellidos. - Contrasea. - Telfono y fax. - Perfil. Caso de Uso CU8: Asignar zona

115

Sistema de presuspuestacin y reporting para la empresa Actor primario: Administrador Actores secundarios:-Precondiciones: Se ha seleccionado una unidad presupuestaria existente. Trigger: Iniciado por el Administrador Escenario primario: 1.- El administrador introduce la zona. 2.- El sistema comprueba que la zona existe. 3.- El sistema asigna a dicha zona la unidad presupuestaria seleccionada. Extensiones: 2a.- La zona introducida no existe. 1.- El sistema informa que la zona no existe. 2.- El usuario introduce los datos de otra zona. 3.- El sistema comprueba que los datos estn almacenados. 4.- El sistema asigna la zona a la unidad presupuestaria seleccionada. Datos de usuario: - Cdigo de usuario (campo usuario). - Nombre y apellidos. - Contrasea. - Telfono y fax. - Perfil. Caso de Uso CU9: Iniciar sesin Actor primario: Agente Actores secundarios:-Precondiciones: El usuario debe estar dado de alta en la base de datos.

116

Sistema de presuspuestacin y reporting para la empresa Trigger: Iniciado por el agente. Escenario primario: 1.- El agente introduce el usuario y contrasea. 2.- El sistema comprueba que existe el usuario (CU6). 3.- El sistema autentica la contrasea introducida. 4.- El sistema confirma los datos y permite el inicio de sesin. Extensiones: 2a.- No existe ningn usuario con ese campo usuario. 1.- El sistema informa que no existe ese usuario. 2.- Finaliza el caso de uso. 3.- La contrasea para ese usuario es incorrecta 1.- El sistema informa que la contrasea no es vlida. 2.- Finaliza el caso de uso. Casos de uso incluidos: 1.- Buscar usuario (CU6). 2.- El sistema comprueba que existe el usuario (CU6). Caso de Uso CU10: Generar presupuesto Actor primario: Agente Actores secundarios:-Precondiciones: Se ha debido seleccionar una unidad presupuestaria. Trigger: Iniciado por el Agente Escenario primario: 1.- El agente introduce el perodo presupuestario del presupuesto a generar. 2.- El sistema comprueba el perodo introducido.

117

Sistema de presuspuestacin y reporting para la empresa 3.- El sistema busca si ese informe ya ha sido generado (CU15). 4.- El agente introduce los datos necesarios para la generacin del presupuesto. 5.- El sistema genera y muestra el presupuesto. Extensiones: 2a.- El perodo introducido no es correcto (las fechas de inicio y fin son incorrectas). 1.- El sistema notifica que las fechas son incorrectas. 2.- El agente modifica las fechas. 3.- Se vuelve al paso 2. 3a.- El presupuesto ya ha sido generado. 1.- El sistema informa que el presupuesto ya se gener. 2.- El usuario selecciona generar otro informe. 3.- Se vuelve al paso 1. Descripcin de datos: Datos necesarios para la generacin del presupuesto: - Por cada presupuesto a realizar: - Cuentas a observar para la generacin. - Nmero de presupuestos histricos a tener en cuenta. - Por cada cuenta: - Funciones matemticas a realizar Casos de uso incluidos: 1.- Buscar informe (CU15). 3.- El sistema busca si ese informe ya ha sido generado (CU15).

118

Sistema de presuspuestacin y reporting para la empresa Caso de Uso CU11: Generar informe comparacin Actor primario: Agente Actores secundarios:-Precondiciones: Se ha debido seleccionar una unidad presupuestaria. Trigger: Iniciado por el Agente Escenario primario: 1.- El agente selecciona los presupuestos a comparar. 2.- El sistema comprueba que los presupuestos estn dados de alta (CU15). 3.- El sistema compara y genera el informe de comparacin.

Extensiones: 2a.- Algn presupuesto no est dado de alta 1.- El sistema informa que no existe algn presupuesto. 2.- Finaliza el caso de uso. Casos de uso incluidos: 1.- Buscar informe (CU15). 2.- El sistema comprueba que los presupuestos estn dados de alta (CU15). Caso de Uso CU12: Cargar datos reales Actor primario: Agente Actores secundarios:-Precondiciones: Se debe haber seleccionado una unidad presupuestaria. Trigger: Iniciado por el Agente Escenario primario: 1.- El sistema comprueba que los datos reales no han sido ya cargados.

119

Sistema de presuspuestacin y reporting para la empresa 2.- El sistema carga los datos reales. 3.- El sistema informa que los datos se cargaron con xito. Extensiones: 1a.- Los datos reales se cargaron con anterioridad. 1.- El sistema informa que los datos ya han sido cargados. 2.- Finaliza el caso de uso. Descripcin de datos: Datos reales: Por cada unidad presupuestaria: - Nombre y descripcin de la unidad. - Presupuesto. - Por cada presupuesto: - Cuentas introducidas - Por cada cuenta: - Nmero de cuenta. - Importe de la cuenta. - Descripcin de la cuenta. - Perodo presupuestario para el que se realiz. Otros requerimientos: - Los datos reales cargados proceden del ERP que se comunica con el sistema. La estructura de los datos viene dada por dicha aplicacin. Caso de Uso CU13: Generar informe Actor primario: Agente Actores secundarios:--

120

Sistema de presuspuestacin y reporting para la empresa Precondiciones: Se ha debido seleccionar una unidad presupuestaria anteriormente. Trigger: Iniciado por el Agente. Escenario primario: 1.- El agente introduce el tipo de informe que quiere obtener. 2.- El sistema comprueba que exista ese tipo de informe. 3.- El agente introduce los datos de configuracin del informe que desea. 4.- El sistema comprueba si ese informe ya ha sido generado con anterioridad (CU15). 5.- El sistema genera y muestra el informe pedido. Extensiones: 2a.- El tipo de informe introducido no existe. 1.- El sistema notifica que el tipo de informe no existe. 2.- El usuario introduce un nuevo tipo de informe. 3.- Se vuelve a paso 1. 4a.- El informe ya ha sido generado. 1.- El sistema informa que el informe ya fue generado. 2.- El usuario pide la generacin de otro informe. 3.- Se vuelve al paso 3. Casos de uso incluidos: 1.- Buscar informe (CU15). 4.- El sistema comprueba si ese informe ya ha sido generado con anterioridad (CU15). Caso de Uso CU14: Anular informe Actor primario: Agente Actores secundarios:--

121

Sistema de presuspuestacin y reporting para la empresa Precondiciones: Se ha debido seleccionar una unidad presupuestaria anteriormente. Trigger: Iniciado por el Agente. Escenario primario: 1.- El agente introduce el nmero del informe que quiere borrar. 2.- El sistema comprueba que exista ese informe (CU15). 3.- El sistema borra el informe y notifica su borrado. Extensiones: 2a.- El informe no se encuentra almacenado. 1.- El sistema informa que el informe no existe. 2.- Finaliza el caso de uso. Casos de uso incluidos: 1.- Buscar informe (CU15). 2.- El sistema comprueba si ese informe ya ha sido generado con anterioridad (CU15). Caso de Uso CU15: Buscar informe Actor primario: Agente Actores secundarios:-Precondiciones: Se ha debido seleccionar una unidad presupuestaria anteriormente. Trigger: Iniciado por el Agente. Escenario primario: 1.- El agente introduce el nmero de informe que desea buscar. 2.- El sistema busca el informe almacenado. 3.- El sistema muestra los datos del informe almacenado.

122

Sistema de presuspuestacin y reporting para la empresa Extensiones: 2a.- El informe buscado no existe. 1.- El sistema notifica que el informe no se han encontrado. 2.- Finaliza el caso de uso. Caso de Uso CU16: Almacenar informe Actor primario: Agente Actores secundarios:-Precondiciones: Se ha debido seleccionar una unidad presupuestaria anteriormente. Trigger: Iniciado por el Agente. Escenario primario: 1.- El agente confirma que desea guardar el informe. 2.- El sistema obtiene los datos del informe. 3.- El sistema graba el informe. 4.- El sistema graba el perodo presupuestario del informe. 5.- El sistema graba el estado del informe. Extensiones: 2a.- Los datos del informe son incorrectos 1.- El sistema informa del suceso. 2.- Finaliza el caso de uso. Descripcin de datos: Datos del informe: Por cada informe: - Cdigo del informe. - Perodo presupuestario del informe.

123

Sistema de presuspuestacin y reporting para la empresa - Estado del informe. Caso de Uso CU17: Mostrar informe Actor primario: Agente Actores secundarios:-Precondiciones: Se ha debido seleccionar una unidad presupuestaria anteriormente. Trigger: Iniciado por el Agente. Escenario primario: 1.- El agente introduce el nmero de informe que desea ver. 2.- El sistema busca el informe almacenado. 3.- El sistema muestra los datos del informe almacenado. Extensiones: 2a.- El informe buscado no existe. 1.- El sistema notifica que el informe no se han encontrado. 2.- Finaliza el caso de uso. Caso de Uso CU18: Buscar presupuesto Actor primario: Agente Actores secundarios:-Precondiciones: Se ha debido seleccionar una unidad presupuestaria anteriormente. Trigger: Iniciado por el Agente. Escenario primario: 1.- El agente introduce el nmero de presupuesto que desea buscar. 2.- El sistema busca el informe almacenado. 3.- El sistema muestra los datos del informe almacenado.

124

Sistema de presuspuestacin y reporting para la empresa Extensiones: 2a.- El presupuesto buscado no existe. 1.- El sistema notifica que el presupuesto no se han encontrado. 2.- Finaliza el caso de uso. Caso de Uso CU19: Modificar informe. Actor primario: Agente Actores secundarios:-Precondiciones: Se ha debido seleccionar una unidad presupuestaria anteriormente. Trigger: Iniciado por el Agente. Escenario primario: 1.- El agente selecciona el informe que desea modificar. 2.- El sistema busca el informe (CU15). 3.- El sistema muestra los datos de informe. 4.- El agente modifica los datos que desea que cambien. 5.- El sistema realiza la modificacin de los datos. Extensiones: 2a.- El informe no se encuentra almacenado. 1.- El sistema informa del suceso. 2.- Finaliza el caso de uso. 4a.- Los datos modificados no son correctos. 1.- El sistema informa del suceso. 2.- Finaliza el caso de uso. Descripcin de datos: Datos del informe:

125

Sistema de presuspuestacin y reporting para la empresa Por cada informe: - Cdigo del informe. - Perodo presupuestario del informe. - Estado del informe. Casos de uso incluidos: 1.- Buscar informe (CU15). 2.- El sistema busca el informe (CU15). Caso de Uso CU20: Modificar unidad presupuestaria. Actor primario: Agente Actores secundarios:-Precondiciones: Trigger: Iniciado por el Agente. Escenario primario: 1.- El agente indica el cdigo de la unidad presupuestaria que desea modificar. 2.- El sistema busca la unidad (CU23). 3.- El sistema muestra los datos de unidad. 4.- El agente modifica los datos que desea que cambien. 5.- El sistema realiza la modificacin de los datos. Extensiones: 2a.- La unidad no se encuentra almacenada. 1.- El sistema informa del suceso. 2.- Finaliza el caso de uso. 4a.- Los datos modificados no son correctos. 1.- El sistema informa del suceso.

126

Sistema de presuspuestacin y reporting para la empresa 2.- Finaliza el caso de uso. Descripcin de datos: Datos de la unidad: Por cada unidad: - Cdigo de unidad. - Nombre. - Zona a la que pertenece la unidad. Casos de uso incluidos: 1.- Buscar unidad (CU23). Caso de Uso CU21: Modificar zona. Actor primario: Agente Actores secundarios:-Precondiciones: Trigger: Iniciado por el Agente. Escenario primario: 1.- El agente selecciona la zona que desea modificar. 2.- El sistema busca la zona (CU24). 3.- El sistema muestra los datos de la zona. 4.- El agente modifica los datos que desea que cambien. 5.- El sistema realiza la modificacin de los datos. Extensiones: 2a.- La zona no se encuentra almacenado. 1.- El sistema informa del suceso. 2.- Finaliza el caso de uso.

127

Sistema de presuspuestacin y reporting para la empresa 4a.- Los datos modificados no son correctos. 1.- El sistema informa del suceso. 2.- Finaliza el caso de uso. Descripcin de datos: Datos de la zona: Por cada zona: - Cdigo de al zona. - Descripcin. - Nmero de unidades presupuestarias que tiene la zona. Casos de uso incluidos: 1.- Buscar zona (CU24). Caso de Uso CU22: Modificar usuario. Actor primario: Agente Actores secundarios:-Precondiciones: Trigger: Iniciado por el Agente. Escenario primario: 1.- El agente selecciona el usuario que desea modificar. 2.- El sistema busca el usuario (CU7). 3.- El sistema muestra los datos del usuario 4.- El agente modifica los datos que desea que cambien. 5.- El sistema realiza la modificacin de los datos. Extensiones: 2a.- El usuario no se encuentra almacenado.

128

Sistema de presuspuestacin y reporting para la empresa 1.- El sistema informa del suceso. 2.- Finaliza el caso de uso. 4a.- Los datos modificados no son correctos. 1.- El sistema informa del suceso. 2.- Finaliza el caso de uso. Descripcin de datos: Datos del usuario: Por cada usuario: - Cdigo. - Contrasea - Nombre. - Apellidos. - Telfono - Fax Casos de uso incluidos: 1.- Buscar usuario (CU7).

Caso de Uso CU23: Buscar unidad Actor primario: Administrador Actores secundarios:-Precondiciones: -Trigger: Iniciado por el Agente Escenario primario: 1.- El agente introduce los datos de la unidad a buscar.

129

Sistema de presuspuestacin y reporting para la empresa 2.- El sistema busca los datos recin introducidos de la unidad. 3.- El sistema muestra los datos de la unidad buscada. 4.- El sistema busca la zona a la que pertenece la unidad. 5.- El sistema muestra la zona de la unidad. Extensiones: 2a.- Los datos de la unidad no estn almacenados. 1.- El sistema notifica que los datos no existen. 2.- Finaliza el caso de uso. Descripcin de datos: Datos de la unidad: Por cada unidad: - Cdigo de unidad. - Nombre. - Zona a la que pertenece la unidad. Caso de Uso CU24: Buscar zona Actor primario: Administrador Actores secundarios:-Precondiciones: -Trigger: Iniciado por el Agente Escenario primario: 1.- El agente introduce los datos de la zona a buscar. 2.- El sistema busca los datos recin introducidos de la zona. 3.- El sistema muestra los datos de la zona buscada. Extensiones:

130

Sistema de presuspuestacin y reporting para la empresa 2a.- Los datos de la zona no estn almacenados. 1.- El sistema notifica que los datos no existen. 2.- Finaliza el caso de uso. Descripcin de datos: Datos de la zona: Por cada zona: - Cdigo de al zona. - Descripcin. - Nmero de unidades presupuestarias que tiene la zona.

13.6.4.

Diagramas de secuencia

A continuacin se presentan los diagramas de secuencia realizados para cada caso de uso durante la fase de diseo, con los que se entender mejor la interaccin entre objetos en el sistema:

131

Sistema de presuspuestacin y reporting para la empresa CU1: Crear Usuario

Figura 33

Como se puede observar ser el servlet UsuarioServlet el encargado de realizar la operacin. Esta clase nicamente ser la controladora. Primero realizar la comprobacin de los datos introducidos y despus ejecutar el mtodo de carga de usuarios del servicio ServicioUsuario. Por ltimo tomar los datos devueltos por el mtodo ejecutado y realizar la comprobacin de los mismos, tanto si la accin se realiz correctamente como si se encontr algn error la pgina jsp a mostrar ser gestionUsuarios.jsp en la que se mostrar lo sucedido (usuario dado de alta o error). La clase ServicioUsuario ser la encargada de realizar todas las operaciones necesarias en el momento de la llamada al mtodo cargaUsuario. Primeramente comprobar que el usuario a introducir no ha sido guardado ya, llamando al mtodo existeUsuario de la clase BDUsuario. En caso de no existir el usuario llamar al mtodo InsertaUsuario de 132

Sistema de presuspuestacin y reporting para la empresa BDUsuario para insertarlo en la base de datos y recibir los resultados del mismo, si el valor obtenido indica la correcta realizacin de la accin devolver un valor positivo a UsuarioServlet. Si por el contrario el usuario ya existe en la base de datos ServicioUsuario devolver un valor que as lo indique a UsuarioServlet y terminar su ejecucin. La clase BDUsuario realizar las consultas e inserciones necesarias en la base de datos dependiendo del mtodo al que llame ServicioUsuario. Los parmetros intercambiados en los mtodos tienen el siguiente significado: usuario: Instancia de la clase Usuario con todos los atributos del usuario introducidos en el formulario por el administrador. c_u: cdigo de usuario.

CU2: Anular Usuario

Figura 34

133

Sistema de presuspuestacin y reporting para la empresa Las acciones de este caso de uso las realizan las mismas clases del CU1: Crear usuario. As mismo el desempeo del caso es muy similar. El controlador UsuarioServlet da la orden de borrado al servicio. ServicioUsuario comprueba si el usuario existe llamando al mtodo correspondiente de BDUsuario. Si existe, da la orden de borrado de usuario, y si no existe devuelve al controlador lo ocurrido y termina la ejecucin. En cualquier caso UsuarioServlet realiza la redireccin a gestionUsuarios.jsp transfiriendo la informacin de lo ocurrido para que sea mostrada. La descripcin de los parmetros utilizados en los mtodos es la siguiente: c_u: cdigo del usuario introducido en el formulario por el administrador.

CU3: Crear Unidad Presupuestaria

Figura 35

134

Sistema de presuspuestacin y reporting para la empresa El controlador de este caso de uso ser UpreServlet que dar la orden de carga de la unidad a ServicioUpre mediante el mtodo cargaUpre(upre). Al igual que sucede con los usuarios el servicio comprobar que la unidad presupuestaria no haba sido ya insertada en la base de datos, si no es as, dar la orden de insercin a la clase BDUpre que crear la unidad con los atributos pasados por el servicio. Descripcin de los parmetros del diagrama: upre: Objeto de tipo Upre con todos los atributos introducidos por el usuario (administrador) de la unidad presupuestaria que va a ser insertada. c_u: cdigo de la unidad presupuestaria.

CU4: Establecer perodos presupuestarios

Figura 36

En este caso ser la clase PeriodoServlet el controlador de la accin. Esta clase dar la orden de cambio de tipo de perodo a una instancia de la clase ServicioPeriodo con el mtodo asignarPeriodo(tipo_pp). ServicioPerodo ser el encargado de comprobar el tipo de perodo que se est utilizando llamando a la clase BDPerodo. Si este tipo de perodo coincide con el nuevo tipo que se quiere utilizar ServicioPerodo devolver los

135

Sistema de presuspuestacin y reporting para la empresa resultados a PeriodoServlet y terminar su ejecucin. En caso de que no coincidan el servicio dar la orden de cambio a BDPeriodo. Esta ltima clase mencionada realizar el update correspondiente y devolver los resultados de la operacin al servicio. Por ltimo PeriodoServlet redirecciona la ejecucin a aplicacion.jsp. Los datos intercambiados entre las clases son los siguientes: - tipo_pp: Es el tipo de perodo presupuestario introducido al que se quiere cambiar. CU5: Crear zona

Figura 37

Este caso de uso realiza las mismas acciones con las zonas que en el caso CU1: Crear usuario realiza con los usuarios. Como se puede observar en la figura las clases que realizan la operacin son las siguientes: ZonaServlet: Es la clase controladora.

136

Sistema de presuspuestacin y reporting para la empresa ServicioZona: Comprueba que la zona no existe y la aade si es as. BDZona: Accede a la base de datos realizando una consulta y un insertado si es necesario. Los datos manejados por las clases son los siguientes: zona: Instacia de la clase Zona con todos los atributos de la zona que se desea insertar. c_z: Atributo cdigo de zona de la instancia zona.

CU6: Asignar permisos

Figura 38

Como se explic anteriormente este caso de uso asocia un usuario a un perfil. Esta accin la realizarn las clases UsuarioServlet, ServicioUsuario y BDUsuario. Primero se debe comprobar si el usuario al que se le quiere cambiar el perfil est almacenado en la base de datos, de no ser as el caso de uso concluir y se mostrar dicha informacin en la pgina jsp gestinUsuarios.jsp. Si el usuario s est almacenado

137

Sistema de presuspuestacin y reporting para la empresa se le asignar el perfil introducido y se mostrar la pgina gestinUsuarios.jsp advirtiendo que al usuario ya se le ha asignado el perfil deseado. Datos manejados en el caso de uso: c_u: Cdigo de usuario al que se le desea cambiar el perfil. c_p: Cdigo del perfil que se desea asignar.

CU7: Buscar usuario Este caso de uso est incluido en el CU1: Crear usuario y en el CU2: Anular usuario, por lo tanto su diagrama de secuencia no se indica en este apartado ya que ser igual al de la primera fase de los casos mencionados. CU8: Asignar zona

Figura 39

Como se observa en el diagrama la lgica que se debe realizar es llevada a cabo por la clase ServicioUpre. Primeramente se deber comprobar que la zona a la que se quiere asignar la unidad presupuestaria existe con el mtodo existeZona(c_z), si es as se

138

Sistema de presuspuestacin y reporting para la empresa comprobar si la unidad existe con el mtodo existeUpre(c_u). Al cumplirse ambas condiciones se podr asignar la unidad a la zona introducida. El significado de los datos utilizados es el siguiente: c_u: Cdigo de la unidad presupuestaria que se quiere asignar a la zona. c_z: Cdigo de la zona a la que se quiere asignar.

CU9: Iniciar sesin

Figura 40

Al iniciar sesin desde la pgina index.jsp se llama al servlet LoginServlet que controlar la accin. En primer lugar se comprueba que el usuario con el cdigo de usuario introducido existe en la base de datos con los mtodos getUsuario(codUsuario) y existeUsuario(codUsuario), en este caso se obtiene la contrasea con el mtodo getpassword(codUsuario) index.jsp. Si no han ocurrido excepciones en el caso de uso entonces el servlet controlador (LoginServlet) redirecciona la ejecucin de la aplicacin a aplicacin.jsp. y se compara con la introducida en el formulario de

139

Sistema de presuspuestacin y reporting para la empresa CU10: Generar presupuesto Debido a la amplitud de el diagrama se utilizarn dos figuras para mostrarlo. La primera explicar las acciones necesarias para la consecucin del caso de uso y la segunda mostrar la redireccin a la pgina jsp a mostrar.

Figura 41

A continuacin se explican los mtodos utilizados para la realizacin del caso de uso: - generaPre(c_upre,fi,ff): Mtodo de la clase ServicioPresupuesto con el que se da la orden de generacin donde c_upre es el cdigo de la unidad presupuestaria a la que pertenece el presupuesto que se va a generar, fi es la fecha inicial del informe y ff la fecha final.

140

Sistema de presuspuestacin y reporting para la empresa - existePre(c_pres): La clase ServicioPresupuesto confecciona el cdigo del presupuesto mediante la combinacin de c_upre, fi y ff. Una vez obtenido el cdigo se pasa a comprobar si existe un presupuesto con ese cdigo mediante el mtodo existePres(c_pres) donde c_pres es el cdigo obtenido anteriormente mencionado. Si no se encuentra otro presupuesto con ese cdigo el caso de uso contina su ejecucin normal. existeUpre(c_upre): Para generar un presupuesto es necesario asignarlo a una unidad, debido a ello se utiliza ste mtodo. Si la unidad est dada de alta en la base de datos contina la ejecucin sin excepciones del caso de uso. getDatosX(c_upre): Est mtodo es utilizado para obtener todos los datos de la unidad con el cdigo c_upre. cargaPresupuesto(presupuesto): Una vez se han comprobado los datos necesarios para la generacin correcta del presupuesto se ejecuta el mtodo cargaPresupuesto(presupuesto). Los atributos del presupuesto son calculados por PresupuestoServlet que con ste mtodo da la orden de almacenar los mismos, pasando como argumentos mediante la bean presupuesto. cargaDatosPresupuesto(datosPresupuesto): Con este mtodo se realiza la carga de datos de presupuesto en la base de datos, en la tabla Datos_Presupuesto.

141

Sistema de presuspuestacin y reporting para la empresa

Figura 42

La pgina jsp a la que se redirecciona es VisualizaPresupuesto.jsp que mostrar el presupuesto generado con el estilo acordado en la fase de diseo. CU11: Generar informe de comparacin La realizacin de este caso de uso es muy similar al caso de uso CU10: Generar presupuesto. Ls mtodos realizan funciones muy similares con argumentos paralelos a los del caso de uso anterior.

142

Sistema de presuspuestacin y reporting para la empresa

Figura 43

Explicacin de los mtodos necesarios para realizar el caso de uso: - generaInfComp(c_upre): Con este mtodo se da la orden de generacin de creacin del informe de comparacin. El argumento c_upre es el cdigo de la unidad presupuestaria para la que se va a generar el informe. -existeInf(c_inf): El servicio ServicioInforme despus de crear automticamente el cdigo del informe que se va a generar comprueba con este mtodo si el informe a realizar ya se cre y almacen en la base de datos. Por lo tanto el argumento c_inf es el cdigo del informe a generar. En caso de que el informe ya est almacenado en la base de datos se informar al usuario y se dar por terminado el caso. De no ser as se continuar con la ejecucin del programa mediante la llamada de los mtodos:

143

Sistema de presuspuestacin y reporting para la empresa existeUpre(c_upre): El Servicio ejecuta este mtodo de la clase BDUpre para comprobar si la unidad presupuestaria existe en la base de datos. Si la unidad no existe devolver un valor false a InformeServlet que redireccionar a la pgina de error correspondiente. getDatosX*(c_upre): Este mtodo es utilizado para que ServicioInforme recoja todos los registros con los datos de los informes generados para la unidad presupuestaria protagonista en el caso de uso. Con estos datos el servicio crear el informe comparativo entre los informes necesarios y lo devolver a InformeServlet. cargaPresu(InformeCompara): Una vez se ha generado el informe el servlet da lo orden de cargarlo a ServicioInforme con ste mtodo. cargaInf(InformeCompara): Con este mtodo se almacena en la base de datos el informe generado como se puede observar en la figura del caso de uso. cargaDatosInfCompara(InformeCompara): Observando la figura se puede observar que este mtodo es utilizado para almacenar los datos del informe en la base de datos, concretamente en la tabla DatosInforme.

144

Sistema de presuspuestacin y reporting para la empresa CU12: Cargar datos reales

Figura 44

Como se puede observar en la figura los mtodos utilizados son los siguientes: - cargaDatos(): El sevlet ejecuta este mtodo de la clase ServicioCarga para obtener los datos reales y almacenarlos como informes. - generaCodigo(): El servicio genera el cdigo del nuevo informe a almacenar teniendo en cuenta el perodo asignado al informe y la unidad presupuestaria a la que pertenece. - existeInforme(codigo): Con el cdigo recin generado se comprueba si ya se almacen el informe con la misma fecha y para la misma unidad presupuestaria.

145

Sistema de presuspuestacin y reporting para la empresa - generaInforme(): Si el informe no fue almacenado con anterioridad el servicio toma los datos externos y los procesa dndoles el formato adecuado. - creaInforme(informe): Una vez el informe con datos reales ya ha sido generado ServicioCarga realiza la llamada a este mtodo de BDInforme para almacenarlo. CU13: Generar informe

Figura 45

Las acciones realizadas para este caso de uso son iguales que para el caso CU10: Generar presupuesto, por lo tanto los mtodos utilizados (an siendo distintos) son similares y utilizan los mismos criterios de actuacin. CU14: Anular informe

146

Sistema de presuspuestacin y reporting para la empresa

Figura 46

Descripcin de los mtodos del caso de uso: - BorrarInforme(c_informe): Mtodo de la clase ServicioPresupuesto utilizado para dar la orden de borrado del informe. El argumento necesario es el cdigo del informe que se desea borrar. - existeInforme(c_inf): Como se observa en la figura el servicio comprueba si el informe existe siendo c_inf el cdigo del informe. - BorraInforme(c_inf): Si el informe existe el servicio da la orden para eliminarlo de la base de datos a BDPresupuesto. Esta clase deber borrar los registros necesarios de la tabla DatosPresupuesto y el registro que identifica el informe en la tabla Presupuesto. CU15: Buscar informe Este caso de uso est incluido en el CU11: Generar informe de comparacin y en el CU13: Generar informe, por lo tanto su diagrama de secuencia no se indica en este apartado ya que ser igual al de la primera fase de los casos mencionados.

147

Sistema de presuspuestacin y reporting para la empresa

CU16: Almacenar presupuesto

Figura 47

En este caso la clase controladora ser PresupuestoServlet que dar la orden de almacenar con el mtodo cargaPresu(presupuesto) de ServicioPresupuesto. El argumento presupuesto ser la estructura que contenga todos los datos del presupuesto a almacenar. La clase ServicioPresupuesto ejecutar el mtodo cargaPresu perteneciente a la clase BDPresupuesto que ser la encargada de guardar el informe en la base de datos creando los registros necesarios con los datos generados en la tabla DatosPresupuesto. Asimismo deber crear el registro que identifique el presupuesto en la tabla Presupuesto.

148

Sistema de presuspuestacin y reporting para la empresa CU17: Mostrar presupuesto/informe Como se mencion anteriormente tanto para mostrar un presupuesto como otro informe se realizarn las llamadas a los mismos mtodos de las clases existentes.

Figura 48

149

Sistema de presuspuestacin y reporting para la empresa

Figura 49

CU18: Buscar presupuesto

Figura 50

150

Sistema de presuspuestacin y reporting para la empresa Para la posible visualizacin de un informe ser necesario su bsqueda en la base de datos. La clase que llevar el control en dicha bsqueda ser

GenerarPresupuestoServlet. Para la bsqueda del informe se deber comprobar que la unidad presupuestaria a la que pertenece el informe existe y que el informe con ese cdigo est dado de alta en la tabla Presupuesto, estas acciones las realizar la clase ServicioPresupuesto mediante la llamada de las funciones existeUpre(c_upre) y existePresu(c_up,c_pp) pertenecientes a las clases BDUpre y BDPresupuesto respectivamente. Si el presupuesto existe se tomarn todos los datos del mismo y se colocarn en una estructura de tipo Presupuesto. CU19: Modificar Informe

Figura 51

151

Sistema de presuspuestacin y reporting para la empresa CU20: Modificar Unidad Presupuestaria

Figura 52

CU21: Modificar Zona

Figura 53

152

Sistema de presuspuestacin y reporting para la empresa CU22: Modificar Usuario

Figura 54

CU23: Buscar Unidad

Figura 55

153

Sistema de presuspuestacin y reporting para la empresa CU24: Buscar Zona

Figura 56

13.7.

Diagrama de Paquetes

Los paquetes que forman la aplicacin son los siguientes:

154

Sistema de presuspuestacin y reporting para la empresa

13.7.1.

Paquete bean

Figura 57

155

Sistema de presuspuestacin y reporting para la empresa

13.7.2.

Paquete acciones

Figura 58

13.7.3.

Paquete servicios

Figura 59

156

Sistema de presuspuestacin y reporting para la empresa

13.7.4.

Paquete bd

Figura 60

14. Pool de conexiones realizado


Un pool de conexiones permite abrir y cerrar conexiones a una base de datos de una manera menos costosa. Una vez se ha establecido una conexin y se ha aadido al pool de conexiones, la aplicacin puede reutilizarla sin tener que sufrir el coste de abrir una nueva conexin. [BRIT03]. Si una aplicacin abre una conexin, el gestor busca una conexin disponible que cumpla los requerimientos de la aplicacin que la solicita, y si esta existe, la asigna a la aplicacin. El hecho de reutilizar las conexiones, permite al driver ahorrarse el coste de establecer una nueva conexin. Si no se encuentra ninguna conexin disponible, el gestor abrir una nueva conexin y lgicamente cuando una aplicacin libere la conexin, esta ser devuelta al pool de conexiones para que sea utilizada por otras aplicaciones.

157

Sistema de presuspuestacin y reporting para la empresa La arquitectura del pool de conexiones permite que varios componentes que se ejecutan en un mismo proceso compartan las conexiones a la base de datos. Esto significa que diferentes componentes, los cuales no tienen conocimiento de la existencia entre ellos, puedan compartir conexiones a una base de datos sin tener consciencia de ello. El tamao del pool de conexiones est limitado por los recursos de la maquina y puede crecer dinmicamente sin ningn problema a medida que se van creando nuevas conexiones. Una conexin ser eliminada del pool de conexiones cuando haya pasado un tiempo sin ser utilizada, es decir cuando su timeout haya expirado. Las caractersticas del pool de conexiones utilizado se encuentran en el fichero context.xml situado en la carpeta META-INF del proyecto:

<?xml version="1.0" encoding="iso-8859-1" ?> <Context path="/spr" docBase="${catalina.home}/webapps/spr"> <Resource name="jdbc/spr" type="javax.sql.DataSource" auth="Container" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/spr" username="begeta" password="begeta" maxActive="8" maxIdle="4"/> </Context>

El mximo nmero de conexiones activas viene delimitado por el atributo maxActive, en este caso ser 8. El mximo nmero de conexiones inactivas lo muestra la variable maxIdle ser 4. El nombre de usuario y contrasea de la base de datos sern begeta y begeta respectivamente.

158

Sistema de presuspuestacin y reporting para la empresa Una vez configurado el pool de conexiones se debe crear la referencia a la fuente de datos (datasource) en el fichero web.xml del proyecto:

<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>spr</display-name> <resource-ref> <description>Resource reference to a factory for java.sql.Connection </description> <res-ref-name>jdbc/spr</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref><?xml version="1.0" encoding="iso-8859-1" ?>

15. Servlet Mapping efectuado


Para poder realizar la llamada a los servlets de la aplicacin propuesta es necesario situar la referencias a estos en el archivo web.xml de la carpeta WEB-INF. Primeramente se despliega el nombre y la descripcin del servlet de la siguiente manera en el fichero citado:
<servlet> <description> Servlet que modifica la configuracion </description> <display-name>ModificarConfiguracionServlet</display-name> <servlet-name>ModificarConfiguracionServlet</servlet-name> <servlet-class>configuracion.ModificarConfiguracionServlet</servletclass> </servlet>

159

Sistema de presuspuestacin y reporting para la empresa Posteriormente se deber escribir el nombre relativo del servlet para dar a conocer su ruta concreta de la siguiente forma:
<servlet-mapping> <servlet-name>ModificarConfiguracionServlet</servlet-name> <url-pattern>/ModificarConfiguracionServlet</url-pattern> </servlet-mapping>

16. Funciones realizadas para la generacin de grficas


Para la generacin de grficas del sistema se ha empleado la libreras jFreeChart 1.0.6 y Jcommon 1.0.6:

import import import import import import import import import import import import

java.io.File; java.io.IOException; org.jfree.chart.ChartFactory; org.jfree.chart.ChartUtilities; org.jfree.chart.JFreeChart; org.jfree.chart.axis.NumberAxis; org.jfree.chart.axis.ValueAxis; org.jfree.chart.plot.PlotOrientation; org.jfree.chart.plot.XYPlot; org.jfree.data.xy.XYDataset; org.jfree.data.xy.XYSeries; org.jfree.data.xy.XYSeriesCollection;

El sistema genera dos tipos de grficas: PieChart: Grficas de tartas generadas para mostrar el porcentaje de los importes

totales de cada unidad presupuestaria de la zona seleccionada. De esta forma se podr visualizar que unidad tiene presupuestos ms abultados, que unidad persupuesta menos, y la diferencia entre los importes de todas las unidades.

160

Sistema de presuspuestacin y reporting para la empresa

Figura 61

Para la realizacin de dichas grficas se ha utilizado las clases DefaultPieDataSet y JfreeChart. Para introducir los datos en la grfica se ha utilizado el mtodo setValue de la clase Dataset.

XYLineChart: Grficas de ejes de coordenadas que muestran la evolucin de los

importes presupuestados en la zona seleccionada desde el inicio de la misma. De esta forma se da a conocer de manera sencilla y rpida cual es la evolucin en el tiempo de los presupuestos de una zona.

Figura 62

161

Sistema de presuspuestacin y reporting para la empresa Para realizar dicha grfica primeramente se han calculado los datos necesarios a mostrar (datosdoublearray). Con esos datos se ha creado una serie de datos con formato XY. Y por ltimo se ha creado la grfica indicando los ttulos, la orientacin y el juego de datos creado anteriormente:

XYSeries series = new XYSeries(tituloSerie); for (int pos = 1;pos<datosdoublearray.length;pos++) series.add(pos, datosdoublearray[pos-1]); XYDataset juegoDatos = new XYSeriesCollection(series); this.grafica = ChartFactory.createXYLineChart(tituloGrafica, titulox, tituloy, juegoDatos, PlotOrientation.VERTICAL, true,true,true);

17. Planes de Pruebas utilizados


Las pruebas realizadas en la aplicacin se han llevado a cabo mediante planes de pruebas funcionales divididos en hitos. Cada hito de la aplicacin se corresponde con cada uno de los mdulos en los que se divide. Por lo tanto hay cinco planes de pruebas, uno por cada mdulo de la aplicacin. Los planes de pruebas son de tipo funcional y estn basados en el catlogo de requisitos descrito en el apartado 11.4. Los campos utilizados en los planes y su explicacin son los siguientes: - Nmero de requisito: Es el nmero del requisito especificado en el catlogo de requisitos. - Descripcin: Pequea descripcin del requisito que se est evaluando. - Funcionamiento: Resultados obtenidos durante las pruebas realizadas para el requisito.

162

Sistema de presuspuestacin y reporting para la empresa - F. de prueba: Fecha en la que se hicieron las pruebas para ese requisito. - F. de correccin: Fecha en la que se corrigi el error, en caso de su existencia. - Observaciones. A continuacin se detalla cada plan: Plan del mdulo de inicio de sesin
F. de Nmero Descripcin Nombre de Usuario 5 y password Presentacin 6 principal Men principal de 7 8 mdulos Acceso por perfil Funcionamiento prueba F. de correccin Observaciones

Plan del mdulo de administracin


F. de F. de correccin Observaciones

Nmero

Descripcin Modificacin de

Funcionamiento

prueba

9 10 11 12 13 14 15 16

configuracin Alta Zona Baja Zona Modificar Zona Buscar Zona Alta unidad Baja unidad Modificar unidad

163

Sistema de presuspuestacin y reporting para la empresa


17 18 19 20 21 Buscar unidad Alta usuario Modificar usuario Eliminar usuario Buscar usuario

Plan del mdulo de seguimiento


F. de F. de correccin Observaciones

Nmero 22 23 24

Descripcin Ver Zonas Ver unidades Ver Informes Ver informe

Funcionamiento

prueba

25 26 27

detallado Eliminar informe Modificar informe Aadir y eliminar

28

apuntes

Plan del mdulo de generacin


F. de F. de correccin Observaciones

Nmero

Descripcin Generar

Funcionamiento

prueba

29

presupuesto Generar informe de

30 31

comparacin Requisitos Mdulo

164

Sistema de presuspuestacin y reporting para la empresa


II 32 Almacenar informes Comprobar validez 33 pp Control del tipo de 34 pp

Plan del mdulo de carga de datos externos


F. de F. de correccin Observaciones

Nmero 35

Descripcin Lectura ficheros Almacenar

Funcionamiento

prueba

36 37

informacin Visualizar informe

18. Implantacin
Las pruebas realizadas sobre al aplicacin no se han realizado en el mismo entorno y situacin que el de produccin, por lo tanto se ha realizado un manual de implantacin: Instalacin del servidor de aplicaciones Tomcat 5.5 [INTE00]. o Utilizando Windows installer: Seleccionando el directorio de instalacin:

165

Sistema de presuspuestacin y reporting para la empresa

Figura 63

Seleccionando el usuario, la contrasea y el puerto de conexin:

Figura 64

Seleccionando la ruta de la versin java a ejecutar:

166

Sistema de presuspuestacin y reporting para la empresa

Figura 65

Tomcat ser instalado como un servicio. Se deber acceder a los servicios de Windows y asignarle a propiedad Apache Tomcat Service de la lista de servicios. manual al

El instalador usar el registro de JAVA_HOME de variables del sistema como ruta raz de J2SE instalado.

Instalacin del sistema de gestin de base de datos MySQL 4.1. Creacin de la base de datos spr. o Create database spr o Use spr

Ejecucin del cdigo DDL para la carga de tablas, vistas y claves extranjeras. o Source ruta del script

Proporcionar permisos de acceso a la base de datos al servidor de aplicaciones. o GRANT ALL PRIVILEGES ON spr.* to nombreTomcat IDENTIFIED BY contraseaTomcat

167

Sistema de presuspuestacin y reporting para la empresa Carga de datos maestros en la base de datos. o Source ruta del script Iniciar el servidor de aplicaciones o Mediante el servicio o O con el comando: start up Desplegar el cdigo ejecutable en el servidor de aplicaciones. Esta opcin se podr realizar de un modo grfico desde la herramienta manager de Tomcat:

Figura 66

168

Sistema de presuspuestacin y reporting para la empresa

19. Mantenimiento
Una vez implantado el sistema pueden surgir errores o anomalas no detectadas en las pruebas, por lo que se debe estar dispuesto a subsanar estas incidencias que se detectan en la ejecucin de los procesos del sistema.

19.1.

Mantenimiento correctivo

La aplicacin desarrollada no es una de las aplicaciones denominadas crticas, ni una aplicacin de alto grado de actualizacin posterior, de todas formas es conveniente que los tres entornos (desarrollo, pruebas y implantacin) permanezcan disponibles para poder construir o modificar el software, probarlo e instalarlo, considerando todos los componentes de la aplicacin. Los guiones de pruebas utilizados para la realizacin de estas, nos servirn para llevar a cabo nuevas pruebas de regresin ante la modificacin del software. El mantenimiento no slo debe realizarse sobre el software afectado por la anomala sino tambin sobre los documentos afectados por ella. nicamente de este modo al efectuarse un nuevo mantenimiento podremos considerar fiable la informacin utilizada para ello. [BARR01]

19.2.

Mantenimiento adaptativo

Atendiendo a las posibles mejoras y nuevas versiones del software o del sistema: El sistema en futuras versiones podr utilizar un servidor de aplicaciones completo como JBoss para poder acceder a la tecnologa EJB. Si el volumen de informacin de la aplicacin crece constantemente se podr implementar el sistema sobre un servidor de base de datos capaz de soportar un gran volumen de informacin como por ejemplo Oracle 9i.

169

Sistema de presuspuestacin y reporting para la empresa Otra posible versin del sistema sera su desarrollo en tecnologa .NET, esta variacin dara lugar a un proyecto nuevo. Nuevamente se hace imprescindible la utilizacin de una documentacin actualizada del proyecto a mantener, para determinar la trazabilidad y el alcance de la adaptacin, y para reutilizar el software y documentacin asociada.

20. Planificacin
La planificacin de las tareas a lo largo del proyecto se presenta en el siguiente diagrama:

170

Sistema de presuspuestacin y reporting para la empresa

171

Sistema de presuspuestacin y reporting para la empresa El listado de tareas por orden de aparicin en el diagrama es: 1) Id1: Estudio de presupuestos y recursos Las tareas ms importantes realizadas en esta fase son: a) Estudio de presupuestos: Tarea de comienzo de la aplicacin en la que se asimilaron los conceptos necesarios para la realizacin de presupuestos e informes. Esta fase comprende la realizacin de presupuestos y la prctica de reuniones con diversos expertos. b) Estudio de recursos a utilizar: Tarea en la que se aprendieron los aspectos importantes de las tecnologas a utilizar. Se realiz el estudio de varios servidores de aplicaciones, servidores de base de datos, entornos de desarrollo, frameworks para escoger las tecnologas y para su correcto uso una vez elegidas. 2) Id2: Identificacin de necesidades Segunda fase de la planificacin en la que se identificaron las necesidades que la aplicacin deba satisfacer. Algunas tareas importantes realizadas en esta fase son: recopilacin de informacin y entrevistas con expertos. 3) Id3: Anlisis funcional Fase que constituye el punto de partida en la elaboracin del anlisis del sistema que identifica los requerimientos de informacin de los usuarios. Estos requerimientos especficos del sistema sirven como punto de referencia bsico para validar el sistema final, es decir, comprobar que el sistema se ajuste a las necesidades del usuario. Antes de realizar esta fase se ha intentado comprender cules son los elementos del contexto correspondiente y cmo afectan al desarrollo.

172

Sistema de presuspuestacin y reporting para la empresa En esta fase se realiz un estudio profundo de las acciones que debe realizar la aplicacin. Se analiz la informacin obtenida en reuniones con las personas implicadas, teniendo en cuenta los objetivos del proyecto y los recursos disponibles. El producto de esta fase es la documentacin que facilita la compresin de las acciones que se deben realizar sin explicar el modo de realizarlas. 4) Id4: Anlisis estructural ltima fase del anlisis en la que se ha estudiado la estructura financiera empresarial para poder realizar la estructura de la aplicacin. En esta fase por lo tanto se estudiaron los procesos necesarios para la realizacin de los informes por parte de las empresas adems de estudiar los responsables de la realizacin de dicho informes y su mbito y alcance. El resultado de esta fase han sido los diagramas y sus explicaciones correspondientes acerca de la unidades presupuestarias, las zonas y los jefes de zona y unidad adems de las acciones realizadas por el director financiero, todo ello con el fin de conocer profundamente la estructura final. 5) Id5: Diseo de la base de datos Fase de diseo en la que observando el modelo de dominio realizado y acudiendo a varias entrevistas con los expertos se alcanza la realizacin de la base de datos. Esta fase comienza con la realizacin del diagrama entidad/relacin, posteriormente dicho diagrama se ha mostrado a los expertos para comprobar su validez. El siguiente paso consisti en la realizacin del diseo de la base de datos observando el diagrama E/R, dicho diseo sufri una serie de cambios debido al proceso de normalizacin que se le aplic, obteniendo el diseo definitivo de la base de datos. Una vez se tuvo el diseo se llev a cabo la creacin de la base de datos en el servidor de bases de datos MySQL Server 4.1 utilizando el script final obtenido. Por ltimo se

173

Sistema de presuspuestacin y reporting para la empresa llev a cabo la carga de datos en las tablas maestras resultantes mediante scripts generados en macros de Excel. 6) Id6: Diseo de la aplicacin La etapa ms larga y complicada del proyecto, caracterizada por la creacin de esquemas que muestren los casos de uso a realizar y su descripcin. La fase de diseo se inici conociendo la potencia del software elegido. Se realiz un diseo que intenta cubrir la totalidad de las necesidades del sistema. Para llevar a cabo esta fase, se han utilizado diferentes representaciones grficas de software. Por lo tanto, en esta fase se ha realizado el proceso completo de creacin de diagramas y explicaciones necesarios para disear la aplicacin. Se comenz realizando la identificacin de los casos de uso y sus correspondientes descripciones. Posteriormente se realizaron los diagramas de secuencia de cada caso de uso, el diagrama de paquetes y el diagrama de estados. En esta misma fase se distinguieron los 4 mdulos en los que consiste la aplicacin y sus funciones y descripcin. Por ltimo se crearon los bocetos del diseo visual de la aplicacin, teniendo en cuenta que posteriormente dichos esquemas podran sufrir alguna modificacin. Tanto el estudio del software como su diseo, han sido revisados a lo largo del proyecto. Esto se debe a la identificacin continua de nuevas necesidades y restricciones que los alteran. 7) Id7: Desarrollo de los mdulos Una vez se realiz el diseo completo de la aplicacin y basndose los productos que origin se procedi al desarrollo de la misma. En esta etapa se realiz la programacin de los cuatro mdulos de los que consta la aplicacin.

174

Sistema de presuspuestacin y reporting para la empresa 8) Id8: Realizacin de pruebas Una vez finalizada la etapa de desarrollo ya se pudo comenzar esta etapa en la que se realizaron los ensayos de software para comprobar el correcto funcionamiento de la aplicacin. La finalidad de esta etapa fue encontrar los fallos cometidos en la fase de desarrollo (Id8) para su posterior correccin. 9) Id9: Redaccin de la memoria ltima etapa en la que se ha unificado y redactado la informacin relevante del desarrollo del proyecto. La recopilacin y generacin de informacin ha sido una etapa constante del proceso, no obstante, en esta ltima fase, se ha realizado una memoria completa del desarrollo del proyecto.

21. Estudio econmico


El objeto del presente proyecto es la creacin de un sistema Web para la realizacin automtica de presupuestos e informes presupuestarios. Los costes asociados al mismo sern nicamente todos los relacionados con la tarea de diseo y programacin del software necesarios para el mismo, el programa y las necesidades que estas tareas requieran.

21.1.

Recursos utilizados

Se puede dividir en dos clases los recursos empleados en el desarrollo del presente proyecto: Recursos Hardware Recursos Software

Dentro de los recursos considerados como hardware encontraremos: Ordenador HP , con microprocesador Pentium VI, 1GB de memoria RAM y 120GB de capacidad de disco duro. 175

Sistema de presuspuestacin y reporting para la empresa Los recursos que consideramos como software sern: Sistema operativo Windows Vista. Servidor de aplicaciones Apache Tomcat 5.5. Servidor de base de datos MySQL Server 4.1. Entorno de desarrollo Eclipse-SDK-3.1.1. Banco de trabajo MyEclipse 5.0. Aplicaciones ofimticas del paquete Office 2003. Herramienta de diseo UML 1.4 Jude Community. Herramienta de diseo de base de datos Enterprise Architect 6.1. Leguaje de programacin (compilador y libreras) java (jdk 1.5.08) Leguaje de programacin (compilador y libreras) Microsoft Visual Basic 6.3

21.2.

Costes del proyecto

La divisin de los costes totales del proyecto se realizar en dos partidas claramente diferenciadas: Costes directos Costes indirectos

Dentro de la partida de costes directos, haremos una segunda divisin de los costes segn: Costes de personal Costes de amortizacin de programas y equipos Costes de material

176

Sistema de presuspuestacin y reporting para la empresa

21.3.

Costes de personal

Para la realizacin del clculo del coste de personal se supondr que el proyecto estar desarrollado por un Ingeniero Informtico trabajando para el Departamento de Desarrollo de una empresa que desarrolla aplicaciones Web. El sueldo correspondiente se considera un gasto efectivo por parte de dicho departamento, dentro del cual se tienen en cuenta: Sueldo bruto Incentivos Vacaciones Seguridad Social

Se obtiene el coste de personal teniendo en cuenta el nmero de horas empleadas y el coste efectivo de cada hora de trabajo. Horas anuales estimadas:

Cuadro 21:1

177

Sistema de presuspuestacin y reporting para la empresa Coste anual de un Ingeniero Informtico:

Cuadro 21:2

El coste por hora de trabajo de un Ingeniero Informtico se calcula con los datos obtenidos en las dos tablas anteriores, dividiendo el coste anual entre el total de horas efectivas anuales. Este coste ser por tanto de 25.72 /hora. A continuacin calculamos el nmero de horas que se han empleado en la realizacin del presente proyecto. La siguiente tabla muestra una descomposicin detallada de las mismas:

Cuadro 21:3

178

Sistema de presuspuestacin y reporting para la empresa Se obtiene el coste de personal multiplicando las horas totales empleadas en el proyecto por el coste de cada hora de trabajo, el resultado nos da el coste de personal y asciende a 18518,4 .

21.4.

Costes de amortizacin de programas y equipos

Se va a considerar una amortizacin lineal a cuatro aos para el clculo de los costes de amortizacin de los equipos informticos y sus programas. En la siguiente tabla aparecen detallados estos costes para cada uno de los distintos conceptos:

Cuadro 21:4

Tanto el servidor de aplicaciones como el servidor de bases de datos y el compilador y resto de libreras utilizados son recursos de software libre o cdigo abierto y su coste es nulo por lo que su coste de amortizacin tambin lo ser. El tiempo de uso de los equipos es el tiempo total calculado anteriormente para el desarrollo de la aplicacin, puesto que es necesario tanto en las etapas de diseo previo como en el desarrollo de la aplicacin.

179

Sistema de presuspuestacin y reporting para la empresa A continuacin se calcula el ndice de amortizacin por hora de trabajo dividiendo el coste total de amortizacin de programas y equipos entre el nmero de horas efectivas de trabajo en cuatro aos. Es resultado es por lo tanto 0,440 /hora. Se multiplica ese factor por el nmero de horas que ha llevado desarrollar este proyecto teniendo como resultado un coste de 316,82 .

21.5.

Costes de material

En la siguiente tabla se reflejan los costes relacionados con los materiales necesarios para el diseo y desarrollo del proyecto y aquellos asociados a su presentacin.

Cuadro 21:5

21.6.

Costes indirectos

En este apartado se incluyen aquellos gastos producidos en la elaboracin del proyecto que no pueden ser incluidos en apartados anteriores.

180

Sistema de presuspuestacin y reporting para la empresa

Cuadro 21:6

A continuacin se resumen en una nica tabla los costes directos calculados anteriormente y su total:

Cuadro 21:7

21.7.

Coste total del proyecto

El coste total del presente proyecto es el resultante de sumar los costes directos e indirectos ocasionados por el diseo y desarrollo del mismo.

Cuadro 21:8

181

Sistema de presuspuestacin y reporting para la empresa

22. Conclusiones y lneas futuras


Para el diseo del algoritmo que permite generar automticamente presupuestos, basndose en informes realizados anteriormente y datos reales pasados, se han utilizado diversos presupuestos existentes y de distintos tipos. Mediante el estudio de dichos presupuestos reales se ha intentado dotar a la aplicacin de la mxima robustez para lograr realizar la generacin de presupuestos cuyos datos se aproximen lo ms posible a los datos que se dan posteriormente en la realidad. La realizacin de estos informes por parte de las empresas es una tarea complicada y en muchos casos poco til debido a la imprecisin de los mismos, la aplicacin realizada genera un banco de trabajo que facilita la generacin de presupuestos reduciendo su tiempo de elaboracin y facilitando la toma de decisiones gracias a su precisin por lo tanto se ha logrado el objetivo del proyecto. El proyecto no slo supone un paso hacia delante con respecto a los ERPs actuales sino que se puede plantear la integracin del mismo en dichos ERPs como un mdulo ms. Sera interesante, por lo tanto, comprobar el funcionamiento del sistema porque los resultados son muy prometedores. El paso siguiente al proyecto presente podra ser el estudio de aplicaciones para el tratado del rendimiento de la empresa desde varios puntos de vista (econmico, de recursos) para la ayuda en la toma de decisiones. El proyecto realizado es capaz de generar tres tipos de informes presupuestarios (presupuestos, comparativos y tipo dos). Sera muy interesante la posibilidad de ampliar los tipos de informes que genera la aplicacin, de esta manera se podra llegar a obtener un nico sistema que genere todo tipo de informes econmicos. Por el mismo motivo y para aumentar la precisin de los resultados sera de gran utilidad ampliar el tipo de

182

Sistema de presuspuestacin y reporting para la empresa datos e informes reales que se pueden cargar en el sistema ya que tambin se basa en ellos para la generacin de informes. Se recuerda que, dado el diseo de la aplicacin, la precisin de los presupuestos generados est ntimamente relacionada con el nmero de presupuestos que se hayan generado o cargado en la aplicacin anteriormente debido a que para generar un presupuesto la aplicacin realiza un anlisis histrico de los anteriores. Para obtener una precisin aceptable cuando se utiliza por primera vez la aplicacin se deberan cargar presupuestos anteriores en el sistema.

183

Sistema de presuspuestacin y reporting para la empresa

23. Bibliografa
[BARR01] Barranco, J. Metodologa del anlisis estructurado de sistemas. ISBN: 84-8468-043-6. Sal Terrae. 2001. [ALON06] Alonso, M. Contaplus inicial: Guia prctica para la gestin informtica de la contabilidad. ISBN: 8-49-657862-3. IdeasPropias. 2006. [ARMS05] Armstrong, E., Ball, J., Bodoff, S., Carson, D., Evans, I., Green, D., Haase, K., Jendrok, E. The J2EE 1.4 Tutorial. Sun Java System Platform Edition. 2005. (http://java.sun.com/j2ee/1.4/docs/tutorial/doc/index.html). [BARA03] Barak, C., Eichorn, C., Prince, T. Process Improvement for effective budgeting and Financial Reporting. ISBN: 0-47-145507-5. Finance. Wiley Editions. 2003. [BRIT03] Brittain, J., Darwin, I. Tomcat: The Definitive Guide. ISBN: 0-59600318-8. Programming. OReilly. 2003. [CARS06] Carson, D. The Java Web Services. Programming Article for Sun Microsystems. 2006. (http://java.sun.com/webservices/docs/2.0/tutorial/doc/). [DALE03] Dale, N., Weems, C., Headington, M. Programming and Problem Solving whith Java. ISBN: 0-76-370490-3. Programming. Jones & Bartlett. 2003. [FONT97] Font, J. y Elvira, O. Presupuestos, planes financieros y estudios de viabilidad. ISBN: 8-48-088885-7. Finance. Ediciones Gestion 2000. 1997. [HERB07] Herbert, S. Fundamentos de Java. ISBN: 9-70-105930-1.

McGraw-Hill. 2007. [HUNT01] Hunter, J. Java Servlet Programming. ISBN: 0-59-600040-5. Programming. OReilly. 2001. [INTE00] Intersimone, D. Apache Tomcat Servlet and Java Servlet Pages Development. Programming Article. 2000. (http://dn.codegear.com/article/22057).

184

Sistema de presuspuestacin y reporting para la empresa [KOLL07] Kolling, M., Warnes, D. Programacin orientada a objetos con java ISBN: 8-48-322350-3. Prentice-Hall. 2007. [PERE04] Perez, C. MySQL para Windows y Linux. ISBN: 8-47-897601-9. RA-MA. 2004. [SCOT04] Scott, K. Building Financial Models with Microsoft Excell: A Guide for Business Profesionals. ISBN: 0-47-169320-0. Finance. Wiley and sons. 2004. [THOM05] Thomson, L., Welling, L. Php and MySQL Web Development. ISBN: 0-67-232672-8. Sams. 2005.

185

You might also like