5 resultados para Java Advanced Imaging
em Universidad Politécnica de Madrid
Resumo:
El Análisis de Consumo de Recursos o Análisis de Coste trata de aproximar el coste de ejecutar un programa como una función dependiente de sus datos de entrada. A pesar de que existen trabajos previos a esta tesis doctoral que desarrollan potentes marcos para el análisis de coste de programas orientados a objetos, algunos aspectos avanzados, como la eficiencia, la precisión y la fiabilidad de los resultados, todavía deben ser estudiados en profundidad. Esta tesis aborda estos aspectos desde cuatro perspectivas diferentes: (1) Las estructuras de datos compartidas en la memoria del programa son una pesadilla para el análisis estático de programas. Trabajos recientes proponen una serie de condiciones de localidad para poder mantener de forma consistente información sobre los atributos de los objetos almacenados en memoria compartida, reemplazando éstos por variables locales no almacenadas en la memoria compartida. En esta tesis presentamos dos extensiones a estos trabajos: la primera es considerar, no sólo los accesos a los atributos, sino también los accesos a los elementos almacenados en arrays; la segunda se centra en los casos en los que las condiciones de localidad no se cumplen de forma incondicional, para lo cual, proponemos una técnica para encontrar las precondiciones necesarias para garantizar la consistencia de la información acerca de los datos almacenados en memoria. (2) El objetivo del análisis incremental es, dado un programa, los resultados de su análisis y una serie de cambios sobre el programa, obtener los nuevos resultados del análisis de la forma más eficiente posible, evitando reanalizar aquellos fragmentos de código que no se hayan visto afectados por los cambios. Los analizadores actuales todavía leen y analizan el programa completo de forma no incremental. Esta tesis presenta un análisis de coste incremental, que, dado un cambio en el programa, reconstruye la información sobre el coste del programa de todos los métodos afectados por el cambio de forma incremental. Para esto, proponemos (i) un algoritmo multi-dominio y de punto fijo que puede ser utilizado en todos los análisis globales necesarios para inferir el coste, y (ii) una novedosa forma de almacenar las expresiones de coste que nos permite reconstruir de forma incremental únicamente las funciones de coste de aquellos componentes afectados por el cambio. (3) Las garantías de coste obtenidas de forma automática por herramientas de análisis estático no son consideradas totalmente fiables salvo que la implementación de la herramienta o los resultados obtenidos sean verificados formalmente. Llevar a cabo el análisis de estas herramientas es una tarea titánica, ya que se trata de herramientas de gran tamaño y complejidad. En esta tesis nos centramos en el desarrollo de un marco formal para la verificación de las garantías de coste obtenidas por los analizadores en lugar de analizar las herramientas. Hemos implementado esta idea mediante la herramienta COSTA, un analizador de coste para programas Java y KeY, una herramienta de verificación de programas Java. De esta forma, COSTA genera las garantías de coste, mientras que KeY prueba la validez formal de los resultados obtenidos, generando de esta forma garantías de coste verificadas. (4) Hoy en día la concurrencia y los programas distribuidos son clave en el desarrollo de software. Los objetos concurrentes son un modelo de concurrencia asentado para el desarrollo de sistemas concurrentes. En este modelo, los objetos son las unidades de concurrencia y se comunican entre ellos mediante llamadas asíncronas a sus métodos. La distribución de las tareas sugiere que el análisis de coste debe inferir el coste de los diferentes componentes distribuidos por separado. En esta tesis proponemos un análisis de coste sensible a objetos que, utilizando los resultados obtenidos mediante un análisis de apunta-a, mantiene el coste de los diferentes componentes de forma independiente. Abstract Resource Analysis (a.k.a. Cost Analysis) tries to approximate the cost of executing programs as functions on their input data sizes and without actually having to execute the programs. While a powerful resource analysis framework on object-oriented programs existed before this thesis, advanced aspects to improve the efficiency, the accuracy and the reliability of the results of the analysis still need to be further investigated. This thesis tackles this need from the following four different perspectives. (1) Shared mutable data structures are the bane of formal reasoning and static analysis. Analyses which keep track of heap-allocated data are referred to as heap-sensitive. Recent work proposes locality conditions for soundly tracking field accesses by means of ghost non-heap allocated variables. In this thesis we present two extensions to this approach: the first extension is to consider arrays accesses (in addition to object fields), while the second extension focuses on handling cases for which the locality conditions cannot be proven unconditionally by finding aliasing preconditions under which tracking such heap locations is feasible. (2) The aim of incremental analysis is, given a program, its analysis results and a series of changes to the program, to obtain the new analysis results as efficiently as possible and, ideally, without having to (re-)analyze fragments of code that are not affected by the changes. During software development, programs are permanently modified but most analyzers still read and analyze the entire program at once in a non-incremental way. This thesis presents an incremental resource usage analysis which, after a change in the program is made, is able to reconstruct the upper-bounds of all affected methods in an incremental way. To this purpose, we propose (i) a multi-domain incremental fixed-point algorithm which can be used by all global analyses required to infer the cost, and (ii) a novel form of cost summaries that allows us to incrementally reconstruct only those components of cost functions affected by the change. (3) Resource guarantees that are automatically inferred by static analysis tools are generally not considered completely trustworthy, unless the tool implementation or the results are formally verified. Performing full-blown verification of such tools is a daunting task, since they are large and complex. In this thesis we focus on the development of a formal framework for the verification of the resource guarantees obtained by the analyzers, instead of verifying the tools. We have implemented this idea using COSTA, a state-of-the-art cost analyzer for Java programs and KeY, a state-of-the-art verification tool for Java source code. COSTA is able to derive upper-bounds of Java programs while KeY proves the validity of these bounds and provides a certificate. The main contribution of our work is to show that the proposed tools cooperation can be used for automatically producing verified resource guarantees. (4) Distribution and concurrency are today mainstream. Concurrent objects form a well established model for distributed concurrent systems. In this model, objects are the concurrency units that communicate via asynchronous method calls. Distribution suggests that analysis must infer the cost of the diverse distributed components separately. In this thesis we propose a novel object-sensitive cost analysis which, by using the results gathered by a points-to analysis, can keep the cost of the diverse distributed components separate.
Resumo:
In this work, novel imaging designs with a single optical surface (either refractive or reflective) are presented. In some of these designs, both object and image shapes are given but mapping from object to image is obtained as a result of the design. In other designs, not only the mapping is obtained in the design process, but also the shape of the object is found. In the examples considered, the image is virtual and located at infinity and is seen from known pupil, which can emulate a human eye. In the first introductory part, 2D designs have been done using three different design methods: a SMS design, a compound Cartesian oval surface, and a differential equation method for the limit case of small pupil. At the point-size pupil limit, it is proven that these three methods coincide. In the second part, previous 2D designs are extended to 3D by rotation and the astigmatism of the image has been studied. As an advanced variation, the differential equation method is used to provide the freedom to control the tangential rays and sagittal rays simultaneously. As a result, designs without astigmatism (at the small pupil limit) on a curved object surface have been obtained. Finally, this anastigmatic differential equation method has been extended to 3D for the general case, in which freeform surfaces are designed.
Resumo:
The capability of a device called the Spherical Geodesic Waveguide (SGW) to produce images with details below the classic Abbe diffraction limit (super-resolution) is analyzed here. The SGW is an optical system equivalent (by means of Transformation Optics) to the Maxwell Fish Eye (MFE) refractive index distribution. Recently, it has been claimed that the necessary condition to get super-resolution in the MFE and the SGW is the use of a Perfect Point Drain (PPD). The PPD is a punctual receptor placed in the focal point that absorbs the incident wave, without reflection or scattering. A microwave circuit comprising three elements, the SGW, the source and the drain (two coaxial lines loaded with specific impedances) is designed and simulated in COMSOL. The super-resolution properties have been analyzed for different position of the source and drain and for two different load impedances: the PPD and the characteristic line impedance. The results show that in both cases super-resolution occurs only for discrete number of frequencies. Out of these frequencies, the SGW does not show SR in the analysis carried out.
Resumo:
La concentración fotovoltaica (CPV) es una de las formas más prometedoras de reducir el coste de la energía proveniente del sol. Esto es posible gracias a células solares de alta eficiencia y a una significativa reducción del tamaño de la misma, que está fabricada con costosos materiales semiconductores. Ambos aspectos están íntimamente ligados ya que las altas eficiencias solamente son posibles con materiales y tecnologías de célula caros, lo que forzosamente conlleva una reducción del tamaño de la célula si se quiere lograr un sistema rentable. La reducción en el tamaño de las células requiere que la luz proveniente del sol ha de ser redirigida (es decir, concentrada) hacia la posición de la célula. Esto se logra colocando un concentrador óptico encima de la célula. Estos concentradores para CPV están formados por diferentes elementos ópticos fabricados en materiales baratos, con el fin de reducir los costes de producción. El marco óptimo para el diseño de concentradores es la óptica anidólica u óptica nonimaging. La óptica nonimaging fue desarrollada por primera vez en la década de los años sesenta y ha ido evolucionando significativamente desde entonces. El objetivo de los diseños nonimaging es la transferencia eficiente de energía entre la fuente y el receptor (sol y célula respectivamente, en el caso de la CPV), sin tener en cuenta la formación de imagen. Los sistemas nonimaging suelen ser simples, están compuestos de un menor número de superficies que los sistemas formadores de imagen y son más tolerantes a errores de fabricación. Esto hace de los sistemas nonimaging una herramienta fundamental, no sólo en el diseño de concentradores fotovoltaicos, sino también en el diseño de otras aplicaciones como iluminación, proyección y comunicaciones inalámbricas ópticas. Los concentradores ópticos nonimaging son adecuados para aplicaciones CPV porque el objetivo no es la reproducción de una imagen exacta del sol (como sería el caso de las ópticas formadoras de imagen), sino simplemente la colección de su energía sobre la célula solar. Los concentradores para CPV pueden presentar muy diferentes arquitecturas y elementos ópticos, dando lugar a una gran variedad de posibles diseños. El primer elemento óptico que es atravesado por la luz del sol se llama Elemento Óptico Primario (POE en su nomenclatura anglosajona) y es el elemento más determinante a la hora de definir la forma y las propiedades del concentrador. El POE puede ser refractivo (lente) o reflexivo (espejo). Esta tesis se centra en los sistemas CPV que presentan lentes de Fresnel como POE, que son lentes refractivas delgadas y de bajo coste de producción que son capaces de concentrar la luz solar. El capítulo 1 expone una breve introducción a la óptica geométrica y no formadora de imagen (nonimaging), explicando sus fundamentos y conceptos básicos. Tras ello, la integración Köhler es presentada en detalle, explicando sus principios, válidos tanto para aplicaciones CPV como para iluminación. Una introducción a los conceptos fundamentales de CPV también ha sido incluida en este capítulo, donde se analizan las propiedades de las células solares multiunión y de los concentradores ópticos empleados en los sistemas CPV. El capítulo se cierra con una descripción de las tecnologías existentes empleadas para la fabricación de elementos ópticos que componen los concentradores. El capítulo 2 se centra principalmente en el diseño y desarrollo de los tres concentradores ópticos avanzados Fresnel Köhler que se presentan en esta tesis: Fresnel-Köhler (FK), Fresnel-Köhler curvo (DFK) y Fresnel-Köhler con cavidad (CFK). Todos ellos llevan a cabo integración Köhler y presentan una lente de Fresnel como su elemento óptico primario. Cada uno de estos concentradores CPV presenta sus propias propiedades y su propio procedimiento de diseño. Además, presentan todas las características que todo concentrador ha de tener: elevado factor de concentración, alta tolerancia de fabricación, alta eficiencia óptica, irradiancia uniforme sobre la superficie de la célula y bajo coste de producción. Los concentradores FK y DFK presentan una configuración de cuatro sectores para lograr la integración Köhler. Esto quiere decir que POE y SOE se dividen en cuatro sectores simétricos cada uno, y cada sector del POE trabaja conjuntamente con su correspondiente sector de SOE. La principal diferencia entre los dos concentradores es que el POE del FK es una lente de Fresnel plana, mientras que una lente curva de Fresnel es empleada como POE del DFK. El concentrador CFK incluye una cavidad de confinamiento externo integrada, que es un elemento óptico capaz de recuperar los rayos reflejados por la superficie de la célula con el fin de ser reabsorbidos por la misma. Por tanto, se aumenta la absorción de la luz, lo que implica un aumento en la eficiencia del módulo. Además, este capítulo también explica un método de diseño alternativo para los elementos faceteados, especialmente adecuado para las lentes curvas como el POE del DFK. El capítulo 3 se centra en la caracterización y medidas experimentales de los concentradores ópticos presentados en el capítulo 2, y describe sus procedimientos. Estos procedimientos son en general aplicables a cualquier concentrador basado en una lente de Fresnel, e incluyen tres tipos principales de medidas experimentales: eficiencia eléctrica, ángulo de aceptancia y uniformidad de la irradiancia en el plano de la célula. Los resultados que se muestran a lo largo de este capítulo validarán a través de medidas a sol real las características avanzadas que presentan los concentradores Köhler, y que se demuestran en el capítulo 2 mediante simulaciones de rayos. Cada concentrador (FK, DFK y CFK) está diseñado y optimizado teniendo en cuenta condiciones de operación realistas. Su rendimiento se modela de forma exhaustiva mediante el trazado de rayos en combinación con modelos distribuidos para la célula. La tolerancia es un asunto crítico de cara al proceso de fabricación, y ha de ser máxima para obtener sistemas de producción en masa rentables. Concentradores con tolerancias limitadas generan bajadas significativas de eficiencia a nivel de array, causadas por el desajuste de corrientes entre los diferentes módulos (principalmente debido a errores de alineación en la fabricación). En este sentido, la sección 3.5 presenta dos métodos matemáticos que estiman estas pérdidas por desajuste a nivel de array mediante un análisis de sus curvas I-V, y por tanto siendo innecesarias las medidas a nivel de mono-módulo. El capítulo 3 también describe la caracterización indoor de los elementos ópticos que componen los concentradores, es decir, de las lentes de Fresnel que actúan como POE y de los secundarios free-form. El objetivo de esta caracterización es el de evaluar los adecuados perfiles de las superficies y las transmisiones ópticas de los diferentes elementos analizados, y así hacer que el rendimiento del módulo sea el esperado. Esta tesis la cierra el capítulo 4, en el que la integración Köhler se presenta como una buena alternativa para obtener distribuciones uniformes en aplicaciones de iluminación de estado sólido (iluminación con LED), siendo particularmente eficaz cuando se requiere adicionalmente una buena mezcla de colores. En este capítulo esto se muestra a través del ejemplo particular de un concentrador DFK, el cual se ha utilizado para aplicaciones CPV en los capítulos anteriores. Otra alternativa para lograr mezclas cromáticas apropiadas está basada en un método ya conocido (deflexiones anómalas), y también se ha utilizado aquí para diseñar una lente TIR aplanética delgada. Esta lente cumple la conservación de étendue, asegurando así que no hay bloqueo ni dilución de luz simultáneamente. Ambos enfoques presentan claras ventajas sobre las técnicas clásicas empleadas en iluminación para obtener distribuciones de iluminación uniforme: difusores y mezcla caleidoscópica mediante guías de luz. ABSTRACT Concentrating Photovoltaics (CPV) is one of the most promising ways of reducing the cost of energy collected from the sun. This is possible thanks to both, very high-efficiency solar cells and a large decrease in the size of cells, which are made of costly semiconductor materials. Both issues are closely linked since high efficiency values are only possible with expensive cell materials and technologies, implying a compulsory area reduction if cost-effectiveness is desired. The reduction in the cell size requires that light coming from the sun must be redirected (i.e. concentrated) towards the cell position. This is achieved by placing an optical concentrator system on top of the cell. These CPV concentrators consist of different optical elements manufactured on cheap materials in order to maintain low production costs. The optimal framework for the design of concentrators is nonimaging optics. Nonimaging optics was first developed in the 60s decade and has been largely developed ever since. The aim of nonimaging devices is the efficient transfer of light power between the source and the receiver (sun and cell respectively in the case of CPV), disregarding image formation. Nonimaging systems are usually simple, comprised of fewer surfaces than imaging systems and are more tolerant to manufacturing errors. This renders nonimaging optics a fundamental tool, not only in the design of photovoltaic concentrators, but also in the design of other applications as illumination, projection and wireless optical communications. Nonimaging optical concentrators are well suited for CPV applications because the goal is not the reproduction of an exact image of the sun (as imaging optics would provide), but simply the collection of its energy on the solar cell. Concentrators for CPV may present very different architectures and optical elements, resulting in a vast variety of possible designs. The first optical element that sunlight goes through is called the Primary Optical Element (POE) and is the most determinant element in order to define the shape and properties of the whole concentrator. The POE can be either refractive (lens) or reflective (mirror). This thesis focuses on CPV systems based on Fresnel lenses as POE, which are thin and inexpensive refractive lenses able to concentrate sunlight. Chapter 1 exposes a short introduction to geometrical and nonimaging optics, explaining their fundamentals and basic concepts. Then, the Köhler integration is presented in detail, explaining its principles, valid for both applications: CPV and illumination. An introduction to CPV fundamental concepts is also included in this chapter, analyzing the properties of multijunction solar cells and optical concentrators employed in CPV systems. The chapter is closed with a description of the existing technologies employed for the manufacture of optical elements composing the concentrator. Chapter 2 is mainly devoted to the design and development of the three advanced Fresnel Köhler optical concentrators presented in this thesis work: Fresnel-Köhler (FK), Dome-shaped Fresnel-Köhler (DFK) and Cavity Fresnel-Köhler (CFK). They all perform Köhler integration and comprise a Fresnel lens as their Primary Optical Element. Each one of these CPV concentrators presents its own characteristics, properties and its own design procedure. Their performances include all the key issues in a concentrator: high concentration factor, large tolerances, high optical efficiency, uniform irradiance on the cell surface and low production cost. The FK and DFK concentrators present a 4-fold configuration in order to perform the Köhler integration. This means that POE and SOE are divided into four symmetric sectors each one, working each POE sector with its corresponding SOE sector by pairs. The main difference between both concentrators is that the POE of the FK is a flat Fresnel lens, while a dome-shaped (curved) Fresnel lens performs as the DFK’s POE. The CFK concentrator includes an integrated external confinement cavity, which is an optical element able to recover rays reflected by the cell surface in order to be re-absorbed by the cell. It increases the light absorption, entailing an increase in the efficiency of the module. Additionally, an alternative design method for faceted elements will also be explained, especially suitable for dome-shaped lenses as the POE of the DFK. Chapter 3 focuses on the characterization and experimental measurements of the optical concentrators presented in Chapter 2, describing their procedures. These procedures are in general applicable to any Fresnel-based concentrator as well and include three main types of experimental measurements: electrical efficiency, acceptance angle and irradiance uniformity at the solar cell plane. The results shown along this chapter will validate through outdoor measurements under real sun operation the advanced characteristics presented by the Köhler concentrators, which are demonstrated in Chapter 2 through raytrace simulation: high optical efficiency, large acceptance angle, insensitivity to manufacturing tolerances and very good irradiance uniformity on the cell surface. Each concentrator (FK, DFK and CFK) is designed and optimized looking at realistic performance characteristics. Their performances are modeled exhaustively using ray tracing combined with cell modeling, taking into account the major relevant factors. The tolerance is a critical issue when coming to the manufacturing process in order to obtain cost-effective mass-production systems. Concentrators with tight tolerances result in significant efficiency drops at array level caused by current mismatch among different modules (mainly due to manufacturing alignment errors). In this sense, Section 3.5 presents two mathematical methods that estimate these mismatch losses for a given array just by analyzing its full-array I-V curve, hence being unnecessary any single mono-module measurement. Chapter 3 also describes the indoor characterization of the optical elements composing the concentrators, i.e. the Fresnel lenses acting as POEs and the free-form SOEs. The aim of this characterization is to assess the proper surface profiles and optical transmissions of the different elements analyzed, so they will allow for the expected module performance. This thesis is closed by Chapter 4, in which Köhler integration is presented as a good approach to obtain uniform distributions in Solid State Lighting applications (i.e. illumination with LEDs), being particularly effective when dealing with color mixing requirements. This chapter shows it through the particular example of a DFK concentrator, which has been used for CPV applications in the previous chapters. An alternative known method for color mixing purposes (anomalous deflections) has also been used to design a thin aplanatic TIR lens. This lens fulfills conservation of étendue, thus ensuring no light blocking and no light dilution at the same time. Both approaches present clear advantages over the classical techniques employed in lighting to obtain uniform illumination distributions: diffusers and kaleidoscopic lightpipe mixing.
Resumo:
This document is the result of a process of web development to create a tool that will allow to Cracow University of Technology consult, create and manage timetables. The technologies chosen for this purpose are Apache Tomcat Server, My SQL Community Server, JDBC driver, Java Servlets and JSPs for the server side. The client part counts on Javascript, jQuery, AJAX and CSS technologies to perform the dynamism. The document will justify the choice of these technologies and will explain some development tools that help in the integration and development of all this elements: specifically, NetBeans IDE and MySQL workbench have been used as helpful tools. After explaining all the elements involved in the development of the web application, the architecture and the code developed are explained through UML diagrams. Some implementation details related to security are also deeper explained through sequence diagrams. As the source code of the application is provided, an installation manual has been developed to run the project. In addition, as the platform is intended to be a beta that will be grown, some unimplemented ideas for future development are also exposed. Finally, some annexes with important files and scripts related to the initiation of the platform are attached. This project started through an existing tool that needed to be expanded. The main purpose of the project along its development has focused on setting the roots for a whole new platform that will replace the existing one. For this goal, it has been needed to make a deep inspection on the existing web technologies: a web server and a SQL database had to be chosen. Although the alternatives were a lot, Java technology for the server was finally selected because of the big community backwards, the easiness of modelling the language through UML diagrams and the fact of being free license software. Apache Tomcat is the open source server that can use Java Servlet and JSP technology. Related to the SQL database, MySQL Community Server is the most popular open-source SQL Server, with a big community after and quite a lot of tools to manage the server. JDBC is the driver needed to put in contact Java and MySQL. Once we chose the technologies that would be part of the platform, the development process started. After a detailed explanation of the development environment installation, we used UML use case diagrams to set the main tasks of the platform; UML class diagrams served to establish the existing relations between the classes generated; the architecture of the platform was represented through UML deployment diagrams; and Enhanced entity–relationship (EER) model were used to define the tables of the database and their relationships. Apart from the previous diagrams, some implementation issues were explained to make a better understanding of the developed code - UML sequence diagrams helped to explain this. Once the whole platform was properly defined and developed, the performance of the application has been shown: it has been proved that with the current state of the code, the platform covers the use cases that were set as the main target. Nevertheless, some requisites needed for the proper working of the platform have been specified. As the project is aimed to be grown, some ideas that could not be added to this beta have been explained in order not to be missed for future development. Finally, some annexes containing important configuration issues for the platform have been added after proper explanation, as well as an installation guide that will let a new developer get the project ready. In addition to this document some other files related to the project are provided: - Javadoc. The Javadoc containing the information of every Java class created is necessary for a better understanding of the source code. - database_model.mwb. This file contains the model of the database for MySQL Workbench. This model allows, among other things, generate the MySQL script for the creation of the tables. - ScheduleManager.war. The WAR file that will allow loading the developed application into Tomcat Server without using NetBeans. - ScheduleManager.zip. The source code exported from NetBeans project containing all Java packages, JSPs, Javascript files and CSS files that are part of the platform. - config.properties. The configuration file to properly get the names and credentials to use the database, also explained in Annex II. Example of config.properties file. - db_init_script.sql. The SQL query to initiate the database explained in Annex III. SQL statements for MySQL initialization. RESUMEN. Este proyecto tiene como punto de partida la necesidad de evolución de una herramienta web existente. El propósito principal del proyecto durante su desarrollo se ha centrado en establecer las bases de una completamente nueva plataforma que reemplazará a la existente. Para lograr esto, ha sido necesario realizar una profunda inspección en las tecnologías web existentes: un servidor web y una base de datos SQL debían ser elegidos. Aunque existen muchas alternativas, la tecnología Java ha resultado ser elegida debido a la gran comunidad de desarrolladores que tiene detrás, además de la facilidad que proporciona este lenguaje a la hora de modelarlo usando diagramas UML. Tampoco hay que olvidar que es una tecnología de uso libre de licencia. Apache Tomcat es el servidor de código libre que permite emplear Java Servlets y JSPs para hacer uso de la tecnología de Java. Respecto a la base de datos SQL, el servidor más popular de código libre es MySQL, y cuenta también con una gran comunidad detrás y buenas herramientas de modelado, creación y gestión de la bases de datos. JDBC es el driver que va a permitir comunicar las aplicaciones Java con MySQL. Tras elegir las tecnologías que formarían parte de esta nueva plataforma, el proceso de desarrollo tiene comienzo. Tras una extensa explicación de la instalación del entorno de desarrollo, se han usado diagramas de caso de UML para establecer cuáles son los objetivos principales de la plataforma; los diagramas de clases nos permiten realizar una organización del código java desarrollado de modo que sean fácilmente entendibles las relaciones entre las diferentes clases. La arquitectura de la plataforma queda definida a través de diagramas de despliegue. Por último, diagramas EER van a definir las relaciones entre las tablas creadas en la base de datos. Aparte de estos diagramas, algunos detalles de implementación se van a justificar para tener una mejor comprensión del código desarrollado. Diagramas de secuencia ayudarán en estas explicaciones. Una vez que toda la plataforma haya quedad debidamente definida y desarrollada, se va a realizar una demostración de la misma: se demostrará cómo los objetivos generales han sido alcanzados con el desarrollo actual del proyecto. No obstante, algunos requisitos han sido aclarados para que la plataforma trabaje adecuadamente. Como la intención del proyecto es crecer (no es una versión final), algunas ideas que se han podido llevar acabo han quedado descritas de manera que no se pierdan. Por último, algunos anexos que contienen información importante acerca de la plataforma se han añadido tras la correspondiente explicación de su utilidad, así como una guía de instalación que va a permitir a un nuevo desarrollador tener el proyecto preparado. Junto a este documento, ficheros conteniendo el proyecto desarrollado quedan adjuntos. Estos ficheros son: - Documentación Javadoc. Contiene la información de las clases Java que han sido creadas. - database_model.mwb. Este fichero contiene el modelo de la base de datos para MySQL Workbench. Esto permite, entre otras cosas, generar el script de iniciación de la base de datos para la creación de las tablas. - ScheduleManager.war. El fichero WAR que permite desplegar la plataforma en un servidor Apache Tomcat. - ScheduleManager.zip. El código fuente exportado directamente del proyecto de Netbeans. Contiene todos los paquetes de Java generados, ficheros JSPs, Javascript y CSS que forman parte de la plataforma. - config.properties. Ejemplo del fichero de configuración que permite obtener los nombres de la base de datos - db_init_script.sql. Las consultas SQL necesarias para la creación de la base de datos.